Universal command-line toolkit for the entire Hak5 device ecosystem
A modular Python framework for managing, deploying payloads, and running operations across all Hak5 devices from a single interface.
| Device | Module | Status |
|---|---|---|
| 🍍 WiFi Pineapple (Pager/MK7) | pineapple |
✅ Full Support |
| 🐰 Bash Bunny (MK1/MK2) | bashbunny |
✅ Full Support |
| 🦆 USB Rubber Ducky (MK1/MK2/3) | rubberducky |
✅ Full Support |
| 🦑 Packet Squirrel (MK1/MK2) | packetsquirrel |
✅ Full Support |
| 🐊 Key Croc | keycroc |
✅ Full Support |
| 🦈 Shark Jack | sharkjack |
✅ Full Support |
- Unified CLI — Single
hak5command for all devices - Device Discovery — Auto-detect connected Hak5 devices via USB/Network
- Payload Manager — Deploy, list, backup payloads across devices
- Loot Collector — Pull and organize exfiltrated data from all devices
- Config Manager — Backup/restore device configurations
- Report Generator — Create engagement reports from loot data
- Pineapple — Recon scans, evil twin, deauth, handshake capture, PineAP management
- Bash Bunny — Payload deploy, switch config, LED control, extension management
- Rubber Ducky — DuckyScript compilation, payload encoding, deploy via USB
- Packet Squirrel — MITM setup, DNS spoofing, packet capture, OpenVPN tunneling
- Key Croc — Keylog management, match patterns, payload triggers
- Shark Jack — Nmap scanning, loot retrieval, payload management
# Install
git clone https://github.com/bad-antics/nullsec-hak5-toolkit
cd nullsec-hak5-toolkit
pip install -e .
# Discover connected devices
hak5 discover
# List available payloads
hak5 payloads list --device pineapple
# Deploy a payload
hak5 deploy recon/wifi-survey --device pineapple --target 172.16.42.1
# Collect loot from all devices
hak5 loot pull --all
# Run a full engagement workflow
hak5 engage --profile red-team --devices pineapple,bashbunnynullsec-hak5-toolkit/
├── core/ # Framework core
│ ├── cli.py # Main CLI entry point
│ ├── device.py # Device abstraction layer
│ ├── discovery.py # USB/Network device discovery
│ ├── payload.py # Payload management
│ ├── loot.py # Loot collection & organization
│ └── config.py # Configuration management
├── modules/ # Per-device modules
│ ├── pineapple/ # WiFi Pineapple operations
│ ├── bashbunny/ # Bash Bunny operations
│ ├── rubberducky/ # USB Rubber Ducky operations
│ ├── packetsquirrel/ # Packet Squirrel operations
│ ├── keycroc/ # Key Croc operations
│ └── sharkjack/ # Shark Jack operations
├── payloads/ # Payload library
├── docs/ # Documentation
└── tests/ # Test suite
# ~/.config/hak5-toolkit/config.yaml
devices:
pineapple:
host: 172.16.42.1
api_key: your-pineapple-api-key
bashbunny:
mount: /media/bashbunny
packetsquirrel:
host: 172.16.32.1
loot:
output_dir: ~/hak5-loot
auto_organize: true
reports:
template: default
output_format: htmlWe welcome contributions! See CONTRIBUTING.md for guidelines.
- GitHub: @bad-antics
- Email: badxantics@gmail.com
- Project: Part of the NullSec Framework
MIT License — See LICENSE for details.