Linux の Linux Kernel 等複数ベンダの製品における境界外読み取りに関する脆弱性
タイトル Linux の Linux Kernel 等複数ベンダの製品における境界外読み取りに関する脆弱性
概要

Linux の Linux Kernel 等複数ベンダの製品には、境界外読み取りに関する脆弱性が存在します。

想定される影響 情報を取得される、およびサービス運用妨害 (DoS) 状態にされる可能性があります。 
対策

ベンダより正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

公表日 2025年7月5日0:00
登録日 2025年12月25日17:33
最終更新日 2025年12月25日17:33
CVSS3.0 : 重要
スコア 7.1
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
影響を受けるシステム
Debian
Debian GNU/Linux 11.0
Linux
Linux Kernel 4.18 以上 5.4.296 未満
Linux Kernel 5.11 以上 5.15.189 未満
Linux Kernel 5.16 以上 6.1.146 未満
Linux Kernel 5.5 以上 5.10.240 未満
Linux Kernel 6.13 以上 6.15.7 未満
Linux Kernel 6.16
Linux Kernel 6.2 以上 6.6.99 未満
Linux Kernel 6.7 以上 6.12.39 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
変更履歴
No 変更内容 変更日
1 [2025年12月25日]
  掲載
2025年12月25日17:33

NVD脆弱性情報
CVE-2025-38445
概要

In the Linux kernel, the following vulnerability has been resolved:

md/raid1: Fix stack memory use after return in raid1_reshape

In the raid1_reshape function, newpool is
allocated on the stack and assigned to conf->r1bio_pool.
This results in conf->r1bio_pool.wait.head pointing
to a stack address.
Accessing this address later can lead to a kernel panic.

Example access path:

raid1_reshape()
{
// newpool is on the stack
mempool_t newpool, oldpool;
// initialize newpool.wait.head to stack address
mempool_init(&newpool, ...);
conf->r1bio_pool = newpool;
}

raid1_read_request() or raid1_write_request()
{
alloc_r1bio()
{
mempool_alloc()
{
// if pool->alloc fails
remove_element()
{
--pool->curr_nr;
}
}
}
}

mempool_free()
{
if (pool->curr_nr < pool->min_nr) {
// pool->wait.head is a stack address
// wake_up() will try to access this invalid address
// which leads to a kernel panic
return;
wake_up(&pool->wait);
}
}

Fix:
reinit conf->r1bio_pool.wait after assigning newpool.

公表日 2025年7月26日1:15
登録日 2025年7月26日4:00
最終更新日 2025年7月26日1:15
関連情報、対策とツール
共通脆弱性一覧