Alcuni ricercatori di Bochum e Saarbrücken hanno individuato in diversi droni prodotti da DJI delle lacune di sicurezza, alcune delle quali gravi, che permettono di cambiare il numero di serie del drone o di disattivare i meccanismi con cui i droni e i loro piloti possono essere localizzati dalle autorità di sicurezza. In alcuni casi, i droni possono persino essere abbattuti a distanza durante il volo. .
Il team guidato da Nico Schiller dell’Istituto Horst Görtz per la sicurezza informatica dell’Università della Ruhr a Bochum e dal Prof. Dr. Thorsten Holz, del Centro Helmholtz per la sicurezza informatica CISPA di Saarbrücken, ha presentato i risultati al Network and Distributed System Security Symposium (NDSS). La conferenza si è svolta dal 27 febbraio al 3 marzo 2023 a San Diego, negli Stati Uniti.
Prima della pubblicazione dei loro risultati i ricercatori hanno informato DJI delle 16 vulnerabilità di sicurezza individuate; il produttore sta attualmente lavorando per eliminarle.
Quattro modelli testati
Il team ha testato tre droni DJI di diverse categorie e successivamente gli esperti informatici hanno riprodotto i risultati anche per il modello più recente, Mavic 3. Utilizzando la tecnica del fuzzing, hanno alimentato l’hardware e il firmware dei droni con un gran numero di dati casuali verificando quali di questi causavano il crash o producevano modifiche indesiderate nei dati del drone, come ad esempio il numero di serie. Per ottenere questi risultati, hanno dovuto innanzitutto sviluppare un nuovo algoritmo.
Poiché i droni DJI sono dispositivi relativamente complessi, il fuzzing doveva essere effettuato con il sistema in funzione. «Abbiamo collegato un computer portatile a un drone e abbiamo innanzitutto cercato di capire come poter comunicare con quest’ultimo e quali interfacce erano disponibili a tale scopo», spiega Nico Schiller. È emerso che la maggior parte della comunicazione avviene tramite lo stesso protocollo, chiamato DUML, che invia al drone comandi in pacchetti.
Quattro errori gravi
Il fuzzing sviluppato dal gruppo di ricerca ha analizzato i dati che avevano causato il crash del software. Un crash di questo tipo indica un errore nella programmazione. Tutti e quattro i modelli testati presentavano lacune di sicurezza. In totale, i ricercatori hanno documentato 16 vulnerabilità.
I quattro modelli presentavano quattro errori gravi che da un lato permettevano di ottenere diritti di accesso estesi al sistema; «Un hacker che intende assumere il controllo del drone può modificarne i dati di registro o il numero di serie e camuffare la propria identità», spiega Thorsten Holz. «Inoltre, DJI adotta sofisticate misure di precauzione per evitare che i droni volino sopra gli aeroporti o altre aree sensibili, come quelle delle prigioni, ma anche questi meccanismi potrebbero essere aggirati». Il gruppo di ricercatori è stato inoltre in grado di far precipitare dei droni mentre erano in volo.
Il prossimo obiettivo del team di Bochum-Saarbrücken è quello di testare la sicurezza di altri modelli.
I dati sulla posizione vengono trasmessi in chiaro
I ricercatori hanno anche preso in esame il protocollo utilizzato dai droni DJI per trasmettere la posizione del drone e del suo pilota in modo da consentirne l’accesso alle autorità della sicurezza . Meidiante l’ingegneria inversa del firmware DJI e dei segnali radio emessi dai droni, il team di ricerca è riuscito a documentare per la prima volta il protocollo di tracciamento chiamato DroneID. «Siamo riusciti a dimostrare che i dati trasmessi non sono criptati, ma che la posizione del pilota e del drone può essere letta praticamente da chiunque con mezzi relativamente semplici», riassume Nico Schiller.
Immagine: RUB, Marquard.
Nico Schiller si è già occupato della sicurezza dei droni con la sua tesi di master presso l’Università di Bochum. Attualmente sta svolgendo un dottorato di ricerca su questo tema.