Analisi sulla sicurezza di una autovettura moderna

Preview:

Citation preview

Analisi di sicurezza sperimentali di una moderna automobile

Sicurezza nelle moderne autovetture

Sito di riferimento:http://www.autosec.org/

Introduzione

Due gruppi di ricerca:

Università di Washington

Università della California

Un unico obiettivo:Testare e mettere alla prova i sistemi di sicurezza delle

moderne autovettureIl nostro obiettivo:

Fare una sintesi dei test e dei risultati da loro ottenuti

Le moderne autovetture

Non più solo meccanicaPresenza di molti dispositivi computerizzati

Comunicazioni attraverso una o più reti interne al veicolo

Recenti stime riportano la presenza di 50-70 computer indipendenti presenti sulle tipiche berline di lusso (in gergo automobilistico ECU: Electronic Control Unit)

Più di 100MB di codice eseguibile spalmati su questi dispositivi

Pro e Contro

Pro:

Aumentano la sicurezza durante la guida del veicoloCapacità di diagnostica dei guasti più rapida

Contro:Quanto più un'autovettura offre sofisticati servizi e

caratteristiche di comunicazione, tanto più aumentano i rischi dovuti alla variata gamma di attacchi che possono

essere condotti contro l'autovettura

Premessa

Implicazioni derivanti da una comunicazione malevole sulla rete interna al veicolo

E' lecito chiedersi: come può un attaccante infiltrarsi e prendere il controllo delle funzionalità offerte da veicolo?

...

Modelli di minaccia

Accesso fisico:l'attaccante ha accesso fisico alla macchina e inserisce un componente malevolo attraverso l'OnBoard

Dignostic (scheda situata di solito sotto il cruscotto).

Presenza permanente oppure temporanea del componete all'interno della rete.

Accesso tramite interfaccia wireless: le moderne autovetture sono dotate di molteplici interfacce wireless (almeno 5 quelle individuate sulle macchine utilizzate per i test).

Vulnerabilità introdotte da questo tipo servizi.

Ambiente sperimentale

Due autovetture della stessa marca e modello anno 2009

Presenza di un gran numero di componenti controllati elettronicamente e sofisticati sistemi telematici

Marca e modello?

Ambiente sperimentale

Ambiente sperimentale

ECM: modulo di gestione del motoreEBCM: modulo di controllo dei freniTCM: controllo di trasmissione elettronica per la gestione del cambio delle marceBCM: controlla diverse funzioni del veicolo e agisce da firewall tra le due sotto retiTelematics: consente la comunicazione dati con il veicolo via connessione cellulare.RCDLR: sistema di apertura/chiusura porte via telecomandoHVAC: controllo condizionatoreSDM: controllo dell'airbag e cinture di sicurezzaIPC/DIC: display per mostrare al conducente informazioni sulla velocità, carburante e stato del veicolo Radio: radioTDM: modulo antifurto; impedisce l'avvio della macchina senza chiavelegittima

Ambiente sperimentale

CAN: Controller Area Network. Protocollo per la comunicazione tra i vari componenti; due varianti disponibili

(L-S B e H-S B); accesso e interrogazione componenti.

Al banco: analisi dell'hardware Sul cric: sicurezza e convenienza; portatile connesso

all'OBD- II; cavo specifico per la comunicazione con L-S B e H-S B; utilizzo di CarShark

Su strada: in strada isolata, macchina “sotto attacco” e macchina “inseguitrice”

CarShark: analizzatore del CAN bus; packet injection; possibilità di effettuare più tipi di attacchi

Sicurezza nella rete interna del veicolo

CAN bus: dal 2008 standard secondo determinate specifiche per effettuare delle diagnosi. Protocollo di data-link più utilizzato per le comunicazioni nelle reti interne ai

veicoli

No sistema d'indirizzi, modello pubblish-subscriber, pacchetto inviato a tutti i nodi, presenza di due livelli fisici

separati (L-S B e H-S B)

Sicurezza nella rete interna del veicolo

Debolezze chiave:Natura broadcast del protocollo: un componente malevolo può curiosare in tutte le comunicazioni o inviare pacchetti a qualsiasi nodo;Sensibilità ai DoS: lo schema basato sulle priorità permette ad un nodo di definire uno stato “dominante” sul bus in maniera indefinita, ed estromettere gli altri nodiNessun campo per l'autenticazione:ogni componente può inviare indistintamente un pacchetto a qualsiasi altro componente. Pericolosità dei componenti compromessi!Controllo d'accesso debole: prevista una sequenza challage-response per proteggere le ECUs contro certe certe azioni senza autorizzazione (Reflashing e protezione memoria)

Sicurezza nella rete interna del veicolo

Deviazione dallo standard:Semplifica il lavoro di un attaccante

Sequenze challenge-response insufficienti al fine di proteggersi da aggiornamenti malevoli del firmware

Possibilità di:Disabilitare le comunicazioni: “disabilita le comunicazioni

CAN”Reflashing delle ECUs durante la guida: “il modulo del controllo del motore dovrebbe rifiutare richieste di inizio

programmazione mentre il motore è avviato”Caricare codice proprio sull'unità telematica: “ECUs con

funzionalità di sicurezza, sistemi antifurto devono essere protetti da sequenze di tipo challege-response”

Sicurezza dei componenti

Metodologie di attacco e comprensione del funzionamento:Sniffing:utilizzo di CarShark per osservare il traffico sul CAN

busFuzzing: utilizzato per attacchi significativi e per aiutare nel

reverse-engineerigReverse-engineering: scaricamento dei codici di alcune ECU tramite servizio di ReadMemory ed utilizzo di un

debugger di terze parti per comprendere alcune collaborazioni di tipo hardware. Essenziale per gli attacchi

che richiedono l'aggiunta di nuove funzionalità, manipolando il software già esistente

Risultati dei test condotti in condizioni stazionarie

Radio: primo attacco effettuato; completo controllo della radio e del suo display.Pannello del cruscotto: completo controllo

Risultati dei test condotti in condizioni stazionarie

Altri attacchi effettuati:

Risultati dei test condotti in condizioni stazionarie

Body Controller: controllo ripartito su L-S B e H-S B; controllo di tutte le funzioni

Risultati dei test condotti in condizioni stazionarie

Motore: controllo dell'accellerazione e dei cilindri (Fuzzing)Freni: controllo individuale e non (Fuzzing)

Risultati dei test condotti su strada

Effettuati in condizioni sicure

Gran parte dei risultati identici a quelli effettuati in condizioni stazionaria, tranne per l'EBCM!!!

Interazione multicomponente

Sicurezza dei singoli componenti e dell'interazione tra di essi

Contachilometri: velocità reale intercettata sul L-S B e trasmissione dei pacchetti malevoli contenenti la falsa

velocitàLuci: pacchetti per disabilitare luci interne ed esterne.Autodistruzione: ottenuto combinando i controlli che

avevano su determinati componenti del BCM

Condotti sia in condizioni stazionarie che su strada

Interazione multicomponente

Bridging: componenti connessi al L-S B e componenti connessi al H-S B; utilizzo dell'unità telematica

Hosting code;Wiping code: coesistenza tra vecchio codice e nuovo codice; aumenta le problematiche

Riassunto vulnerabilità riscontrate

Manipolazione ECUs testate e anche altre

Elevata fragilità dei sistemi: semplicità nel condurre l'attacco

Assenza del controllo d'accesso: il protocollo CAN descrive metodi contro aggiornamenti del firmware non autorizzati,

ma...

Possibilità di bridging tra i due bus

Possibilità di caricare nuovo codice e cancellarne le tracce

Considerazioni e conclusioni

Servizi di diagnostica e reflashing: mancanza dei controlli d'accesso a questi servizi → ECUs arbitrarie non

dovrebbero fornire questi tipi di comandi ed implementazione di sistemi di autenticazione

Componenti di terze parti: componenti non fidati possono creare problemi di sicurezza → Filtro tra i componenti e

bus per far passare solo pacchetti convalidati

Individuazione o prevenzione?

GRAZIE!

Recommended