【活用ガイド】

JVNDB-2025-026166

LinuxのLinux Kernelにおける再帰制御に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。ksmbdに関しては、RPCハンドルリストアクセスにおける再帰的ロックの問題が修正されました。コミット305853cce3794("ksmbd: Fix race condition in RPC handle list access")以降、ksmbd_session_rpc_method()はsess-rpc_lockのロックを試みます。このため、クライアントが名前付きパイプを開こうとすると接続やタスクがハングする問題が発生していました。Sambaのrpcclientツールを使用した場合、以下のように接続がハングします。$ rpcclient //192.168.1.254 -U user%password $ rpcclient $ srvinfo ここで接続がハングカーネル側では、"echo 0 /proc/sys/kernel/hung_task_timeout_secs"でこのメッセージを無効化できます。タスクはkworker/0:0で、状態はD、スタック情報は以下の通りです:pidは5021、tgidは5021、ppidは2、フラグは0x00200000、ワークキューはksmbd-io handle_ksmbd_workです。コールトレースは__scheduleから始まり、schedule、schedule_preempt_disabled、rwsem_down_read_slowpath、down_read、ksmbd_session_rpc_method、ksmbd_rpc_open、ksmbd_session_rpc_open、create_smb2_pipe、smb2_open、handle_ksmbd_work、process_scheduled_works、worker_thread、kthread、ret_from_forkを経由しています。例外スタックは0x8529ffb0から0x8529fff8まで記録されています。タスクがデッドロックする原因は、ロックがすでに保持されているためです。具体的には、ksmbd_session_rpc_openでdown_write(&sess-rpc_lock)が行われ、その後ksmbd_rpc_open、ksmbd_session_rpc_methodでdown_read(&sess-rpc_lock)が行われていることにあります。このため、デッドロックが発生しています。ksmbd_session_rpc_method()の呼び出し元を必要に応じてロックを取得するよう調整しました。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 6.12.53 以上 6.12.55 未満
  • Linux Kernel 6.17.3 以上 6.17.5 未満
  • Linux Kernel 6.18

想定される影響

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

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

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

  1. 不適切な再帰制御(CWE-674) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2025-40090
参考情報

  1. National Vulnerability Database (NVD) : CVE-2025-40090
  2. 関連文書 : ksmbd: fix recursive locking in RPC handle list access - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/3412fbd81b46b9cfae013817b61d4bbd27e09e36)
  3. 関連文書 : ksmbd: fix recursive locking in RPC handle list access - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/88f170814fea74911ceab798a43cbd7c5599bed4)
  4. 関連文書 : ksmbd: fix recursive locking in RPC handle list access - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/4602b8cee1481dbb896182e5cb1e8cf12910e9e7)
  5. 関連文書 : ksmbd: fix recursive locking in RPC handle list access - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/5493571f4351f74e11db9943e98a07c56467cf7e)
  6. 関連文書 : ksmbd: fix recursive locking in RPC handle list access - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/1891abe832cbf5a11039e088766131d0f1642d02)
更新履歴

  • [2026年03月02日]
      掲載