RF Analysis & Security Research Toolkit using Software Defined Radio.
- HackRF Capture — Real-time 2.4 GHz WiFi/Bluetooth packet detection
- Spectrum Analyzer — Real-time spectrum visualization (coming soon)
- Signal Replay — Record and replay RF signals (coming soon)
- Frequency Scanner — Scan frequency ranges for activity (coming soon)
LabOnOffensive/
├── main.py # Entry point with menu system
├── requirements.txt # Python dependencies
├── README.md # This file
└── modules/
├── __init__.py # Module exports
├── colors.py # Terminal color codes
├── wifi_channels.py # WiFi channel definitions
├── packet_detector.py # RF packet detection
├── hackrf_capture.py # HackRF capture functionality
└── menu.py # Interactive menu system
- HackRF One SDR
brew install hackrfsudo apt update
sudo apt install hackrf libhackrf-devsudo pacman -S hackrf# Clone the repository
git clone <repo-url>
cd LabOnOffensive
# Install Python dependencies
pip install -r requirements.txtpython main.pyThis launches the interactive menu:
[1] HackRF Capture - Capture and analyze 2.4 GHz WiFi/Bluetooth packets
[2] Spectrum Analyzer - Real-time spectrum visualization (coming soon)
[3] Signal Replay - Record and replay RF signals (coming soon)
[4] Frequency Scanner - Scan frequency ranges for activity (coming soon)
[q] Quit - Exit the application
You can also use modules directly:
from modules import HackRFCapture, PacketDetector
# Create capture instance
capture = HackRFCapture(
center_freq=2.437e9, # WiFi Channel 6
sample_rate=20e6,
lna_gain=32,
vga_gain=30
)
# Run capture
capture.run()The capture module detects WiFi and Bluetooth packets in the 2.4 GHz band.
TIME TYPE CHAN FREQUENCY BW POWER SIGNAL STRENGTH
12:34:56.789 [ WiFi ] Ch 6 2437.50 MHz BW: 20.0MHz -42.3 dB ████████████████░░░░
12:34:56.812 [ BT ] ---- 2445.23 MHz BW: 1.2MHz -51.7 dB ██████████░░░░░░░░░░
| Type | Description | Bandwidth |
|---|---|---|
| BT | Bluetooth | < 2 MHz |
| WiFi | WiFi 20 MHz | 2-25 MHz |
| WiFi40 | WiFi 40 MHz | 25-45 MHz |
| Channel | Frequency | Channel | Frequency |
|---|---|---|---|
| 1 | 2412 MHz | 8 | 2447 MHz |
| 2 | 2417 MHz | 9 | 2452 MHz |
| 3 | 2422 MHz | 10 | 2457 MHz |
| 4 | 2427 MHz | 11 | 2462 MHz |
| 5 | 2432 MHz | 12 | 2467 MHz |
| 6 | 2437 MHz | 13 | 2472 MHz |
| 7 | 2442 MHz | 14 | 2484 MHz |
Common non-overlapping channels: 1, 6, 11
- Check USB connection
- Run
hackrf_infoto verify device - On Linux, check permissions:
sudo chmod 666 /dev/bus/usb/*/*
Add udev rules:
sudo cp /etc/udev/rules.d/53-hackrf.rules /etc/udev/rules.d/
sudo udevadm control --reload-rulesMIT License - Use responsibly and legally.