Quando si decide di attivare Bluetooth, i dispositivi vicini avviano una procedura chiamata pairing o accoppiamento in italiano. Nella modalità Discovery il dispositivo Bluetooth va alla ricerca di altri device Bluetooth nelle immediate vicinanze per stabilire una connessione e iniziare a comunicare reciprocamente. Sfruttando lo stesso principio, un gruppo di ricercatori ha scoperto una modalità di attacco che porta a far impazzire gli iPhone.
Un iPhone con Bluetooth abilitato effettua la scansione dei dispositivi eventualmente posti nelle zone limitrofe. Ponendosi in modalità Discovery, invia “pacchetti di annunci” usando ad esempio BLE (Bluetooth Low Energy) in modo tale da non impattare negativamente sull’autonomia della batteria. Altri dispositivi in modalità scansione, rilevano i pacchetti Discovery e scoprono i possibili candidati per avviare scambi di dati via Bluetooth.
Facendo leva sui “fondamentali” di Bluetooth, è possibile inviare messaggi agli iPhone limitrofi ponendo in essere quello che somiglia molto a una sorta di attacco DoS (Denial of Service). Vediamo come funziona.
Far impazzire gli iPhone via Bluetooth: in che cosa consiste l’aggressione
Immaginate un iPhone che improvvisamente inizia a mostrare sul display continue richieste di connessione da parte di dispositivi Bluetooth quali AirTag, AirPod, Powerbeats, Beats Solo, Beats, Apple TV e così via. Lo si vede in questo video pubblicato su X/Twitter.
L’autore della comparsa dei messaggi di “accoppiamento” è il dispositivo Android che si vede immediatamente a lato dell’iPhone. Precedentemente sottoposto a rooting, lo smartphone Android è equipaggiato con il software AppleJuice.
AppleJuice: spoofing dei messaggi di pairing veicolati tramite BLE dai dispositivi Apple
AppleJuice è uno strumento che consente di effettuare il cosiddetto “spoofing” dei messaggi di pairing Bluetooth. In altre parole, il software è in grado di generare messaggi di accoppiamento fasulli inviandoli ai dispositivi Apple nelle vicinanze, usando la tecnologia BLE.
L’applicazione, che è disponibile pubblicamente sul corrispondente repository GitHub, è stata sviluppata dall’autore esclusivamente per scopi educativi e dimostrativi. L’obiettivo è quello di descrivere com’è possibile inviare messaggi di pairing falsi via Bluetooth, al fine di sensibilizzare gli utenti sulle possibili minacce.
Come funziona l’aggressione che fa impazzire gli iPhone
Il codice di AppleJuice è progettato per funzionare su Raspberry Pi e su Flipper Zero. Tuttavia, essendo Android a sua volta basato sul kernel Linux, un ricercatore ha eseguito la stessa applicazione su un terminale Android. Il dispositivo utilizza anche il kernel personalizzato NetHunter, versione progettata “ad hoc” per la distribuzione Kali NetHunter, sistema operativo nato per il penetration testing e lo svolgimento di test nel campo della sicurezza informatica.
La procedura di attacco prevede la clonazione del repository GitHub di AppleJuice oltre all’installazione di alcuni pacchetti software. Dopo aver individuato l’identificativo dell’interfaccia Bluetooth disponibile sul telefono, è possibile avviare lo script Python disponibile a questo indirizzo.
Come si vede analizzando il contenuto del file dos.py
, lo script è veramente semplice: richiamandolo dalla riga del terminale, inizia a emulare una lunga lista di dispositivi Apple presentandosi così agli iPhone che si trovano fisicamente nelle vicinanze e che hanno il modulo Bluetooth attivo.
Il “lavoro sporco” è svolto dallo script app.py
, parte integrante del pacchetto AppleJuice. Il “succo” di tutte le attività risiede nella funzione bluez.hci_open_dev(dev_id)
che tenta di stabilire una connessione con l’interfaccia Bluetooth. Inizia poi la trasmissione dei cosiddetti advertising packets Bluetooth contenenti informazioni identificative, come il MAC address del dispositivo.
Il ciclo while
infinito, arrestabile premendo CTRL+C
, permette allo script di inviare gli advertising packets in background con un ritardo di 2 secondi tra un’operazione e quella successiva.
Il “dizionario” bt_data_options
contenuto nello script mappa una serie di impostazioni Bluetooth specifiche che rappresentano i diversi tipi e modelli di dispositivi Apple che possono essere emulati.
Qual è il risultato dell’attacco e come proteggersi
Un attacco di spoofing dei messaggi Bluetooth come quello descritto nell’articolo, può comportare alcuni effetti indesiderati ma non causa danni reali ai dispositivi iOS coinvolti. L’autore dello script, tuttavia, paragona l’azione descritta a un attacco DoS perché ripetendo ininterrottamente l’invio degli advertising packets, i possessori degli iPhone nelle vicinanze possono risultare impossibilitati a continuare le attività che stavano sbrigando.
Allo stato attuale, a meno che Apple non intervenga con un aggiornamento di iOS, non ci sono particolari modi per proteggersi dai tentativi di aggressione. L’approccio più efficace consiste, evidentemente, nel disattivare e mantenere disabilitato il modulo Bluetooth. In questo modo, il proprio smartphone non notificherà poi le richieste di collegamento provenienti dai dispositivi che si spacciano per prodotti Apple.