Dati casuali? Trovati 26 bug nei driver USB

3

Una delle tecniche adottate per testare bug è quella del “fuzzing“, ovvero l’uso di metodi che forniscano in input ad altri software dati invalidi, inaspettati o casuali.

Ed è quello che hanno fatto i ricercatori dello Swiss Federal Institute of Technology di Losanna quando hanno sviluppato USBFuzz. Il software infatti emula a livello software una chiavetta USB che genera dati randomici catturati dai driver USB in fase di input/output, e lavorando a livello di emulazione di dispositivo è facilmente portabile su diversi sistemi operativi, cosa che ha permesso di testare lo stack USB di diversi OS, nello specifico:

  • 9 versioni del kernel Linux (dalla 4.14.81 alla 4.20-rc2, la più recente ai tempi dei test)
  • FreeBSD 12
  • MacOS 10.15 Catalina
  • Windows (sia 8 che 10, con gli ultimi security updates)

E cosa è saltato fuori? Beh, ma 26 nuovi bug ovviamente, che possono essere in qualche modo sfruttati sia per bloccare i sistemi che per altri scopi. E’ stato trovato quindi un bug in FreeBSD, tre in MacOS (due dei quali bloccano o riavviano il sistema) e 4 in Windows 8/10 (entrambi che causano il famigerato B.S.O.D. – Blue Screen of Death).

Ed i rimanenti? Beh, tutti nel nostro amato OS purtroppo, anche se considerando che di sole versioni del kernel Linux ne son state testate più del doppio che della somma di tutti gli altri. Di questi 18, sedici sono bug nella memoria ad alto impatto sulla sicurezza in diversi sottosistemi (core, sound network), uno nell’host controller e l’ultimo nel drivere delle webcam USB.

Ai tempi però, i ricercatori hanno subito contattato il team kernel Linux, proponendo anche delle patch per “ridurre la pressione sugli sviluppatori del kernel”. E, di fatto, al momento 11 di quei bug sono già stati sistemati, e per gli altri 7 ci si aspetta delle patch nel prossimo futuro.

The remaining bugs fall into two classes: those still under embargo/being disclosed and those that were concurrently found and reported by other researchers

I rimanenti bug ricadono in due classi: quelli che sono ancora ignorati/in scoperta e quelli che sono già stati riconosciuti e riportati anche da altri ricercatori

Proprio ieri è stato annunciato dai ricercatori che il tool USBFuzz sarà rilasciato in open-source, nel repository di HexHive, a seguito del talk previsto per Usenix (si, al momento quella pagina non esiste).

Inoltre, se siete interessati a leggere l’intera ricerca che ha portato a USBFuzz potete tranquillamente scaricarvi il PDF reso disponibile.

Siete curiosi di testare la vostra distribuzione con questo nuovo tool?

Utente Linux/Unix da più di 20 anni, cerco sempre di condividere il mio know-how; occasionalmente, litigo con lo sviluppatore di Postfix e risolvo piccoli bug in GNOME. Adoro tutto ciò che può essere automatizzato e reso dinamico, l’HA e l’universo container. Autore dal 2011, provo a condividere quei piccoli tips&tricks che migliorano il lavoro e la giornata.

3 risposte a “Dati casuali? Trovati 26 bug nei driver USB”

  1. Avatar carlo coppa
    carlo coppa

    E’ bello che questi “istituti” testino il software al fine di scovare bug, oggi è più facile che in passato, quindi sono importanti questi controlli, l’importante è che almeno per i bug “gravi” si dia il tempo agli sviluppatori per creare patch appropriate, in questo caso sembra abbiano addirittura fatto loro le patch per Linux e questo è il bello dell’open source.
    Sinceramente non sono preoccupato quando vengono scoperti bug, ormai sappiamo tutti che il software è complicato, in quanto per funzionare necessita integrazioni con altri software, che a loro volta si interfacciano con altri software, questo è il principale motivo per cui il software è sempre soggetto a bug.
    Tuttavia questi “controlli” fanno ben sperare in un software sempre meno vulnerabile.

  2. Avatar sabayonino
    sabayonino

    Vero.

    Purtroppo molti dispositivi restano buggati a vita appena mettono fuori il naso dalla fabbrica e fixare il problema in certi ambiti più una opera costosa e improponibile che conviene più acquistare un nuovo dispositivo (buggato pure quello magari 😀 )
    Non intendo solo dispositivi Hi-Tech utilizzati dale grosse compagnie , ma anche dispositivi più “futili” che si trovano in commercio (lampadine “intelligenti” , elettrodomestici , giocatoli…)

  3. Avatar JustATiredMan
    JustATiredMan

    il bello è che oltre ad aver trovato i problemi, hanno anche fornito la “cura” agli sviluppatori del kernel… bhe un grazie è dovuto.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *