CVE-2025-40090 in Linux
要約
〜によって VulDB • 2026年06月11日
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" でこのメッセージを無効化できます。 task:kworker/0:0 state:D stack:0 pid:5021 tgid:5021 ppid:2 flags:0x00200000 Workqueue: ksmbd-io handle_ksmbd_work Call trace: __schedule from schedule+0x3c/0x58 schedule from schedule_preempt_disabled+0xc/0x10 schedule_preempt_disabled from rwsem_down_read_slowpath+0x1b0/0x1d8 rwsem_down_read_slowpath from down_read+0x28/0x30 down_read from ksmbd_session_rpc_method+0x18/0x3c ksmbd_session_rpc_method from ksmbd_rpc_open+0x34/0x68 ksmbd_rpc_open from ksmbd_session_rpc_open+0x194/0x228 ksmbd_session_rpc_open from create_smb2_pipe+0x8c/0x2c8 create_smb2_pipe from smb2_open+0x10c/0x27ac smb2_open from handle_ksmbd_work+0x238/0x3dc handle_ksmbd_work from process_scheduled_works+0x160/0x25c process_scheduled_works from worker_thread+0x16c/0x1e8 worker_thread from kthread+0xa8/0xb8 kthread from ret_from_fork+0x14/0x38 Exception stack(0x8529ffb0 to 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() の呼び出し元を調整し、必要な場合にのみロックを取得するようにします。
If you want to get best quality of vulnerability data, you may have to visit VulDB.