veja como hackear seu carro usando rede can com arduino due
TRANSCRIPT
![Page 1: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/1.jpg)
Veja como hackear seu carro usando Rede CAN com Arduino DueProf. André Márcio de Lima [email protected]
![Page 2: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/2.jpg)
Sobre mim
André Márcio de Lima Curvello▸ Engenheiro de Computação – USP São Carlos▸ MBA em Gestão de TI - UNIFRAN▸ Mestrado em Processamento de Sinais e Instrumentação
– USP São Carlos▸ Articulista do Portal Embarcados e FilipeFlop▸ Analista de Tecnologia – Padtec S/A
![Page 3: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/3.jpg)
“Se não puder voar, corra. Se não puder correr, ande. Se não puder andar, rasteje, mas continue em frente de qualquer jeito.Martin Luther King
![Page 4: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/4.jpg)
!O que é CAN?
![Page 5: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/5.jpg)
![Page 6: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/6.jpg)
Controller Area Network
▸ Protocolo multi-mestre▸ Broadcast▸ Comunicação serial▸ Baseado em mensagens▸ Sem “endereços”▹ IDs▹Mensagens
![Page 7: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/7.jpg)
Controller Area Network
▸ Desenvolvido pela Bosch para redes decomunicação veiculares na década de 80
▸ Publicado em 1986 na SAE▸ Troca de mensagens entre ECUs▹ Electronic Control Unit▸ Robusto em ambientes com ruído!▸ Baixo custo
![Page 8: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/8.jpg)
BWM 8 Series - 1988
![Page 10: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/10.jpg)
Depois!
Fonte: http://www.slideshare.net/abhinawambitious
![Page 11: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/11.jpg)
Um padrão de ComunicaçãoCompatibilidade, equipamentos, módulosREDE
![Page 12: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/12.jpg)
▸ Automotivo▸ Militar▸ Maquinário Industrial▸ Maquinário Agrícola▸ Controle de Elevadores▸ Sistemas Médicos▸ Etc
Áreas de Aplicação
![Page 14: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/14.jpg)
Topologia de uma Rede CAN
Fonte: https://www.linkedin.com/pulse/automotive-can-bus-system-explained-kiril-mucevski
![Page 16: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/16.jpg)
E esse Transceiver?
SN65HVD230
![Page 17: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/17.jpg)
Características da Rede CAN
▸ Todas as mensagens são broadcast▸ Cada nó pode transmitir mensagens▸ Cada mensagem possui uma ID que
identifica fonte ou conteúdo da mensagem▸ Cada receptor decide processar ou ignorar
a mensagem▸ IDs com valores menores -> Maior
prioridade!
![Page 18: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/18.jpg)
Uma transmissão COMPARADA
Fonte: https://www.linkedin.com/pulse/automotive-can-bus-system-explained-kiril-mucevski
![Page 19: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/19.jpg)
Como são os SINAIS da Rede CAN
Fonte: https://www.linkedin.com/pulse/automotive-can-bus-system-explained-kiril-mucevski
![Page 20: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/20.jpg)
2 Padrões ISO para sistemas com comunicação CAN:▸ ISO 11898-3▹ Baixa velocidade – 125 kb/s▹ Distância de até 500 m
▸ ISO 11898-2▹ Alta velocidade – 1 Mb/s▹ Distância de até 40 m
Pacotes de INFORMAÇÃO
![Page 21: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/21.jpg)
Standard CAN – Versão 2.0A▸ ID de 11 bit▸ 2048 ids diferentes!
Pacotes de INFORMAÇÃO
Fonte: http://www.ti.com
![Page 22: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/22.jpg)
Pacotes de INFORMAÇÃO
Fonte: https://fabiobaltieri.com/2013/07/23/hacking-into-a-vehicle-can-bus-toyothack-and-socketcan/
![Page 23: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/23.jpg)
Fonte: https://fabiobaltieri.com/2013/07/23/hacking-into-a-vehicle-can-bus-toyothack-and-socketcan/
![Page 24: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/24.jpg)
Padrões de Rede CAN
▸ NMEA 2000 – Utilizado em aplicações navais e aéreas
▸ SAE J1939 - Utilizado em aplicações automotivas,especialmente caminhões.
▸ DIN 9684 – Utilizado em Aplicações Agrícolas
▸ ISO 11783 – Utilizado em aplicações agrícolas - ISOBUS
![Page 25: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/25.jpg)
Padrões de Rede CAN▸ OBDII▸ On Board Diagnostics II
▸ Análise em rede CAN para informações “padrões”▸ Velocidade▸ Combustível▸ Bateria▸ Distância▸ RPM▸ Dentre outros
▸ Pedido – ID 0x7DF▸ Resposta – ID 0x7E8
https://en.wikipedia.org/wiki/OBD-II_ PIDs
![Page 26: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/26.jpg)
Padrões de Rede CAN▸ OBDII▸ On Board Diagnostics II
![Page 27: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/27.jpg)
Shields Arduino
▸ Arduino R3▸ Controller CAN▹ MCP2515 - SPI▸ Transceiver CAN▹ MCP2551
![Page 28: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/28.jpg)
Shield Arduino
▸ Arduino DUE▸ Transceiver CAN
http://togglebit.net/product/arduino-due-can-shield/
![Page 29: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/29.jpg)
Arduino Due
▸ AT91SAM3X8E▸ ARM Cortex M3▸ 84 MHz ▸ Controller CAN+Transceiver!
![Page 30: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/30.jpg)
Arduino Due
http://www.microchip.com/wwwproducts/en/ATSAM3X8E
![Page 31: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/31.jpg)
Arduino Due
▸ AT91SAM3X8E▸ ARM Cortex M3▸ 84 MHz ▸ Controller CAN+Transceiver!
![Page 32: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/32.jpg)
DesenvolvimentoCom Arduino
![Page 33: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/33.jpg)
DesenvolvimentoCom Arduino
Rede CAN?
• Apesar de o
Arduino DUE ter o
Controlador CAN...
• O Arduino IDE não
tem suporte oficial!
• Senta na calçada e
chora?
![Page 34: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/34.jpg)
DesenvolvimentoCom Arduino
Rede CAN?
• Repositórios GitHub!
![Page 35: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/35.jpg)
Desenvolvimento Com Arduino
Rede CAN?
![Page 36: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/36.jpg)
Desenvolvimento com CAN
▸ Conhecimento de Registradores e Configurações de Periféricos Associados
▸ AT91SAM3X8E
▸ Termos principais:▸ ID – identificação da mensagem▸ DLC – tamanho em bytes da mensagem▸ Payload – mensagem propriamente
(bytes)
![Page 37: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/37.jpg)
Hora de mostrar a Demonstração!
Módulo
Conexões
Execução
Transceiver
![Page 38: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/38.jpg)
![Page 39: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/39.jpg)
![Page 40: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/40.jpg)
Cuidado com a Ligação!!!
![Page 41: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/41.jpg)
![Page 42: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/42.jpg)
Mais informações podem ser obtidasBasta implementar mais queries OBD2
– E verificar se a ECU Responde.EX: nível de bateria, distânciapercorrida, combustível, etc.
![Page 43: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/43.jpg)
Momento Inspiração
http://canze.fisch.lu/arduino-due/
=
![Page 44: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/44.jpg)
Momento Inspiração
+
+
![Page 45: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/45.jpg)
Poder para bem… E Mal!
![Page 46: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/46.jpg)
http://chadgibbons.com/2013/12/29/hacking-the-jeep-interior-can-bus/
![Page 47: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/47.jpg)
Obrigado!
Perguntas?
![Page 48: Veja como hackear seu carro usando Rede CAN com Arduino Due](https://reader033.vdocuments.mx/reader033/viewer/2022052119/58e57ddc1a28abbf5d8b5495/html5/thumbnails/48.jpg)
Contato
@andremlcurvello
http://youtube.com/profandrecurvello
http://andrecurvello.com.br
http://facebook.com/profandrecurvello