124 lines
4.9 KiB
Markdown
124 lines
4.9 KiB
Markdown
# cute-handshake-capture
|
||
|
||
```
|
||
╔═══════════════════════════════════════════════════════════════╗
|
||
║ ▄▀▀▀▀▀▀▀▀▀▀▄ ▄▀▀▀▀▀▀▀▀▀▀▄ ▄▀▀▀▀▀▀▀▀▀▀▄ ▄▀▀▀▀▀▀▀▀▀▀▄ ║
|
||
║ █ █ █ █ █ █ █ █ ║
|
||
║ █ E A P O L █ █ 4-WAY █ █ HANDSHAKE █ █ CAPTURE █ ║
|
||
║ █ █ █ █ █ █ █ █ ║
|
||
║ ▀▄▄▄▄▄▄▄▄▄▄▄▀ ▀▄▄▄▄▄▄▄▄▄▄▀ ▀▄▄▄▄▄▄▄▄▄▄▀ ▀▄▄▄▄▄▄▄▄▄▄▀ ║
|
||
╚═══════════════════════════════════════════════════════════════╝
|
||
```
|
||
|
||
Automatic WiFi 4-way handshake capture for Waveshare ESP32-C6 1.47" LCD.
|
||
|
||
---
|
||
|
||
## ▸ Overview
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ SCAN ──► DEAUTH ──► CAPTURE ──► SD CARD ──► RED │
|
||
│ │ │ │ │ │ │
|
||
│ └───────────┴────────────┴──────────────┴───────────┘ │
|
||
│ continuous loop │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
| Feature | Description |
|
||
|----------------|--------------------------------------------------|
|
||
| `SD_STORAGE` | PCAP files → TF card (not SPIFFS) |
|
||
| `DEAUTH_150ms` | Aggressive interval to force reauth |
|
||
| `GREEN→RED` | Display: uncaptured = green, captured = red |
|
||
| `WPA/WPA2` | Skips Open/WEP (no handshake to capture) |
|
||
| `BSSID_CACHE` | Captured networks stay red across rescans |
|
||
|
||
---
|
||
|
||
## ▸ Hardware
|
||
|
||
| Component | Spec |
|
||
|-----------|------|
|
||
| Board | Waveshare ESP32-C6-LCD-1.47 (non-touch, ST7789) |
|
||
| Display | 172×320, 262K color |
|
||
| Storage | TF card slot (SPI) |
|
||
| RF | WiFi 6, 2.4 GHz |
|
||
|
||
---
|
||
|
||
## ▸ Dependencies
|
||
|
||
Clone the Waveshare demo for LVGL and display drivers:
|
||
|
||
```
|
||
git clone https://github.com/waveshareteam/ESP32-C6-LCD-1.47-Demo.git
|
||
```
|
||
|
||
Or download from: https://www.waveshare.com/wiki/ESP32-C6-LCD-1.47
|
||
|
||
---
|
||
|
||
## ▸ Build
|
||
|
||
```bash
|
||
arduino-cli compile \
|
||
-b 'esp32:esp32:esp32c6:PartitionScheme=huge_app' \
|
||
--build-path /tmp/arduino-build-handshake-c6 \
|
||
--libraries "ESP32-C6-LCD-1.47-Demo/Arduino/libraries" \
|
||
handshake-capture-c6
|
||
```
|
||
|
||
---
|
||
|
||
## ▸ Flash
|
||
|
||
```bash
|
||
arduino-cli upload \
|
||
-p /dev/cu.usbmodem* \
|
||
-b 'esp32:esp32:esp32c6:PartitionScheme=huge_app' \
|
||
--input-dir /tmp/arduino-build-handshake-c6
|
||
```
|
||
|
||
`arduino-cli board list` → find your port.
|
||
|
||
---
|
||
|
||
## ▸ Flow
|
||
|
||
```
|
||
┌──────────┐ ┌──────────────┐ ┌─────────────┐
|
||
│ SCAN │────►│ TARGET WPA │────►│ SET CH │
|
||
│ networks│ │ (strongest) │ │ DEAUTH │
|
||
└──────────┘ └──────────────┘ └──────┬──────┘
|
||
▲ │
|
||
│ ▼
|
||
│ ┌──────────────────────────────┐
|
||
│ │ PROMISCUOUS RX │
|
||
│ │ beacon + EAPOL × 4 │
|
||
│ └──────────────┬──────────────┘
|
||
│ │
|
||
│ ▼
|
||
│ ┌──────────────────────────────┐
|
||
└──────────────│ SAVE PCAP → SD │
|
||
│ MARK RED → NEXT │
|
||
└──────────────────────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
## ▸ Output
|
||
|
||
PCAP files on TF card:
|
||
|
||
```
|
||
/handshake_SSID_timestamp.pcap
|
||
```
|
||
|
||
Compatible with `hashcat`, `aircrack-ng`, `hcxpcapngtool`.
|
||
|
||
---
|
||
|
||
## ▸ License
|
||
|
||
Use responsibly. Authorized testing only.
|