【活用ガイド】

JVNDB-2026-024991

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

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。slimbus: qcom-ngd-ctrlにおいて、tx_lockおよびctrl->lockのABBAロック回避方法に関する問題がありました。SSR/PDRのダウン通知時に、tx_lockはアクティブなDMA転送と同期を取るために取得されます。しかし、この期間中にqcom_slim_ngd_down()が呼び出され、その中でslim_report_absent()が実行されてslim_controllerロックが取得されます。複数の他のコードパスでは、これら2つのロックは逆の順序(つまり、slim_controllerロックの後にtx_lock)で取得されています。その結果、lockdepのエラー(スプラット)が発生し、デッドロックの可能性が生じていました。rprocctl/449は以下のロックを取得しようとしています: ffff00009793e620 (&ctrl->lock){+.+.}-{4:4}、実行箇所は slim_report_absent (drivers/slimbus/core.c:322) です。しかし、タスクは既に以下のロックを保持しています: ffff00009793fb50 (&ctrl->tx_lock){+.+.}-{4:4}、実行箇所は qcom_slim_ngd_ssr_pdr_notify (drivers/slimbus/qcom-ngd-ctrl.c:1475) です。このロックは新しいロックに依存しています。危険なロック取得シナリオの例: CPU0 CPU1 ---- ---- lock(&ctrl->tx_lock); lock(&ctrl->lock); lock(&ctrl->lock); lock(&ctrl->tx_lock);コメントの前提としては、進行中のDMA送信トランザクションがある間にqcom_slim_ngd_exit_dma()を呼び出さないことを意図しています。しかし、このようなトランザクションはすべて単一のqcom_slim_ngd_xfer_msg()内で開始され完了します。qcom_slim_ngd_exit_dma()が呼び出される前に、slim_controllerは解体され、すべての子デバイスにslimbusが消えたことが通知され、その後子デバイスは削除されます。デッドロックを回避するために、qcom_slim_ngd_ssr_pdr_notify()内でtx_lockを取得する処理を停止します。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 5.11 以上 5.15.210 未満
  • Linux Kernel 5.16 以上 6.1.176 未満
  • Linux Kernel 6.13 以上 6.18.36 未満
  • Linux Kernel 6.19 以上 7.0.13 未満
  • Linux Kernel 6.2 以上 6.6.143 未満
  • Linux Kernel 6.7 以上 6.12.94 未満
  • Linux Kernel 7.1

想定される影響

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

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

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

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

  1. CVE-2026-53331
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-53331
  2. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/55f2ea9ff83cc27a85526b14bc9b32f96a08d6ec)
  3. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/aad4337a21b9ad3ae8d668fa8678d05e26ecbaa8)
  4. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/9708eb50fd7343145b422be852f890212155d845)
  5. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/9f0d45d509b434c54da10e01f4ef8086e4583401)
  6. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3d1561537237c6cc1db76155183d8bbdac2339f0)
  7. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d54a221b0f3cd9e1f03f18104be34e02a8258fae)
  8. 関連文書 : slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/dc4d5c57e012c2c669793deb1515a57bbc6bf5dd)
更新履歴

  • [2026年07月24日]
      掲載