Captura e análise forense de frames IEEE 802.11 em modo monitor. Filtragem de handshakes EAPOL, beacons, probe requests e análise de capturas PCAP com Wireshark e tshark.
Neste laboratório você aprenderá a capturar frames IEEE 802.11 em modo monitor e a analisar o tráfego usando o Wireshark e o tshark. O foco é compreender a estrutura dos frames, o processo de associação e o handshake de autenticação WPA2.
| Tipo | Subtipo | Função |
|---|---|---|
| Management (0) | Beacon (8) | AP anuncia sua presença a cada ~100 ms |
| Management (0) | Probe Request (4) | Cliente busca redes conhecidas ativamente |
| Management (0) | Probe Response (5) | AP responde ao probe request do cliente |
| Management (0) | Authentication (11) | Troca de frames de autenticação 802.11 |
| Management (0) | Association Request (0) | Cliente solicita associação ao AP |
| Management (0) | Deauthentication (12) | Encerra autenticação — usado em ataques DeAuth |
| Data (2) | Data (0) | Frames de dados encriptados (CCMP/TKIP) |
# Método 1: airmon-ng (recomendado)
airmon-ng check kill
airmon-ng start wlan0
✓ Interface criada: wlan0mon
# Método 2: iw (manual)
ip link set wlan0 down
iw wlan0 set monitor none
ip link set wlan0 up
✓ wlan0 em monitor mode
# Verificar modo atual
iwconfig wlan0mon
wlan0mon IEEE 802.11 Mode:Monitor Frequency:2.412 GHz
# Fixar em canal específico (opcional)
iwconfig wlan0mon channel 6
# Captura geral em todos os canais — salva PCAP
airodump-ng wlan0mon --band abg -w captura --output-format pcap
# Captura focada: canal 6, BSSID específico
airodump-ng -c 6 --bssid AA:BB:CC:11:22:33 -w foco wlan0mon
# Saída esperada
BSSID PWR Beacons #Data CH ENC CIPHER AUTH ESSID
AA:BB:CC:11:22:33 -55 412 103 6 WPA2 CCMP PSK LabNet
AA:BB:CC:44:55:66 -72 88 12 11 WPA3 CCMP SAE LabNet5G
STATION PWR Rate Lost Frames Probe
DD:EE:FF:00:11:22 -48 54e 0 231 LabNet
# Abrir arquivo PCAP no Wireshark
wireshark captura-01.cap &
── Filtros essenciais para 802.11 ──────────────────────────────
wlan.fc.type_subtype == 8 # Beacon frames
wlan.fc.type_subtype == 4 # Probe requests
wlan.fc.type_subtype == 12 # Deauthentication
wlan.bssid == aa:bb:cc:11:22:33 # Filtrar por AP
eapol # Handshake WPA2 (4-way)
wlan.fc.protected == 1 # Frames criptografados
── Inspecionar campo RSN em Beacon ─────────────────────────────
# Expanda: IEEE 802.11 → Tagged parameters → RSN Information
# Verifique: Group Cipher Suite, Pairwise Cipher Suites, AKM
# Menu Wireshark: Statistics → Protocol Hierarchy
# Visualiza proporção de cada protocolo na captura
# Menu: Statistics → WLAN → WLAN Traffic
# Lista APs, clientes, frames por tipo
# Menu: Wireless → WLAN Traffic
# Heatmap de APs e intensidade de sinal
O tshark é a versão de linha de comando do Wireshark — ideal para automação e scripts.
# Capturar direto com tshark em modo monitor
tshark -i wlan0mon -w captura.pcap
# Listar todos os SSIDs de beacon frames
tshark -r captura.pcap -Y "wlan.fc.type_subtype==8" -T fields -e wlan.ssid -e wlan.bssid -e wlan.channel | sort -u
LabNet AA:BB:CC:11:22:33 6
LabNet5G AA:BB:CC:44:55:66 36
HomeRouter DD:EE:FF:77:88:99 1
# Extrair probe requests com timestamp
tshark -r captura.pcap -Y "wlan.fc.type_subtype==4" -T fields -e frame.time -e wlan.sa -e wlan.ssid
# Contar frames por tipo
tshark -r captura.pcap -q -z wlan,stat,wlan0mon
O handshake EAPOL é a sequência de 4 mensagens que estabelece a chave de sessão (PTK) entre cliente e AP após a autenticação WPA2-PSK. Capturá-lo é o primeiro passo para tentativa de recuperação offline da senha.
| Mensagem | Direção | Conteúdo |
|---|---|---|
| EAPOL M1 | AP → Cliente | ANonce (nonce do AP) |
| EAPOL M2 | Cliente → AP | SNonce + MIC (prova que o cliente conhece a PSK) |
| EAPOL M3 | AP → Cliente | GTK encriptada + MIC de confirmação |
| EAPOL M4 | Cliente → AP | ACK — handshake completo |
# Filtrar EAPOL e verificar se handshake está completo
tshark -r captura.pcap -Y "eapol" -T fields -e frame.number -e wlan.sa -e wlan.da -e eapol.keydes.key_info
Frame 1042 AA:BB:CC:11:22:33 → DD:EE:FF:00:11:22 0x008a ← M1 (ANonce)
Frame 1043 DD:EE:FF:00:11:22 → AA:BB:CC:11:22:33 0x010a ← M2 (SNonce+MIC)
Frame 1044 AA:BB:CC:11:22:33 → DD:EE:FF:00:11:22 0x13ca ← M3 (GTK)
Frame 1045 DD:EE:FF:00:11:22 → AA:BB:CC:11:22:33 0x030a ← M4 (ACK)
✓ Handshake completo capturado (4 mensagens EAPOL)
# Verificar via aircrack-ng
aircrack-ng captura-01.cap
# BSSID ESSID Encryption Handshake
1 AA:BB:CC:11:22:33 LabNet WPA (1 handshake)