Nice Thermal Design, men konformalt efterbehandling og ingen ID-mærker gør denne hårde til reverseingeniør
[Willem Melcing] ejer en 2010 Volkswagen Golf – et meget almindeligt køretøj i Europa – og bemærkede, at mens den elektroniske styrestativ understøtter det sædvanlige bane, hold Assist (LKAS) -systemet, og ville være teoretisk i stand til at fungere i en langt mere avanceret konfiguration ved hjælp af OpenPilot, der var nogle mangler i VW’s implementering, hvilket betyder, at det ikke ville fungere for længe nok til at gøre det levedygtigt. At være meget interesseret i og klart ekstremt i stand til reverse engineering Automobile ecu og hacking dem i indsendelse, [Willem] indstillet til at dokumentere sin rejse for at låse op for OpenPilot-support til sit eget køretøj.
Og hvad en rejse det var! Fire-Part Blog-serien er smukt skrevet, viser alle gory detaljer og alle værktøjer, der bruges undervejs. Den første del viser den elektroniske servostyring (EPS) ECU fra en 2010 Volkswagen Golf MK6-modul (som rider på bagsiden af den trefasede styrestativmotor), der er revnet åben for at afsløre en interessant multi-chip modul tilgang, med bare dø Direkte bundet til et par substrat PCB, der igen er bundet til bagsiden af motorhuset, formodentlig for varmeafledningsårsager. Smart design, men frustrerende på samme tid som dette gør delidentifikation noget tricker!
Entropy mindre 1,0 og nul sektioner angiver ingen kryptering påført
[Willem] bruger en række værktøjer og tricks til at komme op og snuse ECU-trafikken på CAN-bussen, når det er tilsluttet et SAE J2534-kompatibelt debug værktøj, der i sidste ende bestiller det taler den vw-specifikke TP2.0 CAN Bus Protocol, og formåede at få fat nok trafik til at kontrollere, at det var muligt at bruge den konventionelle KWP2000 diagnostiske protokol til at få adgang til nogle interessante data. Næste var et meget dybt dykke i reverse engineering opdateringsbilleder fundet online, ved først at lave nogle trivielle XOR-operationer, så kigger på en entropi-plot af filen ved hjælp af Binwalk for at afgøre, om han virkelig havde kode, og hvis den var krypteret eller ej, Efter at have kørt CPU_REC, blev det bestemt CPU’en var en Renesas V850. Derefter begyndte det virkelige arbejde – indlæsning af billedet i Ghidra for at begynde at lave nogle gæt på kodenes arkitektur for at finde ud af, hvad der var nødvendigt at patching for at foretage de ønskede ændringer. I den sidste del af serien uddrager [Willem] ekstrakter og bruger bootloader-proceduren til delvist at patcher kodekonfigurationsområdet i hans køretøj og låser målet, han sigter mod fjernbetjening af hans styring. (OK, det virkelige mål kørte OpenPilot.)
Efter vores mening er dette en meget interessant, hvis det lykkes, kan du læse et fascinerende emne fagligt udført. Men vi ønsker at understrege, at køretøjets EPS-modul er en ASIL-D sikkerhedstestet enhed, så alle hacks du gør til et vejkørsel, vil helt sikkert annullere din forsikring (for ikke at nævne din garanti), hvis det opdages i arrangementet af et krav.
Ældre ecu er lidt lettere at hakke, hvis du kan trække EPROM, og folk derude producerer moduler til allsorts of vehicular hacking. Så masser at tinker med!