240 likes | 437 Views
EduRoam en beveiliging. Klaas.Wierenga@SURFnet.nl SURF Security Officers 11 April 2004 Utrecht. Inhoud. Inleiding EduRoam 802.1X RADIUS EduRoam RADIUS issues 802.1X issues EduRoam-NG Conclusie. Inleiding EduRoam.
E N D
EduRoam en beveiliging Klaas.Wierenga@SURFnet.nl SURF Security Officers 11 April 2004 Utrecht
Inhoud • Inleiding EduRoam • 802.1X • RADIUS • EduRoam • RADIUS issues • 802.1X issues • EduRoam-NG • Conclusie
Inleiding EduRoam • EduRoam is voortzetting van 3-staps RADIUS infrastructuur tbv inbellen (en later ADSL) • Nu gebruikt voor inbellen en 802.1X • Binnenkort ook voor SVP en wellicht A-Select • Model: 802.1X voor gastgebruik
IEEE 802.1X • Porrtgebaseerde authenticatie (laag 2) tussen client en AP/switch • Verschillende authenticatie mechanismes (EAP-MD5, MS-CHAPv2, EAP-SIM, EAP-TLS, EAP-TTLS, PEAP) • Standaard • Encrypt data gebruik makend van dynamische keys • Kan RADIUS back end gebruiken: • Schaalbaar • Hergebruik bestaande trust relaties • Eenvoudige integratie met dynamische VLAN toewijzing • Client software nodig (ingebouw of 3d party) • Wireless en wired
EAP • PPP Extensible Authentication Protocol • EAP ondersteunt verschillende authenticatie mechanismen • Authenticatie mechanisme geselecteerd in de Authentication fase, niet in de Link Control fase • Gebruik “backend” authenticatie server
f.i. LDAP EAP over RADIUS EAPOL Hoe werkt 802.1X (in combinatie met 802.1Q)? Supplicant Authenticator (AP or switch) RADIUS server Institution A User DB jan@student.institution_a.nl Internet Guest VLAN Employee VLAN Student VLAN signalling data
Door de protocol stack Supplicant (laptop, desktop) Authenticator (AccessPoint, Switch) Auth. Server (RADIUS server) EAP 802.1X RADIUS (TCP/IP) EAPOL Ethernet Ethernet
RADIUS: doel • Protocol voor transport voor authenticatie en autorisatie informatie • Entiteiten: Network Access Server (NAS) en RADIUS server • RADIUS server moet om een gebruiker te authenticeren: • Het authenticatie protocol van de gebruiker begrijpen (PAP, CHAP etc.) • Begrijpen hoe de gebruiker credentials te verifieren tegen een user database
RADIUS: formaat • RADIUS paketten bestaande uit attribuut-waarde paren (bijv. “Username=‘Klaas’, Password=‘saalK’”) • RADIUS is uitbreidbaar, mogelijkheid tot Vendor Specific Attributes • RADIUS gebruikt UDP (Authenticatie 1812 (1645), Accounting 1813 (1646))
Radius: security model • RADIUS peers (NAS naar server, server naar server) vormen een trust relatie d.m.v. een shared secret • Het secret wordt gebruikt om verschillende attributen te versleutelen (password) • Versleutelde hash over pakket om wijziging pakket tegen te gaan
RADIUS: gebruikers authenticatie • Client stuurt credentials naar NAS • NAS genereert Access-Request • Access-Request wordt geforward naar de RADIUS server • RADIUS server valideert credentials • Valide: Access-Accept • Niet valide: Access-Reject
Proxy RADIUS • Een RADIUS server kan RADIUS paketten naar andere RADIUS servers voor verdere verwerking • Proxy RADIUS wordt normaliter gebaseerd op de basis van een ‘realm’ die wordt toegevoegd aan de username: • User@realm • Packet wordt geproxied naar een andere server geassocieerd met ‘realm’ • Proxy RADIUS is de basis voor EduRoam
EduRoam Supplicant Authenticator (AP or switch) RADIUS server Institution A RADIUS server Institution B User DB User DB Guest piet@institution_b.nl Internet Guest VLAN Employee VLAN Central RADIUS Proxy server Student VLAN • Simpel, schaalbaar en robuust mechanisme voor het doorsturen van de gebruikers AAA naar de thuisinstelling signalling data
FUNET SURFnet DFN CARnet Radius proxy hierarchie University of Southampton FCCN RADIUS Proxy servers connecting to a European level RADIUS proxy server
RADIUS issues: shared secrets • Probleem: De communicatie tussen RADIUS-servers is beveiligd d.m.v. shared secrets • Oplossing: • Gebruik lange, moeilijke shared secrets • Gebruik aanvullende indicatoren (CLIP, NAS-IP etc.) • Gebruik een ander shared secret voor elke NAS • IPsec • TLS
RADIUS issues: proxy loops • Probleem: • De toplevel RADIUS-server stuurt user@kantoor.surfnet.nl naar radius.surfnet.nl op basis van een regel voor *.surfnet.nl • Radius.surfnet.nl handelt requests van het type user@surfnet.nl af en stuurt alle andere requests door naar de toplevel RADIUS-server (dus ook @kantoor.surfnet.nl) • D.C. al fine • Oplossing: stuur nooit RADIUS paketten terug naar de afzender
RADIUS issues: hop-by-hop security en trust • Probleem: Alleen het pad tussen NAS en server en servers onderling is versleuteld • Tussenliggende servers kunnen alle communicatie zien • Geen end2end security • ‘Transitief’ web of trust • Oplossing: • Gebruik een PKI • Beschouw infra als inherent onveilig en los de security op een andere laag op EAP
EAP-typen • EAP-TLS • Server en client verificatie middels server respectievelijk eindgebruikerscertificaten • EAP-TTLS en PEAP • Server verificatie middels server certificaat • Client verificatie over TLS-tunnel
Getunnelde authenticatie (TTLS/PEAP) • Gebruikt TLS tunnel om data te protecten • De TLS tunnel wordt opgezet m.b.v. het server certificaat, hierdoor is er server authenticatie en worden man-in-the-middle attacks voorkomen
802.1X issue • Probleem: koppeling tussen user en poort met 802.1X op laag 2 (MAC-adres) terwijl incidenten op basis van IP zijn • Oplossing: leg een koppeling tussen IP-adres, MAC-adres, user en tijd
EduRoam-NG • Fundamentele keuze: • De RADIUS-infra ‘veiliger’ maken of • Zorgen voor veilige end2end communicatie of • … beide • Om zo nieuw gebruik mogelijk te maken, bijvoorbeeld federatief gebruik van A-Select
Conclusie • De huidige EduRoam infrastructuur is, mits op de juiste manier gebruikt, veilig • Voor toekomstige uitbreiding dienen er nog wel keuzen gemaakt te worden
Oproep • Er is behoefte aan best-current-practises, ofwel, wie biedt?
Meer information • SURFnet en 802.1X • http://www.surfnet.nl/innovatie/wlan • The unofficial IEEE802.11 security page • http://www.drizzle.com/~aboba/IEEE/