Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
BTLE — Renifleur de paquets et émetteur Bluetooth Low Energy (BLE) pour les communications standard et non standard (bits bruts), basé sur la radio logicielle (SDR). | Kitploit
Outils/GitHubGitHub/jiaoxianjun/btle
Sniffing et Analyse de PaquetsSécurité BluetoothSécurité IoTSécurité Sans FilTop en Sécurité Bluetooth n°6
GitHubjiaoxianjun/btle

BTLE

Renifleur de paquets et émetteur Bluetooth Low Energy (BLE) pour les communications standard et non standard (bits bruts), basé sur la radio logicielle (SDR).

Voir le dépôt
94217629il y a 3 moisVérifié par Kitploit
Site web

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

BTLE

BTLE est une suite logicielle de radio logicielle (SDR) Bluetooth Low Energy (BLE) gratuite et open-source ainsi qu'une conception de puce BTLE ouverte.

Il comprend :

  • description des algorithmes de bande de base BTLE, implémentation Python et Verilog, résultats FPGA et SkyWater 130 PDK (flux OpenLane2).
  • Implémentation Analog Devices AD9361 + FPGA Xilinx Zynq : FPGA Bluetooth
  • btle_rx - Renifleur BLE. En plus de renifler les canaux de diffusion/fixes, il peut également suivre le saut de canal d'une liaison de communication.
  • btle_tx - Émetteur universel de paquets BLE. Outre le standard BLE, il prend également en charge le mode bits bruts pour générer des paquets GFSK arbitraires. Ainsi, vous pouvez tester un protocole non standard ou un standard en cours de discussion avant sa mise sur le marché.

Fonctionnalités

  • La couche PHY et les couches supérieures sont implémentées en logiciel (langage C). Flexibilité totale de la radio logicielle (SDR).
  • PHY GFSK standard BLE 1 Mbps.
  • Tous les formats de paquets de la couche liaison des canaux ADV et DATA de Core_V4.0 (chapitres 2 et 3, partie B, volume 6) sont pris en charge.
  • Le renifleur est capable d'analyser et de suivre automatiquement le motif de saut de canal, sans se limiter au canal de diffusion ou à un canal fixe.

Matériel

  • HackRF
  • bladeRF
  • version compatible des bibliothèques HackRF et bladeRF

Compilation et test rapide

Assurez-vous que votre environnement matériel SDR (pilote/lib) a été correctement configuré avant d'exécuter ce projet.

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

make
./btle-tools/src/btle_rx

La commande ci-dessus renifle sur le canal 37. Vous devriez voir de nombreux paquets à l'écran si vous avez des appareils BLE (téléphone/tablette/ordinateur portable) à proximité.

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

La commande ci-dessus transmet des paquets de découverte sur le canal ADV. Vous devriez voir un appareil nommé « SDR/Bluetooth/Low/Energy » dans une autre application de reniflage BLE (comme LightBlue).

Pour obtenir une séquence d'opérations plus rapide sur HACKRF, utilisez ce qui suit :

#define TRANSFER_COUNT 4
#define TRANSFER_BUFFER_SIZE 4096

dans hackrf/host/libhackrf/src/hackrf.c. Recompilez ensuite la bibliothèque HACKRF et réinstallez-la. N'oubliez pas de recompiler BTLE pour prendre en compte la modification de la bibliothèque HACKRF.

Outre les outils, le répertoire matlab contient l'évaluation d'algorithmes et d'autres scripts utiles

Utilisation de btle_rx

-h --help

Affiche tous les arguments/utilisations.

-c --chan

Numéro de canal. Valeur par défaut 37 (un des canaux ADV). Valeur valide 0~39 (tous les canaux ADV et DATA).

-g --gain

Gain de réception en dB. HACKRF rxvga par défaut 6, valide 0 - 62. bladeRF par défaut gain rx max 66 dB (valide 0 - 66). Le gain doit être réglé très soigneusement pour garantir les meilleures performances dans votre situation. Il est suggéré de tester à partir d'un gain faible, car un gain élevé provoque toujours une forte distorsion et ne vous apporte rien.

-l --lnaGain

Gain LNA en dB (HackRF uniquement). Défaut 32, valide 0 - 40. Le gain doit être réglé très soigneusement pour garantir les meilleures performances dans votre situation.

-b --amp

Activer l'amplificateur (HackRF uniquement). Désactivé par défaut.

-a --access

Adresse d'accès. Par défaut 8e89bed6 pour les canaux ADV 37 38 39. Vous devez spécifier la valeur correcte pour le canal de données selon la procédure de configuration de connexion capturée.

-k --crcinit

Par défaut 555555 pour le canal ADV. Vous devez spécifier la valeur correcte pour le canal de données selon la procédure de configuration de connexion capturée.

-v --verbose

Mode verbeux. Affiche plus d'informations en cas d'erreur.

-r --raw

Mode brut. Après la détection de l'adresse d'accès, affiche les 42 octets bruts suivants (sans désembrouillage ni analyse).

-f --freq_hz (need argument)

Cette fréquence (Hz) remplacera le réglage du canal (au cas où l'on souhaite travailler sur une fréquence autre que BTLE. Plus polyvalent).

-m --access_mask (need argument)

Si un bit est à 1 dans ce masque, le bit correspondant de l'adresse d'accès sera pris en compte dans la décision de présence de paquet (au cas où l'on souhaite un mot unique plus court/plus clairsemé pour la détection de paquets. Plus polyvalent).

-o --hop

Ceci active le suivi du canal de données (saut de fréquence) après que les informations de configuration de liaison ont été capturées dans le paquet ADV_CONNECT_REQ sur le canal ADV.

-s --filename

Enregistre les paquets dans un fichier pcap.

Utilisation de btle_tx

btle_tx packet1 packet2 ... packetX ...  rN

ou

btle_tx packets.txt

packets.txt est un fichier texte qui contient les paramètres de ligne de commande (packet1 packet2 ... rN). Un paramètre par ligne. Une ligne commençant par « # » est considérée comme un commentaire. Voir l'exemple packets.txt.

packetX 

est une chaîne qui décrit un paquet. Tous les paquets composent une séquence de paquets.

rN

signifie que la séquence sera répétée N fois. S'il n'est pas spécifié, la séquence ne sera envoyée qu'une seule fois.

Format de la chaîne packetX

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

Chaque chaîne descripteur commence par le numéro de canal BTLE (0~39), puis est suivie par le type de paquet (RAW/iBeacon/ADV_IND/ADV_DIRECT_IND/etc. Voir tous les exemples de formats À LA FIN : Annexe ), puis par une paire champ-valeur spécifique au type de paquet, et enfin par une paire Space-valeur (optionnelle) où la valeur indique combien de millisecondes seront attendues après l'envoi de ce paquet.

N'UTILISEZ PAS le caractère espace « » dans un descripteur de paquet en ligne de commande. Vous POUVEZ utiliser l'espace dans le descripteur de paquet du fichier txt.

N'UTILISEZ PAS « - » à l'intérieur de chaque champ. « - » est un caractère magique utilisé pour séparer les différents champs dans le descripteur de paquet.

  • Exemple btle_tx : Paquets de découverte

Ouvrez l'application LightBlue (ou un autre renifleur BLE) sur votre iPhone/appareil avant cette commande :

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

Vous verrez un appareil nommé « SDR Bluetooth Low Energy » dans votre application LightBlue.

Ligne de commande correspondante :

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

Remarque : le caractère espace « » est remplacé par « / » car l'espace n'est pas pris en charge en ligne de commande.

Télécharger l’outil