【活用ガイド】

JVNDB-2026-023796

LinuxのLinux Kernelにおける複数の脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました:drm/xe/dma-buf に関して、空の bo および UAF 競合の処理時に invalidate_mappings フックをトリガーすると、以下のような厄介な競合状態が存在しています。1) xe_bo_alloc() を呼び出した後に attach を行い、その後 xe_dma_buf_init_obj() 内で実際の完全な bo 初期化ステップを実行します。しかし、attach の後に bo が attachments リスト上で見えてしまいます。これは問題で、例えば amdgpu のようなエクスポータドライバがいつでも invalidate_mappings フックを空または不正な bo でコールバックする可能性があり、潜在的なバグやクラッシュにつながります。2) 1) と似ていますが、ここでは invalidate_mappings フックがトリガーされる際に UAF が発生します。例えば、xe_bo_init_locked() まで進むものの何らかの理由で失敗した場合、この時点で bo はエラー時に解放されますが、dma-buf の視点ではまだアタッチされた状態のままです。この状態で invalidate_mappings がトリガーされると、参照しようとする bo は既に消失しており、UAF やさらなるバグ・クラッシュを引き起こします。この問題を修正するために、完全に設定されたバッファオブジェクトが存在するまで attach ステップを遅らせます。bo はユーザースペースに公開されるのが遅くなるため、「有効なアタッチメントがあるまで bo を公開しない」というコメントの意味は明確になります。少なくとも 2 つの異なる顧客から、amdgpu からのインポート時に evict_flags で NULL ポインタ参照が発生し、その後 evict フローがトリガーされるとの報告があります。発生頻度はかなり低く、何らかの競合状態の可能性が示唆されており、1) または 2) のシナリオが説明として妥当だと考えられます。v2 では、操作の順序を若干変更(機能的変更なし)し、順序に関する説明コメントを改善しました(Matt B)(commit af1f2ad0c59fe4e2f924c526f66e968289d77971 よりチェリーピック)。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 6.13 以上 6.18.33 未満
  • Linux Kernel 6.19 以上 7.0.10 未満
  • Linux Kernel 6.8 以上 6.12.91 未満
  • Linux Kernel 7.1

本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。
想定される影響

・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。
・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。
・当該ソフトウェアが完全に停止する可能性があります。
対策

ベンダ情報を参照して適切な対策を実施してください。
ベンダ情報

レッドハット
CWEによる脆弱性タイプ一覧  CWEとは?

  1. 解放済みメモリの使用(CWE-416) [NVD評価]
  2. NULL ポインタデリファレンス(CWE-476) [その他]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-52951
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-52951
  2. 関連文書 : drm/xe/dma-buf: handle empty bo and UAF races - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/981bedbbe61364fcc3a3b87ebaf648a66cd07108)
  3. 関連文書 : drm/xe/dma-buf: handle empty bo and UAF races - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/9894731e513019df22a29e5c52f1c98890355ff1)
  4. 関連文書 : drm/xe/dma-buf: handle empty bo and UAF races - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/c473ae25421fddc3dde247ba7b85225b10641d09)
  5. 関連文書 : drm/xe/dma-buf: handle empty bo and UAF races - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/20a99ea1e2fd720856d6ba497ff26b82c604751f)
更新履歴

  • [2026年07月16日]
      掲載