【活用ガイド】

JVNDB-2026-021072

LinuxのLinux Kernelにおける不特定の脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。drm/amdkfd の debug address watch v2 における watch_id の範囲チェックが改善されました。アドレスウォッチのクリアコードは watch_id を符号なし値(u32)として受け取りますが、一部の補助関数が符号付き int を使用し、watch_id のシフトによるビットチェックを行っていました。非常に大きな watch_id がユーザースペースから渡された場合、それが負の値に変換され、不正なシフトが発生し、watch_points 配列の範囲外メモリにアクセスする可能性がありました。修正内容としては、watch_id を使用する前に MAX_WATCH_ADDRESSES 内にあることをチェックし、ビットのテストとクリアには BIT(watch_id) を用いて安全に処理するようにしました。これにより、有効な watch ID では動作が変更されず、不正な ID に対する未定義動作を回避できます。問題の修正対象は、drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debug.c の kfd_dbg_trap_clear_dev_address_watch() 関数(448行目)で発生していたバッファオーバーフローです。kfd_dbg_owns_dev_watch_id() は負の値をチェックしなかったため、watch_id が INT_MAX を超えるとバッファオーバーフローが発生しました(負のシフトは未定義動作となります)。v2 では Jonathan Kim による修正として、セットパスに早期の watch_id = MAX_WATCH_ADDRESSES バリデーションを追加し、クリアパスと一致させました。また、kfd_dbg_owns_dev_watch_id() 内の冗長な範囲チェックを削除しました。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 6.13 以上 6.18.14 未満
  • Linux Kernel 6.19 以上 6.19.4 未満
  • Linux Kernel 6.5 以上 6.6.128 未満
  • Linux Kernel 6.7 以上 6.12.75 未満

想定される影響

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

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

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

  1. 情報不足(CWE-noinfo) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-45878
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-45878
  2. 関連文書 : drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3c38a0f07aa2bfef2b219b1f045534ad93f85afd)
  3. 関連文書 : drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a0d367e13db63a6ed76ee0d0a8c3a58c1fa98488)
  4. 関連文書 : drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/5a19302cab5cec7ae7f1a60c619951e6c17d8742)
  5. 関連文書 : drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/971bf8e61e9b4abaacf9b35eaf76ec222758f9d6)
  6. 関連文書 : drm/amdkfd: Fix watch_id bounds checking in debug address watch v2 - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/2b36c0c1bcbbe15f6cfa9652084b3124c835a150)
更新履歴

  • [2026年06月26日]
      掲載