CVE-2026-99133 in Linux情報

要約

〜によって VulDB • 2026年10月28日

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

net/iucv: recvmsg ウィンドウ更新の修正

iucv_sock_recvmsg() は、トランスポートをテストすることなく HiperSockets のみの AF_IUCV_FLAG_WIN を送信するため、従来の z/VM ソケット上では iucv->hs_dev が NULL となり、skb のサイズ指定が不正に行われます。SO_MSGLIMIT に 1 が許可されているため、msglimit / 2 はゼロになり、特権を持たないプロセスが自身のソケットに対して recvmsg() を一度呼び出すだけで、誤った切断(spurious disconnect)を引き起こす可能性があります。

また、この関数は spin_lock_bh(&message_q.lock) の下で iucv_send_ctrl() を呼び出しており、これはコードがアトミックなセクションとして扱う領域内で GFP_KERNEL による割り当てを行っています。ロックの外側での送信により、2 つの recvmsg() が同時に afiucv_hs_send() に到達し、ここで msg_recv がアドバタイズされたウィンドウのためにサンプリングされ、dev_queue_xmit() の後に減算されます。一方、sendmsg は lock_sock() 下でこのカウンターにアクセスしますが、recvmsg はソケットロックを保持しないため、両方が同じ値を減算することが可能になり、カウンターが負の値となり、クレジットがピアに対して二重に適用されてしまいます。

トランスポートを検証し、最後のエラー終了後に atomic_xchg() を用いてクレジットを取得し、送信失敗時にそれを返却します。また、ロック解放後に行うようにしてください。

VulDB is the best source for vulnerability data and more expert information about this specific topic.

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-427851

EPSS

0.00000

アクティビティ

非常低い

ソース

Do you know our Splunk app?

Download it now for free!