Desarrollo de una herramienta automática para piratear el bus CAN

Alberto Gimenez
Alberto Gimenez

Anteriormente, un botón físico o interruptor en el tablero de su automóvil se conectaba a cualquier dispositivo que controlara. Puede que hubiera un relé en la mezcla, pero aún así no fue demasiado difícil pasar los cables por el arnés y averiguar adónde iban. Pero hoy ese concepto se está convirtiendo cada vez más en un recuerdo curioso.

Suponiendo que su automóvil moderno incluso tenga botones físicos, presionar uno de ellos probablemente enviará un mensaje a través del bus CAN al que el dispositivo receptor responderá (con suerte). Sabiendo lo aterrador que puede funcionar esto, [TJ Bruno] trabajó en algunos programas que prometen trabajar con interfaces de usuario de bus CAN de forma más rápida y sencilla. En última instancia, espera que su herramienta permita a los usuarios integrar rápidamente hardware personalizado en su vehículo sin tener que perforar un agujero en el tablero para el control físico.

Pero si eres una persona que no le gusta hacer cosas por ellos (una apuesta segura, porque estás leyendo La-Tecnologia), no te preocupes. [TJ] comienza su escritura con una descripción general de cómo puede leer y analizar los mensajes CAN en el Arduino con el chip MCP2515. Rompe su boceto de muestra línea por línea, explicando cómo funciona todo para que incluso si nunca antes ha tocado un Arduino, puede obtener la esencia de lo que está sucediendo.

Resulta que leer mensajes en el bus CAN y actuar sobre ellos es bastante simple. La parte difícil es averiguar lo que está buscando. Aqui esta el codigo [TJ] trabaja en entra. En lugar de tener que examinar manualmente todos los mensajes en la red y tratar de determinar a qué responden, su programa escucha mientras el usuario presiona repetidamente el botón que desea identificar. Con bastantes muestras, el código puede ingresar automáticamente el ID de CAN apropiado.

La ventaja de todo esto es que puede activar funciones o hardware del mercado de accesorios utilizando los controles existentes de su vehículo. ¿Necesitas un ejemplo? Eche un vistazo a la cámara de vista previa [TJ] agregado a su Chevy Cruze 2017 usando las mismas técnicas.


  • Jon H dice:

    Me pregunto qué es el dispositivo B&O.

    • tomas316 dice:

      Los portátiles HP tienen un sonido B&O …

      • Yoriando dice:

        ¿Y esta etiqueta mejora la calidad del sonido?

        • Andrea Campanella dice:

          De acuerdo, a veces marketing, pero en mi HP la diferencia entre Windows y Linux es similar día y noche, me pregunto si usan alguna configuración para hacer que la cavidad del portátil resuene …

  • David Blades dice:

    Bang y Olufson

    • zaprodk dice:

      No. Olufsen. Es danés, no sueco.

  • Pedro dice:

    Esta es una idea maravillosa. ¡Excelente manera de descubrir información oculta!

    • Ostraco dice:

      Y tampoco tendrá que conducir su bus CAN hacia atrás. 😉

  • Hirudinea dice:

    Así que modificas el programa de tu nuevo coche, la entrega funciona y “Lo siento, no hay reparaciones, has cancelado la garantía”.

    • Ben Kelley dice:

      Esto no modifica el programa del coche. Solo escucha el evento de pulsación de botón en el bus CAN.

    • David dice:

      Las modificaciones no anulan su garantía, esto es completamente incorrecto. Deben probar que la modificación causó la falla, lo que sería difícil de probar. Sin embargo, puede terminar ante un juez defendiendo esto.

      • Hirudinea dice:

        Y si usted, que gana $ 50,000 al año, termina ante un juez contra una empresa que gana $ 5,000,000,000 al año, ¿cómo cree que sucederá? Si la empresa quiere engañarte, solo puedes apretar los dientes y esperar que usen lubricante, así es la vida.

        • Steve Balmer dice:

          Solo en muhricah

        • Ostraco dice:

          Además de todo, un plan de “arbitraje”, por lo que las cosas ni siquiera llegan a un juez.

  • dingodreams dice:

    En lugar de hacer un “cortafuegos” en el bus de caja (que requeriría cortar cables, etc.), ¿por qué no hacer que el arduino envíe el mismo código de nuevo … y así apagar la función de fábrica milisegundos después de la pulsación larga? Pero tenga cuidado aquí, porque si su código se vuelve tonto y dice luces de freno, cuando realmente funcionaron, podría costar vidas. Pruébelo muy bien y asegúrese de que la nutrición esté bien estabilizada para que ningún ruido pueda destruir su micro.

    • denis dice:

      Bueno, el caso de uso habitual aquí sería secuestrar el juego de fábrica, romper la siguiente pista, etc. y enviarlos a su propio juguete (en mi caso, android auto en pi) sin perturbar la unidad de fábrica. incluso si envía un comando opuesto después de un segundo, aún tendrá efectos irresolubles. en mi caso, el bus de caja para problemas de medios está separado del bus de caja para tren de potencia / rotura, etc., por lo que no hay problemas de seguridad, solo tengo que romper el bus en el estéreo para que el estéreo no vea uno de los mensajes de control, pero todo lo demás pasa.

      Todavía no he visto el video, pero voy a reanudar el proceso del autor.

      • dingodreams dice:

        Ya veo, es bueno que los autobuses estén separados, no lo sabía. Tiene mucho sentido.

        • denis dice:

          en realidad, es un tema bastante interesante hoy en día porque los coches se complican. aquí hay una descripción general de una serie 3 de BMW casi actual. La mayoría de los autos con los que me cruzo están configurados de manera similar. (Soy automovilista en el Reino Unido)
          https://www.e90post.com/forums/attachment.php?attachmentid=185111

          • dingodreams dice:

            Hmmm, ¿conté eso? 4 autobuses? No me he fijado en los coches modernos desde el año 2000. Cuenta.

  • denis dice:

    esto es genial, escaneé manualmente los registros de mi autobús para identificar los mensajes del controlador i-drive y los volantes, fue muy, muy molesto con todo el resto del tráfico en el autobús. Curiosamente acabo de comprar un adolescente con el doble canbus para hacer un hombre en el medio y curar algunos mensajes. Creo que me acabas de ahorrar mucho trabajo, gracias al OP y al autor 🙂

  • John Dickinson dice:

    ¿Está disponible el enlace sin que yo tenga que iniciar sesión y aceptar que Dios sabe qué en los términos?

    Me gustaría leer esto, pero no lo suficiente como para estar de acuerdo en darles mis detalles.

    • Elliot Williams dice:

      Es mediano, pero solo tiene que hacer clic en la pequeña x en la ventana emergente del interruptor.

      • John Dickinson dice:

        Hola. No pude deshacerme de él esta mañana, pero hacer clic en la X funciona esta tarde. 🙂

  • manu dice:

    ¿Alguien puede encontrar el código fuente de su adivinador CAN ID (solo hay un proyecto canano github que es solo un snuff)?
    ¡Gracias!

  • Dave dice:

    Para piratear el bus CAN, recomiendo usar este adaptador y programa: https://rs.canlab.cz/?q=en/usb2can_triple

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *