Nel corso degli ultimi cinque anni, le auto elettriche si sono evolute tantissimo: da essere un’idea futuristica e quasi irrealizzabile, sono diventate una pratica realtà che in molti desiderano acquistare. I prezzi sono diminuiti in modo significativo e, all’inizio del 2017, il numero di auto elettriche vendute ha raggiunto il picco di due milioni di esemplari, dato in costante crescita. Le infrastrutture che ruotano attorno alle auto elettriche si stanno sviluppando velocemente e, al giorno d’oggi, le stazioni o colonnine di ricarica non sono più così inusuali.
Ma come accade spesso quando si tratta di opportunità di business in rapida ascesa, le case produttrici si presentano in massa per accaparrarsi la fetta più grande del mercato e non pensano troppo a ciò che succederà in futuro. Invece noi ci preoccupiamo soprattutto di sicurezza, non a livello di incolumità delle persone (le colonnine di ricarica difficilmente provocheranno danni fisici agli utenti), parliamo piuttosto di sicurezza informatica. Perché fornire energia e dietro pagamento sono servizi che le colonnine elettriche danno senza tenere molto in considerazione l’importanza di salvaguardare i vostri dati personali e i vostri soldi. Mathias Dalheimer ha analizzato il problema durante il suo intervento al trentaquattresimo Chaos Communication Congress, riguardante proprio le vulnerabilità delle infrastrutture per le automobili elettriche.
Come funziona la ricarica dei veicoli elettrici
All’aumentare il numero di auto elettriche, aumentano anche le colonnine di ricarica, e per l’erogazione dell’energia i fornitori del servizio ricevono ovviamente un compenso. Per questo tipo di transazioni, è necessario un sistema integrato per l’incasso degli importi. Prima di iniziare a ricaricare l’auto, bisogna identificarsi con un token ID, una tessera NFC (Near-Field-Communication) associata a un conto per il pagamento del servizio di ricarica del veicolo.
La gestione dei pagamenti di solito viene effettuata mediante l l’Open Charge Point Protocol, che regola le comunicazioni tra il sistema di pagamento da un lato e il punto di ricarica dall’altro. Quest’ultimo invia una richiesta al sistema di pagamento per l’identificazione del cliente; il sistema accetta la richiesta e avvisa il punto di ricarica, così viene erogato il servizio. Successivamente, si calcola la quantità di energia consumata e il totale viene inviato al sistema di gestione dei pagamenti che emetterà la fattura alla fine del mese.
Niente di sorprendente, vero? Ebbene, diamo un’occhiata più da vicino per capire dove sta il problema.
Tanti problemi
Dalheimer ha analizzato varie componenti del sistema e ha riscontrato che tutte avevano problemi di sicurezza. Iniziamo con i token ID, prodotti da fornitori esterni, la maggior parte dei quali, sorpresa sorpresa, non proteggono adeguatamente i dati degli utenti. Si tratta di semplici tessere NFC dove non vengono cifrati i dati né quant’altro possano contenere. Ma ci sono anche altri problemi che riguardano queste tessere; innanzitutto, sono abbastanza facili da programmare e Dalheimer lo ha dimostrando copiando la propria e pagando con la tessera falsa. Per un cybercriminale sarebbe piuttosto semplice programmare un gran numero di tessere, nella speranza di imbattersi in un numero di conto funzionante (il ricercatore non lo ha fatto per motivi etici).
Siccome la fattura arriva una volta al mese, se il proprietario di un veicolo elettrico è stato hackerato in qualche modo, non se ne accorgerà fino a quando non gli arriverà l’estratto conto.
Altro aspetto poco chiaro della procedura: la maggior parte delle colonnine di ricarica impiega il protocollo OCPP, ormai già abbastanza obsoleto e in HTTP (e sappiamo bene cosa c’è che non va in questo, non c’è cifratura delle transazioni). Dalheimer ha dimostrato che si può portare a termine un attacco man-in-the-middle ritrasmettendo una transazione.
Inoltre, entrambe le colonnine esaminate dal ricercatore erano dotate di porte USB; bastava collegare una memoria estraibile per copiare i dati di configurazione e di accesso. Da questi dati si poteva accedere facilmente a username e password per il server OCPP e, in buona misura, anche ai token di precedenti utenti, ciò di cui si ha bisogno per clonare le tessere.
E ciò che è peggio, se si modificano i dati nella memoria estraibile e poi vengono ricaricati sulla colonnina, quest’ultima si aggiornerà automaticamente con i nuovi dati, comportando così una nuova configurazione.
In sostanza, i cybercriminali possono ottenere i numeri ID delle tessere, clonarli e utilizzarli per le transazioni (che andranno a carico dell’effettivo proprietario del conto) o ritrasmettere le richieste disattivando praticamente la colonnina. Inoltre, si possono ottenere le autorizzazioni per il rooting e fare quello che si vuole con questi punti di ricarica. E il tutto perché i fornitori del servizio non si sono preoccupati della sicurezza.