WP7 e WiFi SSID broadcasting

L’hide del broadcast SSID di una rete WiFi viene spesso associato ad una best practice di sicurezza.

In realtà la sicurezza di una reta WiFi viene fornita tramite la cifratura fornita ad esempio da Wi-Fi Protected Access (WPA2) mediante una strong passphrase. WPA2 è una certificazione di prodotto disponibile attraverso la WiFi Alliance che indica che l’apparecchiatura (scheda di rete e access point) è compatibile con lo standard IEEE 802.11i.

Per questo motivo Windows Phone 7 non supporta connessioni a reti WiFi nascoste come si può leggere nel seguente Can I connect to a hidden Wi-Fi network from Windows Phone 7?.

Giusto per dovere di cronaca anche l’iPhone può avere qualche problema a connettersi a reti WiFi con SSID nascosto a dimostrazione che anche in casa Apple il prodotto è stato sviluppato e testa pensando di lavorare con reti non nascoste si veda a riguardo il seguente iPhone: Cannot associate with “hidden” wireless network).

Se a prima vista potremmo venire voglia di storcere un po’ il naso in effetti personalmente la scelta di connettersi a reti WiFi nascoste non mi trova in disaccordo perché se alla rete è necessario connettersi tramite dispositivi mobili ha perfettamente senso che il SSID sia esposto e che quindi la rete WiFi non sia nascosta per agevolare la connessione a chi ne ha titolo.

L’hide del SSID infatti non da nessun livello di sicurezza ulteriore, ma semplicemente è una feature come il carattere $ al termine del nome di una share di rete. Ovvero serve a nascondere all’utente qualcosa che non gli interessa per la sua normale attività al fine di evitargli confusione e non per impedirgli di accedere perché la protezione avverrà mediante altre tecniche.

Gli Access Point inviano infatti Beacon Frames composti da un MAC header un Frame Body e Frame Check Sequence (FCS per il controllo degli errori).

In particolare il Frame Body contiene le seguenti informazioni:

  • Beacon interval (l’intervallo di tempo con cui vengono trasmessi i beacon Frame)
  • Timestamp (utilizzato per la sincronizzazione temporale)
  • Service Set Identifier (SSID)
  • Supported rates (che indica i data rates supportati ad esempio 1, 2 e 5.5 Mbps; tramite questa informazione le stazioni possono utilizzare performance metrics per decidere a quale Access Point connettersi)
  • Parameter Sets (informazioni circa il segnale Frequency-hopping (FH), Direct-Sequence (DS) e Contention-Free (CF), Independent Basic Service Set (IBSS), etc… come ad esempio il numero del canale usato)
  • Capability Information (indica i requisti che le stazioni devono possedere per connettersi all’Access Point, per esempio il livello di crittografia WEP, WPA o WPA2)
  • Traffic Indication Map (TIM inviato periodicamente per comunicare alle stazioni in power saving mode che vi sono data frames in attesa per loro nel buffer dell’Access Point)

Un Access Point configurato per nascondere il SSID in realtà non fa altro che continuare a inviare i Beacon Frames con il SSID impostato a NULL, quindi i software di scansione di rete (come ad esempio NetStumbler) continueranno a rilevare comunque la rete WiFi.

L’hide del SSID può servire a nascondere quindi solo reti WiFi che non è utile che vengano visualizzate, si pensi ad esempio all’interno di un’azienda alle reti di comunicazione in magazzini automatici o comunque relative a macchinare di produzione che servono unicamente a far comunicare PLC o apparati dove sono sono possibili per motivi meccanici altri tipi di connessioni.