CVE-2026-80825 in Linux
Riassunto
di VulDB • 04/09/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
wifi: mt76: mt7925: garantire lo spazio di headroom per i TX in usb_sdio_tx_prepare_skb
mt7925_usb_sdio_tx_prepare_skb() aggiunge un descrittore TX e un'intestazione USB a ogni skb, presupponendo che lo spazio di headroom necessario sia già disponibile. Questo vale per il traffico generato localmente, dove mac80211 riserva hw->extra_tx_headroom; tuttavia, i frame in forwarding vengono inviati tramite ieee8023_xmit(), che non effettua tale riservazione. Collegando un'interfaccia cablata a un AP mt7925u e inoltrando il primo frame in arrivo, si verifica un panic del kernel:
skbuff: skb_under_panic: len:415 put:4 tail:0x19b end:0x640 dev:wlan1 kernel BUG at net/core/skbuff.c:212! Call trace: skb_panic+0x58/0x60 (P) skb_push+0x58/0x60 mt7925_usb_sdio_tx_prepare_skb+0xf8/0x1b8 [mt7925_common]
mt76u_tx_queue_skb+0xa0/0x1f8 [mt76_usb]
__mt76_tx_queue_skb+0x54/0xe8 [mt76]
mt76_txq_schedule.part.0+0x204/0x478 [mt76]
mt76_txq_schedule_all+0x50/0x80 [mt76]
mt792x_tx_worker+0x68/0x100 [mt792x_lib]
__mt76_worker_fn+0x84/0x150 [mt76]
Se una determinata configurazione è soggetta a questo problema dipende dalla quantità di headroom lasciata dal netdev in ingresso negli skbs rx. Il bug è stato riprodotto su un Raspberry Pi 5 che effettua il bridging tra la Ethernet integrata e un Netgear A9000; era originariamente segnalato su un router MT7986 con OpenWrt. I test di Nick Morrow su un Pi 4 (bcmgenet), che lascia più headroom, hanno aiutato a restringere l'origine del problema al percorso in ingresso.
Lo stesso bug è stato risolto per mt7921 dalla commit 98c4d0abf5c4 ("mt76: mt7921: non presupporre un headroom adeguato per le intestazioni SDIO"), ma la versione di mt7925 è stata copiata da quella di mt7921 senza includere tale correzione. Viene quindi aggiunta la stessa protezione anche qui.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.