Aether-B
How It Works
⚠️ Authorized Testing Only
This tool interacts with live systems and must only be used for testing that has been explicitly authorized by the asset owner. Unauthorized use of this tool to probe, scan, exploit, or otherwise interact with systems you do not have written permission to test is illegal under computer fraud and abuse laws (CFAA, CMA, and international equivalents). pr0t31n does not condone or recommend any unauthorized use. Always obtain a signed Rules of Engagement (RoE) or Statement of Work (SoW) before beginning any assessment.
Aether-B is a multi-phase Bluetooth and Bluetooth Low Energy (BLE) penetration testing orchestrator. It automates the complete assessment lifecycle from passive reconnaissance through exploitation and firmware extraction, coordinating specialized Bluetooth security tools at each stage.
The assessment follows five phases: Phase 0 performs passive reconnaissance using ubertooth-scan, hcitool lescan, and btscanner to discover Bluetooth Classic and BLE devices in range without alerting them. Phase 1 enumerates discovered devices via sdptool (SDP service records), gatttool (GATT attribute enumeration for BLE), and hcitool info (device capabilities and features). Phase 2 attempts key recovery using crackle (BLE Legacy Pairing key extraction from sniffed traffic), ubertooth-btle (raw BLE link-layer capture), Just Works pairing detection, and KNOB (Key Negotiation of Bluetooth) attack checks.
Phase 3 moves into active exploitation using bettercap (Bluetooth MitM), GATTacker (BLE device cloning and MitM), BlueToolkit (automated Bluetooth vulnerability scanning), and BIAS (Bluetooth Impersonation AttackS) sequences. Phase 4 targets device firmware through binwalk (firmware image analysis and extraction) and openocd (JTAG/SWD debug interface access for direct flash memory reads).
When managed by Crucible, Aether-B emits __CRUCIBLE_LOG__, __CRUCIBLE_STATUS__, __CRUCIBLE_FINDING__, and __CRUCIBLE_PROMPT__ protocol tokens. It writes findings to the universal pr0t31n schema with appropriate wireless metadata fields and supports pause/resume via the shared pr0t31n_pause module.
Phase Pipeline
- Phase 1 — Survey & Discovery
- Phase 2 — Bluetooth Scanning
- Phase 3 — Service Enumeration
- Phase 4 — Protocol Analysis
- Phase 5 — Vulnerability Assessment
- Phase 6 — Attack Execution
Security
Requires root/sudo for Bluetooth adapter access (hciconfig, ubertooth). CLI tool. Ubertooth One hardware recommended for passive BLE sniffing.
Features
Enumeration
Exploitation
Firmware
Integration
Key Recovery
Reconnaissance
Reliability
Use Cases
IoT Device Bluetooth Assessment
Perform a comprehensive security assessment of IoT devices that use Bluetooth Classic or BLE for communication, testing pairing security, GATT service exposure, and firmware integrity.
Medical Device BLE Security Testing
Assess Bluetooth Low Energy implementations on medical devices for unauthorized data access, weak pairing (Just Works), and susceptibility to MitM attacks on patient data transmissions.
Automotive Bluetooth Testing
Evaluate vehicle infotainment and telematics Bluetooth interfaces for KNOB vulnerability, BIAS impersonation, and unauthorized service access.
Smart Lock & Access Control Assessment
Test BLE-enabled physical access control systems for replay attacks, weak key exchange, and GATTacker-based MitM that could enable unauthorized entry.
Bluetooth Firmware Security Review
Extract and analyze Bluetooth chipset firmware via JTAG/SWD to identify hardcoded encryption keys, debug interfaces left enabled, and known vulnerable firmware versions.
CLI Reference
Command Examples
Full BLE Assessment
Run all Bluetooth/BLE assessment phases.
Target Specific Device
Enumerate a specific device by MAC address.
Third-Party Tool Invocations
Commands and flags used when this tool invokes third-party dependencies during operation.
Finding Nomenclature
Aether-B findings use the AE- prefix in their catalogue IDs, shared with the Aether wireless family. Findings include Bluetooth-specific metadata:
- bssid — the target device's Bluetooth MAC address (BD_ADDR)
- wireless_data — a dictionary containing Bluetooth-specific details (device class, protocol version, pairing method, service UUIDs, GATT characteristics)
Risk levels follow the standard CRITICAL/HIGH/MEDIUM/LOW/INFO scale. Successful key extraction or MitM is typically rated CRITICAL, weak pairing configurations as HIGH, information disclosure via GATT enumeration as MEDIUM or LOW, and device discovery as INFO.
Action Items
Aether-B generates action items for physical Bluetooth testing — e.g., "Attempt Just Works pairing with target device", "Test KNOB attack with btlejuice", "Capture BLE pairing exchange for crackle analysis".
Output Files
| File | Format | Description |
|---|---|---|
meta.json |
JSON | Tool identity and engagement metadata |
scan.log |
TXT | Human-readable timestamped log |
scan.log.json |
JSONL | Machine-readable JSON log events |
errors.log |
TXT | ERROR-level entries only |
findings_catalogue.json |
JSON | Findings catalogue |
Invocation Methods
| Method | Usage |
|---|---|
| CLI — Direct |
cd /opt/pr0t31n/Aether-B && python3 aether_b.py
Run directly with command-line arguments. |
| CLI — Settings File |
cd /opt/pr0t31n/Aether-B && python3 aether_b.py --config config.json
Configure via config.json (JSON), then run. |
| Crucible-Managed |
Launched and managed by Crucible (port 5100). Crucible handles start/stop/pause, log streaming, findings aggregation, and status tracking. |
Integration
Used By
- Crucible (manages)
- Prometheus (reports)
Third-Party Dependencies & Credits
| Tool / Library | Developer | Type | Link |
|---|---|---|---|
| BlueZ (hcitool, sdptool, gatttool, bluetoothctl) | Marcel Holtmann / BlueZ team | system | http://www.bluez.org/ |
| Ubertooth One tools | Great Scott Gadgets / Michael Ossmann | system | https://github.com/greatscottgadgets/ubertooth |
| crackle | Mike Ryan | system | https://github.com/mikeryan/crackle |
| bettercap | Simone Margaritelli (evilsocket) | system | https://github.com/bettercap/bettercap |
| GATTacker | Slawomir Jasek / SecuRing | system | https://github.com/securing/gattacker |
| BlueToolkit | sgxgsx | system | https://github.com/sgxgsx/BlueToolkit |
| tshark / Wireshark | Gerald Combs / Wireshark Foundation | system | https://github.com/wireshark/wireshark |
| binwalk | Craig Heffner / ReFirm Labs | system | https://github.com/ReFirmLabs/binwalk |
| OpenOCD | OpenOCD project | system | https://github.com/openocd-org/openocd |
Metadata
| Name | Aether-B |
| Category | Wireless |
| Version | 1.5.1 |
| Install Path | /opt/pr0t31n/Aether-B |
| Main File | aether_b.py |
| GitHub | https://github.com/pr0t31n/Aether-B.git |