1 pontos por GN⁺ 2024-03-15 | 1 comentários | Compartilhar no WhatsApp

Engenharia reversa de um sinal de chaveiro automotivo (Parte 1)

  • Projeto que começou por curiosidade sobre como dispositivos de controle remoto automotivo (chaveiros) transmitem dados e sobre possíveis vetores de ataque, como ataques de replay.
  • Como os testes em veículos reais eram limitados, não foi possível realizar uma análise significativa dos sinais capturados anteriormente.
  • Este post de blog orienta iniciantes com base na experiência bem-sucedida de fazer engenharia reversa e reproduzir sinais de chaveiros automotivos no ano passado.

Hardware usado

  • RTL-SDR: dispositivo que pode transformar um dongle USB barato de TV/rádio em um receptor de RF multifuncional, capaz de visualizar e armazenar sinais na faixa de 24 a 1750 MHz.
  • Flipper Zero: dispositivo eletrônico com vários módulos de hardware sem fio, capaz de 'interagir' com dispositivos eletrônicos do dia a dia e produtos eletrônicos de consumo.
  • CC1101 vs RTL2832U: o chip CC1101 presente no Flipper Zero é um módulo transmissor/receptor, ao contrário do chip RTL2832U do RTL-SDR, mas não oferece suporte a SDR, então é necessário configurar corretamente os parâmetros de RF.

Noções básicas de sinais de radiofrequência (simplificadas demais)

  • Transmissões por radiofrequência usam ondas de rádio, que são ondas eletromagnéticas, para enviar sinais.
  • Frequência: quantas vezes a onda portadora ocorre.
  • Modulação: indica como o sinal é representado na onda de rádio. AM e FM são os tipos de modulação mais comuns.
  • Largura de banda: faixa de frequência ocupada por um sinal de RF modulado.

Análise visual

  • SDR#: aplicativo gratuito e intuitivo de DSP para SDR em computador, que pode visualizar o espectro de rádio em tempo real e demodular alguns tipos comuns de modulação.
  • Descoberta do sinal: foi possível observar a atividade da maioria dos controles remotos na frequência de 433.92 MHz usando um dongle RTL-SDR.

Análise prática

  • Universal Radio Hacker: suíte open source completa para investigar protocolos sem fio, com suporte nativo a muitos SDRs comuns, e o software necessário para decodificar sinais em bits.
  • A análise da aparência visual do sinal e dos padrões de bits permitiu identificar sua estrutura e consistência.

Código rolante

  • Mecanismo de segurança usado em sistemas de entrada sem chave para evitar ataques simples de replay.
  • O controle remoto e o veículo geram e acompanham códigos rolantes usando um algoritmo criptografado.

Resultado final

  • Foi possível fazer engenharia reversa do sinal do chaveiro automotivo, entender a estrutura do sinal e integrar esse formato ao Flipper Zero para que ele pudesse ler, reserializar e reproduzir o sinal.

Opinião do GN⁺

  • Este artigo traz conteúdo interessante para quem se interessa por comunicação sem fio e segurança. A engenharia reversa de sinais de chaveiros automotivos é um tema importante para pesquisadores de segurança, e o artigo explica esse processo em detalhes.
  • A engenharia reversa pode ajudar a entender e melhorar vulnerabilidades técnicas de segurança. O artigo oferece conhecimento prático sobre essa área ao mostrar como analisar sinais usando equipamentos reais.
  • O artigo também mostra os desafios e as oportunidades de realizar pesquisa em segurança individualmente em contextos em que o uso de ferramentas como o Flipper Zero pode ser legalmente proibido.
  • Outras ferramentas com capacidades semelhantes incluem equipamentos SDR como HackRF One e BladeRF, que oferecem uma faixa de frequência mais ampla e recursos de transmissão e recepção.
  • Ao adotar essa tecnologia, é sempre necessário considerar restrições legais e questões de segurança, e seu benefício está em descobrir e corrigir vulnerabilidades reais.

1 comentários

 
GN⁺ 2024-03-15
Comentários do Hacker News
  • Um usuário mencionou que não conseguiu realmente abrir a porta do carro, mas decodificou tudo. Isso significa que ainda seria necessário superar o código rolante do veículo, apontando que não basta simplesmente somar 1 ao código e retransmiti-lo. O código rolante deve parecer aleatório quando observado de fora.
  • Outro usuário disse que fez engenharia reversa de um chaveiro automotivo barato comprado no AliExpress e, com tempo suficiente, um osciloscópio e a Wikipédia, conseguiu ter sucesso. Com base nessa experiência, pretende tentar o método do post do blog na próxima vez para se tornar um hacker melhor.
  • Foi compartilhada uma informação sobre um flow graph do GNU Radio. Esse gráfico pode ser usado com propósito semelhante para analisar sinais de chaveiros automotivos.
  • Foi mencionado como interessante um desenvolvimento relacionado: à medida que o acesso a dispositivos de programação de chaves aumenta, os fabricantes estão escondendo a programação de chaves atrás de procedimentos de segurança mais complexos como parte do sistema de segurança. O impacto dessas mudanças sobre criminosos é discutível, mas certamente afetará alguns negócios.
  • Um usuário avaliou o artigo como fácil de entender e revigorante.
  • Foi explicado que algumas chaves são geradas e rastreadas usando um contador que precisa manter sincronização entre o controle remoto e o carro, e foi levantada a curiosidade sobre como controles remotos de aprendizado conseguem superar esse tipo de sistema. Também foi expressa dúvida sobre se os botões de abertura de garagem integrados ao carro fazem algo muito mais complexo do que simplesmente reproduzir o sinal.
  • Foi apresentada a opinião de que, em vez de interceptar e decodificar o sinal para então codificar o seu próprio, pode ser mais eficaz realizar um ataque man-in-the-middle entre o chaveiro e o carro com uma antena grande, enganando os dois lados para que a distância entre eles pareça menor do que realmente é.
  • Um usuário disse esperar que as montadoras produzam pequenos controles RFID que caibam na carteira, e que um dispositivo do tamanho de um cartão de crédito, como um Flipper, pudesse alcançar o mesmo resultado.
  • Foi compartilhada a informação de que o dispositivo Flipper pode receber sinais brutos e analisá-los.
  • Um comentário dizia que não conseguia ver as imagens por causa do erro "429 Too Many Requests", reagindo de forma bem-humorada ao limite de requisições do site.