Hacking Bluetooth: Getting Started | Cerca per titolo, autore, parola chiave | ||||||||
Hacking Bluetooth: Getting Started Questa sezione di Hackers-Arise è dedicata all'hacking del protocollo Bluetooth. Bluetooth è la piconet che si estende almeno fino a 10 metri intorno ai nostri apparecchi (molte periferiche o apparecchiature possono raggiungere i 100 metri, ma con antenne speciali si può arrivare anche oltre) e che ci permette di connettere le cuffie audio, gli altoparlanti ed altre apparecchiature elettroniche alle nostre periferiche mobili. Hackerare il protocollo Bluetooth significa potenzialmente rubare informazioni sensibili, quali i contatti, intercettare messaggi telefonici, inviare messaggi non voluti, etc. Quando due periferiche Bluetooth si connettono, si dice che vengono accoppiate (paired). Ogni periferica Bluetooth che sia discoverable trasmette una serie di informazioni, su se stessa:
Quando due periferiche si accoppiano, si scambiano una chiave segreta (pre-shared secret or link key). Ciascuna periferica conserva questa chiave, al fine di identificare l'altra nei futuri accoppiamenti. Ogni periferica (scheda Bluetooth) ha un identificativo univoco a 48-bit (simile ad un MAC address) e, spesso, un nome, assegnato direttamente dal produttore della scheda.
Questo è il diagramma del processo di pairing (accoppiamento). Sebbene sia sempre più sicuro, esso resta, come vedremo, ancora vulnerabile. Le periferiche Bluetooth creano una rete molto piccola, chiamata piconet. In una piconet, c'è un master e fino a sette slaves attivi. Poiché Bluetooth usa la tecnica del frequency hopping (le frequenze cambiano 1.600 volte al secondo), le comunicazioni tra le periferiche non interferiscono l'una con l'altra, poiché la possibilità che due periferiche usino la stessa frequenza è davvero molto piccola. L'implementazione Linux dello stack di protocolli Bluetooth è BlueZ. BlueZ ha un certo numero di strumenti software, programmi, che possiamo usare per lavorare con Bluetooth ed eventualmente hackerarlo. Tra questi:
Le periferiche Bluetooth non devono usare tutti i protocolli dello stack (proprio come nello stack TCP/IP). Lo stack di Bluetooth è stato sviluppato per permettere l'uso di Bluetooth da parte di una vasta gamma di applicazioni di comunicazione. Di solito, un'applicazione usa una sezione verticale di questo stack. Ecco i vari strati (layer) dei protocolli Bluetooth e i protocolli ad essi associati:
Oltre ai layer di protocolli, le specifiche Bluetooth definiscono una HCI (host controller interface), che mette a disposizione un'interfaccia a comandi per il controller baseband, per il link manager, per l'accesso allo status e ai registri di controllo dell'hardware. Da qui, i nomi dei tool che abbiamo appena menzionato: hciconfig hcidump hcitool
La sicurezza in Bluetooth si fonda su poche tecniche. Innanzitutto, il frequency hopping. Sia la periferica master che la periferica slave conoscono l'algoritmo del frequency hopping, ma non un eventuale terzo incomodo. In secondo luogo, una chiave di cifratura, scambiata in fase di pairing delle due periferiche, che verrà usata sia per l'autenticazione, sia per la cifratura dei dati (128-bit). Esistono tre differenti modalità di interazione in Bluetooth:
Vediamo, ora, quali sono gli attacchi che possono essere compiuti ad una rete Bluetooth:
|
|||||||||
Hacking Bluetooth: Getting Started | Disclaimer: questo è un link a contenuti ospitati su server esterni. |