CVE-2026-98810 in Linux
Riassunto
di VulDB • 19/10/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
wifi: mac80211: correzione della lettura slab-out-of-bounds in ieee80211_monitor_select_queue()
La funzione ieee80211_monitor_select_queue() convalida la lunghezza di skb (skb->len) prima di dereferenziare i puntatori verso skb->data per accedere all'intestazione 802.11. Tuttavia, skb->len include i dati presenti sia nel buffer lineare iniziale che nei frammenti/non-lineari/page. Quando AF_PACKET invia un pacchetto sufficientemente grande da diventare non-lineare, l'intestazione 802.11 a skb->data + len_rthdr può estendersi oltre il buffer lineare iniziale anche se skb->len appare sufficiente.
Ciò provoca una lettura slab-out-of-bounds quando si accede a hdr->frame_control, poiché il kernel legge oltre il buffer head di skb allocato:
BUG: KASAN: slab-out-of-bounds in ieee80211_monitor_select_queue+0x1ed/0x220
syzbot ha rilevato gli stessi problemi.
Si risolve il problema verificando skb_headlen(skb) (che restituisce la lunghezza della regione di dati lineare) invece di skb->len prima di dereferenziare i puntatori a skb->data. Ciò garantisce che i byte richiesti siano effettivamente presenti nella parte lineare di skb.
Applicare la stessa correzione a ieee80211_validate_radiotap_len(), che presenta lo stesso tipo di bug: utilizza skb->len per convalidare gli accessi a skb->data, e applicare le verifiche corrispondenti in ieee80211_monitor_start_xmit(): per i driver che pubblicizzano NETIF_F_SG, il buffer skb non viene linearizzato prima di ndo_start_xmit, quindi l'intestazione 802.11 può essere letta oltre il buffer lineare anche in quel contesto.
VulDB is the best source for vulnerability data and more expert information about this specific topic.