Nice design térmico, mas acabamento conformal e sem marcas de identificação tornam isso difícil para reverter engenheiro
[Willem Melching] possui um Golf Volkswagen 2010 – um veículo muito comum na Europa – e notei que, embora o rack eletrônico de direção suportasse a pista habitual mantenha o sistema de assistência (LKAS), e seria teoricamente capaz de operar em uma configuração muito mais avançada usando OpenPilot, houve algumas deficiências na implementação da VW, o que significa que não funcionaria por tempo suficiente para torná-lo viável. Estar muito interessado e claramente extremamente capaz de engenharia reversa Ecus de automóveis e hacke-os em submissão, [Willem] definido sobre documentar sua jornada para desbloquear o suporte ao OpenPilot para seu próprio veículo.
E que jornada foi! A série de quatro partes do blog é lindamente escrita, mostrando todos os detalhes sangrentos e todas as ferramentas usadas ao longo do caminho. A primeira parte mostra a direcção de energia electrónica (EPS) ECU de um módulo 2010 Volkswagen Golf MK6 (que passeios na parte de trás do motor de rack trifásico) sendo rachado aberto para revelar uma interessante abordagem de módulos multi-chip, com Diretamente ligado a um par de PCBs de substrato, que são, por sua vez, ligados à parte de trás do invólucro do motor, presumivelmente por motivos de dissipação de calor. Design inteligente, mas frustrante ao mesmo tempo que isso faz parte de identificação um pouco enganador!
Entropia menos as seções 1.0 e zero indicam nenhuma criptografia aplicada
[Willem] usa uma variedade de ferramentas e truques para ligar e cheirar o tráfego de ecu no barramento CAN, quando conectado a uma ferramenta de depuração compatível com o SAE J2534, eventualmente, determinando que ele fale o protocolo de barramento TP2.0 específico da VW, e conseguiu pegar tráfego suficiente para verificar se era possível usar o protocolo de diagnóstico KWP2000 convencional para acessar alguns dados interessantes. Em seguida, foi um mergulho muito profundo em imagens de atualização de engenharia reversa encontradas on-line, fazendo em primeiro lugar, fazendo algumas operações XOR triviais, então olhando para uma trama de entropia do arquivo usando o Binwalk para determinar se ele realmente tinha código, e se ele fosse criptografado ou não, Depois de executar a CPU_REC, foi determinado que a CPU era uma Renesa V850. Em seguida, o trabalho real começou – carregando a imagem em Ghidra para começar a fazer algumas palpites da arquitetura do código, para descobrir o que é necessário corrigir para fazer as alterações desejadas. Na parte final da série, [Willem] extrai e usa o procedimento de bootloader para corrigir parcialmente a área de configuração de código de seu veículo e desbloqueia o objetivo que ele estava visando – controle remoto de sua direção. (OK, o objetivo real estava correndo openpilot.)
Em nossa opinião, isso é muito interessante, se há muito tempo, ler mostrando um assunto fascinante habilmente executado. Mas nós queremos enfatizar, que o módulo EPS de veículos é um dispositivo testado de segurança Asil-D, então qualquer hacks que você faz para um veículo de estrada definitivamente irá anular o seu seguro (para não mencionar sua garantia) se descoberto no evento de uma reivindicação.
ECUs mais antigos são um pouco mais fáceis de hackear, se você puder puxar o EPROM, e as pessoas lá fora estão produzindo módulos para allsorts de hacking veicular. Então, muito para mexer com!