Arsenal software hacking NFC

 


www.onlinetis.com

Arsenal software hacking NFC

Kali Linux incluye varias herramientas especializadas para la auditoría y "hacking" de redes y dispositivos NFC. Estas herramientas están diseñadas para interactuar con las etiquetas y tarjetas NFC para realizar análisis de seguridad, como leer, escribir o clonar datos.


Herramientas principales

  • libnfc: Es la biblioteca fundamental que proporciona las funciones básicas para interactuar con dispositivos NFC. Es la base para muchas otras herramientas. Permite listar, leer y escribir en tags NFC. Los comandos más comunes son:

    • nfc-list: Lista los dispositivos y tarjetas NFC conectados.

    • nfc-mfclassic: Utilidad para leer y escribir en tarjetas MIFARE Classic, que son comunes en sistemas de transporte y control de acceso.

    • nfc-mfultralight: Similar al anterior, pero para tarjetas MIFARE Ultralight.

  • mfoc (Mifare Offline Cracker): Esta es una herramienta crucial para el "hacking" de tarjetas MIFARE Classic. Explota una vulnerabilidad en su sistema de cifrado CRYPTO1 para recuperar las claves de autenticación, incluso si no se conocen. Una vez que se recuperan las claves, se pueden leer y clonar los datos de la tarjeta.

  • mfcuk (Mifare Classic Universal ToolKit): Similar a mfoc, esta herramienta también se centra en explotar vulnerabilidades de las tarjetas MIFARE Classic. Utiliza diferentes ataques para recuperar las claves, complementando a mfoc.

  • rfdump: Es una utilidad que ayuda a decodificar las etiquetas RFID (incluyendo NFC) y muestra su metainformación, como el ID de la etiqueta y el fabricante. Permite visualizar y modificar los datos de usuario de una etiqueta en formato hexadecimal o ASCII.


Consideraciones

Para utilizar estas herramientas, es esencial contar con un lector/escritor NFC compatible con Kali Linux. Un lector muy popular en la comunidad de seguridad es el ACR122U, ya que tiene una buena compatibilidad con libnfc y otras herramientas de seguridad.

Es importante recordar que el uso de estas herramientas sin autorización es ilegal y debe ser realizado solo con fines de hacking ético y auditoría de seguridad en sistemas propios o con permiso explícito del propietario.

libnfc

Para usar libnfc, primero necesitas tener un lector de tarjetas NFC compatible. El ACR122U es uno de los más populares y compatibles con esta biblioteca. Una vez que lo tengas, puedes instalar y usar las herramientas que vienen con libnfc en sistemas Linux, como Kali.


Instalación de libnfc

  1. Instalar los paquetes necesarios: Abre una terminal en tu sistema Linux y usa el siguiente comando para instalar libnfc y sus utilidades.

    Bash
    sudo apt-get update
    sudo apt-get install libnfc-bin
    
  2. Verificar la instalación: Con el lector NFC conectado a tu computadora, puedes ejecutar el siguiente comando para ver si el sistema lo reconoce.

    Bash
    nfc-list
    

    Si todo está correcto, deberías ver una salida similar a esta, que muestra los detalles de tu lector NFC.

    Bash
    nfc-list
    nfc-list uses libnfc 1.7.1
    NFC device: ACS / ACR122U-A2 USB Reader opened
    1 NFC device found.
    

    Si el lector no es reconocido, puede que necesites instalar los drivers correspondientes o verificar la configuración del sistema.


Herramientas principales de libnfc

libnfc no es una sola herramienta, sino una biblioteca que incluye varias utilidades. Aquí están las más comunes y cómo usarlas:

1. nfc-list

Esta herramienta se usa para listar los dispositivos NFC conectados y para detectar tarjetas o etiquetas que se acerquen al lector. Es la herramienta básica para verificar que todo está funcionando.

  • Para listar dispositivos:

    Bash
    nfc-list
    
  • Para leer una etiqueta o tarjeta: Acércala al lector mientras el comando está en ejecución. La salida te mostrará información sobre la tarjeta, como su UID (Identificador Único) y el tipo de protocolo que utiliza (por ejemplo, ISO14443A).

2. nfc-mfclassic

Esta utilidad está diseñada para trabajar específicamente con tarjetas MIFARE Classic, que son muy comunes en sistemas de transporte y control de acceso.

  • Para leer una tarjeta MIFARE Classic: Necesitarás los archivos de "claves" (keys) para poder autenticarte con la tarjeta. Puedes usar un comando como el siguiente:

    Bash
    nfc-mfclassic r a u --keys-from-dump nfc_dump.dmp
    
    • r: Modo de lectura (read).

    • a: Utiliza el Key A para la autenticación.

    • u: Permite el uso de claves "ultralight".

    • --keys-from-dump: Especifica un archivo de volcado donde se encuentran las claves.

  • Para escribir o clonar una tarjeta:

    Bash
    nfc-mfclassic w a nfc_dump_to_write.dmp
    
    • w: Modo de escritura (write).

    • a: Utiliza el Key A para la autenticación.

    • nfc_dump_to_write.dmp: Es el archivo de volcado de la tarjeta que quieres clonar.

3. nfc-scan-device

Esta herramienta escanea todos los dispositivos NFC compatibles y proporciona información detallada sobre cada uno de ellos, como el modelo, el fabricante y el protocolo de comunicación. Es útil para verificar la compatibilidad de tu hardware.

Bash
nfc-scan-device

Nota importante

El uso de estas herramientas para interactuar con dispositivos que no te pertenecen es ilegal y puede tener graves consecuencias. Utiliza estas herramientas únicamente para propósitos de hacking ético en sistemas de tu propiedad o con la autorización explícita de sus dueños.

 mfoc

mfoc (Mifare Offline Cracker) es una herramienta utilizada para auditar la seguridad de las tarjetas MIFARE Classic al explotar una vulnerabilidad en su algoritmo de cifrado, permitiendo recuperar las claves de autenticación. Para usarla, necesitas un lector/escritor NFC compatible y la tarjeta que deseas auditar.


Pasos para usar mfoc

  1. Instalar mfoc: En un sistema operativo como Kali Linux, mfoc suele venir preinstalado. Si no, puedes instalarlo usando el gestor de paquetes.

    Bash
    sudo apt-get update
    sudo apt-get install mfoc
    
  2. Conectar el lector NFC: Conecta tu lector de tarjetas NFC, como el ACR122U, a tu ordenador. Puedes verificar que está funcionando con nfc-list.

  3. Ejecutar mfoc: El comando más básico para usar mfoc es el siguiente. Acerca la tarjeta MIFARE Classic al lector y ejecuta:

    Bash
    mfoc -O nombre_del_archivo.dmp
    
    • -O: Esta opción especifica el nombre del archivo de salida donde se guardará el "volcado" o dump de la tarjeta.

    • nombre_del_archivo.dmp: Es el nombre que le darás al archivo que contendrá los datos de la tarjeta, incluyendo las claves y el contenido de los sectores.

    Cuando ejecutes el comando, mfoc comenzará un proceso para obtener las claves. Si el ataque tiene éxito, el programa encontrará las claves de los sectores. Este proceso puede tardar unos segundos o minutos, dependiendo de la suerte y el estado de la tarjeta.

  4. Analizar el resultado: Una vez que el proceso finaliza, el archivo de volcado (.dmp) contendrá toda la información de la tarjeta, incluyendo las claves (si fueron recuperadas) y el contenido de cada sector. Puedes abrir este archivo con un editor hexadecimal o con herramientas como nfc-mfclassic para ver y manipular los datos.

Consideraciones

  • mfoc requiere que al menos una de las claves de la tarjeta sea conocida o que se pueda adivinar. La herramienta tiene un conjunto de claves por defecto que intenta primero.

  • Ataque "Offline Nested": mfoc implementa este ataque para obtener las claves de los sectores desconocidos si ya se conoce la clave de al menos un sector.

  • Legalidad: Es crucial utilizar mfoc y herramientas similares solo para auditorías de seguridad en sistemas de tu propiedad o con el permiso explícito del propietario. El uso no autorizado de estas herramientas es ilegal en la mayoría de los países.

    mfcuk

    mfcuk (Mifare Classic Universal ToolKit) es una herramienta de software diseñada para recuperar las claves de autenticación de las tarjetas MIFARE Classic que tienen una versión de firmware vulnerable. A diferencia de mfoc, que ataca una vulnerabilidad en el hardware, mfcuk se centra en una debilidad en el generador de números aleatorios del chip MIFARE.


    Pasos para usar mfcuk

    1. Instalación: En la mayoría de las distribuciones de seguridad, como Kali Linux, mfcuk puede instalarse directamente desde los repositorios.

      Bash
      sudo apt-get update
      sudo apt-get install mfcuk
      
    2. Conectar el lector NFC: Al igual que con otras herramientas NFC, necesitas un lector compatible, como el ACR122U, conectado a tu ordenador. Puedes verificar su conexión con nfc-list.

    3. Ejecutar mfcuk: La herramienta se ejecuta con un comando simple, y una vez que la tarjeta MIFARE Classic se coloca sobre el lector, el proceso comienza.

      Bash
      mfcuk -C -R -s 0
      
      • -C: Este comando activa el ataque clásico de mfcuk, que es el método más común para recuperar las claves.

      • -R: Inicia el modo de ataque de retransmisión, que es fundamental para que el ataque funcione correctamente.

      • -s 0: Especifica el sector de inicio para el ataque. Generalmente se comienza con el sector 0.

    4. Análisis del resultado: Si el ataque tiene éxito, mfcuk mostrará las claves que ha recuperado en la terminal. Estas claves son necesarias para acceder a los datos de la tarjeta. Una vez que tengas las claves, puedes usar herramientas como mfoc o nfc-mfclassic para realizar un volcado completo de la tarjeta.

    Diferencias y sinergias con mfoc

    Mientras que mfoc utiliza un ataque de "relevo" (relay) en el que se necesita la interacción con un lector legítimo, mfcuk ataca directamente el algoritmo interno de la tarjeta. Por esta razón, mfcuk a menudo se considera una herramienta más rápida y potente para tarjetas vulnerables.

    Sin embargo, en un escenario real de auditoría, se suelen usar ambas herramientas en combinación. Primero se intenta mfcuk porque es más rápido si la tarjeta es vulnerable. Si no funciona, se usa mfoc para explotar las vulnerabilidades del protocolo de comunicación. Si cualquiera de las dos herramientas consigue una clave, se puede usar para decodificar el resto de la tarjeta.

    Advertencia

    El uso de mfcuk para auditar o leer tarjetas que no son de tu propiedad es ilegal y puede tener graves consecuencias legales. Estas herramientas están diseñadas para la seguridad ofensiva y el hacking ético con el propósito de identificar vulnerabilidades en sistemas de tu propiedad.

    rfdump

    rfdump es una herramienta de software de la suite de RFID/NFC que ayuda a leer y analizar etiquetas. Se utiliza para identificar el tipo de etiqueta, decodificar sus datos y realizar operaciones de lectura y escritura.


    Pasos para usar rfdump

    1. Instalación: rfdump no viene preinstalado en todas las distribuciones. Puedes instalarlo desde el repositorio de herramientas de RFID/NFC si no lo tienes ya.

      Bash
      sudo apt-get update
      sudo apt-get install rfdump
      
    2. Identificar el lector: Al igual que con otras herramientas, asegúrate de que tu lector NFC, como el ACR122U, esté conectado y sea reconocido por el sistema. rfdump se comunicará con él a través de la interfaz USB.

    3. Ejecutar rfdump: El comando principal para iniciar la herramienta y escanear una etiqueta es simplemente rfdump.

      Bash
      rfdump
      

      Cuando se ejecuta, el programa entra en un modo interactivo. En este modo, puedes utilizar varios comandos para interactuar con el lector y la etiqueta que se acerque.

    4. Comandos comunes en rfdump: Una vez dentro del modo interactivo, puedes usar los siguientes comandos:

      • help: Muestra la lista de comandos disponibles y su función.

      • reader: Muestra la información del lector NFC conectado.

      • dump: Este es el comando más importante. Intenta leer la etiqueta y mostrar su contenido. La salida incluirá el tipo de etiqueta, el ID (UID) y los datos de los sectores en formato hexadecimal.

      • read: Lee el contenido de una etiqueta y lo guarda en un archivo.

      • write: Escribe datos en una etiqueta a partir de un archivo. Úsala con precaución, ya que puedes sobrescribir la información.

      • quit: Sale del modo interactivo de rfdump.


    Casos de uso

    • Auditoría de seguridad: Un caso común es usar rfdump para realizar un volcado de una tarjeta de acceso de una empresa. Esto ayuda a identificar si la tarjeta es vulnerable a la clonación y si los datos almacenados en ella son sensibles.

    • Análisis de etiquetas desconocidas: Si encuentras una etiqueta NFC desconocida, puedes usar rfdump para identificar el tipo de protocolo y decodificar su contenido. Esto es útil para investigar y reversear el propósito de la etiqueta.

    • Volcado y restauración: La herramienta te permite crear una copia de seguridad del contenido de una etiqueta para fines de desarrollo o investigación.

    Advertencia

    Es crucial usar rfdump solo en sistemas que te pertenezcan o para los cuales tengas permiso explícito para realizar pruebas de seguridad. El uso no autorizado de esta herramienta es ilegal.


Entradas populares de este blog

Ciberseguridad y hacking con Whatweb

Como robar contraseñas haciendo un phishing web