Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 de 8
http://www.securityartwork.es/2010/02/03/hacking-rfid-rompiendo-la-...
Entradas
Comentarios
Quis custodiet ipsos custodes? | Home | Exportacin de certificados java
Hacking RFID, rompiendo la seguridad de Mifare (II)
Por Roberto Amado, 3 de Febrero de 2010 |
Tras introducir el pasado viernes algunos aspectos tericos relevantes de RFID, en esta segunda parte entraremos en cuestiones prcticas que nos darn resultados
muy interesantes.
Comencemos profundizando un poco ms en como Mifare realiza el proceso de autenticacin. En primera
instancia el lector le comunica a la tarjeta que quiere realizar una operacin sobre un sector de datos determinado
N. El tag o tarjeta en ese momento remite un nmero aleatorio Nc (Nonce del cliente) de 32 bits a modo de reto,
para que sea cifrado con la clave privada compartida previamente. Como respuesta, el lector remite el reto
cifrado y un nmero aleatorio Nr (Nonce del lector) para que el tag lo cifre con la clave privada, generando una
trama de 64 bits. En ltima instancia la tarjeta le enva al lector su reto cifrado. En este momento ambos tienen la
certeza de que los dispositivos son legtimos. Destacar que los dos ltimos intercambios se realizan ya de forma
cifrada, permaneciendo en claro tan solo el envo de la peticin de lectura y Nc. La figura de la izquerda ilustra el
proceso de handshake.
Este proceso de saludo a 4 bandas es importante ya que de l extraeremos la informacin necesaria para inferir la
clave privada del sector.
Procedamos ahora a realizar una prueba de concepto que nos permitir, a partir de la captura de la informacin
anterior, inferir la clave privada. Pero, cmo podemos capturar una comunicacin real entre un tag y un lector?
Aqu es donde juega un papel importante el PROXMARK III. Este dispositivo desarrollado por Jonathan
Westhues permite realizar sniffing de varias tecnologas RFID desde baja frecuencia (LF 125 Khz) a alta
frecuencia HF (13.56 Mhz) y entre ellas la que nos interesa ISO14443 tipo A sobre la que se basa Mifare. En un
principio el PROXMARK III supondra el Hardware sobre el cual se pueden implementar diversas capas fsicas y
de enlace, de diferentes protocolos, simplemente programando sus integrados con la especificacin que se
requiera.
Muy bien, pues ya tenemos el dispositivo que nos permitir
capturar el handshake inicial entre la tarjeta y el lector, ahora tan solo nos falta un lector Mifare y una tarjeta.
Para el lector, en este caso se ha optado por un Omnikey 5321 que viene con un software de ejemplo que permite
la interaccin con tags Mifare sin la necesidad de utilizar su API y programarse uno mismo el cdigo. Para la
tarjeta se ha utilizado una Mifare classic 4k. La captura de la derecha muestra la maqueta utilizada.
Como se puede ver la antena es casera, realizada a partir de un cable USB y no muy profesional pero para lo
que nos acontece sobra, consiguiendo incluso sobre los 12500 mV en el test Tune (test que implementado en el
firmware del PROXMARK III).
Colocando el sniffer entre la tarjeta y el lector podramos proceder a realizar una lectura del sector 4, obteniendo
la siguiente traza de bytes (vase Gerard de Koning Gans, Jaap-Henk Hoepman, Flavio D. Garcia. A practical
Attack on the MIFARE classic. Radboud University Nijmegen 2008):
2 de 8
http://www.securityartwork.es/2010/02/03/hacking-rfid-rompiendo-la-...
uint32_t
uint32_t
uint32_t
uint32_t
uint32_t
uid
tag_challenge
nr_enc
reader_response
tag_response
=
=
=
=
=
0x2a698b43;
0x3bae032d;
0xc494a1d2;
0x6e968642;
0x8466059e;
roberto@hacklab:~/Mifare/crapto-v1.1$ ./post
nt': 7fcf34c3
nt'': 869dbbd5
ks2: 1159b281
ks3: 02fbbe4b
Found Key: [85 cc f9 ff ff ff]
Con esta clave privada ya podemos pasar a leer/modificar el contenido de los 4 bloques de datos que componen el sector 01, podramos por ejemplo, cambiar esta
clave privada escribiendo en el bloque de datos trailer o incrementar el valor de nuestro monedero electrnico. Cuidado al realizar esta primera operacin, ya que
podramos modificar el tipo de acceso (3 bytes de Acces Conditions) y dejar el sector (todos los bloques de datos que lo componen!) inservible. Para ms
informacin sobre estos 3 bytes ojear ISO14443-A, Identification cards Contactless integrated circuit(s) cards Proximity cards (2006). Lo ms habitual es
encontrarse con el resto de sectores protegidos con la misma clave privada, con lo que se podra proceder a realizar un clonado completo de la tarjeta (salvo el UID,
auque normalmente no lo comprueban las aplicaciones).
En resumen hemos visto como es posible comprometer la seguridad de este tipo de tecnologas RFID. Como apunte final, alarma la cantidad de empresas y entidades
a nivel mundial que utilizan Mifare Classic como sistema de ticketing, monedero electrnico o control de acceso fsico. No voy a revelar que organismos lo hacen,
pero ms de los que os imaginis.
Happy RFIDing!
1
1
(+5 rating, 5 votes)
3 de 8
http://www.securityartwork.es/2010/02/03/hacking-rfid-rompiendo-la-...
4 de 8
http://www.securityartwork.es/2010/02/03/hacking-rfid-rompiendo-la-...
Deja un comentario
Alias