Le insidie del Bluetooth

La tecnologia wireless Bluetooth è una delle più recenti in uso oggi e prende il nome da Harald Blaatand (dente blu), un re di Danimarca e Norvegia del X secolo che unì molte tribù scandinave indipendenti in un unico regno. Questa tecnologia di comunicazione è progettata per essere un protocollo universale e standard per le comunicazioni short-range, con l’obiettivo di sostituire i cavi che collegano dispositivi elettronici portatili e fissi. 

Bluetooth opera nella gamma 2.4 GHz e consente la comunicazione senza fili su una gamma di distanze in tre classi di potenza: corto raggio (10-100 cm), portata ordinaria (10 m) e lungo raggio (100 m). 

Tra i dispositivi che utilizzano comunemente il Bluetooth, per sincronizzare la posta elettronica, inviare messaggi o connettersi ad auricolari, ci sono telefoni cellulari, wearables e smartphone. 

E’ importante notare che esistono rischi dovuti a varie vulnerabilità della tecnologia, come il bluebugging, bluejacking, blueprinting e bluesnarfing, che possono essere utilizzate per attaccare un dispositivo tramite il protocollo.

Bluetooth
Immagine | Envato Elements

Gli elementi tecnologici

Analizziamo la tecnologia necessaria per hackerare uno smartphone, alcuni degli strumenti esistenti e le precauzioni che gli utenti possono prendere per proteggere i propri dispositivi Bluetooth.

Prima occorre qualche cenno tecnico per comprendere l’architettura e i protocolli in gioco:

  • Logical Link Control and Adaptation Protocol (L2CAP): fornisce l’interfaccia dati tra i protocolli dati e le applicazioni di livello superiore e i livelli inferiori del dispositivo; effettua il multiplexing di più flussi di dati e si adatta tra diverse dimensioni di pacchetti.
  • Radio Frequency Communications Protocol (RFCOMM): emula le funzioni di un’interfaccia di comunicazione seriale (ad esempio, EIA-RS-232) su un computer. E’ possibile accedere a RFCOMM da una varietà di schemi di livello superiore, inclusi i comandi AT, il protocollo WAP (Wireless Application Protocol) sullo stack TCP/IP (Transmission Control Protocol /Internet Protocol) o il protocollo Object Exchange (OBEX).
  • Object Exchange protocol: un protocollo, indipendente dal fornitore, che consente ai dispositivi di scambiare oggetti standard, come  file di  dati, biglietti  da visita (ad esempio, file  vCard) e informazioni di calendario (ad esempio, file vCal ).   OBEX è un protocollo di livello superiore e funziona con diversi sistemi operativi e diversi protocolli di comunicazione (ad esempio, Bluetooth e IrDA).

Per violare i telefoni Bluetooth da altri telefoni, la maggior parte degli strumenti utilizzati sfrutta il linguaggio di programmazione Java. Tuttavia, affinché il software funzioni, il telefono utilizzato per l’attacco deve supportare JSR-82, che è l’interfaccia di programmazione ufficiale per le applicazioni Bluetooth di Java. Se il telefono dell’utente malintenzionato non supporta JSR-82, non sarà possibile utilizzarlo per attaccare altri telefoni. È bene sapere che, sebbene il Bluetooth sia ampiamente disponibile sugli smartphone, il supporto Java e JSR-82 potrebbe non esserlo.

JSR-82 è composto da due pacchetti principali: javax.bluetooth, che rappresenta l’API Bluetooth principale, e javax.obex, che fornisce API ad altri protocolli, come OBEX, e che è indipendente dallo stack Bluetooth. Le capacità di JSR-82 includono la possibilità di registrare i servizi, effettuare il discovery di dispositivi e servizi, stabilire connessioni L2CAP, RFCOMM e OBEX tra dispositivi, utilizzando queste connessioni per inviare e ricevere dati, gestire e controllare le connessioni di comunicazione e fornire controlli di sicurezza per queste attività.

La sicurezza di bluetooth

Bluetooth prevede quattro diverse modalità di sicurezza. La modalità di sicurezza 1 non applica alcuna forma di protezione, lasciando il dispositivo vulnerabile ad eventuali attacchi. La modalità di sicurezza 2, invece, applica la sicurezza a livello di servizio, offrendo una certa protezione per specifiche applicazioni, ma senza protezione aggiuntiva per il dispositivo stesso. La modalità di sicurezza 3, invece, rappresenta un livello più forte, poiché utilizza meccanismi di autenticazione e cifratura a livello di collegamento. Questa modalità protegge il dispositivo da diverse forme di intrusioni, garantendo la sicurezza di tutti i servizi e le applicazioni che utilizzano Bluetooth.

Al livello 4, il secure pairing avviene tramite algoritmi DH ellittici, Elliptic Curve Diffie Hellman, che assicurano generazione e scambio chiavi sicuri.

Tutti i servizi Bluetooth hanno un livello di sicurezza predefinito, che può essere ulteriormente suddiviso in tre sottolivelli. Alcuni servizi richiedono l’autenticazione e l’autorizzazione per poter essere utilizzati, mentre altri richiedono solo l’autenticazione.

I dispositivi Bluetooth hanno a loro volta due livelli per categorizzare altri dispositivi, ovvero dispositivi attendibili e non attendibili.

Tipi di attacchi

Esistono numerosi tipi di attacchi che possono essere effettuati sui dispositivi Bluetooth, spesso con nomi pittoreschi come bluebugging, bluebumping, bluedumping, bluejacking, bluesmacking, bluesnarfing, bluespoofing e car whispering. Tutti questi approcci sfruttano le vulnerabilità del protocollo Bluetooth per consentire ad utenti malintenzionati di accedere al telefono di una vittima in modo non autorizzato. Va notato che, sebbene il Bluetooth sia comunemente associato a reti con un raggio di azione limitato a 100 metri, sono stati documentati attacchi avvenuti a distanze superiori a 1.500 metri, utilizzando strumenti come Bluetooone o Sena UD-100.

Un approccio comune all’hacking dei dispositivi Bluetooth consiste nell’utilizzare file malformati. Questi, una volta scambiati tra dispositivi BT, possono causare risultati imprevisti. Ricevendo un file non valido, ad esempio un file vCard o vCal contraffatto, il dispositivo potrebbe diventare instabile o bloccarsi del tutto. In alternativa, un utente malintenzionato potrebbe utilizzare un file vCard o vCal per iniettare comandi mirati ad assumere il controllo del dispositivo. Questo tipo di attacco può causare danni seri.

Alcuni dei più comuni attacchi ai dispositivi Bluetooth includono:

  • Bluebugging: un attacco molto efficace che consente a un utente malintenzionato di assumere il controllo del telefono della vittima utilizzando il parser di comandi AT. Con Bluebugging, un hacker può accedere al telefono di una vittima ed effettuare telefonate, inviare e leggere messaggi SMS, accedere alla rubrica e modificarne i contatti, connettersi a Internet, impostare l’inoltro di chiamata e altro ancora.
  • Bluejacking: consiste nell’invio di messaggi non richiesti a dispositivi Bluetooth, inviando una vCard con un messaggio nel campo del nome e sfruttando il protocollo OBEX.
  • Bluesmack: un attacco simile al Ping-of-Death, che utilizza messaggi echo L2CAP per causare un buffer overflow e rendere il dispositivo inutilizzabile.
  • Bluesnarf e Bluesnarf++: attacchi che consentono di sottrarre informazioni da un dispositivo Bluetooth, utilizzando il profilo push OBEX. L’attaccante deve individuare un telefono Bluetooth in modalità rilevabile. Con Bluesnarf, l’hacker può accedere alla maggior parte dei servizi Object Push Profile e recuperare nomi di file, invece di inviare informazioni vCard come previsto. Con Bluesnarf++, l’attaccante ha accesso completo al file system del telefono, senza dover accoppiare i due dispositivi. L’utente malintenzionato può quindi eliminare file cruciali, rendendo inutilizzabile il dispositivo della vittima, e accedere a tutte le schede di memoria collegate.
  • Helomoto: un attacco simile a Bluebugging, ma che sfrutta le scarse implementazioni della gestione dei dispositivi attendibili su alcuni telefoni. L’attaccante invia una vCard a un profilo push OBEX non autenticato sul telefono della vittima e interrompe il processo di trasferimento. La vittima elenca quindi il telefono dell’attaccante come dispositivo attendibile e, l’utente malintenzionato, può assumere il controllo del dispositivo emettendo comandi AT. Questo attacco è stato scoperto per la prima volta sui telefoni Motorola.
  • Car Whispering: È possibile ascoltare le conversazioni o inviare/ricevere contenuti attraverso l’intercettazione illegittima dei contenuti audio dei sistemi Bluetooth delle auto. Questo attacco sfrutta le configurazioni errate dei dispositivi che spesso utilizzano codici di accoppiamento di default o PIN semplici quali  “1234” o “0000”.

Quelli elencati sono solo alcuni dei possibili attacchi che possono essere lanciati contro le interfacce Bluetooth in telefoni, laptop e persino automobili.

Strumenti di attacco

La rete offre molti tools per attaccare dispositivi Bluetooth, quali Bloover II, BT Info, BlueScanner, BlueBugger, BTCrawler, BTScanner, BlueMaho e pybluez.

Tra i dispositivi professionali, utilizzati per l’analisi dei protocolli, citiamo Bluetooth Explorer di Ellisys, mentre strumenti come Ubertooth One possono aiutare a monitorare e intercettare il traffico.

Cuffie bluetooth
Immagine | Envato Elements

Precauzioni da adottare

Come per molti aspetti della sicurezza, la consapevolezza e la vigilanza dell’utente sono la migliore difesa contro i tipi di attacchi descritti. Un modo efficace per proteggere un dispositivo, ovviamente, è semplicemente disattivare il Bluetooth quando non utilizzato.

Se il Bluetooth deve restare abilitato per ragioni operative, l’utente può impostare il dispositivo come nascosto. La modalità invisibile, consente comunque il funzionamento delle comunicazioni Bluetooth, ma solo con dispositivi attendibili configurati in precedenza. Questa protezione non è perfetta, se un utente malintenzionato scopre che un determinato dispositivo è attendibile, può utilizzare il proprio dispositivo Bluetooth per mascherarsi da dispositivo attendibile e sarà quindi in grado di connettersi al telefono di destinazione. Si tratta di un attacco di spoofing comune.

E’ anche consigliabile modificare il pin di default associato al bluetooth, diffidare delle richieste di nuovo pairing da dispositivi già conosciuti e accoppiati e disattivare le funzionalità di pairing automatico. La volontà di connessione deve essere sempre esplicita e prevedere un PIN.

Gestione cookie