Gestione della sicurezza di una rete Wireless tramite tecnologia Microsoft Fabrizio grossi Configurazione di Default War Driving/War Chalking: Europa Agenda • WEP • Protocollo IEEE 802.1x • Radius • PKI • EAP • PEAP • WPA WEP Autenticazione e Crittografia • Fornisce Autenticazione e Crittografia • Autenticazione generata utilizzando cifratura Challenge/Response • Lavora al livello data link, WEP richiede che la stessa secret key sia condivisa tra tutti i sistemi in comunicazione (PCs e APs) • Autenticazione per device e non per utente • Tutti i sistemi condividono la stessa chiave: WEP Vulnerabilità • • • • • • WEP può essere decifrata sia nella variante a 40- che in quella a 128-bit, utilizzando tool disponibili in Internet (Airsnort ecc..) Le chiavi WEP statiche possono essere ottenute catturando un numero sufficiente (alcune migliaia) di “Pacchetti Deboli” (Fluhrer, Martin e Shamir) A seconda del traffico della rete, questo può richiedere da poche ore a molti giorni (stiamo viaggiando a 54 Mbs) Il firmware delle schede WLAN più recenti è progettato per minimizzare la generazione di “Pacchetti Deboli” Altri attacchi: WEP Dictionary Attack (Tim Newsham wep_crack) Rogue AP • Non c’è mutua autenticazione. Un AP autentica un client ma i client non autenticano l’AP • Access non autorizzati • Sono autenticati solo i device (gli utenti no) Debolezze in WEP Non è stata progettata pensando alla Sicurezza ! • WEP (buone Intenzioni) • • • • WEP (però ...) • • • • • Usa una secret key Checksum per garantire l’integrità dei dati (checksum è cifrato con la secret key) Usa l’algoritmo di cifratura RC4 La chiave è “condivisa” Initialization Vector che è usato durante il processo di cifratura è di soli 24 bits (quando RC4 permette da 40 a 128 bit) Nessuna gestione della chiave (una delle vulnerabilità peggiori di ogni sistema di crittografia – distribuzione delle chiavi “open”) Rende il protocollo vulnerabile (“eavesdropping” “tampering”) E, quindi, compromette confidentiality & data integrity e fornisce uno scarso controllo di accesso. Agenda • WEP • Protocollo IEEE 802.1x • Radius • PKI • EAP • PEAP • WPA WEP vulnerability What the possible alternatives to WEP? Soluzioni Alternative 802.1x Aggiunge a WEP le caratteristiche del protocollo 802.1x (meccanismi di autenticazione e autorizzazione, rotazione della chiave WEP) per mitigarne le principali debolezze e per usare un server RADIUS enterprise centralizzando i directory system. WPA WPA risolve i problemi di WEP utilizzando una tecnica di cifratura complessa (TKIP: temporal key integrity protocol). Ci saranno ulteriori miglioramenti con lo standard 802.11i. VPN VPN, creano un tunnel attraverso Internet e sono state usate nell’accesso dial-up da remoto. La tecnologia VPN può utilizzare una cifratura forte e può anche fornire l’autenticazione per utenti e terminali wireless utilizzando RADIUS. Combinazione di tecnologie Combinazione delle tecnologie esistenti. Protocollo IEEE 802.1X Protocollo IEEE 802.1X • Standard IEEE per reti Locali e metropolitane che utilizza: Port-Based Network Access Control • Approvato da IEEE-SA Standards Board il 14 Giugno 2001 (http://standards.ieee.org/getieee802/download/802.1X-2001.pdf) • Approvato da American National Standards Institute (ANSI) il 25 Ottobre 2001 Protocollo IEEE 802.1X • Definisce un meccanismo di Autenticazione e Autorizzazione per Port-based network devices (IEEE 802 LAN) • L’obiettivo è impedire l’accesso alle porte da parte dei device se il processo di Autenticazione e Autorizzazione fallisce. • Si basa su tecnologie esistenti: • Extensible Authentication Protocol (EAP) • Remote Authentication Dial-In User Service (RADIUS) Protocollo IEEE 802.1X Semi-Public Network Enterprise Network Authentication Server Authenticator Supplicant : entità (client/user) che viene autenticata dall’Authenticator Supplicant Authenticator : entità (NAS, AP) che facilità l’autenticazione di altre entità Supplicant Non-802.1X Authentication Server : entità (RADIUS Server) che fornisce un servizio di autenticazione a un autenticatore Protocollo IEEE 802.1X Un passo avanti Per una implementazione sicura con IEEE 802.11, si usano: • RADIUS: Remote Authentication Dial-In User Service • PKI: Public Extensible Key Infrastructure • EAP: authentication protocol • PEAP: Protected Extensible authentication protocol • Active Directory per migliorare la gestione, l’affidabilità e la sicurezza RADIUS Remote Authentication Dial-In User Service IAS Internet Authentication Service RADIUS Overview • Remote Authentication Dial-In User Service (RADIUS) • RFCs 2865 e 2866 • Fornisce Autenticazione, Autorizzazione e Accounting centralizzati (AAA) per: • Access Point (AP) Wireless • Authenticating Ethernet switches • Virtual private network (VPN) server • Altri Network Access Server (eg: NAS for PSTN) RADIUS Chiavi di Cifratura • RADIUS genera chiavi di sessione per-user • • Usate per la cifratura WEP RADIUS server manda la chiave di sessione all’Access Point (cifrata con lo shared secret AP - RADIUS) • Access point ha una global WEP key • • • Usata durante l’autenticazione del client all’AP Inviata nel messaggio EAPOW-key Cifrata con la chiave di sessione • Le chiavi sono rigenerate quando… • • La chiave scade (60 minuti di default) Il Client si connette a un altro AP IAS Overview • Internet Authentication Service • Microsoft® RADIUS server fornito con Windows Server Family • Usa Active Directory® come Database degli account utente • Usa le credenziali degli utenti di Dominio per l’autenticazione • Per l’Autorizzazione usa le proprietà di dial-in dell’utente e le remote access policy • Supporto per Policy sofisticate basate su gruppi, access medium, time of day, ecc. IAS Remote Access Policy • Insieme ordinato di regole che definiscono come le connessioni sono autorizzate o rifiutate basandosi su: • Condizioni • Impostazioni del Profilo • Se autorizzati, il profilo e le proprietà di dial-in dell’account specificano le restrizioni della connessione IAS Autorizzazioni per Wireless • Remote access permission per gli account utente • Remote access policy per tipo di connessione wireless e per gruppo • Condizioni • NAS-Port-Type=Wireless-IEEE 802.11 • Windows-Groups membership (eg = WirelessUsers) • Impostazioni del Profilo • Cifratura più sicura • Metodologia di autenticazione EAP-TLS IAS Infrastruttura generale Access clients Dial-up server VPN server Wireless AP Access servers IAS proxy RADIUS protocol IAS server Active Directory PKI Public Key Infrastructure PKI Certificati in PEAP e EAP/TLS • Certificato Computer installato su: • Wireless client • IAS server • Il Certificato utente non è necessario per i client wireless che usano PEAP • Il Certificato utente deve essere presente sui client wireless per utilizzare EAP/TLS • Ogno entità deve essere in grado di validare il certificato dell’altra entità • Wireless client Certificato IAS server • IAS server wireless Certificato client PKI Novità in Windows Server 2003 • Migliore gestione della CA con la separazione dei ruoli di gestione della CA: • (admin, officer, auditor e backup operator) • Auto enrollment per utente • Auto renewal per utente e computer • Delta CRL publishing e processing • “CAPICOM” per firma & cifratura • General private key archival/recovery service • Certificate template editabili EAP Extensible Authentication Protocol EAP Overview • Framework per specificare i meccanismi di autenticazione • Permette di scegliere i meccanismi di autenticazione • No built-in security • I metodi di autenticazione devono incorporare metodologie di sicurezza EAP Flusso di Autenticazione Wireless Wireless AP Wireless client EAP messages RADIUS messages EAP conversation RADIUS server EAP EAP in IEEE 802.1x • IEEE 802.1x supporta nativamente MD5Challenge (CHAP) nell’autenticazione EAP • MD5 challenge è vulnerabile agli attacchi a dizionario per trovare la password utente • MD5 challenge NON è appropriato per un accesso Wireless Sicuro PEAP Protected EAP • Metodo di Autenticazione basato su EAP • Usa un canale cifrato durante l’autenticazione EAP • E richiesto un Certificato sul RADIUS server (solo per autenticare il server) • Elimina gli attacchi a dizionario off-linecontro le password PEAP Architettura TLS GSS_API Kerberos PEAP MS-CHAPv2 TLS IKE MD5 EAP layer EAP PPP 802.3 802.5 method layer 802.11 Anything… media layer EAP/TLS Certificato utente • L’utente ha il proprio certificato client • Il processo di logon al dominio Windows avviene tramite il certificato (no password) • Mutua Autenticazione: • RADIUS <> Client • E’ necessaria una Public Key Infrastructure per le gestione dei certificati IEEE 802.1X associato a IEEE 802.11 802.1X Over 802.11 Supplicant Authenticator (wireless client) (Access Point) 802.11 association Authentication Server (RADIUS Server) Access blocked EAPOL-start EAP-request/identity EAP-response/identity RADIUS-access-request EAP-request RADIUS-access-challenge EAP-response (credentials) RADIUS-access-request EAP-success RADIUS-access-accept EAPOW-key (WEP) Access allowed IEEE 802.1X protocol Associazione • La connessione LAN dell’Autenticatore ha due “porte” virtuali (controllata e non controllata) • L’associazione 802.11 avviene inizialmente utilizzando la porta non controllata • Deve parlare con l’AP e ottenere un indirizzo IP • E’ permesso solo l’accesso all’AP (porta non controllata) fino a che non si è autenticati con successo • AP scarta il traffico non-EAPOL • Dopo che la chiave è stata inviata (EAPOW-key), l’access attraverso l’AP è permesso tramite la porta controllata Prima dell’Autenticazione Air Access Point (Authenticator) RADIUS Server (AuthN Server) CA Directory DHCP Wireless client (supplicant) Radio Controlled port: impedisce ai client l’accesso alla LAN Radio Uncontrolled port: permette all’autenticatore di contattare il server di autenticazione Dopo l’Autenticazione Air Access Point (Authenticator) RADIUS Server (AuthN Server) Wireless client (supplicant) Radio Controlled port: adesso permette al supplicant di accedere alla LAN (DHCP releases an IP address) CA Directory DHCP PEAP Windows domain logon IAS requests client identity and sends its’ public certificate to create TLS channel Uncontrolled Port TLS channel Client send computer and user credentials through TLS channel IAS IAS validates computer and user credentials, then sendsWEP key WEP session key 1. wireless join request 2. successful wireless join Access Point User inserts its own credentials AP permits traffic only through uncontrolled port AP permits traffic through controlled port DHCP Client requests IP Address DHCP releases IP Address Client sends logon credential to DC (Kerberos) Controlled Port DC verifies credentials and sends TGT (Kerberos) DC IEEE 802.1X protocol Miglioramente nella sicurezza • Cosa aggiunge 802.1X per rendere securo WEP: • Autentica utenti e/o computer prima che il client ottenga un indirizzo IP valido • Gestisce chiavi le chiavi che possono essere usate per fornire autenticazione, integrità e confidenzialità per-packet • Effettua frequenti scambi di chiavi e chiavi differenti sono usate per ogni client IEEE 802.1X con PEAP Hacker Challenge 1/3 • Gli attacchi per decifrare la chiave WEP (Spoofing Attack e Sniffing)sono mitigati da 802.1x e non possono essere più usati • Di cosa ha bisogno un hacker per accedere a una rete protetta da 802.1x con PEAP: 1. Certificato della Root CA usata dal RADIUS Server • Non è obbligatorio se il client sceglie di non vallidare il certificato server IEEE 802.1X con PEAP Hacker Challenge 2/3 2. Username e Password di un utente wireless autorizzato • Può essere ottenuto con : • Chiamata che sembra provenire dall’ IT Department/Help Desk che richiede username/pwd • Falsa mail dall’ IT/help Desk, modificato che richiede username/pwd, con un indirizzo “from” intercettato e un “reply to” modificato IEEE 802.1X con PEAP Hacker Challenge 3/3 - Esempio Received: from BMX (69.10.5.17) by mail.secure.net (6.5.032) id 3E886DE400572C0F for [email protected]; Wed, 9 Apr 2003 11:50:47 +0200 Message-ID: <003301c2fe7d$7e336620$e916160a@BMX> Reply-To: "IT Help Desk" <[email protected]> From: "IT Help Desk" <[email protected]> To: <[email protected]> Subject: Expense Report password change Date: Wed, 9 Apr 2003 11:50:43 +0200 MIME-Version: 1.0 (omissis....) Hi, starting from tomorrow we are going to upgrade the Expense Report system. In order to mantain access, please provide me your exact Domain username/password (with correct uppercase/lowercase letter) before tomorrow evening Best Regards, John Smart, IT Helpdesk Manager www.secure.net /*\ .. . . . . . . . . . . . . \ / . ASCII Ribbon Campaign . X .- NO HTML/RTF in e-mail . / \ .- NO Word docs in e-mail. / \ .. . . . . . . . . . . . . IEEE 802.1X con PEAP Analisi dei rischi • Controlli di Sicurezza applicati: • Metodi di Autenticazione migliori di quelli di WEP: • Ogni utente deve autenticarsi con utente & password di Dominio. Eventalmente si può autenticare il computer invece che l’utente. • Le credenziali sono inviate in un tunnel TLS cifrato • Migliore cifratura dei dati (Confidentiality, Integrity) • Migliora la gestione delle chiavi WEP key (mitiga WEP Key Crack and Disclosure) IEEE 802.1X with PEAP Analisi dei rischi • Costo di implementazione / gestione • Alto (small network) • Basso (enterprise network, facile da distribuire) • Rischio residuo • Medio/Basso (vulnerabilità delle password deboli) IEEE 802.1X with EAP-TLS Hacker Challenge • Di cosa ha bisogno un hacker per accedere a una rete protetta da 802.1X-EAP-TLS 1. Il Certificato Utente (e/o computer) di un utente autorizzato a usare wireless • Non è semplice da ottenere con social engineering e altri metodi. La cosa migliore è rubare un laptop! 2. Uno Username & Password per autenticarsi sul laptop per accedere ai Certificati nello storage protetto • Attacco brute force attack o social Engineering IEEE 802.1X with EAP-TLS Analisi dei rischi Controlli di Sicurezza applicati : • Stessi di PEAP con metodo di Autenticazione migliore • Autenticazione è fatta utilizzando il certificato utente dello user invece che username/password • Certificato può essere salvato in: 1. “storage protetto” del Computer, a cui può accedere solo l’utente dopo che ha fatto logon con Username & Password validi 2. Smart card che deve essere rimossa dal computer e a cui si accede solo digitando il PIN (2 factor authentication) IEEE 802.1X with EAP-TLS Analisi dei rischi • Costo di implementazione / gestione • High (small network) • Medium (enterprise network, richiede PKI) • Rischio residuo • Medio/basso • basso (2 factor auth: certificate su smart-card con PIN) IEEE 802.1X protocol Unresolved vulnerabilities • Debolezze di 802.11 • • Autenticazione/Cifratura per i pacchetti di gestione (reassociate, disassociate) Altre debolezze di WEP • Bit flipping con IV conosciuti (packet spoofing) • No IV replay protection • Saranno risolti dal nuovo standard: Wi-Fi Protect Access (WPA) e 802.11i • PEAP “user” vulnerability • Utente usa password deboli e non c’è una policy per imporre password sicure IEEE 802.1X protocol Denial of Service • 802.11 messaggi associate/disassociate sono non autenticati e in chiaro • Attacker può forgiare messaggi di disassociation causando Denial of Service • Tutti i client sono forzati a disassociarsi e riassociarsi, il trasferimento dati è interrotto IEEE 802.1x Disponibilità nella piattaforma Windows • Client: Windows XP service pack 1 • Server: Windows Server 2003 IAS • Backporting a Windows 2000 • Client e IAS devono avere SP3 • Client e IAS devono avere 802.1x client pack (KB 313664) Wi-Fi Protected Access (WPA) Quick overview • Standard interim su cui si sono accordati i wireless vendors • Contiene un sottoinsieme delle feature di sicurezza che sono nello standard 802.11i (comincia a essere disponibile) Wi-Fi Protected Access (WPA) Caratteristiche di sicurezza • Autenticazione • • Cifratura e data integrity • • • • Autenticazione 802.1x è obbligatoria in WPA (EAP o preshared key in SOHO) Temporal Key Integrity Protocol (TKIP) rimpiazza WEP per alcune operazioni Nuovo algoritmo di message integrity check (MIC) che utilizza il Michael algorithm WPA definisce l’uso di Advanced Encryption Standard (AES) come un sostituto opzionale per la cifratura WEP (dipende dalle funzionalità HW) WPA risolve molte delle debolezze di WEP References • Security of the WEP Algorithm • http://www.isaac.cs.berkeley.edu/isaac/wep-faq.html • 802.1x – Port-Based Network Access Control • http://www.ieee802.org/1/pages/802.1x.html • PPP Extensible Authentication Protocol • http://www.ietf.org/rfc/rfc2284.txt • PPP EAP-TLS Authentication Protocol • http://www.ietf.org/rfc/rfc2176.txt • Protected EAP Protocol • ftp://ftp.rfc-editor.org/in-notes/internet-drafts/ draft-josefsson-pppext-eap-tls-eap-05.txt References Microsoft PKI Technology Page http://www.microsoft.com/technet/security/pkitech .asp What’s New in Windows XP and .NET http://www.microsoft.com/windowsxp/pro/techinfo /planning/pkiwinxp/default.asp References WPA The Cable Guy - March 2003 - Wi-Fi Protected Access (WPA) Overview http://www.microsoft.com/technet/treeview/def ault.asp?url=/technet/columns/cableguy/cg020 3.asp Overview of the WPA Wireless Security Update in Windows XP http://support.microsoft.com/?kbid=815485 Wi-Fi alliance WPA information http://www.wifi.com/OpenSection/protected_access.asp Lab: Creazione utenti in AD • Creo 3 utenti in AD: • neo2, neo3, neo4 • Fanno parte dei Gruppi: • Utenti-WIFI • Utenti-VPN Come si implementa • Autoenroll dei Certificati • Configurazione dell’AP • Configurazione dell’IAS Server (Radius) • Configurazione del client Lab: Configurazione Access Point • Configuro l’Autenticazione: • WPA • Configuro l’indirizzo IP del Radius Server (IAS) • Shared Secret con password “forte” Lab: configurazione IAS (Radius) • Aggiungo l’AP come Radius Client • Radius Standard • Configuro lo stesso Shared Secret che ho inserito sull’AP • Creo una RemoteAccess Policy • Policy Conditions: • NAS-Port-Type = Wireless • Windows-Group = CONT \ Utenti-WIFI • Imposto il Profilo: • Autenticazione = PEAP e EAP-TLS • Assegno un certificato Lab: Configurazione del Client (PEAP) • Administrator configura le rete Wireless SecurityV per utilizzare Autenticazione WPA (PEAP) • Wireless Network Key: • • • • Autenticazione: • • • • • • • WPA / TKIP AES ??? Occhio all’hardware ! E’ Autenticazione WPA (non confondere con interfaccia dell’AP HP-520) PEAP con le credenziali di logon – valida il certificato server NON: Authenticate as computer REBOOT per situazione Standard = utente riceve pc e lo accende. REBOOT - Logon come utente che ha già creato il profilo sul client -Analisi di log (Event Viewer – System) REBOOT - logon con utente nuovo -Analisi di log (Event Viewer – System) = NON c’è il PROFILO!!! Abilito Authenticate as computer: DIFFERENZE Stiamo usando UN SOLO certificato (IAS Server) Lab : Creazione dei Certificati • Creare modello di Certificato (AutoEnroll) • • Duplico un modello esistente (User o computer) Deve ottenere le informazioni per costruire il certificato senza richiedere input • Request Handling e Subject Name • Attenzione per esempio all’e-mail name • • • • Attenzione alle politiche di pubblicazione in AD e al blocco dei duplicati Assegno le permission di Read, Enroll Autoenroll agli Authenticated User o ai Domain Computers Rilascio il Certificato nella CA Modifico le Group Policy Lab: Configurazione del Client (EAP-TLS) • Administrator imposta Smart Card or Other Certificate e configura le rete Wireless SecurityV per utilizzare Autenticazione WPA (EAP-TLS) • Wireless Network Key: • • WPA / TKIP Autenticazione: • Smart Card or other Certificate valida il certificato server • • • • • • Usa un certificato sul computer e non la Smart Card Authenticate as computer Logon come utente che ha già creato il profilo sul client -Analisi di log (Event Viewer – System) logon con utente nuovo -Analisi di log (Event Viewer – System) = NON c’è il PROFILO!!! Abilito Authenticate as computer: DIFFERENZE Stiamo usando UN certificato per l’IAS Server e UNO per ogni utente. • • AutoEnroll AutoEnroll anche per il rinnovo dei certificati Lab: note • Autoenroll ha delle difficoltà con Auth EAP-TLS: • Si autentica come computer • Non fa in tempo a fare AutoEnroll di certificato user • Il problema è il tempo di aggiornamento di GPO • Bisogna usare la connessione Wired se no si disconnette Lab: reti SOHO • Autenticazione WPA-PSK (Pre Shared Key) • Ottima sicurezza • Bassissimi costi (non serve un server) • Rimane il problema delle Password deboli (PSK) e del rinnovo della PSK • Ottimo per casa / studi /uffici con pochi client Lab: Utente va a casa e si collega con VPN • Disabilito scheda Wireless e lo collego con Ethernet • Può usare PPTP • Ha i certificati (AutoEnroll anche per certificato per IPSec) • Può usare L2tp/IPSec • Molto più sicuro • Molto più efficente, non chiede credenziali: doppio click e si connette. • Posso creargli le connessioni con CMAK Lab: Conclusioni • Cosa ha dovuto fare l’utente dopo la consegna del PC? • • Richiesta certificati ? NO! Configurazioni Wireless ? NO! • Vedi GPO e le nuove GP di W2k3-SP1 • Configurazioni VPN ? NO ! • CMAK • Funziona tutto! Non ha scuse gli tocca lavorare ... • Rischi residui ? Password Deboli !!! • Soluzione ? Smart Card !!! © 2001 Microsoft Corporation. All rights reserved.