Hyggelig termisk design, men konformimal etterbehandling og ingen ID-merker gjør dette vanskelig å reversere ingeniør
[Willem Melching] eier en 2010 Volkswagen Golf – et veldig vanlig kjøretøy i Europa – og la merke til at mens den elektroniske styrestativet støtter den vanlige banen, og vil være teoretisk i stand til å operere i en langt mer avansert konfigurasjon ved hjelp av OpenPilot, det var noen mangler i VWs implementering, noe som betyr at det ikke ville fungere lenge nok til å gjøre det levedyktig. Å være veldig interessert i og tydelig ekstremt i stand til omvendt engineering bil ecus og hacking dem i innsending, [willem] satt om å dokumentere sin reise for å låse opp OpenPilot Support for sitt eget kjøretøy.
Og hva en reise var det! Den fire-delte blogg-serien er vakkert skrevet, som viser hver gory detalj og alle verktøy som brukes underveis. Den første delen viser den elektroniske servostyringen (EPS) ECU fra en 2010 Volkswagen Golf MK6-modul (som rider på baksiden av trefaset styrehylle motoren) som er sprukket åpen for å avsløre en interessant multi-chip modul tilnærming, med bar dør direkte bundet til et par substrat-PCB, som i sin tur er bundet til baksiden av motorhuset, antagelig for varmeavspilling. Smart design, men frustrerende samtidig som dette gjør delidentifikasjon noe tricker!
Entropy Mindre 1.0, og null-seksjonene angir ingen kryptering påført
[Willem] bruker en rekke verktøy og triks for å slå opp og snuse ECU-trafikken på CAN-bussen, når den kobles til et SAE J2534-kompatibelt feilsøkingsverktøy, til slutt å bestemme det snakker den VW-spesifikke TP2.0 CAN-protokollen, og klarte å få tak i nok trafikk for å kontrollere at det var mulig å bruke den konvensjonelle KWP2000 diagnostiske protokollen for å få tilgang til noen interessante data. Neste var et veldig dypt dykk i omvendt engineering oppdatering bilder funnet online, ved først å lage noen trivielle xor operasjoner, så ser på en entropi plott av filen ved hjelp av binwalk for å avgjøre om han virkelig hadde kode, og hvis det var kryptert eller ikke, Etter å ha kjørt CPU_REC, ble det bestemt at CPUen var en Renesas V850. Deretter begynte det virkelige arbeidet – laster bildet inn i GHIDRA for å begynne å lage noen gjetninger av kodenes arkitektur, for å finne ut hva som trengs for å gjøre de ønskede endringene. I den siste delen av serien, [Willem] ekstrakter og bruker bootloader-prosedyren for å delvis plage kodekonfigurasjonsområdet på hans kjøretøy og låser opp målet han sikte på – fjernkontrollen av styringen. (OK, det virkelige målet var å kjøre OpenPilot.)
Etter vår mening er dette en veldig interessant, hvis lenge, leser et fascinerende emne faglig utført. Men vi ønsker å understreke at kjøretøyet EPS-modulen er en ASIL-D-sikkerhetstestet enhet, slik at eventuelle hacks du gjør med et veivbiler vil mest definitivt ugyldiggjøre forsikringen din (for ikke å nevne garantien din) hvis det oppdages i arrangementet av et krav.
Eldre økus er litt lettere å hacke, hvis du kan trekke EPROM, og folk der ute produserer moduler for Allsorts of Vehicular Hacking. Så mye å tinker med!