La cyber security del mondo automotive riguarda la protezione di tutti gli elementi importanti nel veicolo dalle minacce alla sicurezza: ciò richiede che venga effettuato un vero e proprio cyber security assessment necessario per analizzare le possibili minacce e valutare i rischi associati.
Il veicolo oggi è inserito in un ecosistema dove, oltre al conducente e ai passeggeri sono coinvolti altri elementi che interagiscono con esso: infrastruttura stradale, messaggistica di traffico e navigazione, applicazioni software di vario genere, fornitori di componenti ed in generale il mondo Cloud e IoT. Ogni singola parte di questo ecosistema deve avere un ruolo attivo nella cyber security.
Indice degli argomenti
Il cyber security assessment nel mondo automotive: il contesto
È solo nel 2015 che l’importanza della cyber security nel mondo automotive raggiunge la sua piena consapevolezza.
La dimostrazione fatta da due ricercatori americani sulla possibilità di controllare da remoto un’autovettura evidenzia le debolezze di un settore fino ad allora abbastanza restio a recepire sia l’utilità della ricerca in questo campo, sia le reali possibilità di hacking dei veicoli.
Oggi, nel 2020, possiamo affermare che una generica autovettura possiede ormai circa un centinaio di cosiddette ECU (Electronic Control Unit), 100 milioni di linee di codice che risultano impressionanti se paragonate ai 24 milioni di linee utilizzate per un velivolo caccia militare e ai 12 milioni di linee di Android. Ancora più stupefacente risulta la superficie di attacco in continua espansione, dovuta alla sempre crescente connettività.
Nel mondo automotive, quindi, la complessità dei moderni veicoli non permette più, come nei sistemi tradizionali ICT, di applicare metodologie standard di analisi.
Oggi i produttori delle cosiddette “smart car” sono infatti costretti a dover affrontare temi legati a:
- servizi cloud;
- Web apps;
- diagnostica remotizzata;
- sistemi di entertainment;
- sistemi multimediali;
- protocolli di connessione wireless.
Questi sono solo i possibili e più probabili punti di accesso che, in caso di violazione, permettono ad una terza parte di violare anche gli asset interni delle stesse smart car.
Considerando la complessità e la velocità dello sviluppo tecnologico che guida questa evoluzione, occorre adottare un approccio pratico e veloce.
Come vedremo in seguito, oggi si parla di T.A.R.A (Threat Analysis e Risk Assessment), seguita da V.A.P.T (Vulnerability Assessment e Penetration Testing) come fasi fondamentali per eseguire correttamente un Security Assessment.
Aspetti di sicurezza dei prodotti embedded automotive
Nel mondo automotive occorre passare dalla security dei sistemi IT alla security dei sistemi embedded: si definiscono tali tutti gli oggetti fisici dotati di un microprocessore o microcontrollore e un banco di memoria, come ad esempio pendrive USB, decoder TV, router Wi-Fi domestici, telecomandi, smartphone, dispositivi medicali e via dicendo.
Nel mondo Automotive, il cosiddetto Embedded System è la ECU (Electronic Control Unit) che altro non è che una centralina elettronica che governa diverse funzioni all’interno del veicolo.
In linea di massima, la struttura delle macchine intelligenti è suddivisa in sottosistemi, ognuno preposto e separato dagli altri per ciascuna funzione, alcune delle quali hanno chiaramente impatti anche sulla safety delle persone a bordo:
- Power Train System;
- Chassis Control System;
- Body Control System;
- Infotainment System.
La sicurezza di un prodotto embedded di una qualunque sottosistema risiede fondamentalmente nell’investimento che l’attaccante dovrà sostenere per riuscire nell’intento di hackerare il sistema:
- il tempo necessario a farlo,
- il grado di competenza richiesto,
- i tools disponibili oppure da costruire personalmente,
- la conoscenza stessa del prodotto,
- l’opportunità nel portare a termine l’attacco,
sono tutte le variabili in gioco che determinano le probabilità di successo dell’attaccante rispetto alle difese messe in atto.
Il primo passo, dunque, è la modellizzazione dell’attacco.
Modellizzazione dell’attacco e degli attaccanti
Una volta riusciti a identificare un modello corretto dell’attacco (con le variabili elencate prima) e dell’attaccante (tramite il corretto profilo e motivazioni), si può passare alla fase successiva:
- studio della architettura dei dispositivi,
- tracciamento della superfice d’attacco,
- analisi delle potenziali minacce,
- individuazione delle potenziali vulnerabilità,
eseguendo cioè quella che in termini più tecnici si chiama T.A.R.A., ovvero Threat Analysis e Risk Assessment.
Per eseguirla, si può ricorrere a varie metodologie, ma in ambito automotive, esiste un unico documento di linee guida (SAE J3061- “Cybersecurity Guidebook for Cyber-Physical Vehicle Systems”) definito finora in dettaglio, che detta le modalità operative: si possono usare metodi come STRIDE (ovvero categorizzare le minacce secondo la casistica Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation of Privileges) oppure utilizzare attacchi ad albero come dettati dal progetto europeo EVITA (E-safety Vehicle Intrusion Protected Applications) o ancora seguire altri metodi come HEAVENS o OCTAVE.
Indipendentemente da questi metodi, è necessario giungere alla definizione di una mappa, in forma di tabella, dove si evidenziano tutte le minacce al nostro sistema e le relative vulnerabilità che associate ognuna ad una probabilità ed impatto, forniranno l’indicazione del livello di rischio associato.
Questo esercizio si deve fare senza trascurare nessuno degli asset di valore, cioè qualunque bene tangibile o intangibile che abbia valore per l’analisi: software, dati e connettività possono essere, ad esempio, le tre categorie di riferimento per identificare tutti gli asset del sistema.
Se poi allarghiamo la visione all’esterno del veicolo, nasce una gamma di ricerche più ampia, mirata a impadronirsi del controllo del veicolo da remoto: interfacce wireless, come Bluetooth, Wi-Fi, cellulari sono quelle più studiate per dimostrare che in un prossimo futuro potrebbe essere fattibile riuscire a stabilire connessioni remote da un semplice dispositivo palmare.
Attacco e difesa
Durante la fase di T.A.R.A un approccio fondamentale deve essere quello di immedesimarsi nelle vesti di un potenziale attaccante.
Come recita Sun Tzu: “per conoscere il tuo nemico devi diventare tu stesso il tuo nemico”.
Occorre assumere la mentalità dell’attaccante che vuole impadronirsi dei nostri beni e cercare di capire le reali minacce che si presentano all’orizzonte: dai semplici attacchi di intercettazione passiva del traffico ad attacchi più sofisticati dove non solo si leggono messaggi ma anche si inviano alle centraline del veicolo valori diversi dal consentito, andando ad interagire con esse e potendo causare quindi manovre non corrette, fino a i tradizionali attacchi MiTM (Man-In-The-Middle), DoS (Denial of Service), Spoofing (ovvero riuscire ad ingannare il sistema con una centralina non legittima che però riesce ad inviare segnali come fossero quelli veri della ECU originale).
Se poi l’attaccante dovesse avere anche accesso fisico ai segnali che passano tra le centraline all’interno del veicolo (come nel 2015) si profila una nuova serie possibili di attacchi: reverse engineering del codice, per capire come funziona esattamente il firmware dentro la ECU, e successiva riprogrammazione della stessa per riuscire ad eseguire operazioni diverse dal consentito.
Oppure attacchi di tipo Replay, vale a dire, intercettazione di messaggi interni corretti e reinvio successivo degli stessi con parametri modificati, fino all’inserimento di veri e propri malware all’interno dei componenti critici del veicolo.
Per riuscire in modo efficace a difendersi da queste minacce, sono nate di recente nuove architetture veicolari che incorporano componenti che ricordano i firewall tradizionali di Internet piuttosto che i sistemi di IDS/IPS (Intrusion Detection System/Intrusion Prevention System) ben noti nel mondo Web.
Si parla quindi di introdurre dei Secure Gateway che agiscono come i firewall, ECU sempre più protette fisicamente e rese inaccessibili, sistemi operativi più sicuri, connessioni monitorate, software sempre più ricco di funzionalità di sicurezza some appunto IDS&IPS eccetera.
Di conseguenza, anche l’attacco evolve ulteriormente. Recenti ricerche mostrano la fattibilità dei cosiddetti Side Channels Analyses (ovvero la possibilità di catturare informazioni importanti tramite l’osservazione di un comportamento elettrico/elettronico che apparentemente non avrebbe nulla a che fare con il vero intento dell’attaccante) oppure dei Fault Injection Attacks (ovvero l’inserimento di una piccolissima ma veloce variazione di tensione sull’alimentazione del dispositivo che sia in grado di provocare un glitch, ovvero un segnale che permette, durante l’esecuzione delle istruzioni del codice del processore, di bypassare una certa istruzione al momento giusto).
Sono tecniche sofisticate ma è sempre una questione come dicevamo di tempi, competenze, tools da cui l’importanza di eseguire nel modo migliore possibile un security assessment completo, che comprenda anche queste tipologie di attacco all’interno dell’attività di penetration testing come vedremo più in dettaglio in un successivo articolo.
Conclusioni
Utilizzando la fase di T.A.R.A si è in grado oggi di comprendere meglio le minacce e le metodologie per prevenire questi attacchi futuri.
Nasce così la security by design, dove fin dalle prima fasi di progettazione, si adottano buone pratiche di sicurezza che aumentano la robustezza dei prodotti.
Pensando alla ben nota triade di buone pratiche, confidenzialità, integrità e disponibilità, è facile delineare le fase di progettazione di quelli che sono i meccanismi fondamentali per soddisfare questi obiettivi: la crittografia come il meccanismo per assolvere ai requisiti di confidenzialità, le funzioni di hash come il meccanismo per controllare l’integrità dei dati, e i controlli sull’arrivo dei messaggi o pacchetti di dati come meccanismo di difesa e protezione per mantenere la disponibilità dei sistemi.
Infine, si possono ulteriormente aggiungere tecniche più robuste come il Secure Boot del firmware, o inserire processori con aree hardware dedicate a contenere i dati crittografici, cioè i veri e propri segreti che non devono mai essere noti, oppure ancora aumentare la sicurezza fisica, in sostanza andando ad incrementare i vari strati di difesa: Security in Depth ovvero Layered Security, così che se anche uno di questi strati dovesse cedere, altri ostacoli e difese impedirebbero a qualunque attaccante di penetrare all’interno.
Ecco allora un riassunto per la sicurezza del ciclo di vita completo del veicolo:
- eseguire la fase di Threat Analayses e Risk Assessment;
- eseguire Vulnerability Assessment e Penetration Testing periodici per identificare le vulnerabilità;
- eseguire una valutazione dei controlli di sicurezza e fare il patching delle vulnerabilità;
- implementare un meccanismo di aggiornamento dei software;
- incrementare la consapevolezza e cultura di Cybersecurity.
L’approccio T.A.R.A seguito dalle attività di testing di sicurezza sono il miglior modo oggi per valutare il livello di sicurezza del nostro prodotto o sistema.