Al recente Chaos Communication Congress di Amburgo, due esperti IT, Felix Domke e Daniel Lange (ex Head of IT Strategy della BMW) hanno tenuto una presentazione: qual è la verità riguardo l’imbroglio dei test anti-smog della Volkswagen? Cosa è successo veramente?
Sono tantissime le notizie pubblicate sui media nel corso degli ultimi mesi sul “Dieselgate”, lo scandalo che ha coinvolto il gruppo Volkswagen, ma solo in pochi hanno saputo spiegare come funzionasse l’imbroglio e chi fosse realmente responsabile della sua realizzazione. Ecco perché è interessante considerare una ricerca condotta da esperti indipendenti che hanno provato a scoprire la verità.
Prima di tutto, perché è stato organizzato questo imbroglio?
Il problema principale dei test sulle emissioni è che sono sempre svolti con un certo modello standard, come il NEDC (New European Driving Cycle). Questo modello consiste in alcuni cicli piuttosto brevi di accelerazione, frenata e un ciclo lungo a velocità superiore, che rappresentano, rispettivamente, il traffico in città e in autostrada. Nella vita reale, sicuramente, nessuno guida così.
Ma per la misurazione delle emissioni, ci si serve proprio di questo modello, quindi gli ingegneri delle industrie automobilistiche possono barare per migliorare i risultati. Perché lo fanno?
Semplice: è più economico che fare reali migliorie. Se un imprenditore può risparmiare, preferirà senz’altro questo modo a qualunque altro perché la riga finale del bilancio è importante per il rendimento dell’azienda.
“In questi test è molto comune imbrogliare”, dice Lange. “Che trucchetti si stanno inventando per abbassare le emissioni? Per esempio, gonfiano i pneumatici 3 atmosfere oltre ciò che potreste utilizzare realmente su strada. La parte inferiore del pneumatico appare così: ciò significa che solo quella piccola parte del pneumatico tocca il suolo e la resistenza si riduce.”
“Mettono il diesel nella benzina perché è più leggero e la frizione è minore. Tolgono lo specchietto sul lato passeggero, perché in teoria non è del tutto obbligatorio a livello legale, e la resistenza se ne va insieme a esso. Sigillano col nastro adesivo tutte le aperture del veicolo. In questo modo in caso di vento, è molto più facile quando è tutto sigillato. Tutte queste cose sono al limite della legalità, ma questo non li ferma. Ecco come le emissioni vengono testate veramente.
I risultati di questa truffa sono molto semplici: i valori misurati non hanno molto a che vedere con quello che avviene nella vita reale. Tutta l’industria automobilistica lo sa molto bene. Forse ogni fabbricante si serve delle modifiche dei software, proprio come ha fatto la Volkswagen. Infatti, 15 anni fa la BMW fu beccata a utilizzare un simile trucchetto con il software delle sue moto.
Ma come spiegano questi imbrogli dei software? Per comprenderlo, dobbiamo esaminare come funzionino i sistemi elettronici delle auto.
Cosa c‘è dentro l‘auto?
La componente elettronica direttamente responsabile di tutto ciò che accade al motore dell’auto, incluso il tubo di scappamento, è l’Unità di controllo motore (ECU). I costruttori non possono sviluppare questi dispositivi da soli, ma acquistano questo equipaggiamento dalle ditte specializzate in sistemi elettronici dei veicoli. Queste ditte non sono molte, e in Germania, perlomeno, il leader del mercato è Bosch.
Breaking News: E.P.A. orders Volkswagen to recall nearly a half-million carshttp://t.co/WNqBPQnHbd
— The New York Times (@nytimes) September 18, 2015
Inoltre, il codice del firmware per l’ECU è sviluppato dallo stesso produttore; poiché tale firmware è davvero essenziale per il corretto funzionamento del motore e della stessa auto, viene revisionato meticolosamente.
Come dice Lange, “questa cosa viene simulata e testata mille volte perché è estremamente importante. Perché se avete una macchina con qualcosa come 200 cavalli vapore e sterzate male salterete letteralmente per aria. Ecco perché si tratta del componente del software più testato che possiate trovare.
Volkswagen shares are down 20%. Here’s what we know so far about the emissions scandal: http://t.co/Y2FlLLHRlh pic.twitter.com/WJw9C0vCDy
— The Wall Street Journal (@WSJ) September 21, 2015
Un altro fatto è che alle aziende automobilistiche non è permesso cambiare il firmware dell’ECU. Allo stesso tempo, ogni modello specifico di ECU può essere usato da un’intera lista di produttori di automobili in una varietà di modelli e motori. Pertanto, per essere compatibile con varie automobili, il firmware dell’ECU deve essere flessibile. Per ottenere tale flessibilità, i produttori si servono di molte variabili, che possono essere modificate dal costruttore in base alle esigenze specifiche di questo o quel particolare modello di auto o motore.
Per esempio, Bosch EDC17C46, che è il modello di ECU usato dalle auto coinvolte nello scandalo Dieselgate, ha più di 20.000 di queste variabili. Se questa benchboard virtuale potrebbe essere in qualche modo materializzata in un mondo reale, sarebbe sicuramente il più grande e complesso pannello di controllo del mondo intero.
Ripasso veloce: le modifiche al codice del firmware non possono essere sviluppate dal produttore dell’auto, ma da quello dell’ECU sì, a richiesta del primo. Poiché ognuna di queste modifiche comporta lunghe documentazioni cartacee, è probabile che i produttori degli ECU informino le aziende automobilistiche quando le modifiche sono illegali. Infine, la decisione finale è presa dal costruttore dell’auto: per usare le modifiche, l’azienda automobilistica deve giocare con le variabili menzionate. Ma, esattamente, come funzionano?
La verità si trova nel codice
Per studiarlo, Felix Domke ha comprato su eBay un’ECU di ricambio e, insieme alla sua Volkswagen Sharan (interessata dallo scandalo), gli ha applicato la tecnica di ingegneria inversa. Ha sfruttato una vulnerabilità 0-day dell’hardware presente nel chip dell’ECU per ottenere dalla sua memoria flash un firmware di 2 MB e ha esaminato il codice. Prima di tutto, la ricerca gli ha fornito un’ottima comprensione della complessità dei processi nei sistemi elettronici automobilistici.
Per esempio, è risultato che ciò che vedete su un oggetto ordinario come un tachimetro, non rappresenta direttamente i giri al minuto del motore. Il valore visualizzato dipende da più di altri 20 segnali processati da 12 KB di dense code (in caso ve lo stiate chiedendo, si tratta di una grande quantità di codice).
“A questo punto capite che l’imbroglio potrebbe andare avanti senza che la maggior parte delle persone se ne accorga,” dice Domke. Il tachimetro nella vostra auto non mostra la velocità reale, bensì qualcosa collegato alla velocità.”
La parte del firmware che riguarda il controllo delle emissioni è ancora più complesso e flessibile. Tuttavia, l’idea centrale di come dovrebbe funzionare la riduzione delle emissioni degli ossidi di nitrogeno è, al confronto, semplice. Per liberare monossido di azoto, si può aggiungere una sostanza chiamata urea (prodotta da Volkswagen come AdBlue). Con le alte temperature si trasforma in ammoniaca e reagisce con NOx trasformandosi in una innocua acqua e azoto.
Ad ogni modo, se tu aggiungi troppa urea, l’eccesso di ammoniaca vanno nel tubo di scappamento. Questo non è buono per la tua auto. Ecco perché in situazioni normali è meglio aggiungere meno urea piuttosto che troppa (la cosa migliore è aggiungere la dose di urea esatta, me spesso è difficile farlo). Sfortunatamente, questo dosaggio insufficiente non darà migliori risultati nei test anti-smog. Ecco perché le aziende automobilistiche hanno bisogno di barare.
Nel caso del gruppo Volkswagen il trucco ha funzionato nel seguente modo: c’erano due modalità in base alle quali si gestiva il dosaggio dell’urea. Uno di questi è chiamato “regular model” (modello regolare) nel quale la dose di urea è abbastanza grande, e un altro è chiamato “alternative model” (modello alternativo) in base al quale l’urea è aggiunta in piccole dosi. Domke ha osservato che circa il 75% delle volte, il sistema del tubo di scappamento Volkswagen stava operando nel modo alternativo e per il restante tempo il sistema non dosava affatto l’urea.
Come ha mostrato l’analisi del codice del firmware, i criteri che regolavano il passaggio al modo regolare, oltre alle condizioni del motore, la temperatura del carburante e la pressione atmosferica, includeva un criterio interessante. In pratica, si attivava il modo regolare quando la distanza percorsa dal veicolo nella carta di navigazione si trovava entro i livelli minimi e massimi delle curve.
Indagine #Dieselgate: presso il #32C3 gli hacker hanno spiegato cosa esattamente è successo alle immisioni di diesel
Tweet
Come se questo non bastasse, alcune di queste curve erano disegnate in un modo così accurato che includevano la distanza percorsa con la sopramenzionata New European Driving Cycle. In questo caso il dosaggio di urea era alto e le emissioni di NOx così basse in modo tale da rispondere ai parametri europei. E questo è esattamente l’idea centrale alla base del trucchetto di Volkswagen.
Ci sono tante sfumature in questa storia, ma una cosa è certa: l’abilità di hackerare o creare trucchetti come questi hanno bisogno di qualcuno con un background IT. Osservando la situazione da un punto di vista più grande, la tecnologia digitale è sempre più importante e le persone che sanno come usarla abilmente diventeranno ancora più preziose per le aziende. Da un lato possono aiutare i sistemi che non funzionano bene a nascondere difetti del prodotto; dall’altro, possono rivelare trucchi e frodi così come hanno fatto i due ricercatori che hanno studiato il caso Dieselgate.