
In tema di sicurezza, probabilmente il wireless rappresenta un capitolo imponente e rilevante, sopratutto a causa del mezzo trasmissivo (l’etere) che per sua natura non può essere esattamente confinato come può esserlo ad esempio il segnale elettrico in un cavo.
Esistono quindi delle contromisure atte a impedire negare proibire rendere il più arduo possibile l’accesso alla comunicazione da parte di terzi, per evitare intrusioni nel proprio sistema tramite la “porta” senza fili, così come l’utilizzo della comunicazione all’insaputa dello stesso proprietario.
La codifica della trasmissione ne è un esempio. Focalizzandosi sui sistemi di criptaggio, i più diffusi sistemi fino ad ora sono due: Wired Equivalent Privacy e Wi-Fi Protected Access.
WEP & WPA
Quali reazioni si potrebbero provare sentendo che la propria rete wireless protetta potrebbe essere violata in meno di 60 secondi?
No, non è uno scherzo.
Sembra che i ricercatori dell’Università della Tecnologia di Darmstadt in Germania ce l’abbiano fatta, utilizzando metodi nuovi. Non che prima fosse impossibile con quelli a disposizione, ma se prima per craccare una chiave WEP da 104 bit era necessario intercettare dai 4 ai 6 milioni di pacchetti, con questo nuovo tipo di attacco ne bastano 40.000 pacchetti per avere 50% di possibilità di accesso, ma con 85.000 si arriva al 95%. Chi ha mai fatto sniffing dei pacchetti in una rete sa quanto un ammontare di nemmeno centomila pacchetti sia una quantità davvero ridicola.
Il WEP è un protocollo di encryption che ha quasi 10 anni, e con l’avanzare delle tecniche ormai è da considerarsi datato e sostanzialmente inutile. Certo, magari si può pensare “ma tanto che vuoi che voglia entrare nella mia rete wireless di casa, un cyber-terrorista?”. Non elenco le volte in cui mi è stato chiesto letteralmente “il mio vicino ha la rete wireless che arriva in casa mia, come faccio a scroccargli l’accesso in internet?”.
Al di là dell’illegalità della cosa, a chi farebbe piacere pagare un canone ADSL per avere meno banda di quanta ne potrebbe avere, perchè uno (o anche più di uno) sconosciuto si fa i suoi bei giri col collegamento sovvenzionato dalle nostre tasche? Inoltre ricordo che l’indirizzo con cui si viene intercettati in internet non è quello del PC ma quello del router. Ne consegue che se qualcuno fa boiate illegali con una connessione non sua, i primi a essere (ri)cercati sono i proprietari di quel router, e non è poi così facile dimostrare la propria innocenza.
Basta questo a convincere della necessità di sicurezza?
Il WPA e successivamente il WPA2 sono subentrati al WEP per quanto riguarda la codifica della trasmissione wireless. E funzionano. Abbastanza. Sì perché pare che con un pò più di sforzi e colpendo in punti strategici diversi sia possibile ricavare la chiave di accesso (nel caso di WPS-PSK, ovvero ad accesso previa conoscenza di una chiave condivisa, o Pre-Shared-Key). Il WPA2 dedicato più ad un uso aziendale, utilizza dei server di autenticazione ed è quindi ancora più sicuro del WPA, rivolto ad un uso personale.
Qui però nessuno è un ricercatore tedesco, ma non per questo non significa che non si possano tentare strade con un buon set di attrezzi da lavoro.
Prima di proseguire è obbligatorio fare una premessa:
Il presente post nasce unicamente con l’intento di illustrare tecniche per testare la sicurezza di una rete wireless e degli strumenti utili ad effettuare operazioni esclusivamente per uso didattico. Declino ogni responsabilità per qualsiasi uso dei suddetti programmi che possa violare qualsiasi legge in vigore. Ricordo infatti che allo stato attuale delle cose
l’articolo 615-ter del Codice Civile punisce chi entra abusivamente
in un sistema telematico o informatico
protetto da misure di sicurezza.
Dubbio: e se la rete non è protetta? Aaah, beata negligenza legale! Comunque per istruirsi seriamente sull’argomento, consiglio vivamente di spendere qualche minuto per trovare buoni spunti su questa pagina: Informatica Giuridica Avanzata .
Anyway, sarebbe interessante capire quanto possa essere facile, ad esempio, aggirare la propria rete wireless, in modo magari di attuare manovre di supporto in tema di sicurezza (rimozione del SSID broadcast, IP statico, MAC filtering, DHCP limitato, accesso temporizzato, sistemi di alarming e logging, politiche di cambio chiavi di accesso, tanto per citarne alcune).
C‘è una frase che ancora di più può esprimere il concetto che sta dietro a questo ragionamento: un sistema con un firewall configurato male è molto peggio di un sistema senza alcun firewall! Banalmente, se so che il mio sistema è potenzialmente alla mercé di possibili attacchi, starò sempre con le orecchie tese e agirò in modo da minimizzare rischi e danni. Se invece penso di avere un firewall messo ad-hoc, mentre invece non lo è affatto, abbasserò la guardia, fidandomi del mio operato. Fiducia mal riposta.
Tra gli strumenti mirati a mettere sotto torchio le nostre onde elettromagnetiche, ne ho scelti alcuni tra i più famosi:
- Kismet : potente wireless sniffer, nativo per linux, funziona con Finestre tramite Cygwin.
- NetStumbler : wireless sniffer per Finestre
- Aircrack : direi che non servono spiegazioni oltre il nome
(WEP/WPA cracking tool)
I primi due servono in pratica per scovare una rete presente anche se magari non visibile con normali programmi, o comunque per fornire informazioni utili alla tipologia e alle caratteristiche della nostra rete che vogliamo testare.
Sebbene linux presenti molte caratteristiche e potenzialità che mancano in Finestre, trovo che NetStumbler sia un programma più che valido, avendo già sperimentando le passeggiate col portatile acceso nello zaino che beeppa ad ogni access point trovato (facile e abbastanza per giochetti divertenti tipo Wardriving).
Una volta collezionati tutti i parametri necessari si passa al terzo strumento, che appositamente lanciato e configurato si appresta a forzare le protezioni della nostra rete.
Per semplicità vediamo come testare un wireless protetto da WEP, per il WPA magari posterò un articolo più avanti, oltretutto perché la grande differenza che distingue tra i tue attacchi è che
il WEP si puo aggirare perché è stato trovato un modo
di rompere l’algoritmo di criptaggio
Il WPA ancora resiste, e piuttosto tenacemente
.
La crittografia WEP é vulnerabile perchè i vettori di inizializzazione (o IVs) sono brevi e le chiavi sono statiche. La vulnerabilità quindi non dipende strettamente dalla cifratura, ma dato che viene usata la stessa chiave per pacchetti diversi, la ricorrenza di uno stesso IV si verifica dopo poco tempo in una rete ad alto traffico. In questo modo basta collezionare abbastanza pacchetti per decodificare la chiave di accesso alla rete!
Anche se Aircrack potrebbe fare quasi tutto da solo, cominciare con strumenti più semplici come NetStumbler aiuta a capire quanti parametri siano in ballo. Lanciando NetStumbler si vedranno tutte le reti ricevute in quella zona. Per eventuali usi futuri non sarebbe male segnarsi il loro SSID (se visibile) e altri parametri che NetStumbler permette di ricavare. Non serve dilungarsi molto su questo programma dato che è abbastanza user-frendly.
Per Kismet l’operazione è analoga, per l’installazione rimando al sito apposito (sia per linux che per Finestre).
Per quanto riguarda Aircrack, una volta installato, il procedimento da seguire può essere riassunto in 5 fasi:
- Know-how
- Scanning
- Sniffing
- Fake association (per le schede supportanti l’injection)
- Key cracking
Pre-nota: per permettere tutti i passi, va prima settata la modalità monitor per la scheda wifi, con questo comando (via root o via sudo):
iwconfig mode monitor
Know-how
In primis: come si vìola rete protetta da algoritmo di cifratura WEP? Per essere in grado di sferrare un attacco, va analizzato il traffico tra access point e client.
Ovvero, prima facciamo una scansione delle reti disponibili, poi iniziamo a analizzare il traffico su quella rete (tecnicamente “sniffare”) e così catturare tanti IVS, per poi sottoporli al cracking di aircrack e trovare la chiave.
Come strumento va installato Aircrack (è consigliata la versione 1.0beta). NOTA: è altamente preferibile avere una scheda wifi che permetta l’injection (qui ci sono informazioni sui driver). Per permettere una ricezione migliore, configuriamo la scheda wifi con un rate di 1M in questo modo:
iwconfig <interfaccia> rate 1M
Scanning
Facciamo una scansione per vedere le varie reti, su che canale sono e se ci sono client connessi:
airodump-ng <interfaccia>
Una volta individuata la nostra rete facciamo i bravi metodici e puntigliosi, annotando :
- BSSID dell’AP (colonna di sinistra in alto)
- ESSID dell’AP (nome della rete, colonna di desta in alto)
- Channel (canale)
- SSID del/dei client/s (mac address del/dei client/s, sezione in basso)
Sniffing
per poter catturare i pacchetti da analizzare ora si deve memorizzare su un file le informazioni utili.
airodump-ng -c <canale> -b <BSSID> -w <file.ivs> <interfaccia>
Come accennato sopra, quello che interessa sono i pacchetti IV, che per una chiave WEP dovranno arrivare ad almeno 50.000-80.000 (tradotto: ci vuole pazienza) se si usa la versione 1.0beta di aircrack (che sfrutta l’attacco ptw), o 250.000-500.000, con le versioni precedenti (tradotto: molta, MOLTA pazienza).
Fake association
Se si dispone di un driver wifi che permette l’injection, si può testare la sua funzionalità con questo comando:
aireplay-ng –test <interfaccia>
Il bello dell’injection è che si può sollecitare la rete in modo da aumentare il numero di IV al secondo, così in pochi minuti avremo finito di sniffare (tanto essendo la nostra rete non ci saranno rischi di log da parte di amministratori).
Per fare questo, dobbiamo lanciare due volte aireplay, una per la fake association così:
aireplay-ng -1 0 -e <ESSID> -a <BSSID> -h <nostro_mac_address> <interfaccia>
Poi così:
aireplay-ng -3 -b <BSSID> -h <nostro_mac_address> <interfaccia>
…e aspettare che aircrack sprema un bel pò di IV.
Key cracking
Conviene lasciare acceso il programma di cattura di pacchetti nel file .cap per un bel pò di tempo, meglio attendere un pò di più che trovarne in numero insufficiente. Una volta che il file è bello zeppo, basta lanciare
aircrack-ng <file.cap>
e se tutto è stato svolto correttamente, avremo la chiave di accesso alla rete protetta dal WEP.
NOTA: anche se non ancora testato, questi passaggi dovrebbero essere possibili anche in Finestre, via Prompt, oltre che in Linux. Ai temerari l’ardua prova!
davvero un’ottima guida, per i meno esperti segnalo di dare un’occiata a questa, specialmente se si ha una scheda wireless intel 3945.
http://www.secretwireless.altervista.org