60 segundos o El ataque “Rollback” a los sistemas Keyless automotrices (RKE’s)

¿Quieres saber qué tan rápido y fácil es abrir y encender un vehículo Nissan, Mazda, Hyundai, Kia u Honda? pues, sigue leyendo…
60 segundos es el título de la película del año 2000 protagonizada por Nicolas Cage, en donde un ex ladrón de autos debe realizar un robo de automóviles (a lo Grand Theft Auto) de alta gama en 3 días o caso contrario, su hermano, a manos de unos gánster, será asesinado. Pero, ¿qué tan factible es realizar un robo de esta magnitud en tan corto tiempo?, se puede hacer con menos ruido? ¿Con menos efectos especiales? ¿Y sin Nicolas Cage ni Angelina Jolie?, descubrámoslo!
No muy lejos de la realidad, el robo de vehículos en nuestro país (Chile) crece cada día más y no hay horizonte claro en donde pueda detenerse. Víctimas horrorizadas con los hechos de violencia y humillación a los que son sometidos frente al robo de vehículos ven con desesperanza poder volver a conducir un vehículo en las calles de nuestro país sin pensar nuevamente que podrían convertirse en otra víctima de este tipo de delitos.
Pero ahora no sólo todos los conductores les temen a los abordajes, portonazos y otros, sino que, además, teman dejar su auto estacionado en cualquier lugar y que a los pocos minutos este desaparezca por completa sin dejar huella de que lo que sucedió.
Imaginen lo siguiente, conduces desde tu casa al supermercado más cercano para realizar las compras del mes, estacionas tu auto cerca de un puesto de vigías y guardias, cierras tú auto con el control a distancia, comienzas a caminar y a los pocos minutos no recuerdas si cerraste el auto, te devuelves y, para asegurarte, cierras el auto al menos unas 2 veces, vs las luces de emergencia encenderse cada vez al son que aprietas el botón y ahora, en tu interior subconsciente, piensas que tu vehículo está totalmente seguro y resguardado. Realizas las compras necesarias, pagas tu ticket de estacionamiento, te diriges a tu automóvil y sucede lo peor, te da un micro infarto, se te acelera el pulso, la respiración y comienzas a buscar desconsoladamente tu vehículo que no ves en ningún lugar, crees lo peor. Te diriges a la estación de guardias y vigías y das aviso lo sucedido, los guardias comienzan a buscar el vehículo, pero no dan con él, llamas a carabineros. Carabineros y los guardias se constituyen en el lugar para revisar lo sucedido y comienzan a revisar las camas de seguridad, localizan tu vehículo en las grabaciones, y comienzan a describir lo siguiente:
- Ven por las cámaras que estacionas el auto y lo cierras, pero no se encienden las luces.
- Ven por las cámaras que te devuelves al auto, lo inspeccionas, no lo cierras si no 2 veces consecutivas para asegurarte que esté totalmente seguro, te das la vuelta y procedes con tus compras alejándote del lugar.
- A los pocos minutos, como si fuera un fantasma, las luces del vehículo se encienden, se acercan 2 personas con mascarillas y lentes, se suben al auto y se lo llevan como si nada
- Nadie se explica que sucedió.
El personal de seguridad, guardias, carabineros y la PDI, revisan la situación y creen que pudiste haber sido víctima de un ataque de inhibición de señal, el cual permite que un delincuente intercepte la señal de cerrado del auto y este no quede debidamente bloqueado. La hipótesis es descartada rápidamente debido a que se ve por las cámaras que las luces del auto se encienden al cerrarlo, todo el mundo queda marcando ocupado…
Que hice para merecer esto, porqué salí a comprar, porqué dejé el auto estacionado ahí… son pensamientos que se te vienen a la mente, mientras también te preguntas como fue que tan sofisticadamente, en silencio y sin dejar muchos rastros, fuiste víctima de un robo, un ataque silencioso, sin que te dieras cuenta. Te sientes vulnerado e impotente de no poder hacer absolutamente nada.
Te contaremos que pudo haber sucedido (en teoría).
Los vehículos, en su mayoría, poseen un sistema de acceso a distancia sin llaves conocidos como “Keyless”, este sistema te permita abrir, cerrar o iniciar la marcha del vehículo sin necesidad de hacer contacto con una llave física. Estos dispositivos funcionan de manera “activa” enviando una señal en las frecuencias de los 300 (315 Mhz) ,400 (433 Mhz) u 800 (868 Mhz) codificada (código) hacia un receptor que tiene el vehículo, si el código de la señal corresponde con lo que tiene almacenado el vehículo, el computador a bordo se libera y procede a enviar la señal de apertura de puertas, cierre de puertas, activación de alarmas, encendido u otros. Gráficamente, sería algo así (su máxima simplicidad):
Un delincuente, analizando el diagrama, podría pensar en que al momento de enviar la señal desde el mando a distancia (llave keylesss) hacia el vehículo, este podría ser interceptado, copiado y enviado nuevamente, de esta forma el vehículo podría ser abierto sin necesidad de contar con la llave, pero no, no funciona así.
Los fabricantes de vehículos muy perspicazmente descubrieron esta vulnerabilidad hace tiempo, e introdujeron una medida de mitigación en donde cada código que va en la señal desde la llave al vehículo cambia en cada toque (Rolling Code), con eso, se evitarían los ataques de interceptación y “replay” a los que eran originalmente vulnerables los sistemas Keyless.
¿Entonces qué sucedió?
Los dispositivos de acceso sin llave (Keyless) no solo son vulnerables al ataque anteriormente descrito, si no, que a muchos más, como los siguientes:
- Bloqueo o inhibidores de señal: Estado vulnerables en el medio local.
- Ataques de “Relay” (amplificación): Estado vulnerables en el medio local.
- Ataques de “Replay” (Interceptación y reenvío del código): Estado: mitigado
Además de lo anterior, los computadores de los vehículos también son vulnerables a ataques de administración de “llaves” como los siguientes, simplemente utilizando (en muchos casos) el protocolo OBDII (o escáneres automotrices):
- Enrolamiento de llaves (códigos)
- Reemplazo de llaves (códigos)
- Extracción de llaves (códigos)
Analizando las vulnerabilidades anteriores podemos descartar todo, debido que no existía el acceso físico al vehículo, y la persona se encontraba muy distante para haber sido víctima de un ataque de amplificación. Entonces, ¿qué? Noviembre 22’, Blackhat USA (https://www.youtube.com/watch?v=zihLJbmDG3Q) , un grupo de investigadores presentó una descubrimiento que podría calzar con el ataque descrito en este artículo, Rollback – un nuevo ataque de reenvío agnóstico del tiempo en que se ejecuta.
Descubierto inicialmente en el 2021 e informado a los fabricantes de los sistemas Keyless en Abril y Mayo del año 2021, permite abusar de la implementación de la generación de códigos dentro de las señales de bloqueo y desbloqueo, para hacerle creer al computador (o al subsistema de control de llaves) del vehículo, que se está iniciando una nueva “resincronización” del mando a distancia, provocando que este último crea que está recibiendo un código dentro de una señal verdadera.
Comúnmente, un atacante realizaría un ataque de “bloqueo” y “reenvió de señal” (RollJam para los amigos) que funciona posicionando un dispositivo que bloquea, intercepta y reenvía la señal desde el mando a distancia (llave) hacia el vehículo. De esta forma, los códigos “reenviados” nunca son bloqueados por el vehículo permitiéndoles su posterior uso. (Este ataque data del año 2015), ahora, en este nuevo ataque “Rollback”, el ataque funciona de manera similar: Capturar + Bloquear + Reenviar, pero de una forma diferente, revisémoslo a continuación:
Paso 1: Se envía la primera señal de desbloqueo al vehículo
El atacante captura y bloquea la señal para que el vehículo no la reciba:
Paso 2: Se envía una nueva señal para bloquear el vehículo
El atacante solo captura la señal y deja que el vehículo la reciba
El vehículo se comporta como debería:
Paso 3: El dueño del vehículo lo utiliza normalmente, sin dar cuenta de lo sucedido todas las veces que quiera:
Paso 4: El atacante hace uso de las primeras 2 señales capturadas (desbloqueos), el vehículo se abre sin mayores problemas:
Paso 5: Profit.
En este ataque, lo que sucedió fue que el vehículo “volvió” (rollback) aun estado antes del ataque permitiendo una re-sincronización del mando, utilizando para ello las primeras 2 señales:
- Las señales capturadas son enviadas consecutivamente (Paso 1 y Paso 2)
- El vehículo es re-sincronizado a un código previo al enviado por el atacado.
a)Al último código enviado en la señal capturada (Paso 2) - El vehículo actúa de acuerdo con las instrucciones enviadas en la señal (bloqueo, desbloqueo, alarma, etc.)
Lo interesante de este ataque, es que es “agnóstico” del tiempo en que se realiza, esto significa:
- Que el atacante (una vez capturados los códigos), puede utilizarlos cuantas veces quiera.
- Que lo pueda utilizar en cualquier ocasión y no siguiendo la secuencia del código que espera el vehículo (“Rolling code”).
¿Pero, todo esto es posible de realizar en el mundo real?
Existen algunas complicaciones en la práctica que podrían requerir un análisis más profundo, y dependerá directamente de los fabricantes de los sistemas Keyless (RKE’s), de ello, hay que considerar:
- Numero de señales a capturar
- Secuencias de señales consecutivas
- Espacio de tiempo, que tan rápido o con cuánta diferencia de tiempo se deben realizar las capturas/reenvíos
En un ambiente controlador de pruebas, se detectó adicionalmente, que en muchos casos el mando a distancia (llave keyless) se bloqueaba temporalmente, y, aun así, era necesaria contar con la llave física para dar encendido al automóvil.
¿Y qué tan complicado es?
La verdad, no lo es mucho, existen dispositivos que sirven para analizar frecuencias, copiarlas y reenviarlas y que son de simple uso, el más fácil de ellos FlipperZero.
Simplemente utilizando una combinación de tiempo, paciencia, orden y análisis se podría llevar a cabo este ataque (utilizando simplemente el módulo SubGhz y configurando algunos parámetros de la señal de manera manual):
Ejemplo de señales capturadas al aire libre en una calle de Santiago:
Ejemplo de un “Rolling Code” (señal para abrir o cerrar) en acción de un vehículo desconocido:
Utilizando este dispositivo, es altamente probable realizar un ataque de “Rollback” de manera exitosa. (Ref.: https://www.reddit.com/r/flipperzero/comments/zagyxt/finally_managed_to_attack_my_hyundai_i30_with/) En su presentación de la Blackhat (Rollback, A New Time-Agnostic Replay Attack Against the Automotive Remote Keyless Entry Systems) los investigadores pudieron determinar que existe una serie de vehículos, con una serie de fabricantes y una serie de revisiones que son vulnerables a alguna variante del ataque de “Rollback”:
De sus conclusiones:
- No importa cuál sea la fecha de fabricación del vehículo
- No importa si el vehículo es eléctrico, bencina o diesel.
- La mayoría de los autos asiáticos son vulnerables (muestra del mercado estadounidense):
- Mazda, Honda y Kia, todos vulnerables en alguna variante.
- Algunos Nissan son vulnerables.
- Todos los modelos de Toyota probados son vulnerables
- De los tipos de fabricantes de sistemas Keyless (RKE), aquellos que son Mfr. 2 and Mfr. 3 son vulnerables utilizando 2 señales solamente.
- Los tipos de RKE’s Mfr.1 son vulnerables, comúnmente encontrados en vehículos Mazda y Honda
- Los vehículos con el tipo RKE Mfr.4 no son vulnerables.
Las vulnerabilidades detectadas en los vehículos Nissan, Kia y Hyundai fueron catalogadas bajo el CVE 2022-37418: https://nvd.nist.gov/vuln/detail/CVE-2022-37418
“La unidad receptora de entrada remota sin llave (RKE) en ciertos vehículos Nissan, Kia y Hyundai hasta 2017 permite a los atacantes remotos realizar operaciones de desbloqueo y forzar una resincronización después de capturar dos señales de llavero válidas consecutivas a través ondas de radio, también conocido como un ataque RollBack. El atacante conserva la capacidad de desbloquear indefinidamente.”
Las vulnerabilidades de los vehículos Honda, bajo el CVE 2022-37305: https://nvd.nist.gov/vuln/detail/CVE-2022-37305
“La unidad receptora de entrada remota sin llave (RKE) en ciertos vehículos Honda hasta 2018 permite a los atacantes remotos realizar operaciones de desbloqueo y forzar una resincronización después de capturar cinco señales RKE válidas consecutivas a través de ondas de radio, también conocido como ataque RollBack. El atacante conserva la capacidad de desbloquear indefinidamente.”
Las vulnerabilidades de los vehículos Mazda, bajo el CVE 2022-36945: https://nvd.nist.gov/vuln/detail/CVE-2022-36945
“La unidad receptora de entrada remota sin llave (RKE) en ciertos vehículos Mazda hasta 2020 permite a los atacantes remotos realizar operaciones de desbloqueo y forzar una resincronización después de capturar tres señales de control remoto válidas consecutivas a través de ondas de radio, también conocido como ataque RollBack. El atacante conserva la capacidad de desbloquear indefinidamente.”
¿Y cómo se puede prevenir esto?
Los fabricantes de vehículos deberían modificar los componentes de sus vehículos para hacerlos más seguros, en este caso, bastaría como implementar un modelo básico y simple de transacciones para validar el código enviado desde la llave al vehículo (inclusive cosas tan simples como validar un time-stamp por transacción serviría).
Pero si soy solo usuario, conductor, ¿qué puedo hacer?
Siempre debes acudir al fabricante del vehículo para solicitar más información y, probablemente, ellos ya tengan alguna solución a este problema.
También puedes implementar medidas de seguridad físicas para evitar el robo de tu vehículo, como, por ejemplo:
- Nunca dejes objetos de valor en tu vehículo
- Utiliza algún sistema de inmovilización que no dependa del rolling-code del vehículo o de sus sub-sistemas asociados.
- Utiliza algún tipo de inmovilización física que impida mover el vehículo, aunque este haya sido abierto.
Adicionalmente, es posible utilizar otro mecanismo de acceso/inicio al vehículo como los sistemas PKE (Sistema de entrada pasiva), que, a diferencia de los sistemas Keyless RKE, se necesita estar muy próximo al vehículos para abrir/cerrar o encederlo. Generalmente en Chile está implementado en aquellos vehículos que cuentan con un botón de acceso en las puertas y con sistemas Engine Start Button.
¿Y esto se está realizando en Chile?
Nuestro equipo de investigación (I+D) está trabajando en arduo proceso sobre el impacto de este ataque. Quédense atentos a las próximas semanas que estaremos dando noticias sobre su impacto en el mercado nacional.
¿Y esta vulnerabilidad, afecta otros dispositivos?
Posiblemente, pero hasta que no terminen las investigaciones y las debidas diligencias y reportes con los fabricantes afectados (y autoridades pertinentes), tendrán que esperar, solo podemos adelantar que algunos dispositivos OT e IoT podrían eventualmente ser vulnerables.
Disclaimer: Finalmente, aclarar que todo el material de investigación, el ataque y otros, fueron descubiertos por Levente Csikor - Institute for Infocomm Research, A*STAR y por Hoon Wei Lim – NCS Group y que todas las referencias fueron extraídas de la publicación de la BlackHat 2022 publicada en Noviembre de 2022 - https://blackhat.com , muchas gracias!
Bonus Track: en relación a todo lo anterior, existen ataques ya confirmados a los sistemas RKE’s como el de vehículos HONDA, conocido como ataque de “Replay” (reenvío), en donde, a diferencia del ataque Rollback, solo basta con copiar una señal de los mandos Keyless de estos vehículos para ser usados en el futuro sin mayores complicaciones para encender, cerrar o iniciar los vehículos. La vulnerabilidad fue identificada con el CVE CVE-2022-27254 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-27254 en donde ya existen evidencias que el ataque es usado en el medio: https://github.com/nonamecoder/CVE-2022-27254en donde ya existen evidencias que el ataque es usado en el medio: y adicionalmente, existen los PoC y exploit para abusar de ellos. (Dichos exploits no serán informados mediante este articulo). y adicionalmente, existen los PoC y exploit para abusar de ellos. (Dichos exploits no serán informados mediante este articulo).
Los vehículos vulnerables (hasta el momento) son los siguientes:
- Honda Civic del 2016 al 2020 (LX, EX, EXL- Toruring- Si, Type R)
Al momento de redactar este artículo, existían 59 vehículos vulnerables a la venta a través del portal chileautos.cl y al parecer el fabricante no tiene intención de corregir esta vulnerabilidad, por lo que, si tienes algunos de estos vehículos, te recomendamos utilizar un protector de Faraday para tu llave Keyless e iniciar/abrir/cerrar el vehículo con llave física.
…y todo, en menos de 60 segundos!
Cya!
Escrito por : Rodrigo Gonzalez
Gerente de Ciberseguridad