Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
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.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
BTLE — Bluetooth Low Energy (BLE) Paket-Sniffer und -Sender für Standard- und Nicht-Standard-Übertragungen (Raw Bit), basierend auf Software Defined Radio (SDR). | Kitploit
Tools/GitHubGitHub/jiaoxianjun/btle
Paket-Sniffing & AnalyseBluetooth-SicherheitIoT-SicherheitDrahtlose SicherheitTop in Bluetooth-Sicherheit Nr.6
GitHubjiaoxianjun/btle

BTLE

Bluetooth Low Energy (BLE) Paket-Sniffer und -Sender für Standard- und Nicht-Standard-Übertragungen (Raw Bit), basierend auf Software Defined Radio (SDR).

Repository anzeigen
94117629vor 3 MonatenVon Kitploit geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

BTLE

BTLE ist eine freie und quelloffene Software-Suite für Bluetooth Low Energy (BLE) mit Software Defined Radio sowie ein offener BTLE-Chipentwurf.

Es umfasst:

  • BTLE-Basisband: Beschreibung der Algorithmen, Python- und Verilog-Implementierung, FPGA- und SkyWater-130-PDK-Ergebnisse (OpenLane2-Workflow).
  • Analog Devices AD9361 + Xilinx Zynq FPGA-Implementierung: FPGA Bluetooth
  • btle_rx – BLE-Sniffer. Neben dem Mithören von Broadcast-/Festkanälen kann er auch das Kanal-Hopping einer Kommunikationsverbindung verfolgen.
  • btle_tx – Universeller BLE-Paket-Sender. Neben dem BLE-Standard unterstützt er auch einen Rohbitmodus, um beliebige GFSK-Pakete zu erzeugen. Auf diese Weise können Sie nicht-standardisierte Protokolle oder Protokolle in der Diskussion testen, bevor ein Chip auf den Markt kommt.

Funktionen

  • PHY und obere Schichten sind in Software (C-Sprache) implementiert. Volle Software-Defined-Radio-Flexibilität.
  • BLE-Standard-PHY mit 1 Mbit/s GFSK.
  • Alle Link-Layer-Paketformate der ADV- und DATA-Kanäle gemäß Core_V4.0 (Kapitel 2&3, Teil B, Band 6) werden unterstützt.
  • Der Sniffer kann Kanal-Hopping-Muster automatisch analysieren und verfolgen – nicht beschränkt auf Broadcast-Kanal oder festen Kanal.

Hardware

  • HackRF
  • bladeRF
  • kompatible Version der HackRF- und bladeRF-Bibliotheken

Build und Schnelltest

Stellen Sie sicher, dass Ihre SDR-Hardwareumgebung (Treiber/Bibliothek) korrekt eingerichtet ist, bevor Sie dieses Projekt ausführen.

git clone https://github.com/JiaoXianjun/BTLE.git
cd BTLE/host
mkdir build
cd build
cmake ../                   (default. für HackRF)
cmake ../ -DUSE_BLADERF=1   (nur für bladeRF)

make
./btle-tools/src/btle_rx

Der obige Befehl führt einen Sniff auf Kanal 37 aus. Sie sollten viele Pakete auf dem Bildschirm sehen, wenn sich BLE-Geräte (Telefon/Tablet/Laptop) in der Nähe befinden.

./btle-tools/src/btle_tx 37-DISCOVERY-TxAdd-1-RxAdd-0-AdvA-010203040506-LOCAL_NAME09-SDR/Bluetooth/Low/Energy r500 

Der obige Befehl sendet Discovery-Pakete auf dem ADV-Kanal. Sie sollten in einer anderen BLE-Sniffer-App (z. B. LightBlue) ein Gerät mit dem Namen „SDR/Bluetooth/Low/Energy“ sehen.

Für eine schnellere Betriebssequenz auf HACKRF verwenden Sie Folgendes:

#define TRANSFER_COUNT 4
#define TRANSFER_BUFFER_SIZE 4096

in hackrf/host/libhackrf/src/hackrf.c. Kompilieren Sie dann die HACKRF-Bibliothek neu und installieren Sie sie erneut. Vergessen Sie nicht, BTLE neu zu kompilieren, damit die Änderung an der HACKRF-Bibliothek übernommen wird.

Neben den Werkzeugen enthält das Verzeichnis matlab Algorithmusbewertung und andere nützliche Skripte

btle_rx Verwendung

-h --help

Alle Argumente/Verwendungsmöglichkeiten ausgeben.

-c --chan

Kanalnummer. Standardwert 37 (einer der ADV-Kanäle). Gültiger Wert 0–39 (alle ADV- und DATA-Kanäle).

-g --gain

Rx-Verstärkung in dB. HACKRF-rxvga-Standard 6, gültig 0–62. bladeRF-Standard ist maximale Rx-Verstärkung 66 dB (gültig 0–66). Die Verstärkung sollte sehr sorgfältig eingestellt werden, um unter Ihren Bedingungen die beste Leistung zu erzielen. Empfehlung: Beginnen Sie mit niedriger Verstärkung, da hohe Verstärkung immer starke Verzerrungen verursacht und nichts bringt.

-l --lnaGain

LNA-Verstärkung in dB (nur HackRF). Standard 32, gültig 0–40. Die Verstärkung sollte sehr sorgfältig eingestellt werden, um unter Ihren Bedingungen die beste Leistung zu erzielen.

-b --amp

Verstärker aktivieren (nur HackRF). Standardmäßig aus.

-a --access

Access-Adresse. Standard 8e89bed6 für ADV-Kanal 37 38 39. Sie sollten den korrekten Wert für den Datenkanal gemäß dem erfassten Verbindungsaufbau angeben.

-k --crcinit

Standard 555555 für ADV-Kanal. Sie sollten den korrekten Wert für den Datenkanal gemäß dem erfassten Verbindungsaufbau angeben.

-v --verbose

Ausführlicher Modus. Gibt bei Fehlern weitere Informationen aus

-r --raw

Rohmodus. Nachdem die Access-Adresse erkannt wurde, werden die folgenden rohen 42 Bytes ausgegeben (ohne Entwürfelung, ohne Parsen)

-f --freq_hz (benötigt Argument)

Diese Frequenz (Hz) überschreibt die Kanaleinstellung (falls jemand auf einer anderen Frequenz als BTLE arbeiten möchte. Allgemeinerer Zweck).

-m --access_mask (benötigt Argument)

Wenn ein Bit in dieser Maske 1 ist, wird das entsprechende Bit der Access-Adresse bei der Entscheidung über das Vorhandensein eines Pakets berücksichtigt (falls jemand ein kürzeres/dünneres eindeutiges Wort für die Paketerkennung verwenden möchte. Allgemeinerer Zweck).

-o --hop

Aktiviert die Datenkanal-Verfolgung (Frequenzsprung), nachdem die Verbindungsaufbauinformationen im ADV_CONNECT_REQ-Paket auf dem ADV-Kanal erfasst wurden.

-s --filename

Speichert Pakete in eine pcap-Datei.

btle_tx Verwendung

btle_tx packet1 packet2 ... packetX ...  rN

oder

btle_tx packets.txt

packets.txt ist eine Textdatei, die den Text der Befehlszeilenparameter (packet1 packet2 ... rN) enthält. Ein Parameter pro Zeile. Eine Zeile, die mit „#“ beginnt, wird als Kommentar betrachtet. Siehe packets.txt-Beispiel

packetX 

ist eine Zeichenkette, die ein Paket beschreibt. Alle Pakete bilden eine Paketsequenz.

rN

bedeutet, dass die Sequenz N-mal wiederholt wird. Wenn sie nicht angegeben ist, wird die Sequenz nur einmal gesendet.

packetX-Zeichenkettenformat

channel_number-packet_type-field-value-field-value-...-Space-value

Jede Deskriptorzeichenkette beginnt mit der BTLE-Kanalnummer (0–39), gefolgt vom packet_type (RAW/iBeacon/ADV_IND/ADV_DIRECT_IND/usw. Siehe alle Formatbeispiele AM ENDE: Anhang ), dann gefolgt von einem Feld-Wert-Paar, das für den packet_type spezifisch ist; am Ende gibt es ein Space-Wert-Paar (optional), wobei der Wert angibt, wie viele Millisekunden nach dem Senden dieses Pakets gewartet wird.

Verwenden Sie KEINE Leerzeichen „ “ in einem Befehlszeilen-Paketdeskriptor. In der TXT-Datei können Sie Leerzeichen verwenden.

Verwenden Sie KEIN „-“ innerhalb eines Feldes. „-“ ist ein Sonderzeichen, das zur Trennung verschiedener Felder im Paketdeskriptor verwendet wird.

  • btle_tx-Beispiel: Discovery-Pakete

Öffnen Sie vor diesem Befehl die LightBlue-App (oder einen anderen BLE-Sniffer) auf Ihrem iPhone/Gerät:

./btle-tools/src/btle_tx ../btle-tools/src/packets_discovery.txt

Sie werden in der LightBlue-App ein Gerät mit dem Namen „SDR Bluetooth Low Energy“ sehen.

Zugehörige Befehlszeile:

./btle-tools/src/btle_tx 37-DISCOVERY-TxAdd-1-RxAdd-0-AdvA-010203040506-LOCAL_NAME09-SDR/Bluetooth/Low/Energy r40

Hinweis: Das Leerzeichen „ “ wird durch „/“ ersetzt, da Leerzeichen in der Befehlszeile nicht unterstützt werden.

Tool herunterladen