Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
nrf-research-firmware — Firmware- und Forschungswerkzeuge für USB-Dongles und Breakout-Boards auf Basis des Nordic Semiconductor nRF24LU1+. | Kitploit
Tools/GitHubGitHub/bastilleresearch/nrf-research-firmware
Embedded-System-SicherheitPaket-Sniffing & AnalyseAufklärungNetzwerkkartierungDrahtlose SicherheitHardware-Sicherheit
GitHubbastilleresearch/nrf-research-firmware

nrf-research-firmware

Firmware- und Forschungswerkzeuge für USB-Dongles und Breakout-Boards auf Basis des Nordic Semiconductor nRF24LU1+.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Repository anzeigen
445132vor 4 JahrenVon Kitploit geprüft

RFStorm nRF24LU1+ Forschungs-Firmware

Firmware und Forschungs-Tools für USB-Dongles und Breakout-Boards auf Basis des Nordic Semiconductor nRF24LU1+.

Anforderungen

  • SDCC (Mindestversion 3.1.0)
  • GNU Binutils
  • Python
  • PyUSB
  • platformio

Abhängigkeiten unter Ubuntu installieren:

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

Unterstützte Hardware

Die folgende Hardware wurde getestet und funktioniert nachweislich.

  • CrazyRadio-PA-USB-Dongle
  • SparkFun-nRF24LU1+-Breakout-Board
  • Logitech-Unifying-Dongle (Modell C-U0007, basierend auf Nordic Semiconductor)

Firmware bauen

root@kitploit:~
make

Per USB flashen

nRF24LU1+-Chips verfügen über einen werksseitig programmierten Bootloader, der die obersten 2 KB des Flash-Speichers belegt. Die CrazyRadio-Firmware und die RFStorm-Forschungsfirmware unterstützen USB-Befehle, um den Nordic-Bootloader aufzurufen.

Dongles und Breakout-Boards können über USB programmiert werden, wenn sie eine der folgenden Firmwares ausführen:

  • Nordic-Semiconductor-Bootloader
  • CrazyRadio-Firmware
  • RFStorm-Forschungsfirmware

Um die Firmware über USB zu flashen:

root@kitploit:~
sudo make install

Logitech-Unifying-Dongle flashen

Die gängigsten Unifying-Dongles basieren auf dem nRF24LU1+, einige verwenden jedoch Chips von Texas Instruments. Diese Firmware wird nur auf den nRF24LU1+-Varianten unterstützt, die eine Modellnummer von C-U0007 haben. Das Flash- Skript erkennt automatisch, welcher Typ von Dongle angeschlossen ist, und versucht nur, die nRF24LU1+-Varianten zu flashen.

Um die Firmware über USB auf einen Logitech-Unifying-Dongle zu flashen:

root@kitploit:~
sudo make logitech_install

Logitech-Unifying-Dongle auf die ursprüngliche Firmware zurücksetzen

Laden Sie das Logitech-Firmware-Image herunter und extrahieren Sie es; es wird RQR_012_005_00028.hex oder ähnlich heißen. Führen Sie dann den folgenden Befehl aus, um die Logitech-Firmware auf den Dongle zu flashen:

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

Über SPI mit einem Teensy flashen

Wenn Ihr Dongle oder Breakout-Board gebrickt ist, können Sie es alternativ über SPI mit einem Teensy programmieren.

Dies wurde nur mit einem Teensy 3.1/3.2 getestet, funktioniert aber wahrscheinlich auch mit anderen Arduino-Varianten.

Teensy-Flasher bauen und hochladen

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

Teensy mit dem nRF24LU1+ verbinden

nRF24LU1+ flashen

root@kitploit:~
sudo make spi_install

Python-Skripte

scanner

Pseudo-promiskuitives Geräteerkennungstool, das eine Liste von Kanälen durchläuft und dekodierte Enhanced-Shockburst-Pakete ausgibt.

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

Nach Geräten auf den Kanälen 1–5 suchen

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

Nach Geräten mit einer Adresse, die mit 0xA9 beginnt, auf allen Kanälen suchen

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

sniffer

Geräteverfolgender Sniffer, der einem bestimmten nRF24-Gerät beim Hopping folgt und dekodierte Enhanced-Shockburst-Pakete des Geräts ausgibt.

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]

Pakete von Adresse 61:49:66:82:03 auf allen Kanälen mitschneiden

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

network mapper

Sternnetzwerk-Mapper, der versucht, die aktiven Adressen in einem Sternnetzwerk zu ermitteln, indem er das letzte Byte der angegebenen Adresse verändert und jede der 256 möglichen Adressen auf jedem Kanal in der Kanalliste anpingt.

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]

Das Sternnetzwerk kartieren, zu dem die Adresse 61:49:66:82:03 gehört

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

Dauerton-Test

Die nRF24LU1+-Chips enthalten einen Testmechanismus zum Senden eines Dauertons, dessen Frequenz verifiziert werden kann, wenn Sie Zugang zu einem SDR haben. Es besteht die Möglichkeit, dass Frequenzversätze zwischen Geräten zu unerwartetem Verhalten führen. Beispielsweise hatte eines der getesteten SparkFun-Breakout-Boards einen Frequenzversatz von ~300 kHz, wodurch es Pakete auf zwei benachbarten Kanälen empfing.

Dieses Skript veranlasst den Transceiver, einen Ton auf dem ersten übergebenen Kanal zu senden.

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)

Einen Dauerton bei 2405 MHz senden

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