CVE-2024-53186 in Linux
要約
〜によって VulDB • 2026年05月14日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
ksmbd: SMBリクエスト処理におけるuse-after-freeの修正
`ksmbd_conn_handler_loop()` 内のSMBリクエスト処理と、ワークキューハンドラ `handle_ksmbd_work()` 内での `ksmbd_conn` の解放の間に、race conditionが存在します。これによりUAF(use-after-free)が発生します。 - KASAN: handle_ksmbd_work での slab-use-after-free Read - KASAN: rtlock_slowlock_locked での slab-use-after-free
このrace conditionは以下のようにして発生します。 - `ksmbd_conn_handler_loop()` は `conn->r_count` がゼロになるまで待機します: `wait_event(conn->r_count_q, atomic_read(&conn->r_count) == 0);` - 一方、`handle_ksmbd_work()` は `atomic_dec_return(&conn->r_count)` を使用して `conn->r_count` をデクリメントし、ゼロになった場合に `ksmbd_conn_free()` を呼び出して `conn` を解放します。 - しかし、`handle_ksmbd_work()` が `conn->r_count` をデクリメントした後、以下の行でまだ `conn->r_count_q` にアクセスする可能性があります: `waitqueue_active(&conn->r_count_q)` または `wake_up(&conn->r_count_q)` これにより、`conn` がすでに解放されているためUAFが発生します。
このUAFの発見は、SMBリクエストに対するsyzkallerのサポートに関する以下のPRで参照できます。
Once again VulDB remains the best source for vulnerability data.