【活用ガイド】

JVNDB-2026-024892

LinuxのLinux Kernelにおける有効期限後のメモリの解放の欠如に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が解決されました。KVMでは、VMが終了中にvCPUが存在しない場合でもメモリがダーティになった際にWARNしないよう改善しました。メモリをダーティとしてマークする際には、VMがまだ生存中(すなわちrefcountがゼロでない)場合に限り、稼働中またはロード済みのvCPUがないことに対して警告を出します。これにより、x86 SEV-ESゲストのメモリリークを修正でき、実質的に誤検知(false positive)となっていたWARNを回避できます。 一部のSEV-ES VM-Exitでは、KVMはユーザースペースへのexitをまたいでゲストページの書き込み可能なマッピングを保持し、通常は次のKVM_RUN時にページをアンマップします。しかし、ユーザースペースがそのexit後にKVM_RUNを呼び出さない場合、vCPUが破棄される際にページのアンマップを行う必要があり、それが稼働中のvCPUがないことに関するWARNを引き起こします。 または、nested_vmx_free_vcpu()内で行われているように(全く無関係な理由によるものですが)、WARNを抑制するために一時的にvCPUをロードする方法もあります。しかし、破棄中にvCPUをロードするのは望ましくありません(理想的にはnVMXコードを整理すべきです)。また、SEV-ESコードを複雑化させるリスクがあり(KVMはvCPUが既にロードされていない場合のみ一時的なload()+put()を実行する必要があります)、最終的には無意味です。 WARNが生じる動機は、KVMが対応するGFNをアクティブなvCPUのダーティリングにプッシュせずにゲストメモリをダーティにすることを防ぐためであり、例えばユーザースペースがダーティページを見逃さないようにする目的があります。しかし、VMのrefcountがゼロになるためには、ダーティリングのユーザースペースマッピングが一切存在しない必要があります。これはダーティリングのマッピングがvCPU FDに対するmmap()を伴うためです。つまり、ユーザースペースがダーティリングの有効なマッピングを持っている限り、そのvCPUファイルおよび所有するVMはまだ生存していることになります。したがって、ユーザースペースがダーティリングに到達できないため、KVMが技術的にダーティリングへのプッシュを「見逃す」かどうかは無関係です。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 5.17 以上 6.6.143 未満
  • Linux Kernel 6.13 以上 6.18.36 未満
  • Linux Kernel 6.19 以上 7.0.13 未満
  • Linux Kernel 6.7 以上 6.12.94 未満
  • Linux Kernel 7.1

想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

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

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

  1. 有効期限後のメモリの解放の欠如(CWE-401) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-53345
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-53345
  2. 関連文書 : KVM: Don't WARN if memory is dirtied without a vCPU when the VM is dying - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/343e95c8ecc40e0738975ef4ee24c0c35e800e6b)
  3. 関連文書 : KVM: Don't WARN if memory is dirtied without a vCPU when the VM is dying - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/99d7d43784ae3235026581e9bf892c036e04c8e6)
  4. 関連文書 : KVM: Don't WARN if memory is dirtied without a vCPU when the VM is dying - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/66a8e7ddd901023c89a2733494d827eca3f9c1b0)
  5. 関連文書 : KVM: Don't WARN if memory is dirtied without a vCPU when the VM is dying - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/8618004d3e897c0f1b71d9a9ab860461289bb89a)
  6. 関連文書 : KVM: Don't WARN if memory is dirtied without a vCPU when the VM is dying - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/033d39e41fc30f484f4e4f37fb4cd76b12cbb18e)
更新履歴

  • [2026年07月24日]
      掲載