Sec16 Paper Garcia
Sec16 Paper Garcia
Sec16 Paper Garcia
https://www.usenix.org/conference/usenixsecurity16/technical-sessions/presentation/garcia
ISBN 978-1-931971-32-4
GmbH, Alemania.
Escuela de Ciencias de la
Computación, info@kasper- oswald.de Universidad
pierre@pavlides.fr
de Birmingham, Reino Unido.
vehículos en todo el mundo y podrían explicar los casos de seguros transmisión de una señal de apertura de puerta a través de la
interfaz RKE de alta frecuencia.
no resueltos de robo de vehículos supuestamente bloqueados.
basado en un protocolo de desafío-respuesta. en el lado del conductor), para ser utilizado cuando la batería está
Durante muchos años, solo se implementó criptografía patentada agotado
débil en transpondedores de inmovilizadores en todo el mundo. Esto Desafortunadamente, PKES no requiere la interacción del usuario
puede haber sido causado por la (como presionar un botón) en el costado del
energía limitada disponible en dispositivos con tecnología RFID, llave del coche para iniciar los cálculos criptográficos
limitaciones tecnológicas y consideraciones de costos. y transmisión de señales. La falta de interacción del usuario hace que
El primer tipo de transpondedor de inmovilizador que se los sistemas PKES sean propensos a ataques de retransmisión, en
roto fue el cifrado DST40 generalizado utilizado en que se transmiten las señales de desafío y respuesta
Transpondedor de firma digital de Texas Instrument a través de un canal inalámbrico separado: La llave del automóvil (p. ej., en
(DST), que fue rediseñado y roto en el bolsillo de la víctima) y el vehículo (por ejemplo, estacionado
Usenix Security 2005 [8]: La clave secreta de 40 bits de cientos de metros de distancia) asumirán su mutua
la cifra puede ser revelada en poco tiempo por medio proximidad y autenticar con éxito. Desde el
de búsqueda exhaustiva. Este papel fue al mismo publicación inicial de estos ataques de retransmisión en 2011 [14],
vez uno de los primeros ataques publicados a un dispositivo comercial herramientas que realizan automáticamente ataques de retransmisión en
en la literatura. Unos años más tarde, en Los sistemas PKES están disponibles en el mercado negro y
Usenix Security 2012, los investigadores publicaron varios son potencialmente utilizados por los delincuentes para abrir, iniciar y
ataques criptoanalíticos a los transpondedores Hitag2 de NXP [30, 32], robar vehículos.
bloquear el vehículo a distancia y se puede utilizar para trol para bloquear el coche. La víctima puede no notar la
encender y apagar la alarma antirrobo, si está presente. atacar y así dejar el coche abierto. una variante de
Los primeros controles remotos para automóviles no usaban el ataque es "interferencia selectiva", es decir, una combinación
criptografía en absoluto: el automóvil se desbloqueaba después de enfoque de espionaje y interferencia: la señal de código variable
recibir con éxito una señal constante de "código fijo". Los ataques de transmitida se supervisa y en el
repetición en estos sistemas son sencillos. mismo tiempo atascado, con el efecto de que el coche es
Encontramos un vehículo Mercedes Benz fabricado alrededor del no bloqueado y el atacante posee un temporalmente
año 2000 que todavía se basa en dicho código fijo. código rodante válido (de una sola vez). En consecuencia, un coche
sistemas RKE. podría encontrarse apropiadamente cerrado después de un robo. Este
La próxima generación de sistemas RKE son los llamados enfoque fue mencionado por primera vez en [17] y
sistemas de código rodante, que emplean criptografía más tarde prácticamente demostrado por [16,27]. Tenga en cuenta que
y un valor de contador que se incrementa en cada botón una transmisión exitosa de un nuevo código variable
prensa. El formulario de valor de contador (y otras entradas) desde el mando a distancia original hasta el coche por lo general invalida
el texto sin formato para generar un nuevo, encriptado (o todos los códigos rodantes previamente escuchados a escondidas, es decir,
autenticado de otro modo) señal de código variable. Después la ventana de tiempo para el ataque es relativamente pequeña.
descifrado/verificación en el costado del vehículo, el Además, normalmente no es posible cambiar
el valor del contador se comprueba comparándolo con el último el contenido de la señal, por ejemplo, convertir un "bloqueo"
valor de contador almacenado que fue reconocido como válido:
comando en un "desbloqueo". Esta limitación es a menudo
Un valor de contador aumentado se considera nuevo y pasado por alto (por ejemplo, en [16, 27]) y limita severamente la
así aceptado. Un código rodante con un contador antiguo amenaza práctica planteada por este tipo de ataque.
valor es rechazado. Este mecanismo constituye un
protección efectiva contra ataques de repetición, ya que un 1.2 Contribución y Esquema
el código variable se invalida una vez que se ha recibido
por el vehículo. Los mecanismos criptográficos detrás de los sistemas En este documento, estudiamos varios sistemas RKE extremadamente
de código rodante se describen con más detalle en extendidos y revelamos vulnerabilidades graves que afectan a millones
Sección 2.
de vehículos en todo el mundo. Nuestro
En principio, tal código rodante unidireccional La investigación estuvo motivada en parte por informes de robos
Los esquemas pueden proporcionar un nivel de seguridad adecuado para inexplicables de vehículos cerrados (por ejemplo [1,
el control de acceso. Sin embargo, como han demostrado los investigadores en 2]), así como la curiosidad científica sobre la seguridad de nuestros
el caso de Keeloq en 2008, las garantías de seguridad propios vehículos personales.
se invalidan si se basan en criptografía defectuosa El resto de este documento está estructurado de la siguiente
esquemas: Keeloq se rompió tanto por criptoanálisis [7, 15] como, en manera: En la Sección 2, resumimos brevemente los resultados
un entorno más realista, por ataques de canal lateral en el esquema de nuestro análisis preliminar de diferentes sistemas RKE
de derivación de claves ejecutado por la unidad receptora [12, 17]. únicamente mediante el análisis de las señales de RF transmitidas. los
Aunque es Las principales contribuciones que se presentan a continuación son:
mencionado con frecuencia que Keeloq es ampliamente utilizado
para sistemas RKE de vehículos, nuestra investigación indica 1. En la Sección 3, analizamos los esquemas RKE
que este sistema se emplea predominantemente para garaje empleados en la mayoría de los vehículos del grupo VW Group
abridores de puertas entre 1995 y hoy. Mediante
Otro ataque, dirigido a un automóvil obsoleto. ingeniería inversa del firmware de las respectivas Unidades de
Esquema RKE de un vehículo no especificado (construido entre control electrónico (ECU), descubrimos
2000 y 2005), fue demostrado por Cesare en que los sistemas VW Group RKE se basan en esquemas
2014 [9]: Un adversario tiene que escuchar a escondidas tres códigos criptográficos con una única clave maestra mundial, que permite
rotativos subsiguientes. Luego, utilizando el análisis de espacio de a un adversario obtener acceso no autorizado a un vehículo
fase, el siguiente código variable se puede predecir con un afectado después de
probabilidad alta. Sin embargo, aparte de este ataque escuchar a escondidas un solo código rodante.
la seguridad criptográfica de los sistemas RKE automotrices no ha
sido investigada hasta donde sabemos. 2. En la Sección 4, estudiamos un esquema RKE basado
En particular, se ha llevado a cabo una encuesta a gran escala y un en el cifrado Hitag2, como lo utilizan muchos fabricantes
análisis de seguridad de sistemas de código rodante muy difundidos. diferentes. Hemos hecho ingeniería inversa
no se ha llevado a cabo. el protocolo en forma de caja negra y presente
Un método diferente, simple pero efectivo utilizado por un nuevo ataque de correlación rápida en Hitag2 aplicable en
delincuentes para entrar en los coches es bloquear la comunicación un contexto RKE. escuchando a escondidas
de RF cuando la víctima presiona el mando a distancia de cuatro a ocho códigos rodantes, un adversario puede volver a
esquemas RKE cubiertos en esta sección, tenemos fuertes publicado en 2015 [6] después de haber realizado nuestro
indicaciones de que la gran mayoría es vulnerable a los análisis preliminar. Tenga en cuenta que esto no cubre
ataques que se presentan a continuación. Tenga en cuenta ninguno de los algoritmos criptográficos presentados aquí.
que el Grupo VW también incluye ciertas marcas de lujo (por
ejemplo, Porsche, Bentley, Lamborghini, Bugatti) que no 3.1 Análisis de Control Remoto y ECU
analizamos en detalle. En su lugar, nos centramos en
vehículos de mayor distribución fabricados por VW, Seat,
Škoda y Audi. Para obtener una lista de los autos con los que Obtuvimos varios controles remotos de VW Group y extrajimos
validamos nuestros hallazgos, consulte la Sección 3.5.1. las placas de circuito impreso (PCB) para un análisis más
Escuchando a escondidas y analizando las señales detallado del hardware. Una placa de circuito impreso típica
transmitidas por numerosos controles remotos, identificamos para un control remoto RKE del grupo VW incluye un
al menos 7 esquemas RKE diferentes, denominados VW-x (x microcontrolador (µC), un transmisor de RF, una antena
= 1...7) a continuación. De estos sistemas, seleccionamos los (integrada en la placa de circuito impreso) y una batería de
cuatro esquemas que cubren la mayor cantidad de vehículos: tipo botón como componentes principales. En muchos PCB
de control remoto (p. ej., implementando VW-2), encontramos
VW-1: El sistema más antiguo, utilizado en modelos de años un µC marcado con Temic/Atmel M44C890E, cf. Figura 4.
hasta aproximadamente 2005. El control remoto transmite Según la hoja de datos disponible en línea [3], este µC es un
señales moduladas On-Off-Keying (OOK) a 433,92 MHz, procesador de 4 bits, el llamado MARC4. El µC se programa
utilizando codificación de ancho de pulso a una tasa de bits con máscara, es decir, el código del programa se coloca en la
de 0,667 kBit/s. memoria de solo lectura (ROM) y, por lo tanto, se fija en la
fabricación. Según Laurie [21], es posible reconstruir el código
VW-2: Usado desde aproximadamente 2004 en adelante.
de programa de los procesadores MARC4 tomando fotografías
La frecuencia operativa es de 434,4 MHz usando OOK (igual
microscópicas de la memoria ROM y aplicando más
que para VW-3 y VW-4), transmitiendo datos codificados en
procesamiento de imágenes para extraer el valor de cada bit
Manchester a una tasa de bits de 1 kBit/s.
individual. Sin embargo, no seguimos este enfoque porque no
VW-3: Empleado para modelos desde aproximadamente teníamos acceso al equipo microscópico adecuado.
2006 en adelante, utilizando una frecuencia de 434,4 MHz y
codificación Manchester a una tasa de bits de 1,667 kBit/s.
El formato del paquete difiere considerablemente del VW-2.
VW-4: El esquema más reciente que analizamos, encontrado
en vehículos entre 2009 y 2016 aproximadamente.
El sistema comparte frecuencia, codificación y formato de
paquete con VW-3, pero utiliza un algoritmo de cifrado
diferente (ver más abajo).
Los tres esquemas restantes se utilizan en vehículos Audi
desde aproximadamente 2005 hasta 2011 (VW-5), el VW
Passat desde 2005 (modelo B6/tipo 3C y posteriores, VW-6)
y vehículos VW nuevos como el Golf 7 (VW-7 ). No hemos
investigado más a fondo la seguridad de estos sistemas, pero Figura 4: PCB de un control remoto más antiguo del Grupo
al menos para los vehículos más antiguos, parece probable VW usando un MARC4 µC
que se hayan realizado elecciones de diseño similares a las
de VW-1–VW-4. Al estudiar los controles remotos de los vehículos más
Para nuestros análisis iniciales, implementamos el nuevos, encontramos µC diferentes y no fácilmente
procedimiento de demodulación y decodificación más probable identificables en la placa de circuito impreso. Un ejemplo de
para todos los sistemas anteriores. Luego recolectamos esto se muestra en la Figura 5: No pudimos identificar el tipo
códigos móviles de múltiples controles remotos para cada de µC a partir de las marcas en el IC principal (arriba, hacia la
esquema y comparamos los datos resultantes. Para todos los derecha), lo que complica la ingeniería inversa.
esquemas VW-1– VW-4, encontramos que la mayor parte del Parecía concebible que pudiera estar presente alguna
contenido del paquete parecía estar encriptado, excepto por forma de derivación clave, que tendría que implementarse en
un patrón de inicio fijo y el valor del botón presionado enviado el lado de la ECU receptora. Por lo tanto, optamos por analizar
sin formato. Por lo tanto, asumimos que todos los sistemas las ECU de RKE en el vehículo que reciben y procesan las
usan autenticación implícita, es decir, verifican la corrección señales del control remoto.
de un código variable después del descifrado. Las rutinas de Por lo tanto, compramos una serie de ECU que implementan
demodulación para VW-3 y VW-4 fueron independientes la funcionalidad RKE respectiva e intentamos
el análisis del respectivo firmware de la ECU revelado porque el contador en el vehículo y el control remoto están sincronizados
que el cifrado XTEA [24] se utiliza para cifrar un después. Tenga en cuenta que el comportamiento de bloqueo podría
paquete de código rodante con un formato por lo demás idéntico utilizarse para una denegación de servicio (DoS) automatizada
a VW-3 (ver Figura 7). ataque (con el objetivo de bloquear a los propietarios de automóviles legítimos
XTEA es un cifrado de bloque basado en una ronda de 64 de los vehículos afectados) enviando intencionadamente un viejo
Estructura Feistel con tamaño de bloque de 64 bits y 128 bits señal (con un valor de contador de ctr ÿ2 o menos).
llave. Debido a la estructura de la función redonda. En conclusión, mientras que los algoritmos criptográficos
basado en operaciones de suma, rotación, XOR (ARX), han mejorado a lo largo de los años (de LFSR sobre
es muy adecuado para implementaciones de software liviano AUT64 a XTEA), el problema crucial de la distribución de claves no
requeridas para dispositivos de gama baja y bajo consumo como se ha resuelto adecuadamente en los esquemas estudiados VW-1–
Controles remotos RKE. El ataque criptoanalítico más conocido 4. Sin embargo, según VW
contra XTEA [22] es de naturaleza teórica (ataque de rectángulo de Grupo, este problema ha sido abordado en el
clave relacionado en 36 rondas con 263,83 bytes ). vehículos de última generación, donde se utilizan llaves criptográficas
de datos y 2104.33 pasos) y por lo tanto no es relevante en individuales. Discutimos las consecuencias e implicaciones generales
el contexto de los sistemas RKE. de una exitosa
Sin embargo, de nuevo encontramos que una sola, en todo el mundo ataque a un sistema RKE con más detalle en la Sección 5.
La llave se utiliza para todos los vehículos que emplean el sistema
VW-4. El mismo punto único de falla de los sistemas más antiguos 3.5.1 Vehículos vulnerables
VW-1–VW-3 también está presente en los sistemas más recientes.
vehículos fabricados. Por ejemplo, encontramos esto Nuestros hallazgos afectan, entre otros, a los siguientes vehículos
esquema implementado en un Audi Q3, año modelo del Grupo VW fabricados entre
2016, y podría descifrar y generar nuevos válidos 1995 y 2016. Coches que hemos probado prácticamente
códigos rodantes para abrir y cerrar este vehículo (y muchos otros se resaltan en negrita. Tenga en cuenta que esta lista no es
vehículos del Grupo VW, consulte la Sección 3.5.1). exhaustiva, ya que no tuvimos acceso a todos los tipos y
años modelo de automóviles, y que lamentablemente no es
aclarar si un modelo de automóvil se ha actualizado a
3.5 Implicaciones y Observaciones un esquema más nuevo.
Como resultado principal de esta sección, descubrimos Audi: A1, Q3, R8, S3, TT, varios otros tipos de
que los sistemas RKE de la mayoría de VW Group Automóviles Audi (por ejemplo, número de pieza de control remoto 4D0 837
los vehículos se han asegurado con solo unas pocas claves 231)
criptográficas que se han utilizado en todo el mundo durante un
VW: Amarok, (Nuevo) Escarabajo, Bora, Caddy,
período de casi 20 años. Con el conocimiento de
Crafter, e-Up, Eos, Fox, Golf 4, Golf 5, Golf
estas claves, un adversario sólo tiene que escuchar a escondidas un
6, Golf Plus, Jetta, Lupo, Passat, Polo, T4, T5,
una sola señal de un control remoto de destino. Después, puede
Scirocco, Sharan, Tiguan, Touran, hasta
descifrar esta señal, obtener la corriente
UID y valor de contador, y cree un clon del Asiento: Alhambra, Altea, Arosa, Córdoba, Ibiza,
mando a distancia original para bloquear o desbloquear cualquier puerta de León, MII, Toledo
el vehículo objetivo un número arbitrario de veces.
Škoda: City Go, Roomster, Fabia 1, Fabia 2,
Observamos que (en su mayoría) vehículos VW-4 bloqueados
Octavia, SuperB, Yeti
el control remoto original si un código rodante válido con
Se recibe una ficha más de 2 atrás. En otra Es concebible que todo el Grupo VW (excepto
Es decir, si ctr es el valor esperado por el vehículo, cualquier algunos automóviles Audi) fabricados en el pasado y parcialmente
código rodante con ctrÿ2 o menos conduce al bloqueo. en la actualidad se basan en un esquema de "llave constante" y son
Si un adversario envía al menos dos señales válidas con por lo tanto, son vulnerables a los ataques descritos en este
aumento de los valores del contador (por ejemplo, "desbloquear" y "bloquear"), documento, excepto para aquellos autos que dependen de la
el control remoto original del propietario se detendrá plataforma más reciente, por ejemplo, el Golf 7 para VW.
funcionando en el momento en que el coche recibe un Tenga en cuenta que los automóviles del Grupo VW idénticos se venden bajo
señal obsoleta. En este caso, por lo general, los procedimientos de diferentes nombres en otros países, por ejemplo, algunos Golf
resincronización automática descritos en el manual del vehículo las versiones se vendieron como "Rabbit" en América del Norte.
respectivo ayudan a los vehículos técnicamente experimentados. Hemos probado algunos controles remotos que funcionan a
propietarios para volver a sincronizar el control remoto con el 315 MHz, por ejemplo, para el mercado estadounidense, y encontró que
coche. En cambio, si el adversario sólo envía un único ser vulnerable a nuestros ataques también, es decir, la única
señal válida, el mando a distancia original no se bloqueará, diferencia con sus contrapartes europeas es la frecuencia operativa.
pero solo opere en la segunda pulsación del botón, sea Además, coches de diferentes marcas
pueden compartir la misma tecnología básica, por ejemplo, encontramos 4 Estudio de caso 2: El sistema Hitag2
algunos años modelo de Ford Galaxy que tienen el mismo
sistema RKE defectuoso como sus derivados del Grupo VW El sistema de código rodante Hitag2 es un ejemplo de un
VW Sharan y Seat Alhambra. Esquema RKE que no es específico para un solo vehículo
marca. En su lugar, se implementa en el PCF7946
y circuitos integrados PCF7947 fabricados por NXP. Tiempo
estos circuitos integrados contienen un µC de uso general de 8 bits que
3.5.2 Contramedidas Temporales
(en teoría) permite realizar una propiedad totalmente
[26], parece que numerosos fabricantes de vehículos han utilizado
Resolviendo completamente los problemas de seguridad descritos un sistema similar (aunque no idéntico)
requeriría una actualización de firmware o el intercambio de ambos Sistema RKE, potencialmente siguiendo la referencia de NXP
la respectiva ECU y (peor) la llave del vehículo que contiene el control implementación. En contraste con el sistema del Grupo VW descrito
remoto. Debido a las estrictas pruebas en la Sección 3, parece que los fabricantes no utilizaron una clave
y requisitos de certificación en la industria automotriz y el alto costo criptográfica global fija.
de reemplazar o actualizar Por lo tanto, para romper este sistema, desarrollamos una novela
todas las llaves del automóvil afectadas en el campo, es poco probable que ataque para explotar las debilidades criptográficas de
VW Group puede implementar una actualización de este tipo en el corto Hitag2 en el contexto RKE.
término. Por lo tanto, damos recomendaciones para los usuarios de
Primero describimos el cifrado Hitag2, que fue
vehículos afectados en lo siguiente.
publicado previamente en [35]. Hemos realizado ingeniería inversa
El conocido consejo (ver p. ej . [25]) para verificar que completa del esquema de código variable utilizado en el
un vehículo se bloqueó correctamente con el mando a distancia Circuitos integrados de control remoto Hitag2 PCF7946/7947 y más
(luces de dirección parpadeantes, sonido) ya no descrito en la Sección 4.2. El análisis se hizo en
suficiente. Un adversario puede haber escuchado a escondidas una forma de caja negra: usamos un control remoto para
señal de “bloqueo” desde una distancia de hasta 100 m y que pudimos obtener la clave Hitag2 (ya que
generar un nuevo código variable de "desbloqueo" válido en cualquier momento fue compartido con el inmovilizador en este particular
luego. Prevenir o detectar el espionaje de caso), implementaciones potenciales adivinadas (basadas en
Las señales de RF no son prácticas. Por lo tanto, lo único que queda el protocolo del inmovilizador) para el sistema de código rodante, y
La contramedida (todavía poco práctica) es desactivar por completo finalmente recuperó el esquema completo. En
o al menos no utilizar la funcionalidad RKE y En contraste con el análisis de los sistemas del Grupo VW,
recurrir al bloqueo mecánico del vehículo. Nota sin extracción de firmware ni ingeniería inversa de
que además, para muchos autos, la alarma se disparará después de el código del programa era necesario.
un tiempo si las puertas del auto o la cajuela están Hasta la fecha, el criptoanálisis práctico más conocido de Hitag2
mecánicamente abierto, a menos que el inmovilizador esté desarmado se propuso en [32] en el contexto de
con la llave original. inmovilizadores de vehículos. Su ataque requiere 136 intentos de
Con respecto al análisis forense, hay varios indicadores potenciales autenticación y 235 encriptaciones/búsquedas,
(debido a la naturaleza del código variable). que toman 5 minutos en una computadora portátil. En el contexto
esquemas) que el control remoto puede haber sido de sistemas RKE, reuniendo 136 rastros de código rodante
clonado: si el vehículo no se desbloquea en la primera no es práctico en un escenario realista, ya que requiere
presione el botón, esto podría implicar que un adversario ha esperar a que la víctima presione un botón en el control remoto
envió códigos rodantes válidos con valores de contador mayores tantas veces. Proponemos, por tanto, una nueva
que el almacenado en el mando a distancia original. ataque que requiere espionaje menos intentos de autenticación
Tenga en cuenta que no quedan rastros del ataque una vez que el (generalmente entre 4 y 8) y uno
contador en el mando a distancia original se ha enganchado cómputo de minutos en una computadora portátil. En la Sección 4.4 ,
con el aumento del valor almacenado en el coche. Además, un presentamos nuestro novedoso ataque de correlación en Hitag2 en un
bloqueo completo del mando a distancia (ver Escenario RKE.
arriba) puede ser un indicador (p. ej., para casos judiciales Primero necesitamos introducir algo de notación. Dejar
relacionados con seguros) de que el sistema RKE fue atacado. No F2 = {0,1} el campo de dos elementos (o el conjunto
obstante, debe tenerse en cuenta de booleanos). El símbolo ÿ denota exclusivo-o
que, según nuestras pruebas prácticas, el control remoto (XOR) y 0n denota una cadena de bits de n bits cero.
el control también se bloqueará si el automóvil recibe un Dadas dos cadenas de bits x e y, xy denota su concatenación. x
contador que se incrementa en más de 250 en comparación denota el complemento bit a bit de
hasta el último valor almacenado; esto podría suceder, por ejemplo, X. Escribimos yi para denotar el i-ésimo bit de y. Por ejemplo, dada
si los botones del control remoto se presionan muchas veces. la cadena de bits y = 0x03, y0 = y1 = 0 y
veces mientras no esté dentro del alcance del vehículo. y6 = y7 = 1. Denotamos cifrados por {ÿ}.
4.1 Cifrado Hitag2 transmite un mensaje de la forma que se muestra en la Figura 11.
UID es un identificador de 32 bits; btn es un identificador de botón
El protocolo RKE objetivo utiliza el flujo Hitag2
de 4 bits; lctr son los 10 bits menos significativos de un 28 bits
cifrar. Este cifrado ha sido diseñado a la inversa.
contador ctr; ks son 32 bits de flujo de claves; y chk es
en [35]. El cifrado consta de un LFSR de 48 bits y un
una suma de comprobación de 8 bits. La suma de comprobación se calcula mediante
función de filtro no lineal f. Cada ciclo de reloj, veinte
simplemente haciendo XOR cada byte, es decir, calculando una paridad
los bits del LFSR se pasan a través de la función de filtro,
byte.
generar un bit de flujo de clave. Entonces el LFSR es
Durante el protocolo de autenticación, el interno
desplazado un bit a la izquierda, usando el polinomio de
se inicializa el estado del cifrado de flujo. La inicial
retroalimentación para generar un nuevo bit a la derecha. El estado consiste en el UID de 32 bits concatenado con
Consulte la Figura 10 para ver una representación esquemática.
los primeros 16 bits de la clave k. A continuación, el contador ctr
se incrementa y luego iv = ctr||btn se XORed con
Definición 4.1 La función de retroalimentación L: F48 2 ÿ F2
los últimos 32 bits de la clave y se desplazaron al LFSR.
está definida por L(x0 ...x47) := x0 ÿx2 ÿx3 ÿx6 ÿx7 ÿ
A partir de este punto, los siguientes 32 bits del flujo de claves, que
x8 ÿ x16 ÿ x22 ÿ x23 ÿ x26 ÿ x30 ÿ x41 ÿ x42 ÿ x43 ÿ
son emitidos por el cifrado ks, se envían como prueba de
x46 ÿx47.
conocimiento de la clave secreta k.
Observación 4.3 (Esquema de cifrado) La figura 10 es ksi := f(a32+i ...a79+i) ÿi ÿ [0,31]. (5)
diferente del esquema que se introdujo Tenga en cuenta que ai, ÿi y ksi son funciones formales
por [35] y luego usado por [11, 28, 34]. la entrada de k, id, y iv. En lugar de hacer esto explícito por
bits de la función de filtro en la Figura 10 se desplazan por escribiendo, por ejemplo, ai(k, id, iv), simplemente escribimos ai donde k,
uno con respecto a los de [35]. La función de filtro id y iv están claros por el contexto.
en el esquema antiguo representa un bit de flujo de clave en
el estado anterior f(xiÿ1 ...xi+46), mientras que el de 4.4 Un ataque de correlación rápida en
La Figura 10 representa un bit de flujo de clave de la corriente
Hitag2
estado f(xi ...xi+47). Además, hemos adaptado
las tablas booleanas para que sean consistentes con nuestra notación. Esta sección describe un ataque práctico de correlación de
recuperación de clave contra Hitag2. Este ataque requiere
un mínimo de cuatro códigos rodantes ("rastros"), pero
4.2 Esquema de código variable
ser más rápido y tener una mayor probabilidad de éxito si hay más
Esta sección describe el esquema de código variable utilizado están provistos. Los códigos rodantes pueden tener un valor de
por remotos basados en los chips PCF7946/7947. contador arbitrario, es decir, no tienen que ser consecutivos. De
Cuando se presiona un botón en el control remoto, hecho, la probabilidad de éxito es mayor
10
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 4 7 43 464 4 7 43 464
fc = 0xD949CBB0
flujo de claves
0x0001 UID btn ltr Kansas 0 cheque Definición 4.5 Definimos la puntuación de correlación de un
0 dieciséis 48 52 62 94 95 102 solo bit como:
#(b = f20(y0 ...y19))
bit_score(x0 ...xnÿ1, b) = 219ÿn
Figura 11: Estructura de paquetes de un código rodante para
Hitag2. El fondo gris indica el flujo de claves donde y0 ...ynÿ1 = x0 ...xnÿ1,n< 20 (en el primer
parte producida por el cifrado. iteración del Paso 3, n=8). Definimos la puntuación de
correlación de múltiples bits como:
puntuación(x0,ks0) =bit_score(x0,ks0)
cuando las trazas no son consecutivas, como consecutivas puntuación(x0 ...xnÿ1,ks0 ...ksnÿ1) =
las huellas a menudo solo difieren en unos pocos bits entre sí, bit_score(x0 ...xnÿ1,ksnÿ1) ÿ
proporcionando así menos información de correlación. También
puntuación(x0 ...xnÿ2,ks0 ...ksnÿ2)
depende de si se presionó el mismo botón o
para n < 20.
no. El límite inferior de cuatro trazas para que la clave vuelva a
funcionar se determinó experimentalmente. los El adversario asignará a esta conjetura el promedio
El número de trazos consecutivos necesarios es mayor, por lo puntuación sobre todos los rastros. Tenga en cuenta que, hasta ahora, esta puntuación
general ocho. Sea UID, ivj ,ksj , j = 0...n ÿ 1 n el cálculo es independiente del valor iv ya que
rastros de autenticación para n > 3. Luego, el atacante sucede antes de que iv llegue a tener alguna influencia en
procede de la siguiente manera: (es decir, solo se aplica XOR con bits desconocidos).
4. El adversario ordenará ahora todas las conjeturas según
a su puntaje y almacenarlos en una tabla de
1. El adversario primero adivina una ventana de 16 bits que
tamaño, descartando las conjeturas con puntajes más bajos
corresponde a los bits de flujo LFSR a32 ... a47. Obsérvese
cuando sea necesario. Los experimentos muestran que una tabla de
que a32 ...a47 = k0 ...k15 y junto con
tamaño 400.000 conjeturas suele ser suficiente.
el UID, esto le da al adversario bits LFSR
a0 ...a47, véase la Definición 4.4. También tenga en cuenta que 5. Por cada suposición en la tabla, el adversario va
a0 ...a47 es constante en todas las trazas. El adversario ahora Vuelva al Paso (1) y proceda como antes, excepto
puede calcular b0 = f(a0 ...a47). que ahora ampliará el tamaño de la ventana
uno (hasta el tamaño 17,...,32), adivinando el siguiente LFSR
2. El adversario cambiará esta ventana de 16 bits bit de flujo (a48,...,a51). La ventana más grande le permite al
a la izquierda del LFSR, hasta que los bits a32 ... a47 estén activados adversario probar un poco más de
el extremo izquierdo de la LFSR. Este es el punto cuando keystream, brindándole información de correlación más
el cifrado comienza a generar ks, consulte la Ecuación 5. significativa cada vez. Se necesita un cuidado especial para
tomarse en el Paso (3) mientras se puntúan múltiples trazas,
3. A continuación, el adversario calculará una correlación
ya que a48 = k16+i ÿivi ÿb0 (ver Ec. 3) y el iv
puntuación para esta conjetura. La ventana determina 8
será diferente en cada trazo. Esto no es un problema ya que
bits de entrada x0 ...x7 a la función de filtro f20 (ver
en el paso anterior (1) habíamos calculado el bit bi del flujo de
Figura 10) mientras que las 12 entradas restantes permanecen
desconocido. Esta correlación se toma como el cociente de clave correspondiente, y ivi
se envía en claro. Por lo tanto, los bits clave k16+i pueden ser
esos 212 valores de entrada x8 ... x19 que producen el
calculado para i ÿ [0,31].
bit de flujo de clave correcto (ks0). Además, desplazar nuestra
ventana más hacia la izquierda le permite al adversario realizar El poder de este ataque proviene del uso de la ventana a la
pruebas en múltiples secuencias de claves. derecha del LFSR para calcular los bits de flujo de clave necesarios
bits (ks0 ... ks15). Aunque, con cada cambio de bit, para corregir el estado interno.
la ventana se vuelve más pequeña a medida que los bits más a la izquierda mientras combina diferentes trazas y usa la ventana a la izquierda
caerá fuera de la LFSR, lo que significa que más del LFSR para obtener información de correlación significativa en
los bits de entrada son desconocidos. múltiples bits de flujo de clave.
11
4.5 Resultados prácticos e implicaciones esquema Hitag2 RKE: Abarth 500, Punto Evo; Esparto
Romeo Giulietta, Mito; Citroën Jumper, Nemo; Fíat
500, Bravo, Doblo, Ducato, Fiorino, Grande Punto,
Implementamos el ataque de correlación anterior en un Panda, Punto Evo, Qubo; Dacia Duster; Ford Ka;
portátil estándar. Al ejecutar este ataque en Lancia Delta, Musa; Nissan Pathfinder Navara
práctica, el primer obstáculo que enfrenta un adversario Nota, Qashqai, X-Trail; Opel Corsa, Meriva, Zafira,
es el hecho de que solo los 10 bits menos significativos Astra; Peugeot boxeador, experto; y Renault Clio,
(LSB) del contador ctr se envían por aire (ver Modus, Trafic, Twingo. Esta lista incluye la mayoría de
Figura 11), pero el contador completo de 28 bits se usa para inicializar el nuestros vehículos probados. Esto indicaría que todos
cifrado (tanto el automóvil como el control remoto almacenan el contador completo).
Los vehículos mencionados en la lista (aunque no probados en la
encimera). Por lo tanto, el adversario necesita adivinar práctica por nosotros) son vulnerables a las condiciones descritas.
los 18 bits restantes. En la práctica, esto no es un problema ya que ataques también.
se requieren 210 = 1024 pulsaciones de teclas en el control remoto. En contraste con el esquema del Grupo VW, las habilidades de
tener un acarreo a los bits más significativos (MSB) vulnerabilidad en el sistema Hitag2 RKE son causadas por el
y por lo tanto esto suele ocurrir sólo un par de cifrado criptográficamente débil, no un método de distribución de
veces al año. En el peor de los casos, el adversario tiene que clave débil. En consecuencia, aunque debe
repita el ataque anterior con el aumento de MSB hasta que decirse que el ataque de correlación de la Sección 4.4 es
ella tiene la conjetura correcta. devastador desde un punto de vista criptográfico, el
En promedio, nuestra implementación de ataque recupera la complejidad de los datos es ligeramente mayor en comparación con la
la clave criptográfica en aproximadamente 1 minuto Esquemas del Grupo VW, que se pueden romper con uno
computación, que requiere unos cuantos balanceos escuchados a escondidas única señal escuchada. El ataque a Hitag2
códigos (entre 4 y 8). Como se mencionó, el adversario necesita requiere al menos cuatro (no necesariamente consecutivos)
repetir este cálculo para cada códigos rodantes, es decir, el adversario tiene que estar presente
conjetura de los 18 MSB del contador. para los vehiculos durante un período de tiempo más largo para capturar señales para
probamos, los MSB del contador generalmente eran varias pulsaciones de teclas en el control remoto de la víctima.
entre 0 y 10, lo que resulta en un ataque total Sin embargo, para obtener rápidamente el balanceo requerido
tiempo inferior a 10 min. Además, había una fuerte códigos, el adversario podría bloquear selectivamente la señal
correlación entre la edad del vehículo y el contador
durante el último byte de suma de comprobación (que es
valor, por lo que también son posibles conjeturas informadas.
predecible). En este caso, el vehículo ignora el balanceo
Verificamos nuestros hallazgos en la práctica construyendo código, pero el adversario, sin embargo, obtiene el flujo de claves.
un emulador de llave y luego desbloquear y bloquear el Por lo tanto, la víctima se daría cuenta de que el
vehículos con códigos rodantes recién generados: vehículo no responde, e instintivamente presione el
Modelo del fabricante Año botón repetidamente. Después de haber recibido el cuarto
alfa romeo giulietta 2010 señal, el adversario deja de interferir y el control remoto
chevrolet Cruze Hatchback 2012 El control funciona normalmente desde el punto de vista de la víctima.
12
el vehículo después de escuchar a escondidas uno o unos pocos los rangos de recepción pueden incrementarse sustancialmente: El
códigos, respectivamente. El equipo necesario para recibir y enviar autores de [18] informan de escuchas ilegales de un 433 MHz
códigos rodantes, por ejemplo, SDR como Sistema RFID, con tecnología comparable a RKE,
el USRP o HackRF y los módulos de RF listos para usar como el reloj desde hasta 1 km utilizando equipos de bajo costo. Igualmente,
inteligente TI Chronos, son ampliamente un ataque DoS a gran escala dirigido a los automóviles del Grupo VW
disponible a bajo costo. Por lo tanto, los ataques son altamente sería posible con un enfoque automatizado, como
escalable y podría ser potencialmente llevado a cabo por un Como resultado, el sistema RKE del vehículo vulnerable
adversario inexperto. Dado que se ejecutan únicamente tipos se desactivarían para el mando a distancia respectivo
a través de la interfaz inalámbrica, con al menos el alcance Control y VW Group enfrentarían una mayor demanda
del mando a distancia original (es decir, unas pocas decenas de para servicio al cliente, es decir, resincronización de controles remotos.
metros), y no dejan huellas físicas, plantean un
grave amenaza en la práctica.
Implicaciones legales, análisis forense y contramedidas No está
claro si tales ataques contra
Implicaciones de seguridad y protección Las implicaciones de el esquema RKE se llevan a cabo actualmente en el
nuestros hallazgos son múltiples: Pertenencias personales dejadas en salvaje por los criminales. Sin embargo, ha habido varios informes en
componentes como el sistema de información y entretenimiento) podría ser vehículos bloqueados en los últimos años. Los problemas de seguridad
robado si un ladrón usa las vulnerabilidades del RKE descritos en este artículo podrían explicar este tipo de incidentes. Tenga
sistema para desbloquear el vehículo después de que el propietario se haya ido. en cuenta que hemos analizado más sistemas RKE automotrices (con
Este enfoque es considerablemente más sigiloso y resultados similares con respecto a su (in)seguridad), pero debido a la
más difícil de prevenir que los métodos de robo actualmente conocidos dificultad de
(p. ej., usar la fuerza física o bloquear divulgación responsable, no puede publicar todos los resultados en
– colocar discretamente un objeto o una persona dentro del automóvil. control remoto debe ser considerado como sospechoso como
El coche podría cerrarse de nuevo después de la bien. Sin embargo, hay otras causas para tal comportamiento, por
Actuar ejemplo, corto alcance debido a una batería vacía de
el control remoto o el ruido de RF ambiental.
– robo en la carretera, que afecta la seguridad personal
Si bien las vulnerabilidades del sistema del Grupo VW se deben a
del conductor o de los pasajeros si suponen (incorrectamente) que el
claves maestras en todo el mundo, las basadas en Hitag2
vehículo está bien cerrado
los sistemas sufren de debilidades en el cifrado mismo.
Tenga en cuenta que debido a la amplia gama de sistemas RKE Por lo tanto, en conclusión, para un "buen" sistema RKE,
es técnicamente factible escuchar a escondidas las señales de ambos algoritmos criptográficos seguros (p. ej., AES)
todos los automóviles en un estacionamiento o en un concesionario de y la distribución segura de claves son necesarias. Técnicas para
automóviles colocando un dispositivo de escucha allí durante la noche. solucionar los problemas de seguridad descubiertos en
Después, todos los autos vulnerables podrían ser abiertos por el este documento están ampliamente disponibles [23]. Atmel ha creado
adversario. Los experimentos prácticos sugieren que la un diseño de protocolo RKE abierto [5], que se publica
13
lished con todo detalle. La seguridad de su diseño. [4] ATMEL. e5561 Cripto lectura/escritura estándar
fue analizado por Tillich et al. en [29]. ahora está arriba Identificación IC, 2006. hoja de datos, disponible en http://
a los fabricantes de vehículos para implementar de forma segura tales www.usmartcards.com/
esquemas RKE de última generación. multimedia/descargas/366/Atmel%20e5561%
Para propietarios de vehículos afectados, como medida temporal 20pdf-190.pdf.
contramedida en los casos en que los artículos valiosos son
[5] ATMEL. Microcontrolador AVR integrado
dejado en el vehículo, desafortunadamente solo podemos
Incluye transmisor RF e inmovilizador Funcionalidad LF
recomendar dejar de usar o deshabilitar/quitar la parte RKE
para control remoto sin llave
de la llave del coche y volver a la cerradura mecánica:
Entrada - ATA5795C. hoja de datos, disponible
¿Bloquearlo o perderlo? ¡Quitarlo!
en http://www.atmel.com/images/
Atmel-9182-Car-Acceso-ATA5795C_
Hoja de datos.pdf, noviembre de 2014.
6 Divulgación Responsable
[6] Bloessl, B. gr-llavero. repositorio Github,
En cuanto a las vulnerabilidades de los sistemas del Grupo VW, 2015. https://github.com/bastibl/
Nos pusimos en contacto con VW Group por primera vez en noviembre de 2015.
gr-llavero.
Discutimos nuestros hallazgos en una reunión con VW
[7] Bogdánov, A. Ataques a los sistemas de
Group y un subcontratista afectado en febrero
2016, antes de enviar el trabajo. VW Group recibió una versión autenticación y cifrado de bloques Kee Loq. En Taller de
preliminar de este documento y la versión final Seguridad RFID (RFID Sec'08) (2007). rfidsec07.etsit.uma.es/
versión. VW Group reconoció las vulnerabilidades. Como se
mencionó en el documento, acordamos dejar diapositivas/papeles/papel-22.pdf.
entre otros, los siguientes detalles: claves criptográficas,
[8] Bono, SC, Green, M., Stubblefield,
números de pieza de ECU vulnerables y
A., Juels, A., Rubin, AD y Szydlo,
los dispositivos de programación utilizados y detalles sobre el
M. Análisis de seguridad de un dispositivo RFID
proceso de ingeniería inversa.
criptográficamente habilitado. En 14th USENIX Seguridad
Para Hitag2, notificamos a NXP en enero de 2016.
Simposio (USENIX Security 2005) (2005),
NXP recibió una versión de este documento antes de su envío. Asociación USENIX, págs. 1–16.
Nos gustaría mencionar que el hecho de que
Hitag2 está criptográficamente roto se ha conocido públicamente [9] Cesare, S. Rompiendo la seguridad de lo físico
durante varios años y NXP ya lo ha hecho. dispositivos. Presentación en Blackhat'14, Agosto
informaron a sus clientes en 2012. Quisiéramos 2014.
Además, quisiera resaltar que durante varios años, NXP
[10] Checkoway, S., McCoy, D., Kantor, B.,
ofrece IC RKE basados en AES más nuevos que no se ven
Anderson, D., Shacham, H., Savage, S.,
afectados por las vulnerabilidades descritas en este documento.
Koscher, K., Czeskis, A., Roesner, F.,
Además, muchos fabricantes de automóviles ya han
y Kohno, T. Comprehensive experimental
comenzó a usar los chips más seguros para nuevos diseños.
Análisis de superficies de ataque de automóviles. en 20
Simposio de seguridad USENIX (USENIX Security 2011)
Referencias (2011), Asociación USENIX, págs. 77–
92.
[1] abc7news. Robos de llaves de coche, 2013. http: [11] Courtois, NT, O'Neil, S. y
//abc7news.com/archive/9079852.
Quisquater, J.-J. Ataques algebraicos prácticos
en el cifrado de flujo Hitag2. En la 12ª Conferencia de
[2] arstechnica. Después de robos, coche misterioso
Seguridad de la Información (ISC 2009) (2009),
el dispositivo de desbloqueo ha dejado perpleja a la policía, 2013.
vol. 5735 de Lecture Notes in Computer Science,
http://arstechnica.com/security/2013/06/after burglaries- Springer-Verlag, págs. 167–176.
mystery-car-unlocking-device-has police-stumped.
[12] Eisenbarth, T., Kasper, T., Moradi, A.,
Paar, C., Salmasizadeh, M. y Shal mani, MTM Sobre el
[3] ATMEL. M44C890 Microcontrolador de baja corriente para poder del análisis de poder en el mundo real: una ruptura
comunicación inalámbrica 2001. hoja de datos, disponible , completa de
en http://pdf1. el esquema de salto de código KeeLoq. en anticipos
alldatasheet.com/datasheet-pdf/ en Criptología – CRYPTO'08 (2008), vol. 5157
ver/118247/ATMEL/M44C890.html. de LNCS, Springer, págs. 203–220.
14
[13] Asociación Europea de Fabricantes de Automóviles. [22] Lu, J. Ataque de rectángulo de clave relacionada en
Matriculación de turismos nuevos, 2015. Disponible 36 rondas del cifrado de bloque XTEA. Revista
en http://www.acea. be/uploads/press_releases_files/ Internacional de Seguridad de la Información 8, 1 (2008), 1–
20151016_PRPC_1509_FINAL.pdf. 11
15
Asociación USENIX 25º Simposio de Seguridad USENIX 943
Machine Translated by Google
2012), Asociación USENIX, págs. 237–252. [34] Štembera, P. y Novotný, M. Breaking Hitag2 con
https://www.usenix.org/system/ hardware reconfigurable. En
archivos/conferencia/usenixsecurity12/ 14ª Conferencia Euromicro sobre Sistema Digital
sec12-final95.pdf. Diseño (DSD 2011) (2011), Computadora IEEE
Sociedad, págs. 558–563.
[33] Verdult, R., García, FD y Ege,
B. Desmontaje de Megamos Crypto: apertura sin
cables de un inmovilizador de vehículos. En [35] Viena, I. Philips/NXP Hitag2
22º Simposio de seguridad de USENIX (USENIX Implementación de referencia de cifrado de flujo
Seguridad 2013) (2015), Asociación USENIX, PCF7936/46/47/52. http://criptolib.
págs. 703–718. com/ciphers/hitag2/, 2007.
dieciséis