【活用ガイド】

JVNDB-2026-016893

LinuxのLinux Kernelにおける解放済みメモリの使用に関する脆弱性

概要

Linuxカーネルでは、以下の脆弱性が修正されました。kthreadに関しては、use-after-freeを防ぐためにkthreadの終了パスを統合しました。Guillaume氏はKUnitテスト中に、破損したRCUコールバック関数ポインタによりクラッシュが発生したことを報告しました。そのクラッシュはpidfsのrhashtable変換に起因しており、24バイトのrb_nodeが構造体pid内で8バイトのrhash_headに置き換えられたため、160バイトから144バイトにサイズが縮小されました。CONFIG_BLK_CGROUPなしのstruct kthreadも144バイトになります。CONFIG_SLAB_MERGE_DEFAULTとSLAB_HWCACHE_ALIGNの設定により、両方とも192バイトに切り上げられ、同じスラブキャッシュを共有しています。struct pid.rcu.funcとstruct kthread.affinity_nodeは共にオフセット0x78に位置しています。kthreadがmake_task_dead()経由で終了するとkthread_exit()をバイパスし、affinity_nodeのクリーンアップを逃します。free_kthread_struct()はメモリを解放しますが、このノードはまだグローバルなkthread_affinity_listにリンクされたままになっています。別のkthreadによる後続のlist_del()が、解放され再利用されたメモリに対してダングリングリストポインタを書き込み、pidのrcu.funcポインタを破損させることがあります。free_kthread_struct()のパッチは未処理のクリーンアップに対応するものではなく、すべてのkthread終了パスを統合しました。kthread_exit()をdo_exit()を呼び出すマクロに変更し、PF_KTHREADフラグが設定されたタスクのdo_exit()から呼び出されるkthread_do_exit()を新たに追加しました。これにより、make_task_dead()、直接do_exit()、kthread_exit()のいずれの終了パスでもkthread固有のクリーンアップが必ず行われます。公開ヘッダでは__to_kthread()を新しいtsk_is_kthread()アクセサに置き換え、kthread_exit()マクロを使用するモジュールコードが必要とするため、do_exit()関数をエクスポートしています。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 9.8 (緊急) [その他]
  • 攻撃元区分: ネットワーク
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 不要
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): 高
  • 完全性への影響(I): 高
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 6.14 以上 6.18.19 未満
  • Linux Kernel 6.19 以上 6.19.9 未満
  • Linux Kernel 7.0

想定される影響

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

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

CWEによる脆弱性タイプ一覧  CWEとは?

  1. 解放済みメモリの使用(CWE-416) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-43402
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-43402
  2. 関連文書 : kthread: consolidate kthread exit paths to prevent use-after-free - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/4729c7b00a347fd37d0cbc265b85f2884c3e06b6)
  3. 関連文書 : kthread: consolidate kthread exit paths to prevent use-after-free - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/5a591d7a5e48d30100943940a30a6ab41b15c672)
  4. 関連文書 : kthread: consolidate kthread exit paths to prevent use-after-free - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/28aaa9c39945b7925a1cc1d513c8f21ed38f5e4f)
更新履歴

  • [2026年05月25日]
      掲載