A dicembre 2023 avevamo dato conto della scoperta di una grave falla di sicurezza che coinvolge i principali sistemi operativi. Il problema riguarda l’implementazione dello standard Bluetooth e può consentire a un utente malintenzionato di assumere il controllo del dispositivo vulnerabile, allorquando esso si trovi nel suo raggio d’azione. Disattivare Bluetooth quando non risulta necessario diventa quindi la prima mossa da mettere in campo per prevenire questa tipologia di attacchi informatici.
Come funziona l’attacco e perché è necessario disattivare Bluetooth
Di recente è venuta a galla la scoperta di alcune vulnerabilità critiche (CVE-2023-45866, CVE-2024-21306) nell’implementazione del protocollo Bluetooth. Individuate dal ricercatore esperto di sicurezza informatica Marc Newlin, queste problematiche possono essere sfruttate per inviare dei comandi sui dispositivi altrui, all’insaputa del legittimo proprietario.
In altre parole, le falle in questione permettono di simulare una tastiera Bluetooth, accoppiarla con il dispositivo vulnerabile e utilizzarla per inviare una serie di richieste a distanza, in modalità wireless. Newlin ha anche pubblicato su GitHub una serie di proof-of-concept, script Python che consentono di verificare la modalità di attacco e il comportamento dei dispositivi allorquando ricevono i pacchetti Bluetooth in ingresso.
Questo video pubblicato su YouTube, appena realizzato, mostra come funziona l’aggressione e come un utente malintenzionato possa prendere il controllo, ad esempio, di uno smartphone vulnerabile.
I dispositivi vulnerabili: quali sono
Iniziamo col dire che il problema di sicurezza individuato da Newlin e dimostrato praticamente proprio nelle scorse ore interessa tutti i dispositivi Android (e non solo). Nel caso dei dispositivi Android 11, tuttavia, è disponibile una patch di sicurezza distribuita da Google con l’aggiornamento di gennaio 2024. Tuttavia, è necessario che i vari produttori di smartphone e tablet Android la facciano propria e la distribuiscano ai clienti finali. E questo non è affatto scontato.
Nel caso di Android 10 e versioni precedenti, invece, non è attualmente disponibile alcuna patch correttiva. Verosimilmente, non lo sarà neppure in futuro.
Effettuando una verifica approfondita sul funzionamento dell’attacco, comunque, emerge che il dispositivo vulnerabile deve essere impostato per consentire la modalità discovery. In altre parole, deve risultare “ricercabile” ed effettivamente individuabile dagli altri dispositivi nelle immediate vicinanze. Solo in questo modo l’attacco avviato sfruttando le vulnerabilità Bluetooth può andare in porto.
Nella tabella che segue sono riportati i dispositivi vulnerabili:
Sistema Operativo | Versioni Vulnerabili | CVE | Patch |
---|---|---|---|
Android | 4.2, 5, 6, 7, 8, 9, 10 | CVE-2023-45866 | Nessuna patch disponibile |
Android | 11, 12, 13, 14 | CVE-2023-45866 | Patch rilasciata il 05/12/2023 |
Linux (BlueZ) | alcune distribuzioni | CVE-2023-45866 | Patch BlueZ disponibile |
macOS | 12, 13 | CVE-2023-45866 | Nessuna patch disponibile |
macOS | 14 | CVE-2023-45866 | Patch in macOS 14.2 |
iOS | 16 | CVE-2023-45866 | Nessuna patch disponibile |
iOS | 17 | CVE-2023-45866 | Patch in iOS 17.2 |
Windows | 10, 11, Server 2022 | CVE-2024-21306 | Patch rilasciata a gennaio 2024 |
Come funziona l’attacco
La vulnerabilità in questione è di tipo zero-click: i dispositivi non aggiornati con le ultime patch di sicurezza, possono quindi essere bersaglio di attacco senza la necessità di alcun intervento da parte dell’utente-vittima.
Nella dimostrazione citata in precedenza, è utilizzato uno smartphone Android precedentemente sottoposto a rooting (OnePlus 7 Pro) insieme con il kernel personalizzato NetHunter, che supporta la scansione Bluetooth. È possibile utilizzare anche un adattatore Bluetooth esterno collegato mediante cavo OTG, ma il supporto lato kernel è essenziale.
La procedura di discovery Bluetooth permette di rilevare il MAC address del dispositivo da aggredire. A valle di questo passaggio, è possibile ricorrere ai vari script Python per automatizzare l’attacco, iniettare la pressione di tasti e simulare operazioni compiute dalla vittima sul suo dispositivo personale.
Le vulnerabilità in Bluetooth possono essere sfruttate per controllare a distanza un dispositivo altrui e installare, ad esempio, app spyware sfruttando il pacchetto già pronto Metasploit. Tutti gli interventi sono però possibili se e solo se il dispositivo è sbloccato o non ha alcuna protezione nella schermata di blocco.
Nell’esempio, il ricercatore avvia un attacco verso un dispositivo Android vulnerabile richiedendo l’apertura di un video specifico su YouTube.
Come proteggersi dalle vulnerabilità Bluetooth con Android
Abbiamo detto che l’attacco di key injection effettuabile via Bluetooth è tutt’altro che teorico e può essere utilizzato nella pratica per aggredire inconsapevoli utenti. Ovviamente, l’aggressore deve trovarsi fisicamente vicino ai terminali che intende aggredire. Inoltre, la vittima dovrebbe aver lasciato attivato il modulo Bluetooth e configurato il rilevamento del suo dispositivo in automatico.
Il consiglio per proteggersi dalle vulnerabilità su Android è innanzi tutto quello di installare gli ultimi aggiornamenti software di sicurezza, se disponibili. In secondo luogo, accedendo alle impostazioni Bluetooth, è fondamentale impedire il rilevamento del dispositivo (discovery). Come terzo suggerimento, è sensato disattivare Bluetooth, mantenerlo il più possibile disattivato e abilitarlo solo quando è necessario.
Dal momento che un aggressore non può accedere al contenuto del dispositivo Android e assumerne il controllo allorquando la schermata di blocco fosse impostata correttamente, un altro consiglio consiste nel definire password/PIN forti, una sequenza grafica articolata e abilitare il riconoscimento biometrico. L’attaccante che riuscisse a far leva sulle vulnerabilità Bluetooth descritte in precedenza, può infatti provare a forzare l’accesso ma dopo alcuni tentativi dovrà desistere (a patto che l’utente abbia optato per un meccanismo di protezione “solido”).
Nel caso dei dispositivi vulnerabili, invece, l’aggressore avrebbe viceversa gioco facile se il device risultasse già sbloccato o sprovvisto di qualsiasi meccanismo di protezione.