Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
libnfc — Librería de Near Field Communication (NFC) independiente de plataforma | Kitploit
Herramientas/GitHubGitHub/nfc-tools/libnfc
Herramientas RFID/NFCSeguridad InalámbricaSeguridad de Hardware e IoT
GitHubnfc-tools/libnfc

libnfc

Librería de Near Field Communication (NFC) independiente de plataforma

Ver RepositorioSitio web
2.0k480hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

*-

  • Biblioteca de Comunicación de Campo Cercano (NFC) Free/Libre
  • Contribuyentes históricos de Libnfc:
  • Copyright (C) 2009 Roel Verdult
  • Copyright (C) 2009-2015 Romuald Conty
  • Copyright (C) 2010-2012 Romain Tartière
  • Copyright (C) 2010-2013 Philippe Teuwen
  • Copyright (C) 2012-2013 Ludovic Rousseau
  • Contribuyentes adicionales:
  • Ver archivo AUTHORS -*

General Information

libnfc es una biblioteca que permite a las aplicaciones de espacio de usuario acceder a dispositivos NFC.

El sitio web oficial ya no existe; consulta una copia a través de WayBackMachine.

El sitio del foro oficial ya no existe; consulta una copia a través de WayBackMachine.

El sitio oficial de desarrollo es: https://github.com/nfc-tools/libnfc

Nota importante: este archivo cubre sistemas POSIX; para Windows, por favor lee README-Windows.md

Requirements

Algunos controladores NFC dependen de software de terceros:

  • pn53x_usb & acr122_usb:

    • libusb-0.1 http://libusb.sf.net
  • acr122_pcsc:

    • pcsc-lite https://pcsclite.apdu.fr/
  • pcsc:

    • Soporte de compilación con el controlador pcsc, que puede utilizar todos los lectores compatibles; Feitian R502 y bR500 ya han pasado la prueba.

El conjunto de pruebas de regresión depende del framework cutter: http://cutter.sf.net

Building

Nota: Si se trabaja directamente desde un clon git del repositorio, algunos archivos deben generarse primero. Para ello, ejecuta autoreconf -vis

Alternativamente, usa una versión .tar.bz2 de un lanzamiento empaquetado (que ya contiene ./configure): https://github.com/nfc-tools/libnfc/releases/

La compilación debería ser tan simple como ejecutar estos comandos:

root@kitploit:~
./configure
make

Para compilar con controladores específicos, consulta la opción --with-drivers=... detallada en ./configure --help.

Installation

root@kitploit:~
make install

Puede que necesites otorgar permisos a tu usuario para manejar tu dispositivo. En sistemas GNU/Linux, si usas udev, puedes usar las reglas udev proporcionadas. p. ej., en Debian, Ubuntu, etc.

root@kitploit:~
sudo cp contrib/udev/93-pn53x.rules /lib/udev/rules.d/

En FreeBSD, si usas devd, también hay un archivo de reglas: contrib/devd/pn53x.conf.

Configuration

Para cambiar el comportamiento predeterminado de la biblioteca, libnfc usa un archivo de configuración ubicado en sysconfdir (según lo proporcionado a ./configure).

Un archivo de muestra comentado está disponible en las fuentes: libnfc.conf.sample

Si has compilado usando:

root@kitploit:~
./configure --prefix=/usr --sysconfdir=/etc

puedes crear el directorio de configuración y copiar el archivo de muestra:

root@kitploit:~
sudo mkdir /etc/nfc
sudo cp libnfc.conf.sample /etc/nfc/libnfc.conf

Para configurar múltiples dispositivos, puedes modificar libnfc.conf o crear un archivo por dispositivo en un directorio nfc/devices.d:

root@kitploit:~
sudo mkdir -p /etc/nfc/devices.d
printf 'name = "My first device"\nconnstring = "pn532_uart:/dev/ttyACM0"\n' | sudo tee /etc/nfc/devices.d/first.conf
printf 'name = "My second device"\nconnstring = "pn532_uart:/dev/ttyACM1"\n' | sudo tee /etc/nfc/devices.d/second.conf

Environment Variables

Puedes anular ciertas opciones de configuración en tiempo de ejecución usando las siguientes variables de entorno:

  • LIBNFC_DEFAULT_DEVICE=<connstring>: LIBNFC_DEFAULT_DEVICE=pn532_uart:/dev/ttyACM0 usará pn532 en /dev/ttyACM0 como dispositivo predeterminado
  • LIBNFC_DEVICE=<connstring> ignorará todos los dispositivos en los archivos de configuración y usará solo el definido en la variable
  • LIBNFC_AUTO_SCAN=<true|false> anula la opción allow_autoscan en el archivo de configuración
  • LIBNFC_INTRUSIVE_SCAN=<true|false> anula la opción allow_intrusive_scan en el archivo de configuración
  • LIBNFC_LOG_LEVEL=<0|1|2|3> anula la opción log_level en el archivo de configuración

Para obtener la connstring de un dispositivo reconocido, puedes usar nfc-scan-device: LIBNFC_AUTO_SCAN=true nfc-scan-device mostrará los nombres y connstrings de todos los dispositivos encontrados.

How to report bugs

Para reportar un error, visita https://github.com/nfc-tools/libnfc/issues y completa un formulario de informe de errores.

Si tienes preguntas o comentarios, te animamos a publicarlos en la comunidad de desarrolladores: http://www.libnfc.org/community

Por favor, asegúrate de incluir:

  • La versión de libnfc

  • Información sobre tu sistema. Por ejemplo:

    • Qué sistema operativo y versión
    • Para Linux, qué versión de la biblioteca C

    Y cualquier otra cosa que consideres relevante.

  • Una traza con la depuración activada.

    Reproduce el error con depuración, p. ej., si fue:

    root@kitploit:~
      $ nfc-list -v
    

    ejecútalo como:

    root@kitploit:~
      $ LIBNFC_LOG_LEVEL=3 nfc-list -v
    
  • Cómo reproducir el error.

    Por favor, incluye un breve programa de prueba que muestre el comportamiento.

    Como último recurso, también puedes proporcionar una referencia a un software más grande

    que pueda descargarse.

  • Si el error fue un fallo, el texto exacto que se imprimió

    cuando ocurrió el fallo.

  • Información adicional como trazas de pila puede ser útil, pero

    no es necesaria.

Patches

Los parches pueden publicarse en https://github.com/nfc-tools/libnfc/issues

Si el parche corrige un error, suele ser una buena idea incluir toda la información descrita en "Cómo reportar errores".

Troubleshooting

Touchatag/ACR122:

Si tu dispositivo Touchatag o ACR122 no es detectado por libnfc, asegúrate de que el demonio PCSC-lite (pcscd) esté instalado y en ejecución.

Si tu dispositivo Touchatag o ACR122 no es detectado por el demonio PCSC-lite (pcsc_scan no ve nada), intenta eliminar la detección de firmware falso de libccid: edita el archivo de configuración libccid_Info.plist (normalmente /etc/libccid_Info.plist) y localiza <key>ifdDriverOptions</key>, cambia el valor <string>0x0000</string> a 0x0004 para permitir dispositivos falsos y reinicia el demonio pcscd.

ACR122:

Usar un dispositivo ACR122 con libnfc y sin etiqueta (p. ej., para usar modos NFCIP o emulación de tarjeta) requiere otro ajuste de PCSC-lite: debes permitir el uso del comando CCID Exchange. Para ello, edita el archivo de configuración libccid_Info.plist (normalmente /etc/libccid_Info.plist) y localiza <key>ifdDriverOptions</key>, cambia el valor <string>0x0000</string> a 0x0001 para permitir el intercambio CCID o 0x0005 para permitir el intercambio CCID y dispositivos falsos (cf. comentario anterior) y reinicia el demonio pcscd.

Advertencia: si usas los controladores ACS CCID (acsccid), el archivo de configuración se encuentra en algo como: /usr/lib/pcsc/drivers/ifd-acsccid.bundle/Contents/Info.plist

SCL3711:

Libnfc no se puede usar al mismo tiempo que el controlador propietario PCSC del SCL3711. Dos soluciones posibles:

  • O no instalas el controlador SCL3711 en absoluto
  • O detienes el demonio PCSC cuando deseas usar herramientas basadas en libnfc

PN533 USB device on Linux >= 3.1:

Desde la versión 3.1 del kernel de Linux, algunos módulos del kernel no deben cargarse para poder usar libnfc : "nfc", "pn533" y "pn533_usb". Para evitar que el kernel cargue estos módulos automáticamente, puedes incluirlos en la lista negra en un archivo de configuración de modprobe. Este archivo se proporciona dentro del archivo de libnfc:

root@kitploit:~
sudo cp contrib/linux/blacklist-libnfc.conf /etc/modprobe.d/blacklist-libnfc.conf

FEITIAN bR500 and R502:

Libnfc puede funcionar con el controlador propietario PCSC de bR500 y R502, que ya está disponible en la mayoría de las configuraciones de Linux. Para activar el soporte de PCSC: ./configure --with-drivers=pcsc. Lectores que se sabe que funcionan:

  • Feitian bR500
  • Feitian R502 lector de interfaz dual
  • Feitian R502 lector CL (sin contacto)

Estos lectores son compatibles con CCID desde v1.4.25; asegúrate de que la versión de tu controlador CCID sea superior o igual a 1.4.25.

En MacOS, puedes verificar tu versión de CCID con el siguiente comando y, si es necesario, puedes instalar el controlador CCID más reciente desde https://github.com/martinpaljak/osx-ccid-installer/releases

root@kitploit:~
grep -A 1 CFBundleShortVersionString /usr/local/libexec/SmartCardServices/drivers/ifd-ccid.bundle/Contents/Info.plist

En Linux, puedes verificar tu versión de CCID con el siguiente comando y, si es necesario, puedes instalar el controlador CCID más reciente desde https://ccid.apdu.fr/

root@kitploit:~
grep -A 1 CFBundleShortVersionString /usr/lib/pcsc/drivers/ifd-ccid.bundle/Contents/Info.plist

Proprietary Notes

FeliCa es una marca registrada de Sony Corporation. MIFARE es una marca comercial de NXP Semiconductors. Jewel Topaz es una marca comercial de Innovision Research & Technology. Todas las demás marcas comerciales son propiedad de sus respectivos dueños.

Descargar herramienta