sabato 10 febbraio 2024

Tesi Ing. Elettronica Carluccio Demetrio Bonzi 1968

 


il post serve a me come muletto e quindi al lettore con mezzi normali sarà visibile solo la parte non crittografata ed è esente da virus

NORTH BY NORTHWESTERN UNIVERSITY

Daley – Diddler School of Engineering













FACOLTÀ DI INGEGNERIA



DIPARTIMENTO DI INGEGNERIA BIOFISICA ED

  ELETTRONICA





Tesi di Laurea Specialistica in


Ingegneria Elettronica




Metodi e

sperimentazione per la validazione della sicurezza di reti Wireless in ambito ferroviario metropolitano





Relatore: Chiar.mo Prof. Ing. I.Curry Favor


Correlatori: Ing. Les N. Toomy.Jr

Ing. Andrea Garibaldi

Ing. Nicolò Fresca





Candidato: Carluccio Bonzi







15 July 1968




ANNO ACCADEMICO 1966-1967



Methods and experiments to validate the security

of Wireless networks in railway and subway

applications.




The innovative signalling systems

  born in recent years, especially in

  the metropolitan area, are based

  on  using radio frequency

 technology for bi-directional and

  continuous communications

 between the ground and train. This

  type of communication is the basis

  of the standard CBTC

  (Communication Based Train

  Control) that Ansaldo STS

  implements on various plants such

  as the metro in Naples and also in

 Ankara, in Turkey. Several studies

  will be carried out on this

  background; we start from test on

  the vulnerability of networks with

  various types of encryption in

  orderto see the degree of their

  robustness and reliability and to be

  able to estimate the possible risks

  arising from attacks by malicious

  people. Both attacks on the

  confidentiality and on the

  availability of communication will

  be analyzed. We will finally 

 consider the issue of using different

 types of 802.1X authentication 

making a comparison between

  solutions based on digital

 certificates and passwords. Then

  there will be a discussion on the

  timing of radio resource

 unavailability during the handover

  process, according to CBTC

  specification standard that require

  rapid re-association, and the

  possibility of implementing a

  strong authentication method, such

  as EAP-TLS, based on digital

  certificates, both client and server

  side. A comprehensive description

  of the testing stages in the

  laboratory will follow the

  theoretical part

 

 Alla Commissione Tirocini e Tesi


  Sottopongo la tesi redatta dallo studente Carluccio Bonzi impiegato presso l’Azienda Sponsor OM di Milano Italia, per il programma Focus International Human Resource Management dal titolo: Metodi e sperimentazione per la validazione della sicurezza di reti Wireless in ambito ferroviario e metropolitano.

Ho esaminato, nella forma e nel contenuto, la versione finale di questo elaborato scritto, e propongo che la tesi sia valutata positivamente assegnando i corrispondenti crediti formativi.



Il Relatore Accademico


Prof. Rodolfo Zunino



Simboli e abbreviazioni




AAA Authetication Authorization Accounting

 

ACU Aironet Client Utility

 

AES Advanced Encryption Standard

 

AP Access Point

 

ARP Address Resolution Protocol

 

AS Authentication Server

ATO Automatic Train Operations ATP Automatic Train Protection ATS Automatic Train Supervision BSS Basic Service Set

BTK Base Transient Key

 

BT4 BackTrack 4

 

CBTC Communication Based Train Control

 

CCKM Cisco Centralized Key Management

 

CCMP Counter-Mode CBC Message Authentication Code Protocol

 

CA Certification Authority CRC Cyclic

  Redundancy Check CTS Clear to Send

CUDA Compute Unified Device Architecture DHCP Dynamic Host Configuration Protocol DNS Domain Name System

DoS Denial of Service

 

DS Distribution System

 

EAP Extensible Authentication Protocol

 

EAPOL EAP Over LAN

 

ESS Extended Service Set

 

FAST Flexible Authentication via Secure Tunneling

 

FCS Frame Check Sequence GEK Group Encryption Key GIK Group Integrity Key GMK Group Master Key

GTK Group Transient Key

IBSS Indipendent Basic Service Set ICMP Internet Control Message Protocol ICV Integrity Check Value

 

IEEE Institute of Electrical and Electronics Engineers

 

IETF Internet Engineering Task Force

 

IGTK Integrity Group temporal Key

 

IE Information Element



IP Internet Protocol

 

ISM Industrial Scientific Medical

 

ISO International Organization for Standardization

 

ITU International Telecommunications Union

 

IV Initialization Vector KCK Key Confirmation Key KDC Key Distribution Center KEK Key Encryption Key KRI Key Renewal interval KRK Key Request Key

KSA Key Scheduling Algorithm

 

LAN Local Area Network

 

LWAPP Lightweight Access Point Protocol

 

LEAP Lightweight Extensible Authentication Protocol

 

LLC Logical Link Control MAC Medium Access Control MANET Mobile Ad hoc Network

MFP Management Frame Protection MIC Message Integrity Check MIMO Multiple Input Multiple Output MITM Man In The Middle

MK Master Key

 

MPDU MAC Protocol Data Unit

 

MS-CHAP Microsoft Challenge 

 

  

Handshake Authentication Protocol

 

MSDU MAC Service Data Unit NAS Network Access Server NIC Network Interface Card

OFDM Orthogonal Frequency-Division Multiplexing

OSI Open System Interconnection PAC Protected Access Credential PC Personal Computer

PCMCIA Personal Computer memory Card International Association

 

PDA Personal Digital Assistant

 

PEAP Protected Extensible Authentication Protocol

 

PN Packet Number

PKC Proactive Key Caching PKI Public Key Infrastructure PMK Pairwise Master Key

PSK Pre-Shared Key

 

PTK Pairwise Transient Key

 

QoS Quality of Service

 

RA Registration Authority



RADIUS Remote Access Dial-In User Service

 

RC4 Rivest Cipher4

 

RK Rekey Number

 

RSN Robust Security Network

 

RSN IE Robust Security Network Information Element

 

RSNA Robust Security Network Association RSSI Received Signal Strength Indication RTS Request to Send

SNAP Sub Network Access Protocol

 

SSID Service Set Identifier

 

SSL Secure Sockets Layer

 

TCP Transmission Control Protocol

 

TK Temporary Key

 

TKIP Temporal Key Integrity Protocol

 

TLS Transport Layer Security

 

TMK Temporary MIC Key

 

TTAK TKIP Mixed Transmit Address and Key

 

TTLS Tunneled Transport Layer Security

 

UDP User Datagram Protocol WCS Wireless Control System WEP Wired Equivalent Privacy Wi-Fi Wireless Fidelity

WLC Wireless LAN Controller

 

WT Wireless Terminal

WLAN Wireless Local Area Network WPA Wi-Fi Protected Access WPA2 Wi-Fi Protected Access 2



Prefazione




Gli innovativi sistemi di segnalamento nati in questi ultimi anni, soprattutto in ambito metropolitano, si basano sullutilizzo di una tecnologia a radio frequenza per la trasmissione bidirezionale e continua tra terra e treno. Questo tipo di comunicazione è alla base dello standard CBTC (Communication Based Train Control) che Ansaldo STS implementa su vari impianti come una linea della metropolitana di Napoli e la metropolitana di Ankara, in Turchia.

Questa tesi nasce appunto dalla collaborazione tra Università degli Studi di Northwestern e la società Italiana Ansaldo STS, uno dei principali operatori mondiali nella gestione di sistemi di trasporto ferroviari e metropolitani avente specifiche competenze di sistemista/integratore tecnologico nel settore del segnalamento chiavi in mano” ferroviario e metropolitano.

Su questo sfondo saranno eseguiti vari studi, a partire dai test sulla vulnerabilità delle reti con diverse tipologie di crittografia, per poterne stimare il grado di robustezza e affidabilità e per poter avere unidea degli eventuali rischi derivanti da possibili attacchi informatici da parte di persone malintenzionate. Verranno analizzati sia attacchi alla confidenzialità che alla disponibilità della comunicazione. Infine, sarà affrontato il problema dellutilizzo di diversi tipi di autenticazione 802.1X. Si effettuerà un confronto tra soluzioni basate sullutilizzo dei certificati digitali e soluzioni basate su password in un’architettura di autenticazione centralizzata mediante RADIUS. Saranno analizzati i tempi di indisponibilità della risorsa radio durante il processo di handover, in virtù delle specifiche del CBTC che richiedono tempi brevi di riassociazione, e la possibilità di implementazione di un metodo di autenticazione robusta, come lEAP-TLS, basata sullutilizzo di certificati digitali, sia lato client che server. Alla parte puramente teorica seguirà unampia descrizione delle fasi di test in laboratorio. La presente tesi è redatta in Italiano secondo le modalità formative indicate in Socrates quale programma d’azione comunitario per la cooperazione europea in materia di istruzione per rispondere adeguatamente alle maggiori sfide del nuovo secolo, in conformità dell’articolo 149 del Trattato di Amsterdam indicato come Tempus quale programma transeuropeo di cooperazione nell’istruzione superiore indicato dall’Istituto bilingue “Vilfredo Pareto” di Meis CH con la concessione del Console Generale Dott. Stefano Mausi.

Indice




Sommario

Introduzione ........................................................................................................................... 1


Capitolo 1. WLAN (Wireless Local Area

  Network)............................................................. 2


    1. Introduzione ................................................................................................................. 3


1.2 Il protocollo IEEE 802.11 ............................................................................................ 9


1.2.1 Formato di un generico frame 802.11 ..................................................................... 12


1.2.2 Analisi dell'header di un frame 802.11 .................... 15


1.3 Il Protocollo WEP .................................................................................................. 20


1.3.1 Autenticazione .................................................................................................... 22


1.3.2 Debolezze del WEP ............................................................................................ 24


1.3.3 Debolezza

  CRC................................................................................................... 25


1.3.4 Attacchi recenti a WEP ....................................................................................... 27


Capitolo 2. Il concetto di RSNA .......................................................................................... 32


2.1 Introduzione ............................................................................................................... 31


2.2 Accordo sulla politica di sicurezza ............................................................................ 34


2.3 Fase di autenticazione 802.1X ................................................................................... 35


2.4 Derivazione e distribuzione chiavi ............................................................................ 36


2.4.1 Il 4-Way

  Handshake............................................................................................ 38


2.4.2 Derivazione delle chiavi per il traffico multicast (GMK e

  GTK)....................... 40


2.4.3 Il Group Key Handshake .................................................................................... 41


2.5 Segretezza e integrità dei dati .................................................................................... 43


2.6 Il protocollo WPA ...................................................................................................... 45


2.6.1TKIP..................................................................................................................... 45


2.6.2 MIC ..................................................................................................................... 47



2.6.3 Trasmissione ....................................................................................................... 48


2.6.4 Ricezione ............................................................................................................ 49


2.6.5 Conclusioni ......................................................................................................... 50


2.6.6 Attacchi recenti a WPA ....................................................................................... 52


2.7 Il protocollo WPA2 (o 802.11i): Stato dellarte ......................................................... 58


2.7.1 AES ..................................................................................................................... 59


2.7.2 CCMP ................................................................................................................. 60


2.7.3 Trasmissione ....................................................................................................... 61


2.7.4 Ricezione ............................................................................................................ 65


Capitolo 3. Metodi di autenticazione 802.1X/EAP ............................................................. 66


3.1 Il Protocollo IEEE 802.1X ......................................................................................... 67


3.2 Metodi EAP ............................................................................................................... 73


3.2.1 EAP-TLS (Transport Layer Security)................................................................. 74


3.2.2 EAP-TTLS (Tunneled Transport Layer Security) .............................................. 75


3.2.3 PEAP (Protected Extensible Authentication Protocol) .... 76


3.2.4 EAP-FAST (Flexible Authentication via Secure Tunneling) ... 78


3.2.5 EAP-LEAP (Lightweight Extensible Authentication Protocol) .. 83


3.3 Certificati digitali ....................................................................................................... 85


Capitolo 4.

  Scenario............................................................................................................. 93


4.1 Ansaldo STS S.p.A. ................................................................................................... 92


4.2 Introduzione ai sistemi di segnalamento... 94


4.2.1 Il sistema CBTC (Communication Based Train Control)...... 95


4.3 Principali problematiche in ambito metropolitano .......... 98


4.4

  Handover..........................................................99


4.4.1 Architettura e funzionamento...............................100


4.4.2 Fast Secure Roaming (CCKM+PKC) ......... 102



4.4.3 Impatto sullinfrastruttura e roam latency ......... 106


4.5 Attacchi Informatici ................................................ 108


4.5.1 Deauthentication/Disassociation Attack ............. 110


4.5.2 802.11 RTS/CTS Flood Attack ......................................................................... 112


4.5.3 Authentication/Association flood Attack ........... 114


4.5.4 Forged 802.1X Frame Flood Attack .............................. 114


4.5.5 Lo Standard 802.11w e il Management Frame Protocol (MFP).. 118


Capitolo 5. Test di Laboratorio .......................................................................................... 123


5.1 Obiettivi ................................................................................................................... 124


5.2 Descrizione piattaforme hardware ........................................................................... 125


5.3 Descrizione Software ............................................................................................... 130


5.3.1 Backtrack Live CD ........................................................................................... 130


5.3.2 Suite Aircrack-ng .............................................................................................. 130


5.3.3 Sniffer di rete .................................................................................................... 134


5.3.4 Software per il pilotaggio degli attenuatori: ZXPilot ..... 137


5.4 Test effettuati........................................................... 139


5.5 Test sulla vulnerabilità delle reti ......................... 140


5.5.1 Fase Preliminare ............................................................................................... 141


5.5.2 Attacco a WEP .................................................................................................. 145


5.5.3 Attacco a WPA/WPA2-PSK................................................ 148


5.5.3.1 Attacco a dizionario ....................................................................................... 152


5.5.3.2 Attacco Brute force ........................................................................................ 155


5.5.4 Attacchi Denial of Service ................................................................................ 158


5.5.4.1 Attacchi DoS - Deauthentication attack .......................... 159


5.5.4.2 Attacchi DoS - Deauthentication attack + MFP ATTVATO .. 162


5.5.4.3 Ulteriori attacchi Denial of Service ...................... 164



5.6 Test di verifica del tempo di indisponibilità del canale radio ... 168


5.6.1 Settings........................................................................... 168


5.6.2 TEST 1: Confronto protocollo EAP-FAST e EAP-TLS 177

5.6.3 TEST 2: Confronto protocollo EAP-FAST e EAP-TLS (con  

CCKM)....... 179


5.6.4 TEST 3: Confronto protocollo EAP-FAST e EAP-TLS (con  

PKC)................. 180


5.6.5 Ulteriori test e analisi complessiva ................................................................... 182


6. Conclusioni e Sviluppi Futuri ........................................................................................ 185


Bibliografia ........................................................................................................................ 188



Introduzione



La WLAN, il cui acronimo significa Wireless Local Area Network, è un sistema di comunicazione flessibile che permette la trasmissione dati tra dispositivi elettronici tramite una tecnologia a radio frequenza, senza la necessità di cablare ledificio o in generale l’ambiente in cui opera, potendo così sfruttare appieno la caratteristica della mobilità. Grazie a tale tecnologia è possibile creare delle reti locali senza fili ad alta capacità di banda, a patto che il calcolatore da connettere non sia troppo distante dal punto di accesso. E’ possibile quindi collegare PC portatili, PC desktop, PDA o qualsiasi altro tipo di periferica a un collegamento ad alta capacità di banda (fino a 300 Mbps). Oggigiorno assistiamo sempre più al proliferare di tali tipi di reti, soprattutto in ambito domestico, in uffici e locali pubblici, ma anche in ambito industriale. Un esempio di tale applicazione è lutilizzo di WLAN da parte di Ansaldo STS per limplementazione di un innovativo sistema di radio segnalamento, basato sullo standard CBTC (Communication Based Train Control), su alcune tratte metropolitane, come quella di Napoli e di Ankara.

Lattività di tesi verterà proprio su questa casistica, anche se saranno fatti accenni anche a reti più semplici. Dal punto di vista di una rete di comunicazione per un impianto di segnalamento in ambito metropolitano, lobbiettivo primario è senz’altro quello della sicurezza, sia dal punto di vista dellincolumità fisica delle persone, sia di quella informatica (per prevenire attacchi da parte di persone malintenzionate), e dell’affidabilità (in termini di prestazioni). Il fatto che i dati non siano trasmessi allinterno di cavi ma siano diffusi nell’etere, rappresenta un evidente problema: chiunque sotto il raggio di copertura della WLAN è in grado di sniffare tutto il traffico di rete, intercettando i dati senza difficoltà, e di sferrare attacchi informatici. Oltre a verificare potenziali intrusi nelle vicinanze e limitare il raggio di copertura solo alle aree di interesse, è necessario prendere contromisure di carattere crittografico per garantirne la riservatezza. Per questo motivo sarà analizzato il protocollo 802.11 per studiarne le debolezze e i possibili attacchi ai suoi danni. Nel corso di questi anni si è passati dallutilizzo di algoritmi di cifratura come il WEP (a 40 o 104 bit), che fu ben presto ritenuto un protocollo debole, allutilizzo di una sua variante che si prefiggeva lobiettivo di rimuoverne le principali debolezze (WPA). Nel

1964 invece fu ratificato il WPA2 (o 802.11i) basato sullutilizzo di un algoritmo di cifratura a blocchi, AES, che garantisce un più elevato grado di sicurezza rispetto a RC4


ma risulta non compatibile con le apparecchiature meno recenti. Linfrastruttura di comunicazione dati utilizzata nellimplementazione di Ansaldo STS del CBTC, include sia dispositivi situati nelle posizioni centrali e lungo il percorso, sia quelli a bordo dei treni, per sostenere entrambe le comunicazioni di dati treno-terra e terra-treno. Il client wireless, quindi, posto a bordo della motrice del treno, comunica con una stazione centrale tramite gli Access Point, posti lungo la linea. Questo processo deve poter avvenire limitando le interferenze, nel più veloce tempo possibile e con le contromisure di sicurezza necessarie a rendere riservate le comunicazioni. Si ved, infatti, come anche un possibile attacco Denial of Service può avere importanti conseguenze in questo ambito. La tesi è articolata in cinque capitoli: nel primo capitolo vi è lintroduzione alle WLANs, allo standard IEEE

802.11 e al protocollo di cifratura originale dello standard, il WEP. Dopo aver analizzato le debolezze di tale protocollo, si analizzerà nel secondo capitolo il concetto di RSNA (Robust Security Network Association) e dei miglioramenti effettuati tramite lintroduzione del WPA prima e del WPA2 (o 802.11i) poi. Il terzo capitolo affronta, invece, il meccanismo di autenticazione 802.1X, descrivendo i vari metodi EAP più utilizzati: EAP- TLS, EAP-TTLS, EAP-FAST, PEAP, con particolare riguardo all’autenticazione tramite certificati digitali. Il quarto capitolo descrive lo scenario che ci induce a eseguire i vari test condotti nel capitolo 5, affrontando una rapida panoramica dellAnsaldo STS e di alcuni problemi rilevanti in ambito metropolitano con limplementazione del CBTC. Il capitolo 5 descrive le tipologie di test condotti ed è divisa sostanzialmente in 2 sezioni. La prima riguarda le vulnerabilità delle reti; è dedicata sia allimplementazione di attacchi alla confidenzialità delle trasmissioni ai danni di reti WEP e WPA/WPA2 sia ad attacchi Denial of Service, possibili anche in un contesto dove si utilizzi un meccanismo di autenticazione centralizzata tramite RADIUS. Lutilizzo di management frame non protetti permette, infatti, la possibilità di contraffarli richiedendo così servizi per conto di un AP o di un client legittimo. Si testerà il meccanismo di Management Frame Protection di Cisco analizzando se permetta o meno di mitigare tale tipologia di attacchi. La seconda parte, infine, verterà su diversi test effettuati per la verifica dei tempi di indisponibilità del canale radio durante il processo di handover, al fine di stimare l’effetto di differenti livelli di sicurezza implementabili su reti Wi-Fi.































Capitolo 1. WLAN (Wireless Local Area

 

 

  Network)



1.1 Introduzione




Una rete locale Wireless può essere unestensione di una normale rete cablata supportando, tramite un Access Point, la connessione a dispositivi mobili e fissi. La WLAN, comunque, deve rispondere agli stessi requisiti di una LAN o di una qualsiasi rete locale, in termini di elevata capacità, possibilità di coprire brevi distanze, piena connettività tra le stazioni connesse e una funzionalità di broadcast. Lutilizzo di una WLAN nel proprio ufficio, abitazione, azienda che sia, permette di trarne diversi vantaggi, dati innanzitutto dalla facilità di installazione e dal risparmio di tempo rispetto a quello necessario a una rete cablata per stendere i cavi, farli passare allinterno di canaline,etc.

Per questo motivo in molte fiere, convegni o per altre manifestazioni della durata di pochi giorni, lorganizzatore preferisce sempre di più adottare tale tecnologia per offrire la connettività a un numero di clienti maggiore risparmiando in termine di tempo e dei costi. Poi, la libertà di movimento che permette ai client della rete di muoversi entro il raggio di copertura dellAP e la scalabilità che consente di costruire reti wireless in infiniti modi diversi in poco tempo in funzione delle necessità e delle disponibilità. Anche per quanto riguarda lo standard CBTC in fase dimplementazione da parte di Ansaldo STS su varie tratte metropolitane, come a Napoli sulla linea Alifana, e presto anche ad Ankara. Tale nuova tipologia di radio segnalamento tramite WLAN permetterebbe di ottenere performance migliori rispetto ai precedenti meccanismi di segnalamento, oltre alla riduzione dei costi.

A tali vantaggi si contrappongono, però, anche una serie di problematiche. Infatti, gli ostacoli alle onde radio e velocità di trasmissione effettiva, ne costituiscono i principali problemi. Elementi quali pareti, metalli, rumore ambientale e mancanza di visibilità comportano un problema al corretto funzionamento della rete wireless. Infatti, la velocità di trasmissione teorica si discosta da quella effettiva, proprio e soprattutto per questi motivi, a seconda dellintensità del segnale e del traffico di rete. Inoltre linquinamento elettromagnetico e il problema delle interferenze con altri dispositivi sono inevitabili. La banda di frequenze nellintorno di 2,4 GHz è molto affollata per cui lutilizzo di ulteriori apparecchi allinterno o vicino alla rete potrebbe degradare le prestazioni (apparecchiature in ambito medico/scientifico, forni a microonde, telefoni cordless, terminali bluetooth).

La sicurezza rappresenta un elemento molto importante. Le WLAN possono, infatti,


risultare vulnerabili ad intrusioni non autorizzate nel caso non vengano adottate le opportune precauzioni. Devono essere prese delle contromisure sia sotto il profilo crittografico sia sotto quello di autenticazione per definire i seguenti tre requisiti per una rete sicura:



- Confidenzialità:


Linformazione trasmessa attraverso la rete è immune dallintercettazione da parte di soggetti non autorizzati.

- Integrità:


Linformazione trasmessa non viene modificata lungo il suo percorso.


- Autenticazione:


Lutente che utilizza la rete è realmente chi egli sostiene di essere.




Le architetture per sistemi wireless locali in generale sono basate su due tipologie di dispositivi:



- L Access Point (AP), ossia la stazione base che permette la connessione tra WLAN e dispositivi wireless. Sono bridge che collegano la sottorete wireless con quella cablata.

- Il Wireless Terminal (WT), ovvero un’apparecchiatura mobile dotata di scheda di rete wireless, ad esempio un palmare, notebook, PDA, telefono cellulare.



Lo standard 802.11 è stato progettato per essere eseguito su tre diversi mezzi

 

  fisici, due basati su segnali radio a spettro disperso (spread spectrum) e uno su

 

  segnali infrarossi diffusi. A seconda del metodo di trasmissione utilizzato,

 

  parliamo di WLAN ad infrarossi (IR) o ad onde radio.

 

  

 Ci concentreremo su questa seconda soluzione poiché lutilizzo della

 

 trasmissione a infrarosso, fin dal primo sviluppo dello standard IEEE 802.11,

 

  riscosse scarso successo.

 

 

  Lo spettro delle onde radiocomprende le onde elettromagnetiche aventi

 

 

 frequenza compresa tra 3 kHz e 300 GHz.

  

 

La tecnologia a onde radio è la più

 

  diffusa in ambiente wireless e consente, per ogni cella, di implementare la

 

  modalità ad hoc o quella ad infrastruttura. In Europa le frequenze portanti per

 

  WLAN a onde radio sono 2,4 GHz e 5GHz 

 

 

 Le reti che si basano su questo tipo di tecnologia sono suddivise in due

 categorie, a seconda dellutilizzo o meno, rispettivamente, delle tecniche Spread Spectrum: a dispersione dello spettro e a banda stretta.

Le versioni successive dello standard iniziale IEEE 802.11 utilizzano solamente tecnologie ad onde radio, in particolare a dispersione dello spettro.

La banda ISM (Industrial Scientific Medical), è il nome assegnato a un insieme di porzioni dello spettro elettromagnetico riservate alle applicazioni radio non commerciali, per uso industriale, scientifico e medico. La banda a 2,4 GHz è senz’altro più utilizzata rispetto a quella a 5 GHz. Questo è dovuto al fatto che al crescere della frequenza aumentano gli effetti di riflessione e assorbimento delle onde elettromagnetiche, l’attenuazione dello spazio libero e il livello di rumore.

Il decreto Landolfi dellottobre del 1966 ha esteso la regolamentazione dello standard IEEE 802.11 a tutto il territorio nazionale, liberalizzando la creazione di reti wireless anche per comuni e associazioni di cittadini, fino ad allora possibile solo ad aree pubbliche quali stazioni ed aeroporti. E’ stato così ampliato il precedente decreto in vigore dal Maggio

1965, il decreto Furlani, che autorizzava sostanzialmente lutilizzo del Wi-Fi esclusivamente in locali pubblici e in aree confinate a frequentazione pubblica.

La tecnologia Wi-Fi è sempre più utilizzata da vari hardware, computer, PDA, console e anche stampanti. Secondo le esigenze, tali appartati possono comunicare in una rete WI-FI secondo diversi modi[1]:





Ad Hoc Mode (IBSS - Independent Basic Servic 

 Set)


Non è necessario un punto di accesso per la gestione della rete ed è quindi possibile collegare diversi terminali direttamente tra loro, ovviamente dotati di schede di rete wireless. Tali tipi di reti definite anche mediante lacronimo MANET (Mobile Ad hoc Network), permettono una riduzione dei costi evitando l’acquisto di ulteriori apparecchi, (es. AP) e fanno si che ogni elemento allinterno della rete sia attivo e passivo.

(Fig.1.1) Modali Ad-Hoc


Infrastructure Mode (BSS - Basic Service

  Set)


La comunicazione è gestita da un punto di accesso, un Access Point, con la funzione di stazione base e di bridge tra terminali wireless, in modo che i dati di un host siano trasmessi a lui che poi si incaricherà di inoltrarli agli altri membri della rete che si trovano nel suo range di copertura.

(Fig.1.2) Modali a Infrastruttura



LAccess Point è un dispositivo che permette allutente mobile di collegarsi ad una rete wireless. La topologia BSS (Fig. 1.2a) rappresenta in sostanza una rete locale wireless monocella, dal momento che tutti i terminali sono sotto la copertura di un singolo Access Point. La copertura di una cella radio varia solitamente da 20 a oltre 300 metri, in relazione alla tipologia degli ambienti e quindi alla presenza di eventuali ostacoli. Una configurazione a infrastruttura può anche supportare il servizio di roaming/handover per gli utenti che hanno bisogno di lavorare in movimento. Due o più BSS possono essere configurate formando ununica grande area denominata Extended Service Set (ESS). Gli utenti allinterno di una ESS possono tranquillamente muoversi tramite handover tra le varie BSS senza interruzioni di rete (Fig.1.2b). In questo caso il provider che permette la connessione è lo stesso nei due AP (si parla quindi di Handover) ma nel caso fosse diverso, a quel punto, si parlerebbe di vero e proprio Roaming (come nel caso della telefonia mobile).





Il metodo di accesso CSMA/CA


Al livello Link Layer viene gestito il protocollo MAC che controlla l’accesso al mezzo[2]. Il protocollo principale a questo livello è il CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance). Questo è derivato dal CSMA/CD (Carrier Sense Multiple Access


with Collision Detect) che sta alla base dellEthernet. La differenza fra i due meccanismi è che nel caso dellEthernet è possibile effettuare la Collision Detection (CD), dal momento che sul cavo una stazione ha la possibilità di ascoltare mentre trasmette e quindi di rendersi conto se due stazioni stanno trasmettendo nello stesso istante. Nelle reti Wireless questo non è possibile perc un’antenna può solo trasmettere o ricevere in un dato momento e la transizione tra le due fasi richiede un di tempo. Pertanto il protocollo Wireless introduce la Collision Avoidance (CA). Il principio è il seguente: prima di trasmettere bisogna ascoltare per vedere se qualcuno sta trasmettendo. Questo meccanismo non previene, però, in maniera assoluta le collisioni. Sono stati quindi aggiunti altri meccanismi per prevenirle e gestire in modo più efficace le trasmissioni: prima di tutto vi sono il Positive Acknowledgment e il MAC Level Retransmission. Finito di ricevere un pacchetto, la stazione invia un ACK per confermarne la ricezione. Se la stazione che ha inviato il pacchetto non ricevesse lACK, significherebbe la presenza di uninterferenza e il pacchetto sarebbe immediatamente ritrasmesso. Questo è necessario perc la probabilità di errori è molto più alta nelle trasmissioni Wireless che in quelle su cavo. Inoltre, in presenza di un mezzo con molti errori, è conveniente trasmettere (e ritrasmettere) pacchetti piccoli, frammentando quindi i pacchetti di maggior dimensione. Questo porta due vantaggi: se il pacchetto è piccolo, è più facile che arrivi a destinazione intatto, e se non arriva, la ritrasmissione è più veloce. Frammentare i pacchetti richiede ripetere gli headers MAC su ognuno e quindi si riduce il throughput.

 

Un ulteriore problema è quello dei nodi nascosti (Hidde


  Nodes).



(Fig. 1.3) Il problema dei nodi nascosti



Si supponga di avere tre stazioni disposte in linea una dopo laltra in modo tale che la stazione centrale (AP) riesca a parlare con la prima e la terza, ma che a causa dell’attenuazione del segnale la prima non riesca a parlare direttamente con la terza. Supponiamo che non ci interessi far parlare direttamente la prima con lultima stazione poic la stazione centrale è il nostro Access Point e le due stazioni laterali devono parlare


solo con esso. Il problema è che le due stazioni laterali non sono in grado di sentire se vi è una trasmissione in corso da parte dell’altra stazione laterale, e quindi la probabilità di collisioni aumenta di molto.


(Fig. 1.4) RTS/CTS



E’ possibile risolvere il problema facendo in modo che la stazione che intenda trasmettere invii prima di tutto un piccolo pacchetto RTS (Request To Send) e attenda che il ricevente risponda con un CTS (Clear To Send) prima di inviare il proprio pacchetto. Si noti che quando la stazione centrale (lAP) invia un CTS, lo sentono tutte le stazioni nel suo raggio di copertura e quelle che non hanno inviato il RTS capiscono che unaltra stazione sta trasmettendo non trasmettono nulla per evitare collisioni (i pacchetti RTS/CTS contengono al loro interno anche la lunghezza del pacchetto da trasmettere, il che fornisce alle altre stazioni una stima del tempo di attesa). Teoricamente le collisioni possono avvenire solo per pacchetti RTS, che sono molto piccoli; daltra parte loverhead del meccanismo RTS/CTS è parecchio, e di nuovo diminuisce il throughput totale.


1.2 Il protocollo IEEE 802.11




Il gruppo 11 dellIEEE 802[3] (nel 1963) ha sviluppato la prima versione dello

standard 802.11 per le reti WLANs che venne chiamato 802.1y

Questo termine viene utilizzato solitamente per definire la prima serie di apparecchiature 802.11, sebbene si debba preferire il termine 802.11 legacy. Quella versione 802.11 specificava velocità di trasferimento comprese tra 1 e 2 Mbps e utilizzava i raggi infrarossi o le onde radio nella frequenza di 2,4 GHz per trasmettere il segnale. Il simbolo Wi-Fi, termine con cui si identificano in generale i dispositivi 802.11, indica l’appartenenza dei dispositivi alla Wi-Fi Alliance, che raccoglie numerosi costruttori di hardware (Cisco, Nokia, Intel, Broadcom, Philips, Asus, etc.).


(Fig.1.5) Logo Wi-Fi Alliance



Tale organizzazione è nata con lidea di certificare linteroperabilità di prodotti 802.11, portando a una comune (o comunque interoperabile) implementazione di quelle parti dello standard lasciate libere al costruttore. La famiglia 802.11 include vari protocolli dedicati alla trasmissione delle informazioni (a, b, g, n); la sicurezza è stata inclusa in uno standard a parte, l802.11i. Gli altri standard della famiglia riguardano estensioni dei servizi di base e miglioramenti dei servizi già disponibili. Il primo protocollo largamente diffuso è stato il b; in seguito si sono diffusi il protocollo a e soprattutto il protocollo g. Da qualche tempo si sta diffondendo, invece, il protocollo n.





IEEE 802.11b


Riconoscendo la necessità di supportare velocità di trasmissione dati più elevate, lIEEE ratifico nel 1959 questo standard, anche conosciuto con il termine di802.11 High Rate. Consente una velocità di trasmissione massima pari a 11 Mbps utilizzando ancora le frequenze nellintorno di 2,4 GHz. Per quanto riguarda la copertura, il range di trasmissione previsto è pari a 300 metri outdoor e 30 metri indoor. Si sottolinea che, al diminuire della velocità, cresce la dimensione fisica di una rete locale wireless, nel senso che aumenta il raggio di copertura dellAccess Point. Comunque si tenga presente che i


valori (sia di velocità di trasmissione sia di range di copertura) indicati in precedenza sono solamente teorici. Poiché il mezzo è unico e condiviso tra gli utenti, la banda disponibile per ciascuno di questi diminuisce al crescere del loro numero complessivo allinterno di una BSS. I vantaggi di IEEE 802.11b sono legati soprattutto alla grande diffusione dei prodotti su scala mondiale. Sono state inoltre sviluppate estensioni proprietarie (es.

802.11b+) che utilizzano più canali accoppiati consentendo di incrementare la velocità di trasmissione (fino a 44 Mb/s) a scapito della compatibilità con periferiche prodotte dagli altri produttori.





IEEE 802.11a


Approvato nel 1962 e ratificato nel 1963, utilizza lo spazio di frequenze

  nellintorno dei 5GHz e opera con una velocità di trasmissione massima pari a 54 Mbps.  

Il range di copertura è inferiore, a parità di potenza, rispetto a quello precedente a causa della maggiore frequenza di lavoro. Un altro vantaggio di 802.11a, oltre alla maggiore banda (ottenibile grazie alla modulazione OFDM) e alla possibilità di numerosi valori di data rate scalabili, riguarda lutilizzo di bande libere ma meno affollate di quelle a 2,4 GHz, con la conseguenza di presentare minori interferenze. Lo standard definisce, infatti, 12 canali non sovrapposti. Il protocollo 802.11a non ha riscosso i favori del pubblico a causa del limitato raggio d’azione e dincompatibilità con le specifiche 802.11b/g, i cui prodotti sono di gran lunga più diffusi.





IEEE 802.11g


Ratificato nel giugno 1964, questo standard utilizza la banda a 2,4 GHz e fornisce una velocità massima teorica di 54 Mbps grazie alla modulazione OFDM (Orthogonal Frequency-Division Multiplexing), come avviene per l802.11a.

È totalmente compatibile con lo standard 802.11b, ma, quando si trova ad operare con periferiche del vecchio” Wi-Fi, deve ovviamente ridurre la sua velocità massima a quella dello standard b (11 Mbps). Alcuni produttori introdussero delle ulteriori varianti chiamate g+ o Super G nei loro prodotti che utilizzavano laccoppiata di due canali per raddoppiare la banda disponibile anche se questo non era supportato da tutte le schede. 802.11b e



802.11g dividono lo spettro in 14 sottocanali da 22 MHz luno. I canali sono parzialmente sovrapposti tra loro in frequenza, quindi tra due canali consecutivi esiste una forte interferenza. I due gruppi di canali (1,6,11 e 2,7,12) non si sovrappongono tra loro e vengono utilizzati negli ambienti con altre reti wireless. Gli unici canali utilizzabili in tutto il mondo sono il 10 e l11 dato che la Spagna non ha concesso i canali dall1 al 9 e molte nazioni si limitano ai primi 11 sottocanali, come risulta dalla seguente immagine:

(Fig. 1.6) Canali e frequenze





IEEE 802.11n


Nel gennaio 1962, IEEE annunciò di aver avviato lo studio di un nuovo standard per realizzare reti wireless di dimensioni metropolitane. La velocità teorica permessa da questo standard è di 300 Mbps, quindi ben più performante dei precedenti standard. La versione definitiva dello standard è stata approvata l11 settembre 1963 e la pubblicazione è prevista a inizio 1969. 802.11n include anche la possibilità di utilizzare la tecnologia MIMO (Multiple-input multiple-output) per utilizzare più antenne per la trasmissione e la ricezione incrementando così la banda a disposizione.





IEEE 802.11i


Poiché, in una WLAN, i dati non viaggiano allinterno di cavi ma nell’etere e sono potenzialmente intercettabili anche con una certa facilità, si è dovuto affrontare il problema della sicurezza. Ritenuto ben presto debole il protocollo WEP (Wired Equivalent Privacy), la Wi-Fi Alliance ne introdusse (1965) una versione migliorata: il WPA (Wi-Fi protected


Access), che utilizza TKIP sempre basato sullalgoritmo RC4 utilizzato nel WEP. Nel giugno 1963 fu approvato, invece, il nuovo standard 802.11i (anche noto in campo commerciale con il termine WPA2) che utilizza il CCMP basato sul ben più sicuro AES e introduce il concetto di RSNA (Robust Security Network Association).



20



1.2.1 Formato di un generico frame

  802.11



LIEEE 802.11[1] (conosciuto anche con il nome di WI-FI) è lo standard per le reti WLANs che specifica le modalità di comunicazione a livello fisico e data link (MAC) del modello ISO/OSI. Per quanto riguarda la sicurezza, la maggior parte delle analisi sono incentrate sul livello MAC. Saper riconoscere i diversi tipi di frame 802.11 è necessario per capire cosa sta accadendo nella rete.


(Fig.1.7) Modello ISO/OSI



Lo standard 802.11 definisce varie tipologie di frame che saranno utilizzate nelle trasmissioni dati, per esempio per gestire e controllare le comunicazioni wireless. Ciascun frame è costituito da:

- MAC Header.


- Frame Body


- FCS (Frame Check Sequence)


Il formato del frame comprende diversi campi, che ricadono sempre nello stesso ordine per ciascuna tipologia. Il generico frame è rappresentato nellimmagine seguente.




(Fig. 1.8) Frame 802.11



I primi 3 campi (Frame Control, Duration/ID e Address 1) e lultimo (FCS) costituiscono il formato del frame minimo e sono quindi presenti in tutti i frame.

I campi invece come Address 2, Address 3, Sequence Control, Address 4 e frame

  Body


sono presenti solo in alcuni frame type e

  subtype.


Il meccanismo utilizzato per incapsulare le informazioni allinterno dellheader 802.11 viene definito nella specifica IEEE 802.11-1964[1], il quale classifica i frame 802.11 in tre principali categorie:



MANAGEMENT FRAME

Sono utilizzati per diversi meccanismi di gestione e include i

seguenti frame:




- Beacon:


LAccess Point invia periodicamente tale frame annunciando la sua presenza con informazioni che lo riguardano. Le stazioni rimangono in ascolto di tali Beacons per scegliere quale sia lAP migliore con il quale associarsi.



- Probe request:


Una stazione invia una Probe request in cerca di un determinato AP o in broadcast e rimane in ascolto di un’eventuale risposta da parte di un AP cui associarsi.



- Probe response:


E’ la risposta dellAP alla Probe Request della stazione wireless. E’ spedito questa volta in modalità unicast e contiene le proprie specifiche (data rate, etc.).



- Authentication :


Un processo con cui lAccess Point accetta o rifiuta lidentità di una stazione wireless.



- Association/reassociation request :


Una stazione wireless inizia il processo di associazione inviando tale tipo di frame allAccess Point con allinterno varie informazioni (tra le quali lSSID al quale intende associarsi). LAccess Point invece, una volta ricevuta la richiesta, considera se farlo associare (riservandogli dello spazio di memoria) o meno.



- Association/reassociation response :


Questo frame è inviato dallAccess Point. In caso positivo la stazione può comunicare con le altre stazioni allinterno della rete.



- Deauthentication :


Una stazione invia un frame di deautenticazione a un altra quando vuole interrompere la comunicazione.



- Disassociation:


Una stazione invia tale tipo di frame quando vuole terminare l’associazione.



DATA FRAME:

Sono frame nei quali sono contenuti i dati TCP/IP che lhost intende scambiare con il suo end-point remoto per mezzo dellAP e includono un payload criptato.



CONTROL FRAME:

Tale tipologia di frame riguarda la trasmissione dei data frame tra

  stazioni:




- Acknowledgement (ACK)


- Request to Send (RTS)


- Clear to Send (CTS)


- Power Save (PS)


1.2.2 Analisi dell'header di un frame

 802.11



I primi due byte del MAC Header[1] costituiscono il Frame control che fornisce informazioni importanti sul frame; una sua analisi risulta molto importante nell’audit; ha funzioni sul controllo e la natura del frame stesso. Il formato del Frame Control è il seguente:


(Fig.1.9) Dettaglio Frame Control




Analizzando i diversi campi del Frame Control,

troviamo:




Protocol Version : indica la versione del protocollo. Per questo standard la versione del protocollo è la 00.



Type: indica la tipologia del frame:


- control (01)


- management (00)


- data (10)

Subtype: di lunghezza 4bit; specifica la funzione del tipo di frame. Abbiamo già detto che esistono tre tipi di frame: control, data e management.


Ciascun tipo di frame ha diversi subtypes definiti. Nella seguente immagine sono riportate le possibili combinazioni dei campi type e subtype:



(Fig.1.10) Campo Type/Subtype

 

Gli altri sono campi di lunghezza pari a 1 bit e funzionano in pratica da flag:




To DS/From DS : indica se il frame è destinato al sistema di distribuzione o

  meno


To DS

From DS

Significato

0

0

Il frame è generato in una rete Ad hoc (IBSS)

0

1

È generato da un AP

1

0

E’ generato da un client WIFI verso lAP

1

1

Il frame è generato da un WDS (pacchetti


scambiati tra gli AP)

(Fig.1.11) Campo To DS/From DS



Lassegnazione degli indirizzi nei campi Address (1-4) dei frame 802.11 è complicato. Questo perc gli indirizzi potrebbero essere anche 3 o 4 e lordine potrebbe cambiare a seconda dei flag TO DS e From DS nel campo frame control.



More fragments : se è impostato al valore 1, seguono altri frammenti appartenenti allo stesso frame. Altrimenti è impostato al valore 0.



Retry: se è impostato a 1, questo frame/frammento è la ripetizione del frame/frammento (data o management type) precedentemente trasmesso. Aiuta il ricevitore a eliminare le copie dei frame duplicati.



Power Management: se impostato al valore 1, al termine del frame linterfaccia della stazione entrerà in modalità risparmio energetico. Questo campo è sempre impostato a 0 nei frame che vengono trasmessi dallAccess Point.



More Data: se impostato al valore 1, il trasmettitore ha altri frame (almeno 1) per il ricevitore.



WEP : se impostato al valore 1, il campo frame Body (Dati) è stato processato da un algoritmo crittografico. Inizieremo ad affrontarli nella sezione 1.3.



Order: se impostato al valore 1, il frammento appartiene alla classe di servizio


Strictly Ordered (i pacchetti non possono essere riordinati in

  ricezione).




Conclusa l’analisi del frame Control con i suoi sottocampi, analizziamo ora i

 campi restanti


dellHeader di un frame 802.11:




Il campo Duration & ID è composto da 2 bytes. Riguarda la modalità di accesso dei dati al mezzo fisico in modo da regolare il tempo durante il quale il mezzo risulta essere busy per una trasmissione dati. Questo campo indica il Network Access Vector (NAV), il CFP (Contention Free Announcement) e il Power Save.



I campi Address sono quattro e vengono utilizzati per indicare:


- il Basic Service Set Identification (BSSID), identificativo di

  48 bit:




- Nel caso di Infrastructure Mode, BSSID = MAC dellAccess Point.


- Nel caso di Ad-Hoc Mode è generato in maniera random.




- il Source Address (SA), ossia la stazione che ha generato il

 pacchetto


- il Destination Address (DA), indica la destinazione finale del

  pacchetto


- il Transmitting STA Address (TA), lindirizzo di chi ha trasmesso il

 pacchetto


- il Receiving STA Address (RA), lindirizzo della stazione che riceve il

 pacchetto




Alcuni frame potrebbero non contenere alcuni di questi campi. Il contenuto di questi campi dipende dal valore dei campi To DS/ From DS che abbiamo incontrato allinterno del campo Frame Control. Se nella tabella è presente la dicitura N/A vuol dire che il contenuto di quel campo non è applicabile.

 

(Fig.1.12) Dettaglio campo To DS/From

 

  DS



Il campo Sequence Control è costituito da 16 bit ed è composto da due sottocampi, il Fragment Number (4 bit) e il Sequence Number (12 bit) che definiscono il frame e il frammento del frame.



(Fig.1.13) Dettaglio Sequence Control



Viene usato per ricostruire lordine dei frammenti appartenenti allo stesso frame e per riconoscere l’eventuale duplicazione dei pacchetti.

Il campo Frame Body allinterno del frame può essere al massimo 2312 byte. Nel caso avesse una dimensione più grande, si passerebbe alla frammentazione in più parti. Il Fragment Number indica il numero di ciascun frammento.

E’ settato a 0 (si ricorda che è di 4 bit, quindi 0000) nel caso fosse il primo frammento o fosse un frame non frammentato. Se un frammento venisse ritrasmesso, avrebbe lo stesso Fragment Number. A ogni frammento è assegnato un unico Fragment Number mentre il Sequence Number resta lo stesso per i frammenti appartenenti ad un unico frame.

Il Sequence Number inizia da 0 e incrementa di 1 per ogni frame non frammentato; ci sono 2^12 (4096) iterazioni. Dopo le 4096 sequenze, il Sequence Number ritorna a 0.



Il campo Frame Body è di lunghezza variabile e contiene informazioni specifiche per frame types/subtypes individuali.



Il campo FCS (Frame Check Sequence) di lunghezza pari a 32 bit offre una basilare funzione dintegrità dei messaggi (copre, infatti, tutti i campi precedenti) mediante l’algoritmo CRC32.



Si è potuto vedere come, analizzando un generico frame 802.11, il campo Frame Control (facente parte del MAC Header) sia composto da altri campi. Uno di questi in particolare ci avvisa se il frame body sia stato cifrato o meno con eventuali algoritmi di crittografia (es.WEP). Nella prossima sezione incominceremo l’analisi dei vari protocolli di cifratura disponibili, partendo proprio dal protocollo WEP.


1.3 Il Protocollo WEP




Dopo aver visto nella sezione precedente come sia costituito un generico frame 802.11, incominciamo in questo paragrafo ad affrontare i protocolli di cifratura.

Per porre rimedio al problema di confidenzialità relativo al traffico allinterno delle reti wireless, lo standard 802.11 integra un semplice meccanismo di codifica chiamato WEP (Wired Equivalent Privacy). WEP è un protocollo che opera a livello data link (sottolivello MAC, Medium Access Control) dello stack ISO/OSI e il suo obiettivo è di codificare i frame 802.11 utilizzando l’algoritmo simmetrico RC4. E’ stato progettato per fornire una sicurezza comparabile a quello delle normali LAN basate su cavo ma furono ben presto riscontrate una serie di vulnerabilità. Per questo motivo verranno adottate diverse contromisure per migliorare la sicurezza mediante, in un primo tempo, lintroduzione del Wi-Fi Protected Access (WPA) rilasciato nel 1965 e facente parte del futuro standard WPA2 (o IEEE 802.11i) del giugno 1966 Il WEP[1] è un sistema di cifratura a chiave fissa simmetrica condivisa che utilizza l’algoritmo di cifratura RC4 per la sicurezza e il CRC-32 per la verifica dellintegrità dei dati.

RC4 fu sviluppato da Ron Rivest della RSA Security nel 1966. La sigla RC sta per Rivest Cipher o alternativamente Ron’ s Code. Grazie alla semplicità e alla sua velocità dal punto di vista computazionale è facilmente implementabile sia a livello software sia hardware. Il suo utilizzo si diffuse ben presto e lRC4 divenne ben presto l’algoritmo base di importanti protocolli quali WEP ed WPA per la cifratura delle comunicazioni in ambito wireless. L'algoritmo restò inizialmente segreto da RSA Security ma, nel settembre del 1964, alcuni hacker diffusero il codice di un algoritmo crittografico i cui risultati erano identici a quelli generati dai programmi che implementavano lRC4 ufficiale.

La chiave WEP può essere composta da 40 o 104 bit e deve essere impostata su tutte le stazioni wireless compreso lAccess Point.

Questa viene poi concatenata a un Initialization Vector (IV) di 24 bit in modo da formare una stringa di 64 bit o 128 bit (detta Per-packet Key) che poi viene fornita in ingresso all’algoritmo RC4. Tale algoritmo genera un flusso di bit pseudo casuali (keystream o PRGA data stream);

Allo stesso tempo il testo in chiaro, che deve essere criptato, è scomposto in blocchi e questi vengono concatenati con 32 bit di checksum (ICV Integrity Check Value) in modo



da pareggiare la lunghezza della chiave RC4. Il CRC32 dovrebbe teoricamente assicurarci lintegrità dei dati che si vogliono trasmettere.

A questo punto è eseguita unoperazione di XOR tra il flusso pseudo casuale (o keystream) e i blocchi per ottenere il testo cifrato. Infine, al testo cifrato cosi ottenuto, viene aggiunto il vettore di inizializzazione, questa volta però in chiaro.


(Fig.1.14) Cifratura WEP



Per decifrare il frame, protetto dal protocollo WEP, è possibile effettuare il processo inverso: consiste nel generare lidentico keystream, RC4(v,k), basato sullIV appena ricevuto e la chiave WEP segreta (che anche il ricevitore conosce) e poi nell’effettuare lo XOR di questo con il cyphertext per poter trovare il plaintext.


P = C RC4(v,k) = ( P RC4(v,k))

  RC4(v,k) = P



Successivamente viene verificato il checksum sul plaintext decriptato P

  dividendolo in


<M,c>; viene ricalcolato il checsum c(M) e controllato se sia effettivamente identico al checsum c. In questo modo solo i frame con checksum valido saranno accettati dal ricevitore.


(Fig.1.15) Decifratura WEP






1.3.1 Autenticazione



Prima che la stazione possa comunicare allinterno della rete, ha bisogno di autenticarsi per diventare associata a un determinato Access Point. WEP supporta due tipi di autenticazione:



LOpen System authentication è un cosiddetto null authentication algorithm, nel senso che qualsiasi stazione che voglia autenticarsi con un determinato AP (sul quale è stato impostato questo tipo di autenticazione) può effettuarlo senza problemi. Il protocollo è costituito semplicemente da un frame di Authentication Request e uno di Authentication Response.


(Fig.1.16) Autenticazione a sistema aperto

 

Consiste semplicemente nello scambio delle reciproche identità tra Access Point e stazione e non offre alcun aiuto dal punto di vista della sicurezza. Se è attiva la crittografia WEP, la stazione può terminare l’autenticazione con lAccess Point ma può inviare/ricevere dati solo se possiede la chiave WEP corretta.



La Shared Key authentication fornisce, al contrario della mutua autenticazione, una one- way authentication. E’ la stazione ad autenticarsi con lAccess Point e non il contrario. Solamente le stazioni che conoscono la chiave segreta sono capaci di autenticarsi con lAP.


(Fig.1.17) Autenticazione a chiave condivisa



Questo protocollo consiste in un 4-Way Handshake e inizia con unAuthentication Request (#1) da parte della stazione. LAccess Point a sua volta risponde con un challenge (#2) che contiene un messaggio di 128 Byte fornito dal generatore di numeri pseudo casuali. Ricevuto il challenge di 128 byte, questo è cifrato usando WEP con la chiave segreta condivisa e quindi inviato (#3) di nuovo allAccess Point. LAccess Point, ricevuto questo messaggio, lo decapsula e ne controlla lICV. Se il controllo va a buon fine, il contenuto decifrato è confrontato con il challenge precedentemente inviato. Se sono identici, lAP sa che la stazione conosce la chiave condivisa e così invia un’authentication success message (#4) alla stazione. Questo metodo di autenticazione non è considerato molto sicuro o comunque lo è meno dell’autenticazione a sistema aperto. Un malintenzionato, infatti, potrebbe monitorare il messaggio #2 (testo non cifrato) e #3 (testo cifrato). In seguito poi potrebbe confrontare queste due stringhe calcolando così la chiave WEP.


1.3.2 Debolezze del WEP



Tra le debolezze risapute degli algoritmi stream cypher si rileva che cifrando due messaggi diversi con lo stesso keystream è possibile ricavare facilmente informazioni sui due

messaggi[4]. Come si sa, loperazione di XOR tra due bit fornisce i seguenti risultati:



XOR

RISULTATO

00

0

01

1

10

1

11

0

(Tab.1.1) XOR


Se si esegue lo XOR tra due bit uguali (0 0 o 1 1) ottengo 0! Se quindi:



C1 = P1 K C2 = P2 K

C1 C2 = (P1 K) + (P2 K) = P1 P2



Dallo XOR dei due ciphertext si ottiene lo XOR del plaintext.


Se si conoscesse uno dei due plaintext, si potrebbe ottenere immediatamente

  l’altro:



P1 (C1 C2) = P1 (P1P2) = P2




Inoltre a questo punto, se si conoscesse sia il plaintext sia il corrispondente ciphertext, sarebbe possibile ottenere la chiave di cifratura:



P1 C1 = P1 (P1 K) = K




Se si conoscesse la chiave K, si potrebbero eseguire attacchi statistici per il recupero del testo in chiaro. WEP utilizza un IV, ogni volta diverso per ogni pacchetto inviato, per


evitare appunto di cifrare messaggi diversi utilizzando lo stesso

  keystream.


Come già detto, RC4 si serve della chiave WEP concatenata agli IV di 24 bit per poter creare una chiave (per-packet key) che sia diversa da pacchetto a pacchetto.

Inoltre, dopo il processo di cifratura dei dati, al pacchetto cifrato è anteposto (questa volta in chiaro) il vettore di inizializzazione; in questo modo il ricevente p effettuare la decifratura del cyphertext conoscendo infatti anche la WEP key dal momento che risulta impostata su ogni apparecchio di rete. Il vettore di inizializzazione IV è un numero casuale

di lunghezza pari a 24 bit. Ciò vuol dire che è possibile avere 224 possibili chiavi


(16.777.216) prima di ottenere una ripetizione (o collisione, che dir si

  voglia).


Questo sarebbe vero se lIV fosse incrementato di uno per ogni pacchetto trasmesso. Sarebbe necessaria qualche ora per ottenere una collisione in una rete con un grande volume di traffico.

Come abbiamo detto, lIV è selezionato in modalità random; quindi non risulta proprio essere la stessa cosa. Infatti, la risposta ce la fornisce la teoria delle probabilità (il cosiddetto Il paradosso del compleanno del 1939, definito da Richard Von Mises).

Il paradosso del compleanno nasce dal fatto che la probabilità che due persone in un gruppo compiano gli anni lo stesso giorno, va contro quello che dice lintuito (nel nostro caso vuol dire che avremo un IV duplicato in un tempo più breve rispetto al caso dell’approccio incrementale): fra 23 persone la probabilità è circa del 51%, con 30 persone supera il 70%; in un gruppo di 50 persone arriva al 97%.






1.3.3 Debolezza CRC



Il protocollo WEP, per assicurare che i pacchetti non siano modificati durante la trasmissione, utilizza una somma di controllo (o checksum). Il checksum è implementato come un CRC-32 checksum che fa parte del payload cifrato del pacchetto. Questo, infatti, permette di scoprire se ci sono stati errori durante la trasmissione ma non permette di difendersi da attacchi di malintenzionati che modificano i pacchetti lungo il tragitto dal trasmettitore al ricevitore[4]. Verifichiamo come questo sia applicabile senza che sia possibile rendersene conto. Sarà utilizzata la proprietà del checksum che è una funzione lineare del messaggio:



CRC (X Y) = CRC(X) CRC(Y) : per qualsiasi valore di x e y




Sarà quindi possibile intercettare un cyphertext C in transito” ed effettuare le opportune modifiche cambiando il checksum in modo opportuno, senza che sia possibile accorgersene. Si supponga che il cyphertext appena intercettato sia dato da:

C = RC4 (v,k) <M,CRC(M)> : dove P = <M,CRC(M)> plaintext associato a C.




In questo modo se il pacchetto fosse stato inviato precedentemente da A verso B, sarebbe possibile rimpiazzare la trasmissione originale di C con il nuovo cyphertext C, creato dall’attaccante malintenzionato (Packet Injection). Una volta che B avrà decifrato il

pacchetto, otterrà il messaggio M= M mu (dove mu” è la modifica dell’attaccante) con

il corretto checksum c(M’), dove P = <M,c(M)>. Verifichiamo dunque come sia possibile ottenere C da C in modo che C sia decifrato in M’ invece che con M. Si ha che:



C’ = C <mu, CRC(mu)> =

= RC4(v,k) <M, CRC(M)> <mu, CRC(mu)> =

= RC4(v,k) <M mu, CRC(M) CRC(mu)> =



Avevamo detto che CRC(X) CRC(Y) = CRC(XY) e M’ = M

  mu,

= RC4(v,k) <M’, CRC(M mu)> =

= RC4 (v, k) <M’, CRC (M)> =




Abbiamo trovato che:



C= RC4(v,k) P, con

 P’=<M,CRC(M’)>




Il pacchetto contraffatto dall’attaccante utilizza lidentico IV di quello del messaggio originale (RC4(v,k)). Un malintenzionato inviando del traffico in chiaro (P) verso la rete wireless e intercettando il corrispettivo cyphertext (C), potrebbe quindi riuscire a iniettare uno o più pacchetti P’ utilizzando lo stesso IV. Dato che WEP non fornisce alcuna protezione per quanto riguarda i replay attacks, è possibile re-iniettare più volte un frame


cifrato in modo legittimo. Questa debolezza è utilizzata per sferrare il cosiddetto ARP request attack. Lutilizzo di CRC-32 e RC4 è giustificato dalla loro semplicità di implementazione e dalla velocità computazionale che permettono di ottenere. Molti attacchi però si basano proprio sulle loro proprietà.






1.3.4 Attacchi recenti a WEP



Nel corso degli anni, dalla nascita del protocollo WEP, sono stati effettuati numerosi studi che portarono allimplementazione di diversi attacchi per sostenere le numerose debolezze di tale protocollo. Tra i diversi attacchi, implementati poi nel tool Aircrack-ng, si ha:





Attacco di Fuhrer, Mantin e Shamir

  (FMS)


E’ possibile sfruttare le debolezze citate degli stream cipher nel caso siano soddisfatte almeno due condizioni:

- Devono essere recuperati almeno due messaggi cifrati (C1, C2) con lo stesso keystream (K).

- Bisogna avere una conoscenza parziale di questi messaggi.


Fluhrer, Mantin e Shamir, nel loro paper del 1963, furono i primi studiosi a dimostrare la vulnerabilità del KSA (key scheduling algorithm) dellRC4 utilizzato in WEP[5].

Lattacco da loro scoperto che poi prese il loro nome (FMS) è basato, oltre alle condizioni già citate, sullutilizzo del solo primo byte della sequenza pseudo-random prodotto dalloutput generator di RC4. Si vide come valori deboli di IV lasciassero trapelare informazioni sulla chiave. Sarebbe possibile raccogliere un numero sufficiente di pacchetti e individuare la chiave se il primo byte del keystream fosse noto: questa particolare situazione viene definita dagli autori come una resolved condition. Conoscere il primo byte del cifrario non è così difficile come potrebbe sembrare. Infatti, nelle reti wireless è utilizzato il protocollo LLC (definito dallo standard IEEE 802.3) a livello data link, che prevede che i pacchetti IP siano incapsulati in un ulteriore frame con un header SNAP (Sub Network Access Protocol). Tale header ha sempre il valore 0xAA come primo byte. E’ possibile ottenere il primo byte di output del cifrario semplicemente eseguendo uno XOR


tra il primo byte del ciphertext e il valore 0xAA. Comunque, siccome lIV è per-packet, il cifrario sarà inizializzato ad ogni pacchetto inviato, il quale quindi conterrà sempre il primo byte generato da RC4. Nella sua implementazione nel tool Aircrack, si nota come venga indovinato ciascun byte della chiave, associando dei voti ai più probabili byte della chiave, grazie al recupero di un gran numero di pacchetti intercettati.





Attacco di Pyshkin, Tews e Weinmann

  (PTW)


Tramite lattacco FMS occorrono tra i 500.000 e 1.000.000 pacchetti per recuperare lintera chiave. Questo perc non tutti i frame contengono un IV che determina una resolved condition. Furono condotti una serie di studi sullRC4 da Andreas Klein, portando a 250.000 i pacchetti necessari per il cracking della chiave WEP. Klein quindi apportò un netto miglioramento agli attacchi precedenti ed evidenziò il fatto che vi erano ulteriori correlazioni tra il keystream e la chiave oltre a quelle già scoperte.

Gli studi più recenti sono stati condotti da Andrei Pychkine, Erik Tews e Ralph P. Weinmann nel loro paper Breaking 104-bit WEP in less than 60 seconds”[6].

Questi ricercatori hanno migliorato lattacco sviluppato da Klein contro l’algoritmo RC4 usato dal WEP, in modo che i bytes che compongono la chiave fossero calcolati in maniera indipendente. Il risultato è che con circa 35.000-40.000 pacchetti WEP si ha il 50% di probabilità di calcolare la chiave corretta mentre con 85.000 la probabilità sale a 95%. Lattacco PTW presuppone di conoscere i primi 16 byte (per tutti i 128 bit della chiave) di output del cifrario, il che equivale a conoscere i primi 16 byte del plaintext del pacchetto per poter fare lo XOR con il cyphertext.

Tale tipo di attacco non può essere applicato a tutti i pacchetti ma solo a quelli con un determinato header noto, come ad esempio i pacchetti del protocollo ARP. Possiamo aumentare il traffico dei pacchetti utili per l’attacco utilizzando la cosiddetta tecnica dellARP reinjection. Per eseguire questo attacco è obbligatorio che la scheda di rete supporti linjection dei pacchetti oltre ovviamente al monitor mode.

In cosa consiste lARP reinjection proposta da Tews, Weinmann e Pyshkin per aumentare il traffico dei pacchetti utili all’attacco? Prima di rispondere vediamo innanzitutto come funziona il protocollo ARP (Address Resolution Protocol).

 

Simuliamo il caso in cui un client A voglia inviare un messaggio a un client B.

 

  Per fare ciò dovrà specificare nel pacchetto in uscita lindirizzo IP di questultimo (client B). Gli indirizzi IP hanno significato soltanto a livello network, quindi, affinc il frame ethernet possa raggiungere lo strato data link del destinatario è necessario conoscere il suo indirizzo fisico (MAC Address). A tale scopo interviene il protocollo ARP.

Il client A, volendo conoscere lindirizzo fisico del client B (o comunque di un altro client), deve mandare in broadcast a tutta la sottorete, una ARP request specificando lindirizzo IP del destinatario e il proprio indirizzo fisico. La richiesta del client A sarà ascoltata da tutti gli host ma solo quello con lindirizzo IP specificato dal client A invierà a questo una ARP Response con il proprio indirizzo fisico.

Il client B saprà a chi inviare la risposta poiché il client A nella sua request aveva incluso il suo indirizzo fisico. Entrambi i tipi di pacchetti, vale a dire sia le ARP request sia le ARP response, hanno dimensione fissa. Tale proprietà li rende facilmente riconoscibili nel traffico perc la crittografia WEP non nasconde le dimensioni originali dei pacchetti.

I pacchetti ARP possiedono un header LLC (Logical Link Control) fisso di dimensione pari a 8 byte uguale a AA-AA-03-00-00-00-08-06” e i primi 8 byte del payload sono uguali a 00-01-08-00-06-04-00-01” per le richieste e 00-01-08-00-06-04-00-02” per le risposte. Come si nota differiscono solo nellultimo byte. Siccome WEP lascia in chiaro lindirizzo del destinatario, è facile distinguere le richieste (mandate in broadcast, vale a dire FF:FF:FF:FF:FF:FF) dalle risposte (unicast); in questo modo i pacchetti ARP in transito nella sottorete sono facilmente riconoscibili e se ne conoscono i primi 16 byte del plaintext. Catturando ogni pacchetto ARP e facendo lo XOR tra i primi 16 Byte del pacchetto e questi valori noti appena visti si hanno a disposizione i primi 16 byte generati dal cifrario. Inoltre si ha conoscenza anche del vettore di inizializzazione (IV) poicinviato in chiaro. La tecnica dellARP reinjection descritta dai ricercatori consiste nel catturare e rispedire tutte le richieste ARP cosi come sono state intercettate. Il fatto di re- iniettare i pacchetti catturati produce in generale 3 nuovi pacchetti a causa del relay effettuati dallAccess Point. Il numero di pacchetti che possono essere utilizzati per l’attacco aumenta in maniera considerevole poic ogni pacchetto prodotto possiede un diverso vettore di inizializzazione. Tale tecnica trasforma tale tipo di attacco da passivo ad attivo e in questo modo potrebbe venire segnalato da sistemi anti-intrusione (es. WIPS).































Capitolo 2. Il concetto di RSNA




2.1 Introduzione




Nel 1962 si venne a formare un nuovo gruppo di lavoro, il Task group I, per porre rimedio alle vulnerabilità crittografiche del WEP e per dare una risposta positiva alle preoccupazioni crescenti allinterno delle aziende. Allo stesso tempo si tentò di migliorare anche la fase di autenticazione. Dopo anni di studi si arri alla stesura ufficiale del nuovo standard 802.11i nel 1964 che fu poi ufficializzato nel gennaio 1965.

Lo standard 802.11i introduce il concetto di RSNA[7] (Robust Security Network Association); si tratta di un associazione tra due dispositivi e prevede meccanismi per quanto riguarda:


- autenticazione degli utenti (802.1.X)


- creazione e gestione chiavi (802.1.X, EAPOL)


- crittografia dati e verifica dellintegrità (TKIP, CCMP)




L802.11i introdusse quindi nuovi cambiamenti andando a separare la fase di autenticazione dellutente dai meccanismi di segretezza e integrità dei dati. L’architettura RSN è robusta e scalabile allo stesso tempo, sia per reti domestiche e/o per piccoli uffici che per reti aziendali di grandi dimensioni. Si utilizzano chiavi diverse da utente a utente, tra una sessione e un altra e per pacchetto, andando così a risolvere i principali problemi che affliggevano il WEP. La crittografia WEP, come abbiamo potuto analizzare, non è per niente sicura e non offre al contempo una soluzione sufficiente alla autenticazione.

Perciò fu utilizzato lo Standard IEEE 802.1.X, il quale prevede che l'autenticazione avvenga sia in fase di primo accesso alla rete sia a intervalli regolari. Diamo ora una breve descrizione di questo protocollo che sarà poi ripreso nel capitolo successivo in maniera più approfondita. Per l'autenticazione, l'Access Point si deve appoggiare a un server esterno tramite il protocollo RADIUS (Remote Authentication Dial-In User Service).

Lo Standard IEEE 802.1.X è un adattamento di EAP (Extensible Authentication Protocol) con lo scopo di fornire un meccanismo comune a livello data link sul quale sia possibile la definizione degli EAP-METHOS, sotto-protocolli specifici, che determineranno la transazione vera e propria.

Questo standard impedisce che utenti non autorizzati possano accedere alla rete

 

 e che solo una volta che 


lautenticazione sia andata a buon fine il traffico passi

 

 

per una determinata porta solamente.

 

 

 Nelprocessodi autenticazionecompaionotrediversefigure:



Supplicant: lutente che richiede laccesso alla 

 rete.


Authenticator: l’entità che controlla laccesso del supplicant alla rete (es.

  Access Point).


Authentication server: lentità che fornisce il servizio di autenticazione

  all’authenticator.




Dopo essere state fornite le credenziali da parte del supplicant, lAuthentication server decide se e in quali modalità offrire laccesso alla rete (es. server RADIUS che descriveremo più avanti).

In pratica il processo di autenticazione avviene tra il Supplicant e lAuthentication server con lAuthenticator che detiene la funzione di attivare/disattivare fisicamente la porta alla quale lutente cerca di connettersi. Lo standard 802.1.X si compone di due protocolli:



EAPOL (EAP over LAN) estensione di EAP (Extensible Authentication


Protocol).


Tra Supplicant (client che intende accedere alla rete) e Authenticator.



AAA (Authentication, Authorization and Accounting), quale RADIUS.


Tra Authenticator e Authentication server.


In ambienti 802.1.X, il protocollo utilizzato per l’autenticazione è EAPOL, che tra l’authenticator (AP) e lAuthentication server (server RADIUS) è incapsulato in pacchetti RADIUS.

(Fig. 2.1) Schema di autenticazione 802.1X


Lo standard 802.1.X si interessa solamente della fase di autenticazione dellutente e non della cifratura dei dati. IEEE ha scelto il protocollo EAP per assicurare il meccanismo di autenticazione standard per 802.1.X. Il protocollo EAP (Extensive Authentication Protocol) permette di centralizzare l’autenticazione dellutente e assicurare la distribuzione dinamica delle chiavi di cifratura. Questo protocollo è utile per permettere la comunicazione dei client con i server di autenticazione. 802.1.X è lo standard per il controllo dell’accesso alla rete. Lutilizzo di EAP/802.1.X permette una mutua autenticazione client/authentication server, chiavi di cifratura dinamiche e derivate solo dopo che l’autenticazione sia andata a buon fine. La chiave, derivata dallAuthentication server e dal client (la PMK), è propria di quel client e utilizzabile nella sessione corrente. Quando infatti la sessione finisce, è necessaria unulteriore fase di riautenticazione e di derivazione di una nuova chiave. Diciamo comunque che, data questa architettura robusta, le procedure di autenticazione e di associazione tra stazioni avviene in 4 fasi:



1) - Accordo sulla politica di sicurezza


2) - Fase di autenticazione 802.1.X


3) - Derivazione e distribuzione chiavi


4) - Segretezza e integrità dei dati


2.2 Accordo sulla politica di

  sicurezza




Questa prima fase permette a due entità che vogliono comunicare di poter stabilire un accordo sulla politica di sicurezza da adottare. Lutilizzo dei frame di Beacon permette appunto di pubblicizzare il punto di accesso con diverse informazioni a riguardo (identificativo rete SSID, modello AP, data rate, canale in uso per la comunicazione, etc.).

(Fig.2.2) Accordo sulla politica di sicurezza

Il frame Beacon è inviato dallAccess Point in modalità broadcast. La Probe Request è inviata dal client (in modalità broadcast o unicast) contenente proprie informazioni e se configurato lSSID a cui connettersi, altrimenti rimane in ascolto alla ricerca di un AP a cui associarsi. A tale richiesta segue la risposta da parte dellAP con una Probe Response in modalità unicast (AP/client), che contiene le proprie specifiche (data rate, etc.). A queste segue un’autenticazione aperta standard (Authentication request e Authentication Success) e successivamente un Association request da parte del client allAP con le informazioni sulla politica di sicurezza nel campo RSN IE (Information Element) contenente informazioni su:



- metodi di autenticazione supportati (802.1.X o

  PSK).


- protocolli di sicurezza del traffico unicast e multicast

  (TKIP/CCMP).


- supporto per la pre-autenticazione.




In questo modo sarà possibile eseguire per esempio un eventuale handover senza avvertire alcuna interruzione. Segue un Association Response da parte dellAP.


2.3 Fase di autenticazione

 802.1X




Si arriva così alla seconda fase, ossia all’autenticazione 802.1.X basata sullutilizzo del protocollo EAP con il metodo di autenticazione più appropriato (attraverso diversi metodi che comportano lutilizzo di password, certificati digitali, etc.).

 

Tra i metodi più importanti e comunemente utilizzati in ambito wireless,

 

  troviamo:



EAP-TLS


EAP –TTLS


EAP-FAST


PEAPv0


PEAPv1




Li vedremo in dettaglio nel prossimo capitolo. Per ora si sappia solamente che esistono diversi protocolli di autenticazione che possono essere utilizzati per verificare le credenziali client/server. La seconda fase è segnata dallinvio di una richiesta didentità del client da parte dellAccess Point. Il client a sua volta risponderà a tale richiesta con il metodo di autenticazione scelto. Segue un successivo scambio di dati tra il client e l’authenticator server per derivare una master key comune (MK). In conclusione seguirà un messaggio Radius Accept, contenente la master key, inviato dal server authenticator all’authenticator (quindi allAccess Point) e il successivo EAP Success dall’authenticator al client.

(Fig.2.3) Fase di Autenticazione 802.1X


2.4 Derivazione e distribuzione

 chiavi




In questo contesto di rete RSN, ogni chiave possiede un tempo di vita limitato e la sicurezza generale è data da un insieme di diverse chiavi organizzate in una gerarchia. Dopo che l’autenticazione sia andata a buon fine, sono generate e aggiornate le chiavi temporanee fino alla conclusione della sessione. Le chiavi sono sottoposte a hashing, sono concatenate e distribuite in modo sicuro. Come mostrato dalla figura, ci sono due handshake per la derivazione della chiave:

(Fig.2.4) Derivazione delle chiavi




- Handshake a 4 vie per derivare:




la PTK (Pairwise Transient Key)


la GTK (Group Transient Key)



- Group key Handshake per rinnovare la GTK.




Diciamo innanzitutto che la derivazione della PMK (Pairwise master key) varia a seconda di quale metodo di autenticazione si sia deciso di utilizzare.



Infatti se usiamo un’autenticazione PSK (Pre Shared Key), la PMK viene generata dalla passphrase (da 8 a 63 caratteri) o dalla PSK (una stringa di 256 bit) utilizzando una funzione di generazione pseudocasuale PBKDF2 che esegue 4096 volte lhash basato su hmac-sha1, utilizzando i seguenti parametri:


la Passphrase


SSID


Lunghezza SSID



Come output si ottiene una stringa PMK (256 bit).


Altrimenti se abbiamo a disposizione un authentication server, deriviamo la PMK (dall’autenticazione 802.1.X) dalla MK (Master Key).



La PMK non è usata direttamente per la cifratura o la verifica dintegrità ma viene utilizzata per generare una chiave di cifratura temporanea (per il traffico unicast si parla di PTK - Pairwise Transient Key). Tale chiave assume lunghezze diverse a seconda del protocollo di cifratura utilizzato:

 

- se utilizziamo TKIP, la PTK è di 512

 

  bit


- se utilizziamo CCMP, la PTK è di 384

  bit




La PTK è costituita da diverse chiavi come risulta dallimmagine

  seguente:



(Fig.2.5) PTK



Nello specifico:

Nome chiave

Dim.

Scopo




KCK

EAPOL-Key Confirmation key

128 bit

(16Byte)

Per i messaggi di autenticazione (MIC)

durante l’Handshake a 4 vie e la Group key Handshake

KEK

EAPOL-Key Encription key

128 bit

(16Byte)

Garantisce la segretezza durante

l’Handshake a 4 vie e la Group Key

Handshake


TEK

Temporal Key

128 bit

(16Byte)

Per la cifratura dati UNICAST (TKIP o

CCMP)

TMK1

(Tx)Temporal MIC Key

64 bit

(8 Byte)

Per lautenticazione dei dati UNICAST

usata dall algoritmo Michael nel

TKIP

TMK2

(Rx)Temporal MIC Key

64 bit

(8 Byte)

Per lautenticazione dei dati UNICAST

usata dallalgoritmo Michael nel TKIP

 

(Tab.2.1) Gerarchia PTK



Per generare la PTK, viene applicato lhash hmac-sha1 alla chiave PMK con la funzione pseudo casuale PRF-512 che richiede altri parametri, quali:


PMK (Pairwise Master Key)


Authenticator Address (AA): è il MAC dellAP, quindi 48 bit


Supplicant Address (SA): è il MAC del client


Anonce: numero casuale di 128 bit in chiaro generato dall’autenticator


Snonce: numero casuale di 128 bit in chiaro generato dal client



Loutput è una PTK a 512 bit che sarà unica per ogni coppia AP/client, visto che per generarla si utilizzano sia il MAC del Client che dellAccess Point. Come si vede, questo è il caso di utilizzo del TKIP. Nel caso invece si utilizzasse il CCMP come protocollo di cifratura, la chiave PTK utilizzata sarebbe composta da 384 bit. Infatti nel WPA2, adottando il CCMP, le MIC keys vengono calcolate attraverso l’algoritmo AES, come vedremo più avanti.





2.4.1 Il 4-Way Handshake



Si giunge quindi al 4-Way Handshake che inizia per opera dell’autenticator (lAP). Questo meccanismo ci permette di:

o Avere la conferma che il client conosca la PMK


o Derivare una nuova PTK


o Installare chiavi di cifratura e di integrità


o Cifrare il trasporto della GTK


o Confermare la selezione di cifratori


Vengono in questo modo scambiati 4 messaggi di tipo EAPOL- Key tra lAP

  e il client.

QUESTE SONO LE PRIME 38 PAG.  SENZA SCHEMI IDEOGRAMMI E FOTO

LA TESI E' DI 190 PAG.