L'exploit di BadUSB può essere prevenuto?

14

Recentemente ho letto alcune cose sull'uso di BadUSB, ad esempio:

link

La mia comprensione è che un dispositivo collegato a USB può cambiare il suo aspetto (unità, tastiera, scheda di rete, ...), che apre l'opportunità per un'unità USB infetta (o altro dispositivo per quella materia) di simulare cose come una tastiera e inviare comandi dannosi o una scheda di rete e connettersi agli indirizzi Web per scaricare programmi. Il problema sembra essere che il computer si fida automaticamente dei dispositivi USB. Tuttavia, la potenza del chip infetto è probabilmente molto limitata, il che rende difficile simulare hardware più complessi come le schede di rete:

Come prevenire gli attacchi BadUSB sul desktop Linux?

In ogni caso, mi interessa se è principalmente possibile prevenire un simile comportamento:

  • La mia comprensione dell'exploit è corretta?
  • In caso affermativo: non sarebbe possibile implementare un "firewall" software che chiede l'autorizzazione all'utente se sono collegati nuovi dispositivi USB e soprattutto lancia un avvertimento se il "tipo" del dispositivo cambia? Con questo intendo semplicemente non fare clic su ok (che un dispositivo USB dannoso potrebbe fare da solo), ma usare qualcosa come un CAPTCHA.
  • Se ciò non è possibile, perché il software potrebbe non essere in grado di impedire l'utilizzo di un dispositivo USB (o per qualche motivo): una soluzione hardware sarebbe possibile, che inoltra i dati USB, ma per esempio consente solo le unità USB e non le tastiere? In che modo un dispositivo USB comunica al computer il suo "tipo"?
posta molotovsoda 16.08.2014 - 22:14
fonte

6 risposte

6

C'è un problema di pollo e uova con la soluzione "firewall": la tua tastiera e il tuo mouse sono dispositivi USB *. Come si comunica all'utente il sistema operativo che si desidera autorizzare la tastiera e il mouse, senza utilizzare nessuno di essi? Che dire se la tastiera e il mouse sono collegati tramite porte USB su un monitor: verranno scollegati e ricollegati ogni volta che il monitor viene spento e riacceso. Sono sicuro che ci sono altre situazioni in cui il "firewall" lascerà l'utente senza dispositivi di input e nessun modo per approvarne di nuovi, o nel tentativo di evitare quella situazione, approverà automaticamente un dispositivo che non dovrebbe.

* Sì, anche su un laptop. Sono semplicemente dispositivi USB permanentemente cablati.

    
risposta data 16.08.2014 - 23:24
fonte
2

Risposta breve: Sì, può essere prevenuto ma la soluzione non è facile.

Come discusso da Steve Gibson in un recente podcast di Security Now ( qui ) e nel Nero originale Presentazione di Hat ( qui ), se ricordo male, la soluzione implica il blocco del firmware in questi controller di dispositivo USB. Ciò significa che il firmware verrà scritto su un chip ROM che non consente la modifica del firmware su quel chip che costituisce la base di questo exploit.

La tua comprensione dell'exploit sembra abbastanza accurata, ma ti suggerisco di guardare la presentazione originale sopra menzionata.

Sebbene il tuo suggerimento di un tipo di soluzione software sia potenzialmente in grado di rilevare i dispositivi già sfruttati, non risolve la causa principale del problema. Inoltre, sfortunatamente è il caso che in alcuni casi i dispositivi UBS dovrebbero essere in grado di cambiare il loro tipo o addirittura di essere più tipi di dispositivi contemporaneamente. In effetti, nella presentazione di Black Hat, gli autori fanno anche un buon esempio di come questa capacità in USB potrebbe essere abbastanza completa. Sfortunatamente l'avvertimento è solo questo - un avvertimento - e può essere facilmente ignorato o messo a tacere. Se dovessi segnalare ogni cambio di tipo per i dispositivi USB, riceverai molti falsi positivi.

Un'altra cosa menzionata nel discorso è che c'è pochissima standardizzazione e controllo sui dispositivi USB, quindi non esiste un vero modo per determinare quale dovrebbe essere un dispositivo USB. Quindi non hai nulla per cui confrontarlo veramente.

A proposito. Se hai appena sviluppato un interesse per Infosec, ti suggerisco di iscriverti al podcast Security Now: è davvero fantastico!

    
risposta data 16.08.2014 - 23:19
fonte
1

Finora non esiste un modo sicuro per prevenirlo. La soluzione migliore finora è disabilitare lo stato di "boot mode" del dispositivo e forse disabilitare fisicamente l'accesso con la colla, per esempio.

Ecco un articolo a riguardo link

P.S.potrestiottenere divertente con la cosa colla:)

    
risposta data 13.10.2014 - 14:37
fonte
1

C'è hardware per questo.

USG è un firewall per le tue porte USB. Si collega tra il tuo computer e un dispositivo USB non affidabile, isolando la cattiveria con un firewall hardware interno:

link

    
risposta data 02.04.2017 - 22:39
fonte
0

Se un dispositivo si identifica come adattatore di rete, perché dovrebbe consentirgli di scaricare materiale dal web? o ha già una connessione Internet e può già fare cose, o Windows vorrebbe usare l'IT per connettersi al web, non concedere l'accesso web a un dispositivo di rete (a meno che qualcuno non faccia esplicitamente "connessioni bridge" o simili)

come per "rilevare le modifiche al tipo di dispositivo" - cosa impedirebbe a un dispositivo usb dannoso di presentarsi come un hub che contiene tutto ciò di cui ha bisogno? o forse solo fingere di disconnettersi e riconnettersi come un altro dispositivo?

CAPTCHA non funziona - il sistema che decide se l'input è buono / cattivo è lo stesso sistema che richiede l'input - allo stesso modo in cui un dispositivo canaglia potrebbe "fare clic su OK da solo", potrebbe anche ignorare il captcha - per non parlare di quanto sarebbe doloroso per l'USB: la sua popolarità è dovuta alla facilità d'uso, non alla sicurezza

Per quanto riguarda ciò che potrebbe effettivamente stare dentro una chiavetta USB, guarderei i componenti contenuti in una scheda sd wifi (come this ) - e presuppone che componenti simili possano inserirsi anche all'interno di una chiavetta USB - il che significa un piccolo SO, completo di CPU, RAM, Wi-Fi e memoria flash

    
risposta data 16.08.2014 - 22:34
fonte
0

Primo: non tutti i dispositivi USB saranno sensibili a BadUSB. Molti sono progettati con circuiti circuitali minimi e non possono assumere altre funzioni e / o non dispongono di firmware che può essere riprogrammato. Questo è particolarmente vero per il mercato di massa, articoli a basso costo come unità USB in cui ogni centesimo conta.

L'altro angolo su questo è che se il software può riprogrammare il dispositivo USB, il software può anche rilevare se il dispositivo USB è riprogrammabile e quindi spegnerlo. Non sarei sorpreso se la maggior parte dei produttori di AV non stessero già lavorando su un modo per rilevare quali dispositivi sono riprogrammabili e quindi negare l'accesso al sistema.

BadUSB non è la fine del dispositivo USB, ma è solo un'altra vulnerabilità che deve essere gestita.

    
risposta data 23.08.2014 - 00:21
fonte

Leggi altre domande sui tag