Inseguridad de los sistemas de acceso “sin llave” (keyless entry)
Algunos coches llevan como método de acceso y encendido un sistema “sin llaves”, el cual se basa en la introducción de un determinado código (supongamos 5 caracteres). Este código puede ser insertado mediante un teclado numérico o mediante la emisión del mismo por un dispositivo electrónico (un mando).
En el segundo caso (el más común) se añaden técnicas de multiplexación de la señal a través de diferentes frecuencias del espectro a la hora de transmitir la información, pero en este post me quiero centrar en el primero (ver imagen).

El problema de este sistema es que coge las secuencias de números que le vamos dando y va probando con ellas de forma secuencial, es decir, si el sistema es de 5 dígitos e insertamos 1234567 hemos conseguido probar 3 claves con la introducción de 8 dígitos en vez de 15 (que sería el tamaño de 3 claves). Esto es porque hemos probado: 12345, 23456, 34567 de golpe.
Concretamente en el ejemplo que muestro en la imagen las teclas están agrupadas de 2 en 2, por lo que marcar un 1 ó un 2 es indiferente, con ello el alfabeto se reduce a 5 elementos. Es fácil ver que 5 elementos posibles para 5 lugares salen 55 = 3125 posibibles claves de longitud 5 cada una (que ocuparían un total de 15625 dígitos), en caso de que hubiera que insertarlas por separado; sin embargo, debido a que la comprobación de múltiples claves se realiza mediante la inserción secuencial de las mismas, la longitud total se reduce a 3129 dígitos : “secuencia.txt”.
El inicio:
La generación de estas listas se basa en la secuencia de Brujin la cual parte de las interacciones entre los diagramas de estados para generar todos los elementos necesarios de la gramática buscada (en nuestro caso 55 elementos diferentes).
Una sencilla solución consiste en generar una paqueña parada (delay) al sistema (ej: 3 seg) y resetear la ventana de clave actual cada vez que se inserta una errónea, de forma, que cada vez que llegamos a 5 dígitos se vuelva a comenzar como la primera vez. Este sistema no sería infranqueable pero el tiempo necesario para aplicarlo al dispositivo (en este caso un coche) lo hace inviable como plan de acceso.
Debe de ser porque soy Ingeniero Informático, pero me jodería más que me abrieran el coche reventándome el sistema de autentificación que usando una palanca como toda la vida, estoy seguro que a un Ingeniero Mecánico o Industrial le pasaría todo lo contrario
.


El tema lo leí cuando pasaba por : everything2
8 de November de 2006 a las 11:07 pm
excelente