Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
BLE-Replay — BLE-Replay is a Bluetooth Low Energy (BLE) peripheral assessment tool | Kitploit
Tools/GitHubGitHub/nccgroup/ble-replay
Bluetooth SecurityInformation GatheringFuzzingPenetration TestingMobile SecurityHardware & IoT Security
GitHubnccgroup/ble-replay

BLE-Replay

BLE-Replay is a Bluetooth Low Energy (BLE) peripheral assessment tool

View Repository
150269 years agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

BLE-Replay

BLE-Replay is a Bluetooth Low Energy (BLE) peripheral assessment tool. It pulls/consumes Bluetooth HCI logs from your mobile device and extracts all of the writes that the central makes to a peripheral.

This data can be replayed using most Bluetooth dongles from a Linux host, or saved to disk for modification. This tool gets you straight to testing a peripheral without extracting data with wireshark or scripting things with tools like gatttool. It allows for hand-crafting of your own sequences of characteristic writes to test against a device, including support for byte-level fuzzing.

This tool is useful if a mobile app writes some characteristics on the BLE device in order to configure/unlock/disable some feature or perform some other state-changing action on the device.

Prerequisites

Linux with BlueZ stack.

BLESuite -> https://github.com/nccgroup/BLESuite

Usage

root@kitploit:~
python ble-replay.py -h

Replay File Format

root@kitploit:~
["000e", "58e96f71ac901b55", [0,1,5,7], 2]
["002c", "627474686f6c65", [], 1]
["0002", "01", [0], 40]

Each line contains a JSON list of 4 parameters:

  1. Handle (Hex string)
  2. Data (Hex string)
  3. Byte positions to fuzz (List of integer offsets, OPTIONAL - use [] to send packet as is)
  4. Number of times to fuzz or repeat this write (Integer)

Examples

Fetch the HCI log from Android device and replay it as is:

root@kitploit:~
python ble-replay.py -f -r

Parse an HCI log from your computer and replay it as is:

root@kitploit:~
python ble-replay.py -p btsnoop_hci.log -r

Fetch the HCI log from Android device and write modifiaBLE replay data to disk:

root@kitploit:~
python ble-replay.py -f -of replaydata.json

Modify the hex values as needed and then play that file using:

root@kitploit:~
python ble-replay.py -if replaydata.json -r
Download Tool