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
sull’utilizzo
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
un’idea
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
dell’utilizzo
di
diversi
tipi
di
autenticazione
802.1X.
Si
effettuerà
un
confronto
tra
soluzioni
basate
sull’utilizzo
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
l’EAP-TLS,
basata
sull’utilizzo
di
certificati
digitali,
sia
lato
client
che
server.
Alla
parte
puramente
teorica
seguirà
un’ampia
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
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
dell’arte
.........................................................
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
sull’infrastruttura
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
l’edificio
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
è
l’utilizzo
di
WLAN
da
parte
di
Ansaldo
STS
per
l’implementazione
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.
L’attività
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,
l’obbiettivo
primario
è
senz’altro
quello
della
sicurezza,
sia
dal
punto
di
vista
dell’incolumità
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
all’interno
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
dall’utilizzo
di
algoritmi
di
cifratura
come
il
WEP
(a
40
o
104
bit),
che
fu
ben
presto
ritenuto
un
protocollo
debole,
all’utilizzo
di
una
sua variante
che
si
prefiggeva
l’obiettivo
di
rimuoverne
le
principali
debolezze
(WPA).
Nel
1964
invece
fu
ratificato
il
WPA2
(o
802.11i)
basato
sull’utilizzo
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.
L’infrastruttura
di
comunicazione
dati
utilizzata
nell’implementazione
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
vedrà,
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
è
l’introduzione
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
l’introduzione
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
dell’Ansaldo
STS
e
di
alcuni
problemi
rilevanti
in
ambito
metropolitano
con
l’implementazione
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
all’implementazione
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.
L’utilizzo
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
un’estensione
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.
L’utilizzo
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
all’interno
di
canaline,etc.
Per
questo
motivo
in
molte
fiere,
convegni
o
per
altre
manifestazioni
della
durata
di
pochi
giorni,
l’organizzatore
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
dell’AP
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
d’implementazione
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
dell’intensità
del
segnale
e
del
traffico
di
rete.
Inoltre
l’inquinamento
elettromagnetico
e
il
problema
delle
interferenze
con
altri
dispositivi
sono
inevitabili.
La
banda
di
frequenze
nell’intorno
di
2,4
GHz
è
molto
affollata
per
cui
l’utilizzo
di
ulteriori
apparecchi
all’interno
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à:
L’informazione
trasmessa
attraverso
la
rete
è
immune
dall’intercettazione
da
parte
di
soggetti
non
autorizzati.
-
Integrità:
L’informazione
trasmessa
non
viene
modificata
lungo
il
suo
percorso.
-
Autenticazione:
L’utente
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é
l’utilizzo
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
dell’utilizzo
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
dell’ottobre
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
l’utilizzo
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
l’acronimo
MANET
(Mobile
Ad
hoc
Network),
permettono
una
riduzione
dei
costi
evitando
l’acquisto
di
ulteriori
apparecchi,
(es.
AP)
e
fanno
si
che
ogni
elemento
all’interno
della
rete
sia
attivo
e
passivo.
(Fig.1.1)
Modalità
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)
Modalità
a
Infrastruttura
L’Access
Point
è
un
dispositivo
che
permette
all’utente
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
un’unica
grande
area
denominata
Extended
Service
Set
(ESS).
Gli
utenti
all’interno
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
dell’Ethernet.
La
differenza
fra
i
due
meccanismi
è
che
nel
caso
dell’Ethernet
è
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
perché
un’antenna
può
solo
trasmettere
o
ricevere
in
un
dato
momento
e
la
transizione
tra
le
due
fasi
richiede
un
pò
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
l’ACK,
significherebbe
la
presenza
di
un’interferenza
e
il
pacchetto
sarebbe
immediatamente
ritrasmesso.
Questo
è
necessario
perché
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
(Hidden
Nodes).
(Fig.
1.3)
Il
problema
dei
nodi
nascosti
Si
supponga
di
avere
tre
stazioni
disposte
in
linea
una
dopo
l’altra
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
l’ultima
stazione
poiché
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
(l’AP)
invia
un
CTS,
lo
sentono
tutte
le
stazioni
nel
suo
raggio
di
copertura
e
quelle
che
non
hanno
inviato
il
RTS
capiscono
che
un’altra
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;
d’altra
parte
l’overhead
del
meccanismo
RTS/CTS
è
parecchio,
e
di
nuovo
diminuisce
il
throughput
totale.
1.2
Il
protocollo
IEEE
802.11
Il
gruppo
11
dell’IEEE
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
l’idea
di
certificare
l’interoperabilità
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,
l’802.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,
l’IEEE
ratifico
nel
1959
questo
standard,
anche
conosciuto
con
il
termine
di
“802.11
High
Rate”.
Consente
una
velocità
di
trasmissione
massima
pari
a
11
Mbps
utilizzando
ancora
le
frequenze
nell’intorno
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
dell’Access
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
all’interno
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
nell’intorno
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
l’utilizzo
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
d’incompatibilità
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
l’802.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
l’accoppiata
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
l’uno.
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
l’11
dato
che
la
Spagna
non
ha
concesso
i
canali
dall’1
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
l’11
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
all’interno
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
sull’algoritmo
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
L’IEEE
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
nell’immagine
seguente.
(Fig.
1.8)
Frame
802.11
I
primi
3
campi
(Frame
Control,
Duration/ID
e
Address
1)
e
l’ultimo
(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
all’interno
dell’header
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:
L’Access
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
l’AP
“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
dell’AP
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
l’Access
Point
accetta
o
rifiuta
l’identità
di
una
stazione
wireless.
-
Association/reassociation
request
:
Una
stazione
wireless
inizia
il
processo
di
associazione
inviando
tale
tipo
di
frame
all’Access
Point
con
all’interno
varie
informazioni
(tra
le
quali
l’SSID
al
quale
intende
associarsi).
L’Access
Point
invece,
una
volta
ricevuta
la
richiesta,
considera
se
farlo
associare
(riservandogli
dello
spazio
di
memoria)
o
meno.
-
Association/reassociation
response
:
Questo
frame
è
inviato
dall’Access
Point.
In
caso
positivo
la
stazione
può
comunicare
con
le
altre
stazioni
all’interno
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
l’host
intende
scambiare
con
il
suo
end-point
remoto
per
mezzo
dell’AP
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
l’AP
|
1
|
1
|
Il
frame
è
generato
da
un
WDS
(pacchetti
scambiati
tra
gli
AP)
|
(Fig.1.11)
Campo
To
DS/From
DS
L’assegnazione
degli
indirizzi
nei
campi
Address
(1-4)
dei
frame
802.11
è
complicato.
Questo
perché
gli
indirizzi
potrebbero
essere
anche
3
o
4
e
l’ordine
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
l’interfaccia
della
stazione
entrerà
in
modalità
risparmio
energetico.
Questo
campo
è
sempre
impostato
a
0
nei
frame
che
vengono
trasmessi
dall’Access
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
dell’Header
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
dell’Access
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),
l’indirizzo
di
chi
ha
trasmesso
il
pacchetto
-
il
Receiving
STA
Address
(RA),
l’indirizzo
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
all’interno
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
l’ordine
dei
frammenti
appartenenti
allo
stesso
frame
e per
riconoscere
l’eventuale
duplicazione
dei
pacchetti.
Il
campo
Frame
Body
all’interno
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
d’integrità
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
all’interno
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,
l’introduzione
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
dell’integrità
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
l’RC4
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
l’RC4
ufficiale.
La
chiave
WEP
può
essere
composta
da
40
o
104
bit
e
deve
essere
impostata
su
tutte
le
stazioni
wireless
compreso
l’Access
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
l’integrità
dei
dati
che
si
vogliono
trasmettere.
A
questo
punto
è
eseguita
un’operazione
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
l’identico
keystream,
RC4(v,k),
basato
sull’IV
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
all’interno
della
rete,
ha
bisogno
di
autenticarsi
per
diventare
associata
a
un
determinato
Access
Point.
WEP
supporta
due
tipi
di
autenticazione:
L’Open
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
l’Access
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
l’Access
Point
e
non
il
contrario.
Solamente
le
stazioni
che
conoscono
la
chiave
segreta
sono
capaci
di
autenticarsi
con
l’AP.
(Fig.1.17)
Autenticazione
a
chiave
condivisa
Questo
protocollo
consiste
in
un
4-Way
Handshake
e
inizia
con
un’Authentication
Request
(#1)
da
parte
della
stazione.
L’Access
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
all’Access
Point.
L’Access
Point,
ricevuto
questo
messaggio,
lo
decapsula
e
ne
controlla
l’ICV.
Se
il
controllo
va a
buon
fine,
il
contenuto
decifrato
è
confrontato
con
il
challenge
precedentemente
inviato.
Se
sono
identici,
l’AP
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,
l’operazione
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
⊕
(P1⊕P2)
=
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
può
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
l’IV
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,
l’IV
è
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
l’intuito
(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(X⊕Y)
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
l’identico
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.
L’utilizzo
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
all’implementazione
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)
dell’RC4
utilizzato
in
WEP[5].
L’attacco
da
loro
scoperto
che
poi
prese
il
loro
nome
(FMS)
è
basato,
oltre
alle
condizioni
già
citate,
sull’utilizzo
del
solo
primo
byte
della
sequenza
pseudo-random
prodotto
dall’output
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
l’IV
è
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
l’attacco
FMS
occorrono
tra
i
500.000
e
1.000.000
pacchetti
per
recuperare
l’intera
chiave.
Questo
perché
non
tutti
i
frame
contengono
un IV
che
determina
una
resolved
condition.
Furono
condotti
una
serie
di
studi
sull’RC4
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
l’attacco
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%.
L’attacco
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
dell’ARP
reinjection.
Per
eseguire
questo
attacco
è
obbligatorio
che
la
scheda
di
rete
supporti
l’injection
dei
pacchetti
oltre
ovviamente
al
monitor
mode.
In
cosa
consiste
l’ARP
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
l’indirizzo
IP
di
quest’ultimo
(client
B).
Gli
indirizzi
IP
hanno
significato
soltanto
a
livello
network,
quindi,
affinché
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
l’indirizzo
fisico
del
client
B
(o
comunque
di
un
altro
client),
deve
mandare
in
broadcast
a
tutta
la
sottorete,
una
ARP
request
specificando
l’indirizzo
IP
del
destinatario
e
il
proprio
indirizzo
fisico.
La
richiesta
del
client
A sarà
ascoltata
da
tutti
gli
host
ma
solo
quello
con
l’indirizzo
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
perché
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
nell’ultimo
byte.
Siccome
WEP
lascia
in
chiaro
l’indirizzo
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)
poiché
inviato
in
chiaro.
La
tecnica
dell’ARP
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
dall’Access
Point.
Il
numero
di
pacchetti
che
possono
essere
utilizzati
per
l’attacco
aumenta
in
maniera
considerevole
poiché
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
all’interno
delle
aziende.
Allo
stesso
tempo
si
tentò
di
migliorare
anche
la
fase
di
autenticazione.
Dopo anni
di
studi
si
arrivò
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
dell’integrità
(TKIP,
CCMP)
L’802.11i
introdusse
quindi
nuovi
cambiamenti
andando
a
separare
la
fase
di
autenticazione
dell’utente
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
l’autenticazione
sia andata a buon fine il traffico passi
per una determinata
porta solamente.
Nelprocessodi
autenticazionecompaionotrediversefigure:
Supplicant:
l’utente
che
richiede
l’accesso
alla
rete.
Authenticator:
l’entità
che
controlla
l’accesso
del
supplicant
alla
rete
(es.
Access
Point).
Authentication
server:
l’entità
che
fornisce
il
servizio
di
autenticazione
all’authenticator.
Dopo
essere
state
fornite
le
credenziali
da
parte
del
supplicant,
l’Authentication
server
decide
se
e
in
quali
modalità
offrire
l’accesso
alla
rete
(es.
server
RADIUS
che
descriveremo
più
avanti).
In
pratica
il
processo
di
autenticazione
avviene
tra
il
Supplicant
e
l’Authentication
server
con
l’Authenticator
che
detiene
la
funzione
di
attivare/disattivare
fisicamente
la
porta
alla
quale
l’utente
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
l’Authentication
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
dell’utente
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
dell’utente
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.
L’utilizzo
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
dall’Authentication
server
e
dal
client
(la
PMK),
è
propria
di
quel
client
e
utilizzabile
nella
sessione
corrente.
Quando
infatti
la
sessione
finisce,
è
necessaria
un’ulteriore
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.
L’utilizzo
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
dall’Access
Point
in
modalità
broadcast.
La
Probe
Request
è
inviata
dal
client
(in
modalità
broadcast
o
unicast)
contenente
proprie
informazioni
e se
configurato
l’SSID
a
cui
connettersi,
altrimenti
rimane
in
ascolto
alla
ricerca
di un
AP
a
cui
associarsi.
A tale
richiesta
segue
la
risposta
da
parte
dell’AP
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
all’AP
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
dell’AP.
2.3
Fase
di
autenticazione
802.1X
Si
arriva
così
alla
seconda
fase,
ossia
all’autenticazione
802.1.X
basata
sull’utilizzo
del
protocollo
EAP
con
il
metodo
di
autenticazione
più
appropriato
(attraverso
diversi
metodi
che
comportano
l’utilizzo
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
dall’invio
di
una
richiesta
d‘identità
del
client
da
parte
dell’Access
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
all’Access
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
l’hash
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
d’integrità
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
dall’immagine
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
l’autenticazione
dei
dati
UNICAST
usata
dall’
algoritmo
Michael
nel
TKIP
|
TMK2
|
(Rx)Temporal
MIC
Key
|
64 bit
(8
Byte)
|
Per
l’autenticazione
dei
dati
UNICAST
usata
dall’algoritmo
Michael
nel
TKIP
|
(Tab.2.1)
Gerarchia
PTK
Per
generare
la
PTK,
viene
applicato
l’hash
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
dell’AP,
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
L’output
è
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
dell’Access
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
(l’AP).
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
l’AP
e
il
client.
QUESTE SONO LE PRIME 38 PAG. SENZA SCHEMI IDEOGRAMMI E FOTO
LA TESI E' DI 190 PAG.