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
nrf-research-firmware — Firmware y herramientas de investigación para dongles USB y placas de desarrollo basados en el nRF24LU1+ de Nordic Semiconductor. | Kitploit
Herramientas/GitHubGitHub/bastilleresearch/nrf-research-firmware
Seguridad de Sistemas EmbebidosSniffing y Análisis de PaquetesReconocimientoMapeo de RedesSeguridad InalámbricaSeguridad de Hardware
GitHubbastilleresearch/nrf-research-firmware

nrf-research-firmware

Firmware y herramientas de investigación para dongles USB y placas de desarrollo basados en el nRF24LU1+ de Nordic Semiconductor.

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
Ver Repositorio
4451327hace 4 añosRevisado por Kitploit

Firmware de investigación RFStorm nRF24LU1+

Firmware y herramientas de investigación para dongles USB y placas de desarrollo basados en Nordic Semiconductor nRF24LU1+.

Requisitos

  • SDCC (versión mínima 3.1.0)
  • GNU Binutils
  • Python
  • PyUSB
  • platformio

Instala las dependencias en Ubuntu:

root@kitploit:~
sudo apt-get install sdcc binutils python python-pip
sudo pip install -U pip
sudo pip install -U -I pyusb
sudo pip install -U platformio

Hardware compatible

El siguiente hardware ha sido probado y se sabe que funciona.

  • Dongle USB CrazyRadio PA
  • Placa breakout SparkFun nRF24LU1+
  • Dongle Logitech Unifying (modelo C-U0007, basado en Nordic Semiconductor)

Compilar el firmware

root@kitploit:~
make

Grabar por USB

Los chips nRF24LU1+ incluyen un bootloader programado de fábrica que ocupa los 2KB superiores de la memoria flash. El firmware CrazyRadio y el firmware de investigación RFStorm admiten comandos USB para entrar en el bootloader de Nordic.

Los dongles y las placas breakout se pueden programar por USB si ejecutan uno de los siguientes firmwares:

  • Nordic Semiconductor Bootloader
  • CrazyRadio Firmware
  • Firmware de investigación RFStorm

Para grabar el firmware por USB:

root@kitploit:~
sudo make install

Grabar un dongle Logitech Unifying

Los dongles Unifying más comunes están basados en el nRF24LU1+, pero algunos usan chips de Texas Instruments. Este firmware solo es compatible con las variantes nRF24LU1+, cuyo número de modelo es C-U0007. El script de grabación detectará automáticamente qué tipo de dongle está conectado y solo intentará grabar las variantes nRF24LU1+.

Para grabar el firmware por USB en un dongle Logitech Unifying:

root@kitploit:~
sudo make logitech_install

Restaurar un dongle Logitech Unifying al firmware original

Descarga y extrae la imagen del firmware de Logitech, que se llamará RQR_012_005_00028.hex o similar. A continuación, ejecuta el siguiente comando para grabar el firmware de Logitech en el dongle:

root@kitploit:~
sudo ./prog/usb-flasher/logitech-usb-restore.py [path-to-firmware.hex]

Grabar por SPI con un Teensy

Si tu dongle o placa breakout está bloqueado (bricked), puedes programarlo alternativamente por SPI con un Teensy.

Esto solo se ha probado con un Teensy 3.1/3.2, pero es probable que funcione también con otras variantes de Arduino.

Compilar y subir el flasher Teensy

root@kitploit:~
platformio run --project-dir teensy-flasher --target upload

Conectar el Teensy al nRF24LU1+

Grabar el nRF24LU1+

root@kitploit:~
sudo make spi_install

Scripts de Python

scanner

Herramienta de descubrimiento de dispositivos en modo pseudo-promiscuo, que recorre una lista de canales e imprime paquetes Enhanced Shockburst decodificados.

root@kitploit:~
usage: ./nrf24-scanner.py [-h] [-c N [N ...]] [-v] [-l] [-p PREFIX] [-d DWELL]

optional arguments:
  -h, --help                          show this help message and exit
  -c N [N ...], --channels N [N ...]  RF channels
  -v, --verbose                       Enable verbose output
  -l, --lna                           Enable the LNA (for CrazyRadio PA dongles)
  -p PREFIX, --prefix PREFIX          Promiscuous mode address prefix
  -d DWELL, --dwell DWELL             Dwell time per channel, in milliseconds

Escanea dispositivos en los canales 1-5

root@kitploit:~
./nrf24-scanner.py -c {1..5}

Escanea dispositivos con una dirección que comience en 0xA9 en todos los canales

root@kitploit:~
./nrf24-scanner.py -p A9

sniffer

Sniffer de seguimiento de dispositivos, que sigue a un dispositivo nRF24 específico mientras cambia de canal e imprime los paquetes Enhanced Shockburst decodificados del dispositivo.

root@kitploit:~
usage: ./nrf24-sniffer.py [-h] [-c N [N ...]] [-v] [-l] -a ADDRESS [-t TIMEOUT] [-k ACK_TIMEOUT] [-r RETRIES]

optional arguments:
  -h, --help                                 show this help message and exit
  -c N [N ...], --channels N [N ...]         RF channels
  -v, --verbose                              Enable verbose output
  -l, --lna                                  Enable the LNA (for CrazyRadio PA dongles)
  -a ADDRESS, --address ADDRESS              Address to sniff, following as it changes channels
  -t TIMEOUT, --timeout TIMEOUT              Channel timeout, in milliseconds
  -k ACK_TIMEOUT, --ack_timeout ACK_TIMEOUT  ACK timeout in microseconds, accepts [250,4000], step 250
  -r RETRIES, --retries RETRIES              Auto retry limit, accepts [0,15]

Captura paquetes de la dirección 61:49:66:82:03 en todos los canales

root@kitploit:~
./nrf24-sniffer.py -a 61:49:66:82:03

network mapper

Mapeador de redes en estrella, que intenta descubrir las direcciones activas en una red en estrella cambiando el último byte de la dirección dada y haciendo ping a cada una de las 256 direcciones posibles en cada canal de la lista de canales.

root@kitploit:~
usage: ./nrf24-network-mapper.py [-h] [-c N [N ...]] [-v] [-l] -a ADDRESS [-p PASSES] [-k ACK_TIMEOUT] [-r RETRIES]

optional arguments:
  -h, --help                                 show this help message and exit
  -c N [N ...], --channels N [N ...]         RF channels
  -v, --verbose                              Enable verbose output
  -l, --lna                                  Enable the LNA (for CrazyRadio PA dongles)
  -a ADDRESS, --address ADDRESS              Known address
  -p PASSES, --passes PASSES                 Number of passes (default 2)
  -k ACK_TIMEOUT, --ack_timeout ACK_TIMEOUT  ACK timeout in microseconds, accepts [250,4000], step 250
  -r RETRIES, --retries RETRIES              Auto retry limit, accepts [0,15]

Mapea la red en estrella a la que pertenece la dirección 61:49:66:82:03

root@kitploit:~
./nrf24-network-mapper.py -a 61:49:66:82:03

continuous tone test

Los chips nRF24LU1+ incluyen un mecanismo de prueba para transmitir un tono continuo, cuya frecuencia puede verificarse si se dispone de un SDR. Existe la posibilidad de que las desviaciones de frecuencia entre dispositivos provoquen comportamientos inesperados. Por ejemplo, una de las placas breakout de SparkFun que se probaron tenía una desviación de frecuencia de ~300 kHz, lo que provocaba que recibiera paquetes en dos canales adyacentes.

Este script hará que el transceptor transmita un tono en el primer canal que se pase.

root@kitploit:~
usage: ./nrf24-continuous-tone-test.py [-h] [-c N [N ...]] [-v] [-l]

optional arguments:
  -h, --help                          show this help message and exit
  -c N [N ...], --channels N [N ...]  RF channels
  -v, --verbose                       Enable verbose output
  -l, --lna                           Enable the LNA (for CrazyRadio PA dongles)

Transmite un tono continuo a 2405 MHz

root@kitploit:~
./nrf24-continuous-tone-test.py -c 5
Descargar herramienta
TeensyCrazyRadio PASparkfun nRF24LU1+ Breakout
GND9GND
83RESET
92PROG
1010P0.3
116P0.1
128P0.2
134P0.0
3.3V5VIN