"Good hacking is a gift": abbiamo hackerato una Tesla

All'Italian Hacker Camp di Padova ci siamo tolti qualche piccola soddisfazione — tipo piazzare il nostro logo nel cruscotto di una Tesla.

|
ago 8 2018, 11:17am

Tutte le foto: Giorgia Zoe Righini

"Good hacking is a gift", ha scritto qualche tempo fa Elon Musk su Twitter. Una verità sacrosanta in generale, e in particolare per il fondatore della casa automobilistica che produce le supercar tecnologicamente più avanzate del pianeta. Come si può facilmente intuire, per un sistema complesso come quello di una Tesla che permette di controllare la posizione, decidere la temperatura a bordo, limitare la velocità e suonare il clacson da una app ogni bug segnalato è un piccolo passo verso la perfezione e un ottimo modo per evitare il potenziale tracollo dell'intera flotta.

All'Italian Hacker Camp di quest'anno, che si è svolto al Fenice Green Energy Park di Padova dal 2 al 5 agosto, abbiamo scoperto che esiste anche un Bug Bounty Program che mette in palio cifre dai 100 ai 10.000 dollari per chi rintraccia delle vulnerabilità nei software dell'auto. Così, nella speranza di svoltare l'estate, abbiamo deciso di cimentarci nell'hacking della Tesla che era lì a disposizione guidati da Mastro Gippo, irrecuperabile entusiasta del mondo-Musk e imprenditore nel settore ricerca e sviluppo delle auto elettriche di Cartender, una società di Padova.

"Fra le molte cose interessanti che differenziano Tesla dai comuni produttori di auto, ci sono due computer su cui gira il sistema operativo Linux: l’interfaccia utente del cruscotto, cioè il display dietro il volante, e il display dell’infotainment a destra del conducente. Ora non ci interessa scendere troppo nel dettaglio del controllo dell’auto in senso stretto, tipo farla muovere senza nessuno a bordo come è già stato fatto, ma sperimentare con le funzionalità e le potenzialità di queste due interfacce," ha spiegato Mastro Gippo.


Le due interfacce a cui ci siamo collegati con il nostro laptop.

"Prima di arrivare al camp avevamo già ottenuto l’accesso come amministratore al display del cruscotto. Per farlo è stato necessario smontare gli interni della macchina in modo da potersi collegare fisicamente alla rete interna che fa comunicare il cruscotto con il CID, central information display. Una volta allacciati alla rete che li collega, dobbiamo mettere uno switch di rete, ovvero una specie di moltiplicatore di porte, per intercettare le comunicazioni che avvengono tra le interfacce," ha continuato.

Ci sono due tipi di messaggi: quelli che vengono inviati a tutti in broadcast il cui funzionamento è molto simile a un bus CAN, ovvero allo standard di comunicazione di tutte le auto e quelli che vengono scambiati con il protocollo HTML.

"I messaggi in broadcast sono molto numerosi e costanti, e vengono inviati e consumati al momento, mentre le richieste HTML sono una tantum — per esempio: alzare il volume — per cui non serve una grande efficienza ma si predilige la semplicità di sviluppo. Queste richieste HTML sono dette vehicle API, e descrivono le modalità di funzionamento della comunicazione tra i due sistemi" ha chiarito Mastro Gippo.

Mastro Gippo all'opera.

Una volta in mezzo ai due sistemi è stato possibile intercettare questi comandi, manipolarli e inviarne dei nostri. Per esempio, siamo riusciti ad aprire il tettuccio dell'auto inviando i comandi dal nostro computer. Poi, entrando nel cruscotto, siamo riusciti a leggere tutti i file, a capire come funziona il sistema in sé e a estrarre una serie di comandi a cui prima non si aveva accesso.

"Li abbiamo trovati esplorando il funzionamento del software, e facendo il reverse engineering dei binari del software dell’infotainment. Una volta lì, è stato relativamente semplice interagire con lo schermo, e osì ci abbiamo piazzato il logo di Motherboard. Era la cosa più semplice che potessimo fare per far capire a tutti le potenzialità della cosa," ha aggiunto.

Alla fine dell’operazione, ho chiesto a Mastro Gippo se il fatto che una Tesla sia hackerabile è potenzialmente pericoloso per la vita di chi la guida, e lui mi ha rassicurata a modo suo: "Se voglio ammazzarti ci sono modi più veloci e pratici dell'hacking, tipo tagliarti i freni. Ovviamente queste auto sono esposte a dei rischi, soprattutto in quanto connesse a internet. Il rischio più grosso è che qualcuno riesca a entrare nel sistema centrale per creare problemi all'intera flotta, ma in quel caso sarebbe più un danno economico e d'immagine per l'azienda che la fantascienza dell’hacker che ti ammazza da remoto."

"Anche i furti, seppur in parte facilitati perché ogni funzionalità ha le sue vulnerabilità, sono più difficili da attuare ed è più difficile rivendere le componenti perché sono tutte codificate. Poi usando i metodi classici, per esempio rubando le chiavi, i ladri possono essere localizzati e fermati da remoto. Ma un ladro così esperto da poter rubare una Tesla può facilmente trovare un lavoro più redditizio e con meno rischi. Magari in un futuro in cui le auto saranno completamente autonome, un hacker malintenzionato potrà farsi recapitare l'auto direttamente a casa, ma ne riparliamo fra qualche anno," ha concluso.