voltar para roadmap
CAR HACKING

Car Hacking — por onde começar

Carro moderno = computador sobre rodas. CAN bus foi projetado em 1986 sem autenticação. Trilha rara, com mercado crescendo (carros conectados, OTA, ADAS).

pré-requisitos

  • Eletrônica básica (multímetro, GND, VCC, sinais digitais)
  • Linux + linha de comando
  • Python básico (cantools, scapy)

labs para praticar

trilha passo a passo

  1. 1

    1. Anatomia do carro

    ECU (Engine Control Unit), TCM, BCM, ABS, gateway. Como conversam (CAN, LIN, FlexRay, MOST, Ethernet automotivo). Onde fica o conector OBD-II (sob o volante, padrão J1962).

  2. 2

    2. Setup mínimo (R$ 100)

    Adaptador OBD-II ELM327 (USB ou BT) pra começar. Pra CAN raw: cabo OBD-II→DB9 + adaptador SocketCAN (CANable, MCP2515). can-utils no Linux (candump, cansend, cansniffer).

  3. 3

    3. OBD-II e PIDs

    Mode 01 (real-time): 0x0C=RPM, 0x0D=velocidade, 0x05=temp motor. Mode 03 (DTCs / códigos de erro). Mode 09 (VIN). Padronizado por SAE J1979 / ISO 15031.

  4. 4

    4. CAN raw — sniff, fuzz, replay

    candump pra observar o tráfego, identifica IDs que mudam quando você aciona algo (luz, vidro, porta). cansend pra replayar. cangen pra fuzz. Por que funciona: zero autenticação no barramento.

  5. 5

    5. Arquivos DBC (decodificação de sinais)

    DBC é o formato (Vector) que descreve QUAL bit dentro de QUAL frame significa o quê. cantools (Python) decodifica frames automaticamente em km/h, °C, rpm. Existem DBCs comunitários no GitHub (opendbc da Comma.ai).

  6. 6

    6. Keyless / Rolling code

    Como funcionam KeeLoq, Hitag2 (rolling code: cada press é um código novo). Ataques: RollJam (Samy Kamkar, DEFCON 23), relay attack (UWB resolve). Hardware: HackRF, YARD Stick One, Flipper Zero.

  7. 7

    7. ECU tuning, OTA e UDS (ISO 14229)

    UDS é o protocolo de diagnóstico avançado por cima do CAN. Permite ler/gravar EEPROM, mudar mapas, fazer reflash. Tesla, BMW e VW expõem APIs OTA — superfície enorme pra pesquisa.

  8. 8

    8. Defesas modernas

    SecOC (Secure Onboard Communication) adiciona MAC truncado em CAN-FD. Gateway central segregando barramentos. Firewalls de ECU. Cripto end-to-end em OTA (Uptane). Adoção lenta, mas crescente.

dicas de quem já passou pela trilha

  • SEMPRE em carro próprio ou autorizado. Mexer em CAN de carro alheio = crime + pode matar alguém.
  • Antes de comprar hardware caro: rode ICSim por 1 semana. Aprende 70% dos conceitos sem gastar nada.
  • Para sniffing real, prefira SocketCAN (Linux nativo) a soluções proprietárias. cansniffer mostra mudanças em tempo real.
  • Comma.ai opendbc tem DBC de várias marcas. Se seu carro tá lá, decodificação é direta com cantools.
  • CHARLIE MILLER + CHRIS VALASEK (Jeep 2015) é leitura obrigatória — explicaram o ataque inteiro publicamente.

livros recomendados

  • The Car Hacker's Handbook (Craig Smith) — bíblia, grátis em PDF
  • Hacking Connected Cars (Alissa Knight)
  • Automotive Cybersecurity Engineering Handbook (Ahmad MK Nasser)