SICUREZZA NELLE RETI WIRELESS

40
SICUREZZA NELLE RETI WIRELESS 1

Transcript of SICUREZZA NELLE RETI WIRELESS

Page 1: SICUREZZA NELLE RETI WIRELESS

SICUREZZA NELLE RETI

WIRELESS

1

Page 2: SICUREZZA NELLE RETI WIRELESS

WEP

� WEP: Wired Equivalent Privacy

� Anno 1999: implementato nel protocollo 802.11

� Obiettivi:� Obiettivi:� Confidenzialità: i dati viaggiano su un canale

cifrato

� Controllo dell’accesso: proteggere la rete wireless da accessi indesiderati

� Integrità: impedire la modifica dei messaggi usando un algoritmo di checksum

2

Page 3: SICUREZZA NELLE RETI WIRELESS

WEP: implementazione

� Ogni apparato della rete wireless (access

point e client) devono condividere una Wep

Key

� Implementazioni:

� Standard� Standard

� utilizza una chiave di 40 bit

� Vulnerabile ad attacchi Brute Force

� Extended

� Utilizza una chiave di 104 bit

� Resistente ad attacchi Brute Force

3

Page 4: SICUREZZA NELLE RETI WIRELESS

Checksum CRC-32

� Dati divisi in blocchi di lunghezza fissa

� Per ogni blocco viene calcolata una checksum

con l’algoritmo CRC a 32 bit

CRC32(M)

� Prima della cifratura, la checksum viene

concatenata al blocco di dati

PlainText = (M, CRC32(M))

4

Page 5: SICUREZZA NELLE RETI WIRELESS

Cifratura RC4

� Si sceglie casualmente un vettore di

inizializzazione di 24 bit (IV)

� Si utilizza l’algoritmo RC4 per ottenere una

chiave di cifratura di lunghezza fissachiave di cifratura di lunghezza fissa

� Sviluppato nel 1987 da Ronald Rivest (RSA)

� Genera una sequenza pseudo-casuale di bit,

arbitrariamente lunga

5

Page 6: SICUREZZA NELLE RETI WIRELESS

Cifratura RC4

� E’ un algoritmo simmetrico

KeyStream = RC4(IV, WepKey)

� Per ottenere il messaggio cifrato, si esegue

uno XOR tra Plaintext e Keystreamuno XOR tra Plaintext e Keystream

CipherText = PlainText KeyStream

� Quindi:

C = (M, CRC32(M)) RC4(IV, WepKey)

6

Page 7: SICUREZZA NELLE RETI WIRELESS

Trasmissione

� Il pacchetto inviato nella rete è composto dal

vettore di inizializzazione concatenato al

testo cifrato.

7

CipherTextIV

Page 8: SICUREZZA NELLE RETI WIRELESS

Decifratura

� Il destinatario concatena l’IV con la Wep Key e

utilizzando RC4 ottiene la KeyStream

PlainText = CipherText KeyStreamPlainText = CipherText KeyStream

� Calcola la checksum sui dati confrontandola

con quella contenuta nel PlainText

8

Page 9: SICUREZZA NELLE RETI WIRELESS

WEP: Vettore

d’inizializzazione

� Dimensione di 24 bit

� Generato dall’apparato wireless che invia il

pacchettopacchetto

� Trasmesso in chiaro

� Necessario per calcolare il KeyStream

9

Page 10: SICUREZZA NELLE RETI WIRELESS

IV

� Se lo stesso IV viene utilizzato più di una

volta, il protocollo non è più sicuro

� Numerose implementazioni si limitano ad

aumentare di 1 l’IV ad ogni pacchetto

trasmessotrasmesso

� In molte schede, l’IV viene posto a 0 quando

vengono re-inizializzate

� 24 bit: ~ 17 milioni di combinazioni

� Inviando pacchetti di 1500 bytes a 11Mbps sono

sufficienti 5 ore per esaurire tutte le possibili

combinazioni di IV

10

Page 11: SICUREZZA NELLE RETI WIRELESS

IV

� Cosa succede se intercettiamo due ciphertext

cifrati con gli stessi IV e Wep Key?

� Proviamo ad eseguire uno :

C1 C2 =

= (P1 KeyStream) (P2 KeyStream) == (P1 KeyStream) (P2 KeyStream) =

= P1 P2

� Abbiamo eliminato la chiave di cifratura!

� E se conosciamo uno dei due Plaintext:

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

11

Page 12: SICUREZZA NELLE RETI WIRELESS

Vulnerabilità RC4

� Nel 1995, venne scoperta una vulnerabilità

sull’algoritmo RC4

� Ben 4 anni prima dell’implementazione del WEP!

� Utilizzando la crittografia differenziale, si può

risalire alla Wep Keyrisalire alla Wep Key

� Esistono KeyStream in cui l’IV determina un gran

numero di bit

� Senza questa vulnerabilità, la violazione del

protocollo WEP non sarebbe possibile

12

Page 13: SICUREZZA NELLE RETI WIRELESS

Vulnerabilità CRC-32

� Algoritmo che genera un’immagine di 32 bit

� Progettato per individuare errori casuali nelle comunicazioni

� Non è un codice di integrità crittograficamentesicuro

� Attacco Packet Tampering:� Attacco Packet Tampering:� Il checksum è concatenato al blocco dati

� La posizione dei bit dei dati e del checksum sono conosciuti anche dopo la cifratura

� Esistono tecniche per modificare i bit dei dati e del checksum senza causare errori di validazione

� Il tutto all’interno del pacchetto crittografato

13

Page 14: SICUREZZA NELLE RETI WIRELESS

WEP: Limiti

� Debolezze dell’algoritmo RC4

� IV troppo brevi

� Consentito riutilizzo dell’IV

� Verifica dell’integrità non sicura a livello

crittograficocrittografico

� Nessun metodo integrato per

l’aggiornamento delle chiavi

14

Page 15: SICUREZZA NELLE RETI WIRELESS

WPA

� WPA: Wi-Fi Protected Access

� Passo in avanti rispetto a WEP� Si cerca di chiudere le falle di sicurezza

� Realizzato per essere compatibile con apparati WEP attraverso un aggiornamento firmware

� Novità:� Novità:� Autenticazione degli utenti attraverso il protocollo

EAP

� Nuovo sistema di cifratura TKIP

� IV più lungo

� Nuovo algoritmo per l’integrità (Michael)

15

Page 16: SICUREZZA NELLE RETI WIRELESS

Modalità

� PSK Mode

� Non richiede un server per l’autenticazione

� Viene usato un segreto condiviso

� Enterprise Mode� Enterprise Mode

� Richiede un server per l’autenticazione

� Utilizza il protocollo RADIUS per l’autenticazione

e la distribuzione delle chiavi

� Gestione delle credenziali degli utenti

centralizzata

16

Page 17: SICUREZZA NELLE RETI WIRELESS

Autenticazione

� WEP non forniva strumenti per

l’aggiornamento ed il cambio delle chiavi

� Il protocollo EAP fornisce un framework

efficace per autenticare e controllare il

traffico degli utenti

17

Page 18: SICUREZZA NELLE RETI WIRELESS

EAP e 802.1x

� Stabiliscono come devono essere trasportate

le informazioni di autenticazione

� Non sono un metodo di autenticazione

� Permettono di utilizzare differenti metodi di � Permettono di utilizzare differenti metodi di

autenticazione:

� Password

� Challenge-response

� PKI

18

Page 19: SICUREZZA NELLE RETI WIRELESS

EAP: entità

� Supplicant (client wireless)

� Desidera utilizzare un servizio

� Authenticator (Access Point)

� Mette a disposizione i servizi

� Tutte le sessioni passano attraverso � Tutte le sessioni passano attraverso

l’authenticator

� Authentication server

� Server dedicato all’autenticazione

� Può utilizzare diversi protocolli (CHAP, PAP,

Kerberos, …)

19

Page 20: SICUREZZA NELLE RETI WIRELESS

Schema di comunicazione

� Supplicant (client wireless)

� Desidera utilizzare un servizio

� Authenticator (Access Point)

� Mette a disposizione i servizi

� Tutte le sessioni passano attraverso � Tutte le sessioni passano attraverso

l’authenticator

� Authentication server

� Server dedicato all’autenticazione

� Può utilizzare diversi protocolli (CHAP, PAP,

Kerberos, …)

20

Page 21: SICUREZZA NELLE RETI WIRELESS

EAP – 802.1X

� Facilitata la gestione della rete

� Centralizzate le decisioni di autenticazione e

autorizzazione

� Diminuisce il carico di lavoro dell’acces point

� Non offre alcuna protezione crittografica

� Non fornisce il metodo concreto di

autenticazione

21

Page 22: SICUREZZA NELLE RETI WIRELESS

RADIUS

� Remote Authentication Dial In User Service

� Utilizzato per le comunicazioni tra Access

Point e Server di Autenticazione

� Si adatta a vari metodi di autenticazione

� Le comunicazioni tra server e Access Point � Le comunicazioni tra server e Access Point

non sono cifrate

� E’ necessario utilizzare un canale di

comunicazione sicuro

� La password tra server e AP è statica, bisogna

custodirla con attenzione

22

Page 23: SICUREZZA NELLE RETI WIRELESS

RADIUS

� Tipi di messaggi

� Access Request: generato dall’access point per

poter autenticare un client. Contiene un challenge

casuale a cui il server dovrà rispondere.

� Access Challenge: challenge inviata dal server

all’AP, ridirezionata al client, utilizzata per all’AP, ridirezionata al client, utilizzata per

l’autenticazione.

� Access Accept: messaggio del server che indica

l’avvenuta autenticazione

� Access Reject: messaggio del server, indica

un’autenticazione fallita

23

Page 24: SICUREZZA NELLE RETI WIRELESS

WPA: confidenzialità e

integrità

� TKIP: Temporary Key Integrity Protocol

� Il nuovo protocollo TKIP è stato progettato

come un involucro intorno al WEP

� E’ possibile implementarlo via software, per � E’ possibile implementarlo via software, per

consentire il riutilizzo dell’hardware esistente

24

Page 25: SICUREZZA NELLE RETI WIRELESS

Integrità: Michael

� Message Integrity Check

� Algoritmo di integrità (MAC)

� Utilizza due chiavi segrete condivise di 32 bit

� Offre protezione da attacchi di modifica dei

pacchettipacchetti

� Degrado delle prestazioni dell’AP

25

Page 26: SICUREZZA NELLE RETI WIRELESS

Individuazione attacco

� Se WPA rileva nell’arco di un secondo due

tentativi di modifica di pacchetti, assume di

essere sotto attacco

� Cancella le chiavi utilizzate

� Dissocia il dispositivo� Dissocia il dispositivo

� Attende un minuto prima di ripetere l’associazione

� Facile strumento per attacchi DoS

26

Page 27: SICUREZZA NELLE RETI WIRELESS

WPA: IV

� L’IV viene utilizzato come contatore

sequenziale dei pacchetti inviati

� Difesa contro replay-attack

� All’inizio della trasmissione è impostato a 0

� Viene incrementato di un’unità ad ogni � Viene incrementato di un’unità ad ogni

pacchetto inviato

� Un pacchetto viene rifiutato se l’IV è minore o

uguale all’ultimo ricevuto

� Non supporta il QoS

27

Page 28: SICUREZZA NELLE RETI WIRELESS

WPA: mescolamento chiavi

� TKIP utilizza chiavi temporanee

� Costruisce i KeyStream in maniera differente

da WEP

� Si elimina l’utilizzo della stessa chiave per

tutti i collegamentitutti i collegamenti

� Si toglie correlazione tra l’IV in chiaro e la

chiave del pacchetto

28

Page 29: SICUREZZA NELLE RETI WIRELESS

Mescolamento delle chiavi

� Ad ogni cambio della chiave temporale

� Si combina il MAC address con la chiave

temporale applicando uno XOR

� Si applica una S-BOX (Sostitution Box) invertibile

� Vengono create chiavi intermedie differenti per � Vengono create chiavi intermedie differenti per

ogni stazione

� Per creare la chiave di cifratura:

� Si applica un algoritmo simile al Michael,

combinando l’IV con la chiave intermedia

� Si ottiene una chiave di 128 bit

29

Page 30: SICUREZZA NELLE RETI WIRELESS

WPA: chiavi temporali

� Due chiavi temporali

� 128 bit per la cifratura

� 64 bit per l’integrità

� Coppia di chiavi diverse per ogni verso della

comunicazionecomunicazione

� Vengono cambiate entro 216 pacchetti

trasmessi, per prevenire il riutilizzo dello

stesso IV

30

Page 31: SICUREZZA NELLE RETI WIRELESS

TKIP

� Un dispositivo per comunicare si deve

autenticare

� 802.1x

� PSK key

� In fase di autenticazione viene creata una � In fase di autenticazione viene creata una

master key, utilizzata per tutta la durata della

comunicazione

� I set di chiavi vengono creati e scambiati in

maniera segreta utilizzando la master key

31

Page 32: SICUREZZA NELLE RETI WIRELESS

WPA: trasmissione

� Viene calcolata l’integrità, generando il MIC dell’intero messaggio

� Il MIC viene concatenato al messaggio

� Il messaggio viene diviso in blocchi

� Ad ogni blocco viene assegnato un numero di � Ad ogni blocco viene assegnato un numero di sequenza

� Si utilizza l’algoritmo di mescolamento delle chiavi per creare una nuova chiave di cifratura

� Si esegue l’algoritmo WEP� La chiave di cifratura viene utilizzata al posto della

Wep Key

32

Page 33: SICUREZZA NELLE RETI WIRELESS

WPA: ricezione

� Recupera la temporary key associata alla

comunicazione

� Con l’IV verifica la correttezza del numero di

sequenza

� Effettua il mescolamento delle chiavi per � Effettua il mescolamento delle chiavi per

ottenere la chiave di decifratura

� Esegue l’algoritmo WEP

� Ricostruisce la sequenza di pacchetti ed

esegue la verifica di integrità (Michael)

33

Page 34: SICUREZZA NELLE RETI WIRELESS

802.11i

� Il protocollo WPA è stato un passaggio

intermedio in attesa del nuovo standard di

sicurezza

� Nuovo meccanismo di sicurezza WPA2

� Richiede nuovo hardware� Richiede nuovo hardware

� Obiettivo: separazione tra autenticazione e

crittografia-integrità

34

Page 35: SICUREZZA NELLE RETI WIRELESS

802.1x

� L’architettura rimane quella utilizzata in WPA

� Si crea un nuovo standard di fatto: EAP-TLS

� Sviluppato da Microsoft

� Si utilizza un canale TLS sul protocollo EAP� Si utilizza un canale TLS sul protocollo EAP

� Mutua autenticazione tra client e server attraverso

i certificati

� Autenticazione più sicura

35

Page 36: SICUREZZA NELLE RETI WIRELESS

WPA2: AES-CCMP

� Nuovo algoritmo di cifratura: AES-CCMP

� Variante di AES

� I protocolli di cifratura ed integrità lavorano a

stretto contatto

� AES-CM per la cifratura� AES-CM per la cifratura

� CBC-MAC per l’integrità

36

Page 37: SICUREZZA NELLE RETI WIRELESS

AES-CM

� AES: cifratura a chiave privata

� Chiavi e blocchi di 128 bit

� Richiede maggiore potenza di calcolo

� Cifra il payload e il MIC

� Autentica l’header e il payload� Autentica l’header e il payload

37

Page 38: SICUREZZA NELLE RETI WIRELESS

CBC-MAC

� Nuovo algoritmo per la creazione del

Message Integrity Check

� Strettamente legato alla cifratura AES

� Per la generazione del valore MIC utilizza:

� Header� Header

� Dimensione del payload

� Payload

38

Page 39: SICUREZZA NELLE RETI WIRELESS

WPA2: creazione pacchetto

� Il payload viene cifrato con AES-CM

� Viene creato il MIC usando l’header e il

payload cifrato

� Il MIC viene cifrato utilizzando AES-CM

39

Page 40: SICUREZZA NELLE RETI WIRELESS

Regole per la sicurezza

� Utilizzare il protocollo WPA2 con password

forti

� Disattivare il broadcast dell’SSID

� Limitare il raggio del segnale wireless alle

sole zone utilisole zone utili

� Applicare filtri sul MAC address

� Aggiornare il firmware degli Access Point

� Considerare la rete wireless una rete

untrusted

40