製品・ソフトウェアに関する情報
LinuxのLinux KernelにおけるNULL ポインタデリファレンスに関する脆弱性
Title LinuxのLinux KernelにおけるNULL ポインタデリファレンスに関する脆弱性
Summary

Linuxカーネルにおいて、以下の脆弱性が修正されました。md-clusterのprocess_metadata_updateにおけるNULLポインタ逆参照の問題を修正しました。process_metadata_update()関数は、wait_event()マクロ内で'thread'ポインタを(rcu_dereference_protected経由で取得し)無条件に逆参照していました。コードコメントには「デーモンスレッドは存在しなければならない」と記載されていますが、MD配列の起動シーケンス(md_run)の中に有効な競合状態のウィンドウがあります。具体的には、1. bitmap_load()が呼ばれ、md_cluster_ops-join()を呼び出します。2. join()は「cluster_recv」スレッド(recv_daemon)を起動します。3. この時点でrecv_daemonはアクティブでメッセージを処理しています。4. しかし、mddev-thread(メインMDスレッド)はmd_run()の後半まで初期化されません。この特定のウィンドウにおいてリモートノードからMETADATA_UPDATEDメッセージを受信すると、mddev-threadがまだNULLのままでprocess_metadata_update()が呼ばれ、カーネルパニックを引き起こします。この問題を修正するために、'thread'ポインタの検証を行い、NULLの場合は保持中のロック(no_new_dev_lockres)を解放して早期に戻ることで、配列が完全に準備できていない間の更新要求を安全に無視するようにしました。

Possible impacts 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

Publication Date May 6, 2026, midnight
Registration Date May 11, 2026, 11:05 a.m.
Last Update May 11, 2026, 11:05 a.m.
CVSS3.0 : 警告
Score 5.5
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected System
Linux
Linux Kernel 4.12 以上 6.6.128 未満
Linux Kernel 6.13 以上 6.18.16 未満
Linux Kernel 6.19 以上 6.19.6 未満
Linux Kernel 6.7 以上 6.12.75 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年05月11日]
  掲載
May 11, 2026, 11:05 a.m.

NVD Vulnerability Information
CVE-2026-43271
Summary

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

md-cluster: fix NULL pointer dereference in process_metadata_update

The function process_metadata_update() blindly dereferences the 'thread'
pointer (acquired via rcu_dereference_protected) within the wait_event()
macro.

While the code comment states "daemon thread must exist", there is a valid
race condition window during the MD array startup sequence (md_run):

1. bitmap_load() is called, which invokes md_cluster_ops->join().
2. join() starts the "cluster_recv" thread (recv_daemon).
3. At this point, recv_daemon is active and processing messages.
4. However, mddev->thread (the main MD thread) is not initialized until
later in md_run().

If a METADATA_UPDATED message is received from a remote node during this
specific window, process_metadata_update() will be called while
mddev->thread is still NULL, leading to a kernel panic.

To fix this, we must validate the 'thread' pointer. If it is NULL, we
release the held lock (no_new_dev_lockres) and return early, safely
ignoring the update request as the array is not yet fully ready to
process it.

Publication Date May 6, 2026, 9:16 p.m.
Registration Date May 7, 2026, 4:09 a.m.
Last Update May 9, 2026, 5 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.12 6.6.128
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 6.12.75
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 6.18.16
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.19 6.19.6
Related information, measures and tools
Common Vulnerabilities List