630 likes | 783 Views
WiMAX Security. Marco Vallini Febbraio 2006. Contenuti. Breve introduzione alla tecnologia Aspetti e meccanismi di sicurezza Vulnerabilità e attacchi noti. Breve introduzione alla tecnologia. Problema.
E N D
WiMAX Security Marco Vallini Febbraio 2006
Contenuti • Breve introduzione alla tecnologia • Aspetti e meccanismi di sicurezza • Vulnerabilità e attacchi noti
Problema • Le tecnologie wired sono correlate al bacino d’utenza, pochi utenti implicano alti costi • La morfologia del territorio di alcune zone non ne permette l’installazione • Utilizzo di servizi broadband per sistemi mobili: le reti attuali non sono sufficienti Diffusione capillare della banda larga
Soluzione • Maggiore flessibilità • Costi minori • Connessioni always-on anche in movimento: connessi sempre e ovunque… • Il WiMAX è una tecnologia BWA Tecnologia Broadband Wireless Access (BWA)
WiMAX Prevede: • Alta velocità • Tecnologia senza fili per abbattere i costi • Copertura ad ampio raggio a livello geografico • Terminali mobili Worldwide Interoperability for Microwave Access
Architettura Due unità: • Base Station (BS): il concentratore, simile concettualmente a quelle della telefonia cellulare • Subscriber Station (SS) o Mobile Station (MS): è il dispositivo che permette la comunicazione tra client e BS Generalità
Modalità di servizio Due modalità: • Line-Of-Sight (LOS): • Maggiore banda trasmissiva, effetti multipath trascurabili • Trasmissioni suscettibili a ostacoli fisici • Antenna complessa e fissa • Freq. 10-66 GHz • Non-Line-Of-Sight (NLOS): • Trasmissioni non interrotte da ostacoli fisici • Ridotta banda trasmissiva • Antenna di dimensioni ridotte • Freq. 2-11 GHz
Copertura del servizio Dipende dalla modalità di servizio: • Line-Of-Sight (LOS): • 16 Km di raggio • Si può aumentare la copertura a scapito della larghezza di banda • Non-Line-Of-Sight (NLOS): • 6-8 Km di raggio • Throughput intorno a 45 Mbps/canale
QoS (Quality of Service) Supporto di servizi QoS mediante: • Introduzione nel livello MAC di diverse tipologie di traffico • Modulazione adattativa • Capacità di configurazione dinamica dei collegamenti in funzione del traffico • Tecniche per diminuire l’overhead dei messaggi di segnalazione Soddisfare particolari specifiche sul traffico
Livello MAC (1) • Topologia di rete punto-multipunto o maglia (mesh) • Diverse specifiche per il livello fisico, per ambienti operativi diversi • Trasmissione a trama (frame), 2 slot map: • DL_MAP: downlink • UP_MAP: uplink • Connection-oriented, ogni slot è identificato da un ID • Tipologie di connessioni: • 2 di Management: 1° per operazioni di gestione, 2° pacchetti di gestione di IP • Transport: trasporto dati Medium Access Control
Livello MAC (2) • Service-Specific Convergence Sublayer (CS): • Trasformazione dei dati provenienti dalla rete • Classificazione • Associazione ai diversi flussi • Identificazione del collegamento • MAC Common Part Sublayer (CPS): • Allocazione di banda • Instaurazione delle connessioni e mantenimento • Security Sublayer o Privacy Sublayer: • Funzioni di sicurezza: autenticazione, distribuzione chiavi, integrità e crittografia dati Tre sottolivelli
Livello MAC (3) • Header • Payload • CRC (opzionale) MAC PDU, il pacchetto Inoltre … Il MAC contiene funzionalità per la gestione dei diversi livelli di QoS
Livello Fisico Physical Layer • Due modalità operative • TDD (Time Division Duplex): sottoframe consecutivi • FDD (Frequency Division Duplex): sottoframe simultanei perché sfruttano frequenze diverse • Non implementa funzionalità di protezione, più vulnerabile! • Banda 10-66 GHz • Richiede licenza • Dimensione canali 25-28 MHz • Modulazione single-carrier: invio di un singolo canale per portante • Banda 2-11 GHz • La modalità NLOS richiede di implementare: tecniche avanzate di power management, tecniche di correzione dovute ad interferenze …
Introduzione • Vengono considerate quando si vuole rendere sicura una comunicazione, sono: • riservatezza/confidenzialità • integrità • autenticazione • non ripudio • controllo dell’accesso/autorizzazione • disponibilità • tracciabilità Proprietà generali della sicurezza
Introduzione • La SS effettua una scansione per cercare il segnale di downlink • Con i dati acquisiti, imposta a livello fisico i parametri per aprire un canale di management con la BS • Il protocollo PKM viene utilizzato per valutare se la SS è in possesso dei diritti necessari • Se l’autorizzazione è concessa, la SS si registra. La BS assegna un identificatore (ID) per la seconda connessione di management • SS e BS creano una connessione di trasporto Instaurazione della comunicazione tra SS e BS NB. ll canale di management è utilizzato per negoziare i parametri di comunicazione, per l’autorizzazione e per la gestione della chiave di cifratura
Architettura di sicurezza • Implementata nel sottolivello Security del MAC • Si occupa di: • Gestire l’autenticazione • Distribuzione delle chiavi • Integrità dei messaggi • Crittografia dati • Riservatezza • Si basa su due protocolli: • Encapsulation protocol: crittografa i pacchetti di dati • PKM (Privacy and Key Management): distribuzione delle chiavi Introduzione (1)
Architettura di sicurezza • Utilizza 5 meccanismi: • Security Association (SA): contiene le informazioni di sicurezza • X.509 Certificate Profile: certificati • PKM: autorizzazione, distribuzione chiavi • Key Usage (modalità di utilizzo delle chiavi) • Cryptography (algoritmi crittografici e digest) Introduzione (2)
Security Association • Insieme di informazioni di sicurezza condivise tra SS e BS • Identificate tramite un’etichetta, detta SAID • Tre tipi: • Primary: usata dalla SS in fase di inizializzazione • Static: configurata dalla BS • Dynamic: instaurata e distrutta in modo dinamico • Quando la SS entra in rete, la BS genera • Una SA per il canale secondario di management • E successivamente una o due SA per i canali di traffico • Nella modalità multicast, ogni gruppo condivide una SA Security Association
Security Association • Identificatore, SAID, 16 bit • Algoritmo di cifratura • 2 chiavi TEK per crittografare il traffico • Un identificatore a 2 bit per ogni TEK • Durata di validità del TEK (lifetime) • Vettore di inizializzazione a 64 bit per ogni TEK • Indicatore sulla tipologia della SA: Primary, Static, Dynamic Di tipo generico
Security Association • Ha scopi di autorizzazione, è composta dai seguenti campi: • X.509 Certificate Profile: identifica la SS • AK (Authorization Key): chiave di autorizzazione a 160 bit • 4 bit per identificare AK • Durata di AK • KEK (Key Encryption Key): 112 bit, Triple-DES, usata per distribuire TEK • Downlink authentication code (HMAC key), integrità del messaggio • Uplink HMAC key: integrità del messaggio • Lista contenente le SA autorizzate • Permette di configurare le informazioni di tutte le SA di autorizzazione, (SA authorization)
Certificate Profile • Due tipologie: • Manufacturer certificate: identifica il costruttore del dispositivo • SS certificate: identifica il dispositivo, una particolare SS. E’ generato e firmato dal costruttore. Il MAC della scheda è contenuto nel campo subject del certificato • Le BS NON hanno certificati! • I certificati sono firmati utilizzando RSA • La BS utilizza la chiave pubblica del costruttore per verificare la validità del certificato dell’SS • I certificati devono essere registrati in modo permanente nella SS Standard X.509, versione 3
Certificate Profile • Version: versione 3 • Serial number: identificativo univoco che assegna la CA • Signature: algoritmo usato per la firma (RSA) • Issuer: nome della CA che ha rilasciato il certificato • Validity: periodo di validità • Subject: nome dell’entità certificata, può contenere anche il MAC • SignatureAlgorithm: algoritmo utilizzato per hash (SHA1) • SignatureValue: contiene la firma della CA I campi più significativi dei certificati
PKM • Protocollo che gestisce la riservatezza e lo scambio delle chiavi • I due meccanismi sono: • SS Authorization: serve per concedere l’autorizzazione • Scambio e aggiornamento delle chiavi di traffico TEK Privacy and Key Management
PKM SS Authorization • Prima che la SS entri in rete, la BS deve verificare le credenziali • Distribuisce i token di autorizzazione • Si sviluppa in 3 messaggi, scambiati tra SS e BS: • Authentication Information (AI): la BS riceve il certificato del costruttore • Authorization request (Areq): il cert. della SS è usato per richiedere AK e la lista di SAID • Authorization reply (Arep): contiene AK, un n. di seq della AK, validità, lista SAID • La sequenza è la seguente: Messaggio1: (AI) : SS -> BS : Cert(Manufacturer(SS)) Messaggio2: (Areq) : SS -> BS : Cert(SS) | capabilities | CID Messaggio3: (Arep) : BS -> SS : RSA-Encrypt(PubKey(SS), AK) | AK lifetime | SeqNo (4-bit) | SAIDs
PKM SS Authorization (2) • Periodicamente la SS invia, prima che AK scada, una nuova richiesta (Messaggio2) • Per evitare problemi d’interruzione, nella fase di transizione si possono usare due chiavi • L’implementazione del processo di autorizzazione avviene attraverso una macchina a stati finiti
PKM Scambio e aggiornamento delle chiavi TEK • Serve ad ottenere una chiave per crittografare il traffico dati • Implementata da una macchina a stati finiti • La SS la richiede dopo aver ricevuto AK • Si sviluppa in 3 messaggi: Messaggio1: BS -> SS : SeqNo | SAID | HMAC(1) Messaggio2: SS -> BS : SeqNo | SAID | HMAC(2) Messaggio3: BS -> SS : SeqNo | SAID | OldTek | NewTek | HMAC(3) SAID: è l’identificativo di una SA che si vuole proteggere HMAC: digest, serve per l’integrità del messaggio, costruito con una funzione di hash La chiave TEK (NewTek, OldTek) è distribuita mediante KEK e crittografata con Triple-DES a 112 bit
PKM Fattori critici • Conoscenza di AK • Distribuzione di AK • Solo BS ed SS devono conoscerla
Key Usage Utilizzo delle chiavi • Definisce alcuni meccanismi per il rinfresco delle chiavi AK e TEK • In particolare, la SS imposta due timer: • Uno per rappresentare il tempo di validità rimanente della chiave AK • L’altro per verificare quello della chiave TEK • Questi timer sono detti “grace time” • La BS genera sempre 2 chiavi sia per AK che per TEK, ma attiva solo la prima di entrambe • La seconda sarà attivata quando la SS farà una nuova richiesta
Cryptography Suite di crittografia • I meccanismi di crittografia sono utilizzati per • Crittografare i pacchetti di dati • La chiave AK • La chiave TEK • La chiave KEK • Il calcolo dei message digest
Cryptography Crittografia dei pacchetti di dati • Serve a crittografare i dati utente • L’algoritmo utilizzato è quello stabilito nella SA • La crittografia è applicata solo al payload del MAC PDU, mai all’header • Sono definiti 2 algoritmi: • DES CBC • AES CCM (introdotto dalla versione 2004)
Crittografia dei dati DES CBC • DES ha problemi per quanto riguarda la lunghezza della chiave • L’IV è inizializzato in downlink: • (IV del messaggio TEK) XOR (campo Synch. in PHY dell’ultimo DL_MAP) • L’IV è inizializzato in uplink: • (IV del messaggio TEK) XOR (campo Synch. in PHY dell’ultimo UL_MAP)
Crittografia dei dati AES CCM • Prevede una modalità diversa nella cifratura del payload • Introduce due elementi: • PN (Packet Number): numero del pacchetto, posto in testa • ICV (Integrity Check Value): funzionalità di integrità, posto in coda • Payload e ICV sono crittografati utilizzando la chiave TEK attiva
Authorization Key (AK) Generazione • La chiave di autorizzazione è generata dalla BS • In modo casuale o pseudo-casuale • E’ inviata dalla BS alla SS: • Come risposta al messaggio di richiesta • Crittografata con l’algoritmo RSA e la chiave pubblica della SS Particolare attenzione deve essere posta nell’implementazione del generatore della chiave
Traffic Encryption Key (TEK) Generazione • La chiave di autorizzazione è generata dalla BS • In modo casuale o pseudo-casuale • Può essere protetta utilizzando 3 algoritmi: • Triple-DES a 112 bit • RSA: impiega lo standard PKCS#1 v.2.0 • AES a 128 bit • L’implementazione di default, prevede che sia utilizzato Triple-DES
Traffic Encryption Key (TEK) Crittografia con Triple-DES a 112 bit • Si utilizza il seguente schema per crittografare il TEK: C = Ek1[Dk2[Ek1[P]]] P = Dk1[Ek2[Dk1[C]]] P: TEK in chiaro a 64 bit C: TEK cifrato a 64 bit k1: i 64 bit più significativi del KEK a 128 bit k2: i 64 bit meno significativi del KEK a 128 bit E[]: cifratura a 56 bit in modalità DES ECB D[]: decifratura a 56 bit in modalità DES ECB
Traffic Encryption Key (TEK) Crittografia con AES a 128 bit • Si utilizza il seguente schema per crittografare il TEK: C = Ek1[P] P = Dk1[C] P: TEK in chiaro a 128 bit C: TEK cifrato a 128 bit k1: chiave KEK a 128 bit E[] : cifratura a 128 bit in modalità AES ECB D[] : decifratura a 128 bit in modalità AES ECB
Key Encryption Key (KEK) Generazione • La chiave KEK è derivata da AK ed è utilizzata per cifrare il TEK • Lo schema per la costruzione del KEK è: KEK = Truncate-128(SHA1((AK | 0^(44)) XOR 53^(64))) • si scartano i primi 128 bit • Il simbolo “|” indica la concatenazione tra stringhe • Il simbolo a^n indica che l’ottetto a è ripetuto n volte • SHA1 è l’algoritmo di hash
Message digest Generazione • Viene utilizzato per garantire l’integrità dei messaggi per lo scambio delle chiavi TEK HMAC_KEY_D: SHA1((AK | 0^(44)) XOR 3A^(64)) HMAC_KEY_U: SHA1((AK | 0^(44)) XOR 5C^(64))
…tutti questi meccanismi, Rendono veramente il WiMAX sicuro? Rispettano le proprietà generali della sicurezza? Sono stati specificati in modo esauriente?
Dipende … Rendono veramente il WiMAX sicuro? Si rispetto al Wi-Fi, ma non abbastanza per una tecnologia wireless geografica … Rispettano le proprietà generali della sicurezza? Non sempre, a volte ci sono problemi d’integrità… Sono stati specificati in modo esauriente? Non sempre, a volte lo standard è un po’ vago…
Tipologie di attacchi Consideriamo le seguenti tipologie • DoS (Denial of Service): interruzione del servizio • Intercettazione (Eavesdropping): accesso non autorizzato ad una risorsa o comunicazione • Modifica/Cancellazione (Tampering) (Man In the Middle) (Connection hijacking) • Falsificazione di credenziali (Masquerade) • Replay: catturare un pacchetto e ritrasmetterlo
Vulnerabilità Dove si trovano? • A livello fisico: si ricorda che • Flusso di bit strutturato in seq. di frame • 2 sottoframe per downlink e uplink • 2 modalità operative FDD e TDD • A livello MAC: si ricorda che • Implementa un sottolivello per la sicurezza • Il pacchetto MAC PDU contiene sempre l’header in chiaro • I messaggi di management sono in chiaro, salvo quelli della seconda connessione che contengono informazioni sui pacchetti IP
Livello Fisico Vulnerabilità • Vi sono tre tipologie di attacchi possibili • Water Torture: invio di una serie di frame per scaricare le batterie della stazione ricevente • Jamming: introduzione di una sorgente di rumore sul canale con l’obiettivo di diminuirne le capacità • Scrambling: simile al jamming, ma agisce per periodi di tempo più limitati, riguarda frame specifici o parti di essi. Natura intermittente
Livello Fisico Jamming • Introdurre una sorgente di rumore sul canale • il rumore deve essere elevato • Lo scopo è diminuire o negare la comunicazione tra le parti • La Probabilità che si verifichi è piuttosto elevata ma l’impatto abbastanza basso • Possibili rimedi: • Aumentare la potenza dei segnali • Aumentare la dimensione della banda dei segnali
Livello Fisico Scrambling • Introduzione di una sorgente di rumore per disturbare la trasmissione di un frame specifico o di parte di esso • È molto più specifico rispetto al jamming • È possibile selezionare alcuni messaggi di gestione, non protetti, e alterare il funzionamento della rete • Problema principale per i messaggi che non sono tolleranti ai ritardi • Provoca ritrasmissioni di dati, l’ampiezza di banda diminuisce • La probabilità che si verifichi è minore rispetto al jamming, ma è più complesso individuare l’attacco • Possibili rimedi: • Rilevare le anomalie sul canale e utilizzare criteri per valutare le prestazioni del servizio
Livello MAC Vulnerabilità • Vi sono diversi tipi di vulnerabilità • Nelle security association • Vulnerabilità nell’autenticazione semplice • Vulnerabilità generiche associate a messaggi di autenticazione e autorizzazione • Vulnerabilità nella generazione delle chiavi AK • Vulnerabilità nella generazione delle chiavi TEK • Vulnerabilità nella crittografia dei dati • Queste sono sfruttate in attacchi di diverso: • Intercettazione • Replay • Crittanalisi • Falsificazione • DoS
Livello MAC Security Association • Mancanza di un campo che identifichi una istanza di SA authorization da un’altra – Attacchi di replay • Dato che nella SA authorization sono presenti una lista di SA autorizzate, la prima vulnerabilità incide anche sulle SA di dati – Attacco di replay e falsificazione verso la SS • Lo schema di crittografia è vulnerabile ad attacchi che sfruttano il riutilizzo della chiave • Soluzioni: • Introdurre un numero casuale nelle SA authorization tra BS ed SS • Aumentare il numero di bit per l’identificazione del TEK, da 2 a 12 bit