CVE-2026-31724 in Linux
Riassunto
di VulDB • 16/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
usb: gadget: f_eem: Correggere il ciclo di vita del net_device con device_move
Il net_device viene allocato durante la creazione dell'istanza della funzione e registrato nella fase di bind (associazione) con il dispositivo gadget come genitore nel sysfs. Quando la funzione si disassocia, il dispositivo genitore viene distrutto, ma il net_device sopravvive, generando link simbolici dangling (ponti pendenti) in sysfs:
console:/ # ls -l /sys/class/net/usb0 lrwxrwxrwx ... /sys/class/net/usb0 -> /sys/devices/platform/.../gadget.0/net/usb0 console:/ # ls -l /sys/devices/platform/.../gadget.0/net/usb0 ls: .../gadget.0/net/usb0: File o directory non esistente
Utilizzare device_move() per cambiare il genitore del net_device tra l'albero dei dispositivi gadget e /sys/devices/virtual durante i cicli di bind e unbind (disassociazione). Durante la disconnessione finale, chiamare device_move(NULL) sposta il net_device nell'albero dei dispositivi virtuali prima che il dispositivo gadget venga distrutto. Al successivo riassegnamento, device_move() riposiziona il dispositivo sotto il nuovo gadget, garantendo una corretta topologia sysfs e un ordinamento corretto della gestione dell'energia.
Per mantenere la compatibilità con i driver compositi legacy (ad esempio multi.c), viene utilizzato il flag bound per indicare se il dispositivo di rete è condiviso ed è pre-registrato durante la fase di bind del driver legacy.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.