Aether
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 is a multi-phase wireless penetration testing orchestrator that automates the complete lifecycle of Wi-Fi security assessments. It targets WEP, WPA, WPA2, WPA3, and WPA-Enterprise networks through a structured sequence of attack phases, each leveraging purpose-built wireless security tools.
The assessment begins with legacy protocol attacks (Phase 0: WEP IV capture and key cracking via the aircrack-ng suite), then progresses through modern WPA/WPA2 attacks including clientless PMKID capture with hashcat cracking (Phase 1a) and traditional handshake capture with WPS testing via wifite2 (Phase 1b). Phase 2 targets WPA-Enterprise environments by deploying a rogue access point with EAPHammer to harvest credentials, cracking captured hashes with asleap.
Advanced phases target WPA3-specific vulnerabilities: Phase 3 tests SAE (Simultaneous Authentication of Equals) cryptographic weaknesses using dragonslayer, Phase 4 evaluates SAE resource exhaustion via dragondrain, and Phase 5 tests for WPA2 KRACK (Key Reinstallation Attack) vulnerabilities using krackattacks-scripts. Each phase emits structured findings with SSID, BSSID, and wireless-specific metadata to the universal findings schema.
Aether operates under Crucible management when the CRUCIBLE_MANAGED environment variable is set, emitting __SPECTRE_LOG__, __SPECTRE_STATUS__, __SPECTRE_FINDING__, and __SPECTRE_PROMPT__ protocol tokens for real-time progress tracking. It supports checkpoint/resume for long-running wireless captures and writes all output to the universal pr0t31n directory structure.
Phase Pipeline
- Phase 0 — Runs a dedicated airodump-ng scan with parallel WPS detection (wash). For every AP broadcasting the target SSID(s): - captures full metadata (encryption, cipher, auth, signal, beacons) - identifies every connected client station - scores each AP (signal + client count) - selects the best target Writes access_points.json to output_dir. Returns (best_ap, all_enriched_aps).
- Phase 2 — WPA-Enterprise Attack
- Phase 3 — WPA3 SAE Testing
- Phase 4 — WPA3 Resource Exhaustion
- Phase 5 — KRACK Testing
- Phase 6 — Rogue AP / Evil Twin
- Phase 7 — Client-Side / Management Frame Attacks
- Phase 8 — EAP Downgrade Attack
- Phase 9 — SAE Transition Mode Downgrade
- Phase 10 — Post-Connection Attacks
- Phase 11 — Legacy / Niche Attacks
Security
Requires root/sudo for monitor mode and packet injection. CLI tool with no web interface. WiFi adapter must support monitor mode and injection.
Features
Enterprise Attacks
Integration
Key Reinstallation
Output
Reliability
WEP Attacks
WPA/WPA2 Attacks
WPA3 Attacks
Use Cases
Comprehensive Wireless Security Assessment
Run a full multi-phase assessment against all wireless networks in scope, testing WEP through WPA3 protocols and WPA-Enterprise configurations to identify cryptographic weaknesses, configuration flaws, and protocol-level vulnerabilities.
WPA3 Readiness Validation
Focus on Phases 3-4 to validate that WPA3 deployments are properly implemented and resilient against known SAE vulnerabilities including dragonblood-class attacks.
Enterprise Wireless Credential Harvesting
Deploy Phase 2 rogue AP testing to validate that WPA-Enterprise environments are resistant to evil twin attacks and that clients properly validate RADIUS server certificates.
Legacy Protocol Identification
Run Phase 0 to identify and demonstrate the risk of any remaining WEP networks, providing concrete evidence for upgrade recommendations.
KRACK Patch Verification
Execute Phase 5 against WPA2 infrastructure to verify that all access points and clients have been patched against Key Reinstallation Attacks.
CLI Reference
Command Examples
Full Assessment
Run all WiFi attack phases with a settings file.
PMKID Only
Run only the clientless PMKID capture and cracking phase.
WPA-Enterprise Rogue AP
Run the WPA-Enterprise credential harvesting phase.
Third-Party Tool Invocations
Commands and flags used when this tool invokes third-party dependencies during operation.
Finding Nomenclature
Aether findings use the AE- prefix in their catalogue IDs (e.g., AE-001, AE-002). Each finding includes wireless-specific metadata:
- ssid — the target network's SSID
- bssid — the target access point's MAC address
- wireless_data — a dictionary containing protocol details (encryption type, channel, signal strength, authentication method)
Risk levels follow the standard CRITICAL/HIGH/MEDIUM/LOW/INFO scale. Successful key recovery or credential capture is typically rated CRITICAL, configuration weaknesses as HIGH or MEDIUM, and informational observations as INFO. Findings reference the specific attack phase and external tool that produced them.
Action Items
Aether generates action items for captured material needing offline cracking — e.g., "Crack captured PMKID hash with hashcat -m 22000", "Crack WPA handshake with custom wordlist", "Test captured RADIUS credentials against internal services".
Output Files
| File | Format | Description |
|---|---|---|
meta.json |
JSON | Tool identity and engagement metadata |
findings.json |
JSON | Universal findings array v1.1 |
findings.csv |
CSV | CSV mirror of findings |
summary.json |
JSON | Aggregated statistics |
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 && python3 aether.py [OPTIONS]
Run directly with command-line arguments. |
| CLI — Settings File |
cd /opt/pr0t31n/Aether && python3 aether.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
Depends On
- Drift (reconnect traffic generation)
Used By
- Crucible (manages)
- Prometheus (reports)
Third-Party Dependencies & Credits
| Tool / Library | Developer | Type | Link |
|---|---|---|---|
| aircrack-ng suite | Thomas d'Otreppe (Mister_X) | system | https://github.com/aircrack-ng/aircrack-ng |
| wifite2 | kimocoder / derv82 | system | https://github.com/kimocoder/wifite2 |
| EAPHammer | Gabriel Ryan (s0lst1c3) | system | https://github.com/s0lst1c3/eaphammer |
| dragonslayer | Mathy Vanhoef | system | https://github.com/vanhoefm/dragonslayer |
| dragondrain | Mathy Vanhoef | system | https://github.com/vanhoefm/dragondrain-and-time |
| krackattacks-scripts | Mathy Vanhoef | system | https://github.com/vanhoefm/krackattacks-scripts |
| bettercap | Simone Margaritelli (evilsocket) | system | https://github.com/bettercap/bettercap |
| Responder | Laurent Gaffie (lgandx) | system | https://github.com/lgandx/Responder |
| hashcat | Jens Steube (atom) | system | https://github.com/hashcat/hashcat |
| hcxpcapngtool / hcxtools | ZerBea | system | https://github.com/ZerBea/hcxtools |
| hostapd-mana | SensePost / Dominic White (singe) | system | https://github.com/sensepost/hostapd-mana |
| asleap | Joshua Wright | system | https://github.com/joswr1ght/asleap |
| nmap | Gordon Lyon (Fyodor) | system | https://github.com/nmap/nmap |
| tshark / Wireshark | Gerald Combs / Wireshark Foundation | system | https://github.com/wireshark/wireshark |
Metadata
| Name | Aether |
| Category | Wireless |
| Version | 1.25.1 |
| Install Path | /opt/pr0t31n/Aether |
| Main File | aether.py |
| GitHub | https://github.com/pr0t31n/Aether.git |