Hackerato il robot aspirapolvere Mi Robot di Xiaomi

Alcuni ricercatori sono riusciti ad hackerare il robot aspirapolvere di Xiaomi. Tuttavia, è molto più sicuro di altri dispositivi “smart”.

La storia dell’Internet delle Cose è costellata di insuccessi in termini di sicurezza informatica, tuttavia non bisogna mai perdere la speranza. Sebbene i ricercatori Dennis Giese e Daniel Wegemer alla fine siano riusciti ad hackerare il robot aspirapolvere di Xiaomi, Mi Robot, lo studio ha rivelato che il dispositivo è molto più sicuro rispetto ad altri oggetti capaci di connettersi a Internet.

Durante il loro intervento al Chaos Communication Congress 34, tenutosi di recente a Lipsia (Germania), i ricercatori hanno mostrato il funzionamento del software di questo dispositivo e hanno spiegato come alla fine siano riusciti a superare i suoi metodi di protezione.

Quando hanno iniziato lo studio, Giese e Wegemer erano entusiasti del fatto che il robot aspirapolvere di Xiaomi avesse l’hardware più potente di molti smartphone: era dotato di ben tre processori ARM, uno dei quali quad core. Interessante, vero? Per iniziare, i due ricercatori hanno impiegato diversi e ovvi vettori di attacco per hackerare il sistema.

Innanzitutto, hanno esaminato una unità per verificare se ci fosse un modo per violare la sicurezza mediante una porta per micro USB. Niente da fare, Xiaomi ha protetto la connessione mediante un sistema di autenticazione. Successivamente, i ricercatori hanno preso Mi Robot per cercare una porta seriale sulla sua scheda madre, ma senza successo.

Il secondo tentativo coinvolgeva la rete: i ricercatori hanno analizzato le porte di rete del dispositivo, ma erano tutte chiuse. Neanche lo sniffing del traffico di rete ha aiutato, le comunicazioni che coinvolgono il robot aspirapolvere sono cifrate. Siamo rimasti davvero colpiti poiché la maggior parte dei dispositivi IoT a questo punto già sarebbero stati hackerati, le case produttrici di solito non si preoccupano tanto della sicurezza di questi oggetti. Di fatto, una nostra recente ricerca ha dimostrato quanto ciò sia vero.

Ma torniamo a Mi Robot di Xiaomi. L’attacco successivo riguardava l’hardware del robot aspirapolvere. Ed è qui che finalmente i  ricercatori sono riusciti nel proprio intento, utilizzando un foglio di alluminio per far andare in corto circuito alcuni dei piccoli contatti che collegano il processore alla scheda madre. In questo modo, il processore è entrato in una speciale modalità che consente di leggere e anche di sovrascrivere sulla memoria flash attraverso la connessione USB.

Giese e Wegemer sono così arrivati al firmware di Mi Robot e, applicando metodi di ingegneria inversa, sono riusciti a modificarlo e a caricarlo nuovamente all’interno del robot aspirapolvere, prendendo di fatto il controllo completo dell’unità.

Hackeraggio wireless di Mi Robot

Tuttavia aprire l’oggetto e hackerare l’hardware non è così “cool” come farlo con un metodo non invasivo. Dopo aver applicato l’ingegneria inversa al firmware, i ricercatori sono riusciti ad hackerare il robot aspirapolvere utilizzando soltanto la connessione Wi-Fi e un paio di vulnerabilità nel meccanismo di aggiornamento del firmware.

Xiaomi ha implementato una procedura di aggiornamento del firmware piuttosto buona: il nuovo software arriva mediante una connessione cifrata e anche il pacchetto firmware è cifrato. Tuttavia, per cifrare i pacchetti degli aggiornamenti, Xiaomi ha impiegato una password statica (“rockrobo”, mai utilizzare password deboli, ricordatelo). Da qui i ricercatori sono riusciti a creare un pacchetto adeguatamente cifrato contenente il proprio firmware manipolato.

Successivamente, hanno impiegato la chiave di sicurezza ottenuta dall’app per smartphone di Xiaomi per inviare una richiesta al robot aspirapolvere con lo scopo di scaricare e installare il nuovo firmware non dal cloud di Xiaomi ma dal proprio server. Ecco fatto, i ricercatori hanno hackerato nuovamente il dispositivo e senza toccarlo.

Dentro il firmware di Mi Robot

Analizzando il firmware, Giese e Wegemer hanno appreso un paio di informazioni interessanti sui dispositivi smart di Xiaomi. Innanzitutto, il firmware di Mi Robot corrisponde praticamente a Ubuntu di Linux, per il quale vengono pubblicate patch di frequente e in poco tempo. In secondo luogo, impiega una password da amministratore differente in ogni dispositivo: non esiste una master password che i cybercriminali possano sfruttare per hackerare un gran numero di robot aspirapolvere in un colpo solo. Infine, il sistema dispone di un firewall che blocca tutte le porte che gli hacker potrebbero utilizzare. Tanto di cappello, Xiamoi: in confronto agli standard che siamo soliti vedere per i dispositivi IoT, si tratta di una protezione sorprendentemente buona.

I ricercatori, tuttavia, sono rimasti delusi per un altro aspetto di Mi Robot: il dispositivo raccoglie e carica sul cloud di Xiaomi tantissimi dati, diversi megabyte al giorno. Oltre a informazioni ragionevoli quali la telemetria delle operazioni del dispositivo, tra i dati raccolti ci sono i nomi e le password delle reti Wi-Fi a cui si connette il dispositivo e le mappe delle stanze che il dispositivo crea con i propri sensori lidar. E ciò che dà più fastidio, questi dati rimangono nel sistema per sempre, anche dopo il ripristino delle impostazioni di fabbrica. Per cui, se qualcuno compra un robot aspirapolvere usato su eBay ed effettua il rooting, potrebbe ottenere facilmente tutte queste informazioni.

Per concludere, vale la pena sottolineare che le due tecniche impiegate da Giese e Wegemer hanno consentito di hackerare solamente l’esemplare di dispositivo in esame.  Con la prima tecnica è stato necessario avere accesso fisico al robot aspirapolvere; per quanto riguarda il secondo metodo, hanno dovuto ottenere la chiave di sicurezza per una richiesta di aggiornamento, e si generano queste chiavi ogniqualvolta il dispositivo viene accoppiato all’app mobile. Le chiavi di sicurezza sono uniche e non sono facili da ottenere se non si ha accesso allo smartphone collegato al dispositivo Xiaomi che si ha intenzione di hackerare.

In generale, possiamo dire però, che Xiaomi si è sforzata molto di più rispetto ad altre case produttrici per salvaguardare la sicurezza dei propri dispositivi, una segnale di speranza per un futuro sempre più connesso. Si può hackerare praticamente qualsiasi cosa, ma se bisogna sforzarsi troppo per farlo, è molto meno probabile che i cybercriminali ci provino… sappiamo che vanno sempre alla ricerca di soldi facili!

Consigli