VoIP and Hacking

Un caffelatte in grado di violare il WEP

by admin on Jun.22, 2009, under Hacking, Linux, Sicurezza

Ho affermato in un post precedente che l’impossibilità di controllare la locazione dalla quale un client si può connettere ad un accesspoint costituisce il nocciolo della questione sicurezza relativamente alle reti wireless.
Questa affermazione si basa sul fatto che gli attacchi di più recente concezione, anziché focalizzarsi sul traffico catturato a partire da reti attive, si sono rivolti a clients off-site, cioè non connessi ad alcuna rete. In tal modo diventa possibile attaccare laptops e telefoni Wi-Fi in luoghi pubblici e frequentati come aeroporti e hotels.
La maggior parte degli attacchi client-side sfruttano due fondamentali vulnerabilità:
Un client Wi-Fi cerca attivamente tutte le reti cui sia stato in precedenza associato.
Quando viene rilevato un qualsiasi AP con un nome (SSID) conosciuto, il client automaticamente vi si associa.
Per semplificare le procedure di connessione, infatti, i client wireless sotto Windows memorizzano una lista di reti “preferite” nella PNL (Preferred Network List).
È proprio su queste caratteristiche che si basa l’attacco denominato “caffelatte”
Tutti i metodi di cracking WEP utilizzano l’analisi statistica per determinare la chiave usata per crittare il traffico catturato. Se quest’ultimo è in quantità sufficiente, è sempre possibile ricavare la chiave. Un attacco rivolto al WEP-cracking perciò inizia localizzando una fonte di pacchetti crittati.
L’attacco “caffelatte” utilizza clients Wi-Fi anziché APs come fonte.
Nello specifico, tutti i devices TCP/IP inviano un certo numero di pacchetti quando si connettono ad una WLAN:
Una stazione che utilizza un IP statico, invia immediatamente alcuni pacchetti ARP “gratuiti” all’ intera WLAN. Ciascun pacchetto ARP ospita il MAC address del mittente con relativo indirizzo IP in modo che le altre stazioni sappiano come instradare il traffico.
Per inciso, un “gratuitous ARP request” è un pacchetto di richiesta ARP in cui sia l’indirizzo IP sorgente che quello di destinazione sono entrambi settati all’indirizzo della macchina che emette il pacchetto mentre l’indirizzo MAC di destinazione è l’indirizzo di broadcast ff:ff:ff:ff:ff:ff.
Una stazione che utilizza un IP dinamico invia pure dei pacchetti ARP, dopo aver richiestp un indirizzo IP da un server DHCP. Se nessun server viene trovato, la stazione asegna a sè stessa un “Automatic Private IP Address” nella subnet 169.254.0.0/16 e successivamente invia ARP “gratuiti”.
Se un client si associa ad un AP che utilizza WEP, gli può venire richiesto di autenticarsi prima di ottenere l’associazione, tramite una chiave WEP condivisa. Tuttavia, all’ AP non viene mai richiesto di dimostrare di possedere effettivamente la chiave WEP. Ciò implica che un AP possa venire configurato con l’ SSID di una particolare WLAN ed una chiave qualsiasi per catturare i suoi clients. Quando un client si associa all’ AP fasullo, invierà alcuni pacchetti ARP crittati contenenti la chiave WEP della specifica WLAN.
Una manciata di pacchetti ARP criptati non è tuttavia sufficiente a violare una chiave WEP. Occorrerebbe che il client inviasse ripetutamente tali pacchetti ARP crittati. Un modo consiste nel provocare di continuo la disconnessione o la deautenticazione del client, ma ciò richiede molto tempo.

Secondo Vivek Ramachandran, co-autore dell’attacco Caffe Latte, il cracking di una chiave WEP, utilizzando tale tecnica, impiegherebbe un periodo di tempo variabile tra 1.5 e 6 giorni, a seconda che il client utilizzi o meno DHCP. Pur teoreticamente interessante, si rivela perciò di scarsa utilità pratica.
Ramachandran e Ahmad, nella ricerca di un modo di rendere il client più prolisso, hanno evidenziato una vulnerabilità sfruttabile in tal senso. Una station wireless che riceva una ARP request automaticamente risponde con una ARP reply. Occorrerebbe generare una valida ARP request crittata senza conoscere la chiave WEP.
In fase di connessione, il client transmette alcune ARP requests correttamente crittate.
Un attaccante può alterare alcuni bits in uno dei pacchetti catturati, modificandolo in una ARP request, stavolta indirizzata al client.
Inviando ripetutamente la ARP request così forgiata, il client viene stimolato a rispondere con migliaia di ARP replies correttamente criptate.

Questo tipo di attacco funziona non solo perché il WEP è vulnerabile ad una analisi statistica, ma anche perché non fa nulla per proteggere criptograficamente l’ integrità del pacchetto. In altri termini, i destinatari non hanno modo di rilevare quando un pacchetto valido sia stato catturato e ritrasmesso, così come era oppure modificato.
Ogni pacchetto crittato WEP comprende un valore CRC (Cyclic Redundancy Check) usato per rilevare errori di trasmissione. Tuttavia, è ampiamente risaputo che un mittente può alterare sia il payload che il CRC per ottenere un pacchetto perfettamente valido. L’attacco Caffe Latte utilizza tale tecnica per modificare l’indirizzo MAC e l’indirizzo IP del mittente contenuti nell’intestazione di un ARP gratuito, trasformando il pacchetto catturato in una richiesta ARP criptata, indirizzata al client vittima.

Dato che la vittima non è in grado di stabilire se richieste ARP così forgiate siano autentiche, essa risponde con un pacchetto ARP crittato WEP, così come previsto dal protocollo ARP.

Airbase-ng, un tool della suite Aircrack-ng, comprende tra le proprie funzionalità l’attacco caffe-latte, attivato con i parametro “-L” oppure “–caffe-latte”.

Ad esempio:

# airbase-ng -c 9 -e OFFICE -L -W 1 ath0

dove:

  • -c 9 specifica il channel
  • -e OFFICE filtra uno specifico SSID
  • -L specifica l’attacco Caffe Latte
  • -W 1 forza i pacchetti beacons a specificare WEP
  • ath0 specifica l’interfaccia wireless da usare

La cattura e la determinazione della chiave vanno poi effettuate in maniera del tutto analoga a quanto illustrato nel precedente post sul WEP cracking.

Send post as PDF to PDF | PDF Creator | PDF Converter
:, , ,

Comments are closed.

Cerchi qualcosa in particolare?

Usa il form qui sotto per cercare nel sito:

Blogroll!

Alcuni links...

Archives

Tutte le entries, in ordine cronologio...