Tesla, che sta cercando di commercializzare veicoli elettrici accessibili a tutti, è orgogliosa dei suoi cosiddetti aggiornamenti via etere, spingendo automaticamente il nuovo codice per correggere i bug e aggiungere funzionalità. Ma un ricercatore sulla sicurezza ha dimostrato le vulnerabilità del sistema di accesso senza chiave di Tesla Model X: un hacker potrebbe riscrivere il firmware di un portachiavi tramite connessione Bluetooth, estrarre un codice di sblocco dal portachiavi e usarlo per rubare un Model X in pochi minuti.
Come rubare una Tesla Model X tramite il Bluetooth
Lennert Wouters, ricercatore sulla sicurezza presso l’università belga KU Leuven, ha rivelato oggi una situazione di vulnerabilità che ha trovato nelle vetture Tesla Model X e nei loro portachiavi senza chiave. Ha scoperto che queste vulnerabilità combinate possono essere sfruttate da qualsiasi ladro d’auto che riesca a leggere il numero di identificazione del veicolo – di solito visibile sul cruscotto di un’auto attraverso il parabrezza – e che si trovi a circa 15 metri dal portachiavi della vittima.
Il kit hardware necessario per effettuare la rapina è costato a Wouters circa 300 dollari, si trova all’interno di uno zaino ed è controllato dal telefono del ladro. In soli 90 secondi, l’hardware può estrarre un codice radio che sblocca il modello X del proprietario. Una volta che il ladro d’auto è all’interno, una seconda, diversa vulnerabilità trovata da Wouters permetterebbe al ladro di accoppiare il proprio portachiavi con il veicolo della vittima dopo un minuto di lavoro e di scappare con l’auto.
“Fondamentalmente una combinazione di due vulnerabilità permette a un hacker di rubare una Model X in pochi minuti”, dice Wouters, che ha intenzione di presentare le sue scoperte alla conferenza Real World Crypto di gennaio.
“Se le combini, ottieni un attacco molto più potente”.
Wouters dice di aver avvertito Tesla della sua tecnica di hacking senza chiave del Modello X ad agosto. Dice che l’azienda gli ha detto che ha intenzione di iniziare a lanciare un aggiornamento del software sui suoi portachiavi questa settimana – e possibilmente anche sui componenti delle sue auto – per prevenire almeno una delle parti dell’attacco. Tesla ha detto a Wouters che la patch potrebbe richiedere quasi un mese per essere installata su tutti i suoi veicoli vulnerabili, quindi i proprietari di Model X dovrebbero essere sicuri di installare tutti gli aggiornamenti che Tesla mette a loro disposizione nelle prossime settimane per prevenire l’hackeraggio. Nel frattempo, il ricercatore belga dice di essere stato attento a non pubblicare alcun codice e a non rivelare dettagli tecnici che consentirebbero ai ladri di auto di eseguire i suoi trucchi.
La tecnica di Wouters sfrutta una serie di problemi di sicurezza che ha scoperto nel sistema di accesso senza chiave del modello X che insieme si sommano in un metodo per sbloccare completamente, avviare e rubare un veicolo. In primo luogo, i portachiavi della Model X mancano del cosiddetto “codice di firma” per gli aggiornamenti del firmware. Tesla ha progettato i portachiavi del modello X per ricevere via etere gli aggiornamenti del firmware via Bluetooth collegandosi in modalità wireless al computer all’interno di una model X, ma senza confermare che il nuovo codice del firmware abbia una firma crittografica: imperdonabile da parte di Tesla.
Wouters ha scoperto che poteva usare il proprio computer con Bluetooth per connettersi al portachiavi di una Model X, riscrivere il firmware e usarlo per generare un codice di sblocco per il veicolo. Potrebbe poi inviare quel codice al proprio computer via Bluetooth. L’intero processo richiedeva 90 secondi.
All’inizio, Wouters ha scoperto che stabilire la connessione Bluetooth non era così facile. La radio Bluetooth del portachiavi modello X si “sveglia” solo per alcuni secondi quando la batteria del dispositivo viene rimossa e poi reinserita. Ma Wouters ha poi scoperto che il computer all’interno della Model X responsabile del sistema di ingresso senza chiave, un componente noto come modulo di controllo del corpo (BCM), può anche eseguire quel comando di risveglio Bluetooth. Acquistando il proprio BCM Model X su eBay – dal costo variabile da $50 a $100 – Wouters potrebbe copiare il segnale radio a bassa frequenza inviato al portachiavi. (Mentre il comando di sveglia iniziale deve essere inviato da una distanza radio ravvicinata – circa 15 metri – il resto del trucco di aggiornamento del firmware può essere eseguito da centinaia di metri di distanza se la vittima si trova all’aperto).
Wouters ha anche scoperto che il BCM prende il codice unico che usa per provare la sua identità al portachiavi dalle ultime cinque cifre del numero VIN dell’auto. Un ladro sarebbe in grado di leggere quelle cifre dal parabrezza dell’auto da rubare, e potrebbe poi usarlo per creare un codice per il suo BCM. “Si finisce con un BCM che pensa di appartenere al veicolo di destinazione”, dice Wouters. “Posso quindi forzare quel BCM ad istruire i portachiavi che hanno lo stesso identificatore di quell’auto a svegliarsi, fondamentalmente”.
Anche tutto quell’hacking intelligente, tuttavia, ha portato Wouters solo fino a sbloccare l’auto. Per sbloccarla e guidarla, doveva fare un passo avanti. Una volta all’interno del Modello X, Wouters ha scoperto di poter collegare il proprio computer a una porta accessibile tramite un piccolo pannello sotto il display. Dice che questo può essere fatto in pochi secondi, senza attrezzi, tirando fuori un piccolo contenitore sul cruscotto.
Questa porta permette al computer di inviare comandi alla rete di componenti interni dell’auto, nota come CAN bus, che include il BCM. Potrebbe quindi istruire il BCM del modello X ad accoppiarsi con il proprio portachiavi, dicendo essenzialmente all’auto che la sua chiave falsificata è valida. Sebbene ogni portachiavi del Modello X contenga un unico certificato crittografico che avrebbe dovuto impedire all’auto di accoppiarsi con una chiave contraffatta, Wouters ha scoperto che il BCM non ha effettivamente controllato quel certificato. Questo gli ha permesso in un solo minuto di andare sotto il cruscotto, di registrare la propria chiave del veicolo e di portarla via.
Wouters osserva che le due vulnerabilità più gravi che ha trovato – la mancanza di convalida sia per gli aggiornamenti del firmware del portachiavi che per l’accoppiamento di nuovi portachiavi con una macchina – indicano un’apparente disconnessione tra il design di sicurezza del sistema di accesso senza chiave del modello X e come è stato implementato. “Il sistema ha tutto ciò di cui ha bisogno per essere sicuro”, dice Wouters. “E poi ci sono alcuni piccoli errori che mi permettono di aggirare tutte le misure di sicurezza”.
Per dimostrare la sua tecnica, Wouters ha assemblato un dispositivo di piccole dimensioni che comprende un minicomputer Raspberry Pi, un BCM Model X di seconda mano, un portachiavi, un convertitore di potenza e una batteria. L’intero kit, che può inviare e ricevere tutti i comandi radio necessari dall’interno di uno zaino, gli è costato meno di 300 dollari. E Wouters lo ha progettato in modo da poterlo controllare furtivamente, inserendo il numero VIN dell’auto, recuperando un codice di sblocco e accoppiando una nuova chiave, il tutto da un semplice prompt di comandi sul suo smartphone.
Wouters dice che non ci sono prove che la sua tecnica sia stata utilizzata per i furti d’auto di grandi dimensioni nel mondo reale. Ma negli ultimi anni i ladri hanno preso di mira attivamente i sistemi di ingresso senza chiave di Tesla per rubare veicoli, utilizzando “attacchi che amplificano il segnale da un portachiavi per sbloccare e avviare un’auto, anche quando il portachiavi è all’interno della casa della vittima e l’auto è parcheggiata nel loro vialetto.”
Il metodo di Wouters, anche se molto più complesso, avrebbe potuto essere facilmente messo in pratica se non avesse avvertito Tesla, dice Flavio Garcia, un ricercatore dell’Università di Birmingham che si è concentrato sulla sicurezza dei sistemi di accesso senza chiavi delle auto. “Penso che sia uno scenario realistico”, dice Garcia. “Questo intreccia una serie di vulnerabilità per costruire un attacco pratico da punto a punto su un veicolo”.
La tecnica di hacking della Model X non è il primo episodio in cui Wouters espone vulnerabilità nei sistemi di ingresso senza chiave di Tesla: ha già scoperto due volte vulnerabilità crittografiche nei sistemi di accesso senza chiave Tesla Model S che avrebbero permesso il furto d’auto basato sulla radio. Anche così, egli sostiene che non c’è nulla di particolarmente unico nell’approccio di Tesla alla sicurezza degli accessi senza chiave. Sistemi comparabili sono probabilmente altrettanto vulnerabili. “Sono auto fantastiche – dice Wouters- ma penso che se passassi tanto tempo a guardare altre marche, probabilmente troverei problemi simili”.
Più unico per Tesla, sottolinea Wouters, è che, a differenza di molte altre case automobilistiche, ha la capacità di spingere fuori le patch del software OTA piuttosto che richiedere che i conducenti portino i loro portachiavi a un concessionario per essere aggiornati o sostituiti. E questo è il vantaggio di trattare le auto come personal computer: anche quando il meccanismo di aggiornamento si è rivelato hackerabile, offre ai possessori di Tesla un’ancora di salvezza per risolvere il problema.