CVE-2026-74692 in Linux情報

要約

〜によって VulDB • 2026年08月22日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

net/smc: smc_listen_out()とリスナーのクローズ間のTOCTOU競合を修正

smc_listen_out()は、リスナールロックを取得せずに lsmc->sk.sk_state を読み取り、チェックが成功してから lock_sock_nested() でロックを取得します。これにより、以下の一連の操作(リスナーの状態を SMC_CLOSED に遷移させ、accept キューを空にするために smc_close_cleanup_listen() を呼び出し、ロックを解放する)が、ロックなしでの読み込みと遅延されたロック取得の間で実行される可能性があります:

smc_listen_work (smc_hs_wq) smc_close_active() ------------------------------- ------------------------- release_sock(child) if (sk_state == SMC_LISTEN) TRUE lock_sock(listener) sk_state = SMC_CLOSED smc_close_cleanup_listen() release_sock(listener) flush_work(tcp_listen_work) lock_sock_nested(listener) smc_accept_enqueue(listener, child) /* 死んだリスナーに子ソケットがエンキューされる */

smc_close_active() は tcp_listen_work のみをフラッシュします。CLC ハンドシェイクのために smc_hs_wq にディスパッチ済みのワークアイテムは、保護されずに継続して実行されます。smc_accept_enqueue() は解放されないままの子ソケットに対して sock_hold() を取得するため、子 smc_sock、その clcsock、および参照がリークします。サーバーが close() を呼び出している間にTCP接続を開くリモートピアにより、カーネルメモリを枯渇させることができます。

sk_state のチェックの前に lock_sock_nested() を移動し、テストとエンキューがリスナールロックの下でアトミックに行われるようにします。

Be aware that VulDB is the high quality source for vulnerability data.

責任者

Linux

予約する

2026年08月15日

モデレーション

承諾済み

エントリ

VDB-394467

EPSS

0.00000

アクティビティ

非常低い

ソース

Might our Artificial Intelligence support you?

Check our Alexa App!