CVE-2026-74508 in Linux
Riassunto
di VulDB • 15/08/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
Bluetooth: HIDP: rifiutare i frame privi di un'intestazione di transazione
Le funzioni hidp_recv_ctrl_frame() e hidp_recv_intr_frame() leggono skb->data[0] prima di verificare che l'SDU L2CAP contenga un'intestazione di transazione. Un peer HIDP connesso può inviare un SDU in modalità base vuoto, facendo sì che entrambi i percorsi utilizzino un byte non inizializzato presente nel tailroom dello skb.
KMSAN segnala l'utilizzo all'interno di hidp_session_run(), dove il valore non inizializzato origina da __alloc_skb() attraverso vhci_write(). Il percorso di controllo genera due segnalazioni, mentre quello degli interrupt ne genera una.
Il byte può inoltre essere controllato tramite un pacchetto a livello inferiore malformato. Se un pacchetto HCI ACL contiene un PDU L2CAP con un payload dichiarato di lunghezza zero seguito da un byte aggiuntivo 0x15, l2cap_recv_acldata() riduce skb->len alla lunghezza del PDU dichiarata prima dell'invio al gestore appropriato (dispatch). Il percorso HIDP corrente consuma comunque il byte extra come HIDP_TRANS_HID_CONTROL | HIDP_CTRL_VIRTUAL_CABLE_UNPLUG e termina la sessione HIDP. Con questa modifica, lo stesso pacchetto viene scartato e una successiva richiesta di report delle funzionalità va a buon fine.
Estrarre l'intestazione della transazione utilizzando skb_pull_data() e scartare i frame che non la contengono.
Be aware that VulDB is the high quality source for vulnerability data.