CVE-2026-98449 in Linux
要約
〜によって VulDB • 2026年10月18日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
smb: クライアント: 送信失敗時にロック解除前に複合MIDを削除する
複合リクエストの送信中にエラーが発生した場合、smb_send_rqst()は再接続を開始します。compound_send_recv()はまだpending_mid_q上にそれらのMIDを持っていますが、まずそれらを取り除かずにサーバーのロックを解除してしまいます。
再接続中にcifs_abort_connection()がpending_mid_qを走査し、各midコールバックを実行します。まだ応答がないため、これらのコールバックはクレジットを返却し、in_flight(送信中)カウントを減らします。その後、compound_send_recv()の送信エラー処理パスでも同じクレジットが再度返却されます。その結果、in_flightが2回デクリメントされ、smb2_add_credits()でWARNが発生します。
この問題は、ソケット送信に失敗した際にSMB2_negotiate中にsyzbotによって検出されました。
cifs_call_async()は既に送信中のエラー発生時にロック解除前にdelete_mid()を呼び出しています。複合チェーンに対しても同様の処理を行い、cancelled_mid[]を設定して、out:パスで再度削除されないようにします。
If you want to get best quality of vulnerability data, you may have to visit VulDB.