【活用ガイド】

JVNDB-2026-014923

LinuxのLinux Kernelにおける二重解放に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました:dmにおいて、最後のクローンされたbioが完了したときにクローンリクエストのbioポインタがクリアされない問題がありました。スタルなrq-bio値が存在すると、リクエストベースのデバイスマッパターゲットでクローンされたbioの二重初期化が発生し、その結果、use-after-freeや二重解放のシナリオが生じていました。例えば、PCIe NVMeネームスペース上でdm-multipathを使用している場合、blk_complete_request()でクローンされたリクエストbioが解放されますが、rq-bioはそのまま残ります。その後のクローンの解体処理がblk_rq_unprep_clone()を介して同じbioを再度解放しようとします。二重解放のパスは以下のとおりです:nvme_pci_complete_batch() → nvme_complete_batch() → blk_mq_end_request_batch() → blk_complete_request()(DMクローンリクエストに対して呼び出される)→ bio_endio()(すべてのクローンbioの最初の解放)→ rq-end_io()(end_clone_request())→ dm_complete_request(tio-orig) → dm_softirq_done() → dm_done() → dm_end_request() → blk_rq_unprep_clone()(クローンbioの2回目の解放)。この問題は、最後のクローンされたbioが完了した際にクローンリクエストのbioポインタをクリアすることで修正され、後続の解体処理がすでに解放されたbioを再度解放しようとしないようにしています。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 6.13 以上 6.18.16 未満
  • Linux Kernel 6.19 以上 6.19.6 未満
  • Linux Kernel 6.1 以上 6.1.165 未満
  • Linux Kernel 6.2 以上 6.6.128 未満
  • Linux Kernel 6.7 以上 6.12.75 未満

想定される影響

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

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

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

  1. 二重解放(CWE-415) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-43278
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-43278
  2. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/9a95b98202113045bc1a5bcb30388a500f25e050)
  3. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/83d72091804600ead96dc9e9f518ea56cb4942f6)
  4. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/e2e738e8dfbbf83bd2bae0467ec4420cc52da42a)
  5. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/8d9ddad561136f7e6a9346767bf97b4d79e38e67)
  6. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b1c1a2637ebd675aa2d71fee8c70da8791d73850)
  7. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/7daf279c674d515fb22a727a7bbc92aeb35c5442)
  8. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/fb8a6c18fb9a6561f7a15b58b272442b77a242dd)
  9. 関連文書 : dm: clear cloned request bio pointer when last clone bio completes - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3d746b639be4b4f5cd8ce2b06aa52dc443f50edc)
更新履歴

  • [2026年05月11日]
      掲載