Fondamenti del Protocollo WiFi e Evoluzione della Sicurezza
Stack del Protocollo WiFi: PHY, MAC e Architettura dei Frame
IEEE 802.11 opera su due livelli principali. Il Physical Layer (PHY) gestisce la modulazione, la codifica e la trasmissione RF—evolvendo da DSSS/CCK in 802.11b attraverso OFDM in 802.11a/g fino a OFDMA in 802.11ax (WiFi 6). Il Medium Access Control (MAC) Layer gestisce l'accesso al canale tramite CSMA/CA con backoff esponenziale, l'indirizzamento dei frame, la frammentazione e la gestione dell'alimentazione. A differenza del CSMA/CD di Ethernet, il WiFi non può rilevare collisioni durante la trasmissione; si affida alla clear channel assessment e ai frame di acknowledgment.
I frame MAC portano quattro distinti campi indirizzo in certe modalità—un artefatto dei wireless distribution system (WDS) e dei formati frame a quattro indirizzi per il bridging AP-to-AP. La maggior parte del traffico utilizza tre indirizzi: destinazione, sorgente e BSSID.
| Tipo di Frame | Scopo | Rilevanza per la Sicurezza |
|---|---|---|
| Management | Autenticazione, associazione, beacon, probe | Storicamente non autenticati; 802.11w aggiunge protezione dell'integrità |
| Control | RTS/CTS, ACK, Block Ack | Nessun payload; protezione frame tramite disciplina di sequenza |
| Data | Trasmissione payload utente | Cifrato sotto PTK/GTK; sottotipi QoS in 802.11e |
La struttura del frame segue questo ordine: Frame Control (2 byte), Duration/ID, campi Address, Sequence Control, QoS Control (se presente), HT Control (se presente), Frame Body (0–2304 byte), FCS (CRC-32). I bit Type e Subtype del campo Frame Control determinano la gestione; i bit To DS/From DS controllano l'interpretazione degli indirizzi.
Catturare e ispezionare frame 802.11 raw con:
# Richiede interfaccia in monitor mode e privilegi root
sudo airmon-ng start wlan0
sudo tcpdump -i wlan0mon -e -s 0 -w beacon_capture.pcap 'type mgt subtype beacon'
Cosa fa: Mette l'interfaccia in monitor mode, cattura frame 802.11 di Layer 2 inclusi header radiotap con metadati del segnale. Il filtro limita ai frame beacon. Quando usarlo: Rilevamento di base, rilevamento AP rogue, analisi dell'utilizzo del canale. Rischi: La monitor mode interrompe il normale funzionamento della stazione; le catture possono includere dati sensibili di broadcast SSID. Output atteso: File PCAP con frame 802.11 raw visualizzabili in Wireshark o tshark.
tshark -r beacon_capture.pcap -T fields -e wlan.bssid -e wlan.ssid -e wlan.rsn.ie.akms.type -c 10
f8:e4:e3:12:34:56 CorpWiFi 00
f8:e4:e3:12:34:57 CorpWiFi 00
00:14:d1:ab:cd:ef GuestNet 02
Interpretazione: Il campo akms.type rivela la gestione delle chiavi di autenticazione: 00 = 802.1X (enterprise), 02 = PSK (personal). Il BSSID duplicato con MAC incrementale suggerisce molteplici AP sullo stesso SSID—normale per deployment enterprise.
Evoluzione dei Meccanismi di Sicurezza: Da WEP a WPA3
La progressione da WEP a WPA3 non è un miglioramento incrementale ma una sostituzione architetturale. Ogni generazione ha affrontato fallimenti fondamentali:
| Generazione | Cifrario | Derivazione della Chiave | Debolezza Critica |
|---|---|---|---|
| WEP | RC4 | Chiave statica 40/104-bit + IV 24-bit | Riutilizzo IV; recupero keystream RC4; nessuna integrità oltre CRC-32 |
| WPA/TKIP | RC4 con key mixing per-pacchetto | 4-way handshake da PSK o 802.1X | Michael MIC troppo debole; deprecato 2012 |
| WPA2-Personal | AES-CCMP (128-bit) | PMK da PBKDF2(HMAC-SHA1, passphrase, SSID, 4096 iterazioni) | Attacco dizionario offline su cattura 4-way handshake |
| WPA2-Enterprise | AES-CCMP | PMK da scambio chiave 802.1X/EAP | RADIUS rogue; fallimenti validazione certificati |
| WPA3-Personal | AES-CCMP o AES-GCMP-256 | SAE (Simultaneous Authentication of Equals) | Trasmissioni side-channel in implementazioni early; vulnerabilità dragonblood |
| WPA3-Enterprise | GCMP-256 (obbligatorio) | Modalità sicurezza 192-bit | Complessità implementativa; attacchi downgrade se modalità transizionale abilitata |
L'SAE di WPA3 sostituisce lo scambio PSK con uno scambio di chiavi autenticato da password basato su logaritmi discreti o crittografia a curve ellittiche. A differenza di WPA2-Personal, la conoscenza della password non produce il PMK; non c'è materiale da attaccare offline. Tuttavia, implementazioni early hanno trasmesso informazioni di timing abilitando il recupero side-channel—patchate, ma un promemoria che la correttezza della specifica non garantisce la sicurezza dell'implementazione.
Meccanismi Crittografici: CCMP, GCMP e SAE
CCMP (Counter Mode with CBC-MAC Protocol) combina AES-128 in modalità CTR per confidenzialità con CBC-MAC per integrità. La struttura di 8-ottetti MIC e 8-ottetti IV/nonce impone un overhead di 16 ottetti per MPDU. GCMP (Galois/Counter Mode Protocol) sostituisce CBC-MAC con GHASH, abilitando operazione parallela e throughput maggiore—obbligatorio nella modalità 192-bit di WPA3-Enterprise, opzionale in WPA3-Personal.
SAE opera in due fasi:
- Commit: Ogni peer genera coppia scalar/element, trasmette pubblicamente. La maschera derivata dalla password assicura il contributo della password.
- Confirm: Entrambe le parti derivano segreto condiviso, confermano mutua derivazione.
La Pairwise Master Key (PMK) risultante è specifica per sessione; anche password identiche producono PMK distinti per associazione.
Gerarchia delle Chiavi e il Four-Way Handshake
Comprendere la derivazione delle chiavi è prerequisito per analizzare attacchi di cattura handshake o risolvere fallimenti di roaming.
| Chiave | Derivazione | Ambito | Durata |
|---|---|---|---|
| PSK | Passphrase utente o hex 64 caratteri | Solo modalità personal | Statico fino a riconfigurazione |
| PMK | PSK via PBKDF2, o export chiave EAP | Per-sessione | Durata associazione |
| PTK | PRF(PMK, "Pairwise key expansion", ANonce‖SNonce‖MAC_AP‖MAC_STA) | Per coppia STA/AP | Rekeyed o vincolato a sessione |
| GTK | Generato AP, cifrato in EAPOL-Key | Broadcast/multicast | Rekeying di gruppo periodico |
Il four-way handshake (802.11i-2004, Clausola 8.5.3) deriva PTK da nonce e indirizzi MAC:
- Messaggio 1 (AP→STA): ANonce, key info (unicast, key ACK, key MIC)
- Messaggio 2 (STA→AP): SNonce, key info (unicast, key MIC, encrypted key data include RSNE)
- Messaggio 3 (AP→STA): Installazione GTK, key info (unicast, install, key ACK, key MIC, encrypted key data)
- Messaggio 4 (STA→AP): Conferma finale
La vulnerabilità nonce reuse (KRACK, 2017) ha sfruttato il Messaggio 3 ritrasmettuto forzando il reset del nonce nella variante GTK handshake, abilitando replay e decrittazione. La fix: non reinstallare mai chiavi già in uso.
Ispezionare lo stato dell'handshake con:
# Lab: Analizzare completezza handshake e comportamento nonce
tshark -r wpa_handshake.pcap -Y "eapol" -T fields -e frame.number -e wlan.fc.retry \
-e eapol.keydes.nonce -e eapol.keydes.key_info.key_mic -e eapol.keydes.key_info.install
Cosa fa: Estrae campi frame EAPOL-Key per verificare completezza handshake e rilevare anomalie (flag retry, nonce ripetuti, timing del bit install). Quando usarlo: Validare qualità cattura per hashcat/aircrack, investigare varianti KRACK, risolvere fallimenti roaming. Rischi: L'analisi PCAP è passiva; nessun impatto di rete. Output atteso: Sequenza tabellare mostrando progressione nonce e stato bit install.
| frame.number | wlan.fc.retry | eapol.keydes.nonce | key_mic | install |
|---|---|---|---|---|
| 142 | 0 | ANonce_value... | 1 | 0 |
| 144 | 0 | SNonce_value... | 1 | 0 |
| 146 | 0 | ANonce_value... | 1 | 1 |
| 148 | 0 | (empty) | 1 | 0 |
Flag retry su Messaggio 1 o 3 meritano scrutinio—attaccanti attivi iniettano ritrasmissioni per sfruttare la logica di reinstallazione.
802.11w: Protected Management Frames
Il problema persistente: i frame di management devono propagarsi a tutte le stazioni, incluse quelle non associate, precludendo la cifratura standard. 802.11w (PMF) fornisce protezione dell'integrità e resistenza al replay senza confidenzialità—le stazioni ignorano deautenticazione, disassociazione o annunci di channel switch rogue contraffatti.
PMF richiede CCMP o GCMP; non può operare con TKIP. Il deployment utilizza association comebacks con procedure SA Query per prevenire che disassociazione spoofata forzi una piena riautenticazione—critico per applicazioni sensibili alla latenza e fast-secure roaming (802.11r).
Verificare la capacità PMF nei frame beacon:
# Lab: Estrarre capacità RSN incluso MFP (Management Frame Protection)
tshark -r survey.pcap -Y "wlan.fc.type_subtype == 0x08" -T fields \
-e wlan.bssid -e wlan.ssid -e wlan.rsn.ie.capabilities.mfp \
| sort | uniq -c | sort -rn | head -20
Cosa fa: Analizza frame beacon per bit capacità MFP: 0 = no PMF, 1 = capable (opzionale), 2 = required. Quando usarlo: Rilevamento pre-deployment, analisi gap compliance, rilevamento AP rogue (impostazioni PMF inconsuete). Rischi: Solo passivo. Output atteso: Lista BSSID con annotazione di frequenza e postura PMF.
47 f8:e4:e3:12:34:56 CorpWiFi 2
12 00:14:d1:ab:cd:ef GuestNet 0
3 f8:e4:e3:12:34:57 CorpWiFi 1
Interpretazione: 2 significa PMF required—associazione senza negoziazione PMF rifiutata. 1 è "capable," permettendo downgrade. 0 è assente. L'entry 1 sullo stesso SSID suggerisce deployment transizionale o misconfigurazione che invita attacchi downgrade.
Framework 802.1X/EAP per Autenticazione Enterprise
I deployment enterprise disaccoppiano AP dalla verifica delle credenziali. L'AP agisce come authenticator, inoltrando frame EAP a un RADIUS authentication server (AS) via 802.1X. Il metodo EAP—PEAP, EAP-TLS, EAP-TTLS, EAP-FAST—determina la superficie di vulnerabilità.
| Metodo | Tunneling | Credenziale | Modalità di Fallimento Comune |
|---|---|---|---|
| PEAP-MSCHAPv2 | TLS outer, inner MSCHAPv2 | Username/password | Bypass inner authentication; password deboli crackabili da challenge/response |
| EAP-TLS | Mutual TLS | Client certificate | Onere gestione lifecycle certificati; dipendenza disponibilità CRL/OCSP |
| EAP-TTLS | TLS outer, inner legacy PAP/CHAP | Variabile | Downgrade metodo inner |
Misconcezione critica: "Enterprise è più forte di Personal" dipende interamente dall'implementazione. PEAP-MSCHAPv2 con password deboli e senza validazione certificato server è più debole di WPA3-Personal con password SAE forte. Il confine enterprise aggiunge identity management e revocazione centralizzata, non superiorità crittografica intrinseca.
Errori comuni in deployment WiFi enterprise:
| Errore | Perché ti colpisce |
|---|---|
| EAP-TLS senza OCSP stapling o distribuzione CRL | Certificati revocati autenticano indefinitamente; dispositivi rogue con cert rubati persistono |
| PEAP con anonymous outer identity e nessuna validazione cert server | Evil twin cattura challenge/response MSCHAPv2 inner; cracking hash offline segue |
| Fast-secure roaming (802.11r) senza PMF | Gerarchia chiavi FT derivata da frame plaintext; flood deauth forzano riautenticazione per collezionare PMK-R0/PMK-R1 |
| Modalità transizionale WPA3-Enterprise abilitata | Downgrade a WPA2-Enterprise accettato; GCMP-256 mai negoziato |
Approfondimento Derivazione Chiavi: Da PMK a PTK
La costruzione PRF conta per validazione forense:
PTK = PRF-512(PMK, "Pairwise key expansion", Min(ANonce,SNonce) ||
Max(ANonce,SNonce) || Min(MAC_AP,MAC_STA) || Max(MAC_AP,MAC_STA))
La Key Confirmation Key (KCK) e la Key Encryption Key (KEK) sono estratte da PTK per calcolo MIC e cifratura key data rispettivamente. In 802.11r fast BSS transition, la gerarchia si estende a PMK-R0 (mantiene su AP/controller) e PMK-R1 (distribuita all'AP target), riducendo latenza di autenticazione a costo di complessità distribuzione chiavi—controller compromessi espongono materiale chiave più ampio.
Intuizione pratica: Le catture handshake per attacco WPA2-Personal funzionano offline perché la derivazione PSK-to-PMK (4096 iterazioni PBKDF2) è deterministica per coppia SSID/passphrase. Lo SSID agisce da salt—rainbow tables mirano SSID comuni. Cambiare lo SSID default da "linksys" fornisce protezione marginale contro tabelle precompute ma zero protezione contro computazione PBKDF2 mirata con GPU. L'SAE di WPA3 elimina interamente questo vettore di attacco rendendo il PMK non derivabile dalla sola password.
Approfondimenti
- Configure 802.11w Management Frame Protection on WLC - Cisco
- 802.11w Protected Management Frames
- 802.11r, 802.11k, and 802.11w Deployment Guide, Cisco IOS-XE Release 3.3 - 802.11w Protected Management Frames Cisco Wireless LAN Controller
- Guidelines for securing Wireless Local Area Networks (WLANs)
- Wireless Network Security: 802.11, Bluetooth and Handheld Devices