LinuxのLinux Kernelにおける不特定の脆弱性
タイトル LinuxのLinux Kernelにおける不特定の脆弱性
概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。net: usb: kaweth: kaweth_set_rx_mode内のTXキュー操作の削除です。kaweth_set_rx_mode()はndo_set_rx_modeコールバックであり、netif_stop_queue()とnetif_wake_queue()を呼び出します。これらはRXマルチキャスト設定とは無関係なTXキューフロー制御関数です。早すぎるnetif_wake_queue()の呼び出しにより、tx_urbがまだ処理中にもかかわらずTXが再度有効化され、同じURBに対して二重のusb_submit_urb()が発生する可能性があります。具体的には、kaweth_start_xmit()ではnetif_stop_queue()とusb_submit_urb(kaweth-tx_urb)を呼び出し、kaweth_set_rx_mode()ではnetif_stop_queue()とnetif_wake_queue()(URB完了前にTXキューを起動)を実行します。これによりusb_submit_urb()で「URB submitted while active」という警告が発生します。この問題はrtl8150でも同様のタイプのバグが存在し、- commit 958baf5eaee3("net: usb: Remove disruptive netif_wake_queue in rtl8150_set_multicast")で修正されています。さらに、kaweth_set_rx_mode()はすでに機能的に破損しており、実際のset_rx_modeの処理はkaweth_async_set_rx_mode()によって行われ、これはndo_open()時のみに有効です。

想定される影響 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

公表日 2026年5月6日0:00
登録日 2026年5月14日10:16
最終更新日 2026年5月14日10:16
CVSS3.0 : 重要
スコア 7.8
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
影響を受けるシステム
Linux
Linux Kernel 2.6.12
Linux Kernel 2.6.12.1 以上 5.10.252 未満
Linux Kernel 5.11 以上 5.15.202 未満
Linux Kernel 5.16 以上 6.1.165 未満
Linux Kernel 6.13 以上 6.18.16 未満
Linux Kernel 6.19 以上 6.19.6 未満
Linux Kernel 6.2 以上 6.6.128 未満
Linux Kernel 6.7 以上 6.12.75 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年05月14日]
  掲載
2026年5月14日10:16

NVD脆弱性情報
CVE-2026-43180
概要

In the Linux kernel, the following vulnerability has been resolved:

net: usb: kaweth: remove TX queue manipulation in kaweth_set_rx_mode

kaweth_set_rx_mode(), the ndo_set_rx_mode callback, calls
netif_stop_queue() and netif_wake_queue(). These are TX queue flow
control functions unrelated to RX multicast configuration.

The premature netif_wake_queue() can re-enable TX while tx_urb is still
in-flight, leading to a double usb_submit_urb() on the same URB:

kaweth_start_xmit() {
netif_stop_queue();
usb_submit_urb(kaweth->tx_urb);
}

kaweth_set_rx_mode() {
netif_stop_queue();
netif_wake_queue(); // wakes TX queue before URB is done
}

kaweth_start_xmit() {
netif_stop_queue();
usb_submit_urb(kaweth->tx_urb); // URB submitted while active
}

This triggers the WARN in usb_submit_urb():

"URB submitted while active"

This is a similar class of bug fixed in rtl8150 by

- commit 958baf5eaee3 ("net: usb: Remove disruptive netif_wake_queue in rtl8150_set_multicast").

Also kaweth_set_rx_mode() is already functionally broken, the
real set_rx_mode action is performed by kaweth_async_set_rx_mode(),
which in turn is not a no-op only at ndo_open() time.

公表日 2026年5月6日21:16
登録日 2026年5月7日4:08
最終更新日 2026年5月8日22:16
関連情報、対策とツール
共通脆弱性一覧