Di cosa tratta il corso
Un’introduzione completa di 2 giorni alla cybersecurity automotive. Si parte dai fondamenti delle reti veicolari per arrivare all’exploitation dei protocolli diagnostici, con esperienza pratica su ECU reali dei principali costruttori. Imparerete ad analizzare il traffico CAN, a fare reverse engineering degli algoritmi di checksum, a sfruttare protocolli diagnostici come UDS e CCP/XCP e a estrarre il firmware da hardware reale, il tutto con strumenti open source in un ambiente di laboratorio su Raspberry Pi.
Programma
Giorno 1: Reti veicolari e strumenti
Teoria
- Topologie di rete delle auto moderne e architetture dei gateway
- Standard di livello fisico e data link: CAN, CAN FD, LIN, FlexRay, Automotive Ethernet
- Attacchi hardware al CAN bus e strategie di mitigazione
- Traffico CAN reale con controlli di integrità, contatori e checksum
- SecOC (Secure Onboard Communication) e sviluppi in ambito crittografico
Pratica
- Analisi del traffico CAN in tempo reale con Wireshark e Cabana
- Creazione di file DBC a partire dai segnali CAN
- Attacchi al livello fisico del CAN bus
- Reverse engineering degli algoritmi di checksum
- Spoofing dei messaggi e attacchi replay
Giorno 2: Protocolli diagnostici e hardware
Teoria
- Protocolli diagnostici: OBD-II, KWP2000, UDS (ISO 14229-1)
- Protocolli di calibrazione: CCP e XCP
- Architetture dei microcontrollori usati nelle ECU automotive
- Reverse engineering dei PCB e metodi di estrazione del firmware
- Attacchi di fault injection e contromisure
Pratica
- Scansione degli endpoint UDS ed enumerazione dei servizi
- Comunicazione con endpoint CCP/XCP ed estrazione dei dati
- Esplorazione di Diagnostics over IP (DoIP)
- Estrazione del firmware delle ECU con debug probe e con diversi metodi
