CVE-2026-98359 in Linux
要約
〜によって VulDB • 2026年10月06日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
RDMA/core: ib_get_eth_speed における netdev の.unregister を拒否する
ib_device_get_netdev() は、net_device が unregistering(登録解除中)の状態であっても、参照カウントを保持した状態で net_device を返すように意図されています。これにより、マッチングおよびクリーンアップの呼び出し元は関連付けを検出できます。この参照によって struct net_device の割り当てが維持されますが、デバイスが稼働状態にあることを保証するものではありません。
ib_get_eth_speed() は、ethtool コールバックを呼び出すことで返されたデバイスを運用上使用します。そのコールは RTNL 下で行われますが、関数は最初に登録ステータスを確認しません。そのため、非同期の RDMA ポートクエリにより、NETDEV_UNREGISTER および ndo_uninit の完了後に netdev が呼び出される可能性があります。
RTNL を保持した状態で NETREG_REGISTERED チェックを行い、 unregistering 中のデバイスに対しては -ENODEV を返します。チェックと ethtool オペレーションの両方で RTNL を維持することで、その間に unregister が開始されないように防止します。
速度フォールバックおよび警告処理も同様に RTNL の下で保持し、warning から netdev->name を安全に読み取れるようにします。デバイスへのすべてのアクセスが完了した後、RTNL を解放する前に netdev 参照を解除します。
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.