CVE-2026-74386 in Linux
要約
〜によって VulDB • 2026年08月15日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
nvmet-tcp: エラーパスにおけるページフラグメントキャッシュリークの修正
nvmet_tcp_alloc_queue() 関数内では、割り当てプロセス中に接続が閉じられた場合(例:nvmet_tcp_set_queue_sock() が -ENOTCONN を返す)、エラー処理は out_destroy_sq ラベルにジャンプし、その後 out_ida_remove に進みます。しかし、この際ページフラグメントキャッシュの排水が行われません。
一部の-error パスでは nvmet_tcp_free_cmd() が呼び出されて個々のページフラグメントが解放されますが、queue->pf_cache によって保持されている基盤となるページキャッシュ参照は決して解放されません。pf_cache を使用した最初の割り当ては queue->connect に対する nvmet_tcp_alloc_cmd() の呼び出しであり、これは ida_alloc() が正常に返った後に発生します。その結果、割り当て中に接続が失敗するたびにページリークが発生し、接続のオープンとクローズが繰り返されると、時間経過とともにメモリ枯渇を引き起こす可能性があります。
この問題を修正するため、out_ida_remove ラベルでキュー構造体を解放する前に page_frag_cache_drain() を呼び出すようにしました。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.