Le 802.1X est un standard englobant l'identification et l'authentification des utilisateurs d'un réseau afin d'en contrôler l'autorisation d'accès. De plus en plus déployé, car les réseaux récemment rehaussés le supportent, cet ensemble de technologies comporte néanmoins plusieurs limites méconnues. Cette présentation vise, tout d'abord, à expliquer sommairement le 802.1X et à partager les défis et problèmes d'un tel déploiement. Ensuite, nous couvrirons certaines solutions rencontrées pour palier aux problèmes et nous verrons comment les contourner (et comment prévenir le contournement). Nous terminerons avec un regard vers les standards et technologies à l'horizon qui vont transformer la situation actuelle.
2. Plan
• Introduction
• La technologie
• Implémentation
o Configuration
o Défis
• Vulnérabilités
• Contre-mesures
• Futur
• Conclusion
• Questions
3. Qui suis-je?
• Olivier Bilodeau, Ingénieur junior
• Architecte système chez Inverse
o PacketFence, Open Source NAC
o Consultation sur la sécurité filaire et sans fil
• Chargé de cours à l'École de technologie supérieure
o Sécurité des systèmes
4. Avertissement!
Ceci n'est pas un argumentaire (sales pitch).
Si vous avez envie de discuter NAC et PacketFence
venez me voir après la présentation, ça va me faire
plaisir!
5. Contexte / Bagage
"Your security is only as strong as your weakest link."
• Vision globale
• Faire les choses dans l'ordre
"Security is a journey not a destination."
• Ce n'est jamais fini
• But: rendre la job plus difficile pour les attaquants
6. Les réseaux d'entreprises aujourd'hui
• Communications avec l'Internet
o Pare-feu
o Filtrage courriel
o Filtrage Web
• VPN pour employés, consultants
• DMZ pour serveurs
• Contrôle d'accès physique stricte (pour certains)
Une protection de périmètre étoffée! ...
7. Mais à l'intérieur...
• On fait le minimum (et encore...)
o storm control
o prévenir serveurs DHCP malicieux
o prévenir man-in-the-middle layer 2
o port-security de base
o ségrégation en VLAN et ACLs
• On ne sait pas qui et quoi est branché sur notre réseau
• Accès garanti si vous trouvez une prise réseau!
o peut-être même à l'infrastructure
9. Pourquoi faire attention au LAN?
• Traditionnellement
o défendre les attaques niveau 2 intentionnelles ou pas
o ralentir la propagation des vers
• Menaces principalement sans intentions malicieuses
o matériel non-autorisé
o matériel infecté
o matériel non sécuritaire
• Menace motivée
o portable branché dans la salle d'attente
o un point d'accès rogue au bon endroit...
• Pour faire plaisir à son auditeur
10. Ce n'est pas assez!
C'est bien beau votre port-security et vos ACLs
strictes, mais si un employé bien intentionné peut
brancher un NAT Router et offrir du sans fil
'open', sans que vous ayez un moyen de le
prévenir ou de vous en rendre compte vous
avez augmenté votre surface d'attaque.
(Les War Drivers raffolent de ça!)
11. Durcissement du LAN
• IP statiques
o vulnérabilité: auto-assignation
• DHCP statique selon la MAC
o vulnérabilité: auto-assignation
• Port Security
o vulnérabilité: patience ou usurpation MAC
• NAC basé DHCP
o vulnérabilités variées selon la technique: de l'usurpation
MAC ou IP d'un client autorisé, auto-assignation
paramètres infrastructure
12. Durcissement du LAN (suite)
• NAC basé sur l'empoisonnement ARP
o vulnérabilités: usurpation MAC, entrées ARP
statiques, NAT
• NAC basé sur le Port Security
o vulnérabilité: usurpation MAC
• IDS / IPS
o manquent souvent le traffic interne
o pas du contrôle d'accès
• Les techniques frappent toujours la même limite
o Aucune notion de contrôle d'accès dans le L2
14. 802.1X: Terminologie
• Port-Based Network
Access Control
• Acteurs
o Supplicant
o Authenticator
on voit aussi Network Access Server (NAS)
o Authentication Server
• Protocoles
o Extensible Authentication Protocol (EAP)
o Remote Authentication Dial In User Service (RADIUS)
15. 802.1X:
Processus
1. Client qui supporte 802.1X
o Dialogue avec équipement en EAP over LAN (EAPoL)
2. Authenticator (NAS) communique avec serveur RADIUS
o Incluant des messages EAP chiffrés
o Selon la saveur de EAP, il peut y avoir un Challenge-
Response
3. Serveur RADIUS
o prend la décision finale
o envoit des instructions supplémentaires au NAS
16. 802.1X over RADIUS
• 802.1X spécifie l'utilisation d'un protocole de AAA
o Authentication
o Authorization
o Accounting
• Solution: RADIUS
o Protocole simple d'échange clé-valeur
o Messages types:
Access-Request
Access-Challenge
Access-Accept ou Access-Reject
Accounting-Request
...
17. 802.1X: EAP
• Supporte plusieurs mechanismes d'authentification
o interchangeables
o sans negociation préalable
• Authenticator (NAS) peut agir comme passthrough
o n'a pas a supporter les nouvelles variantes
• multiplexable
o EAP dans EAP (comme IP dans IP)
• Certaines variantes permettent l'échange de clés
cryptographiques
o WPA Enterprise
18. 802.1X: Saveurs de EAP
• EAP-MD5 (simple, vulnérable, vieux)
• EAP-TLS (standard)
o certificats côté client obligatoires
• EAP-FAST (Cisco)
• EAP-TTLS (assez standard)
o certificat côté serveur signé par un CA
• PEAPv0/EAP-MSCHAPv2 (Microsoft)
o Permet authentification bout en bout sur un Active
Directory (AD)
21. 802.1X supplicants
• Windows
o EAP-TLS depuis Windows 2000 SP4
o PEAPv0/EAP-MSCHAPv2
• Mac OS X
o EAP-TLS (10.3)
o EAP-FAST (10.4.3)
o PEAPv0/EAP-MSCHAPv2
• Linux
o wpa_supplicant (EAP-TLS, PEAPv0/EAP-MSCHAPv2...)
• Multi-plateforme
o Open1X
• De plus en plus de matériel
o Avaya IP Phone
o Imprimantes, etc.
22. 802.1X Support
• Côté Supplicant
o Microsoft a mené, tous on suivi
o Intégration AD est confortable sous PEAP-MsCHAPv2
o Alternatives libres
o Support matériel reste problématique
• Côté matériel réseau
o fragmentation remarquée
o possibilités varient beaucoup
o mais la base fonctionne presque partout
• Côté serveur d'authentification
o logiciel libre: FreeRADIUS
o Cisco ACS
o Microsoft IAS
23. 802.1X: Intégration avec legacy
Les fabricants de matériel réseau ont dû résoudre la
problématique.
• Apparition de:
o MAC Authentication Bypass aka MAB (Cisco)
o MAC-based authentication (HP)
o NEAP (Nortel)
o Netlogin (Extreme Networks)
o MAC RADIUS (Juniper)
• Qui consiste à faire du RADIUS authentication avec la MAC
comme User-Name
o après que le dialogue EAPoL ait échoué
o la plupart sans EAP, certains avec
24. 802.1X: Les possibilités
• Assignation de VLAN selon critères flexibles
o Position géographique (building, étage, etc.)
o Groupe AD (compatibilité, vente, ingénierie, ...)
o VLAN de quarantaine
o ...
• Refuser l'accès selon vos critères
o postes mal configurés
o portables de la maison qui n'ont pas le bon certificat
o ...
25. 802.1X Avantages
• Utilise AAA donc bénéficie de la centralisation des décisions
de sécurité réseau quant à:
o Authentification
o Autorisation
o Audit
• Configuration des ports unifiée*
• Centralisation de la gestion des VLAN
• Bien conçu, a l'épreuve du temps
• Tout est standard et gratuit!
27. Configuration Supplicant
• Mac OS X
o Advanced 802.1X
o Activer PEAP et TTLS
o Inscrire vos authentifiants
• Linux
o utilisez NetworkManager!
o wpa_supplicant, excellent pour apprendre
• Windows
o exercice laissé au participant
35. Configuration FreeRADIUS (suite)
• Configurer SAMBA (suite)
o /etc/samba/smb.conf
[global]
workgroup = <AD host portion>
server string = <hostname>
interfaces = <eth0 IP / mask>
security = ADS
passdb backend = tdbsam
realm = <AD domain>
encrypt passwords = yes
winbind use default domain = yes
client NTLMv2 auth = yes
preferred master = no
Et tester!
# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER
Press enter to see a dump of your service definitions
...
36. Configuration FreeRADIUS (suite)
• Configurer SAMBA (suite)
o Joindre au domaine
# net ads join -U <domain admin>
o Démarrer winbind
# service winbind start
o Test ntlm_auth
$ ntlm_auth --username <test user>
password:
NT_STATUS_OK: Success (0x0)
o Permettre à RADIUS d'accéder au socket Winbind
# chgrp radiusd /var/cache/samba/winbindd_privileged/
37. Déboguer
• FreeRADIUS: Inévitable... mais facile!
# radiusd -X
[...]
Ready to process requests.
Ignoring request to authentication address * port 1812 from unknown client 10.0.0.2 port 1645
Ready to process requests.
[...]
rad_recv: Access-Request packet from host 192.168.1.222 port 57948, id=156, length=207
User-Name = "test"
EAP-Message =
0x020a002b190017030100201657d69ade41a6871211f5c16cd62a869d29ff173ced8b89687fcb2da124891e
Message-Authenticator = 0x430b4c4b7331470b8e74ee7c713042e4
NAS-Port-Id = "ge-0/0/46.0"
Called-Station-Id = "00-1f-12-36-e0-c0"
NAS-Port-Type = Ethernet
...
[peap] Success
[eap] Freeing handler
++[eap] returns ok
...
++[perl] returns ok
...
Sending Access-Accept of id 156 to 192.168.1.222 port 57948
Tunnel-Type:0 = VLAN
Tunnel-Medium-Type:0 = IEEE-802
...
• L'équipement réseau
o show log
38. Les défis
• Gestion périphériques non-802.1X
o Imprimantes
o PXE
o Machines virtuelles bridged
o ...
• Gestion des invités
• Téléphone IP
• Configuration des postes
• Formation du personnel
• Complexité
39. La complexité
• Complixité statique
o OS des postes
o Logiciel supplicant (si applicable)
o OS des commutateurs
o Trouver tous ses périphériques réseau non-802.1X
o Derrière un téléphone IP ou pas
o Version serveur RADIUS
• Complexité dynamique
o Déplacement de port
o Changement de VLAN (réaction face à)
o Redémarrage (peut déclencher MAC Authentication)
o Approvisionnement (VoIP, PC)
41. Vulnérabilité de l'implémentation
802.1X
• Regarder là où il n'y en a pas...
"Look for 802.1X exceptions such as printers, VoIP phones"
-- Joseph McCray, Learn Security Online, Defcon 18
• Trouver les ports où 802.1X est désactivé
• Usurpation MAC!
43. 802.1X: Gérer le non-802.1X
• Oublier la configuration d'exception par port
=> 802.1X + MAC Authentication
• VLAN d'exceptions / ACLs strictes
• DHCP Fingerprinting
• TCP Fingerprinting
• Surveillance
o IDS / IPS
o Profilage de traffic (NetFlow, IPFIX)
Toutes ces solutions demandent un certain suivi
45. 802.1X Bypass
• 802.1X veut dire Port-Based Network Access Control
o Mais si on arrive après l'autorisation?
• Empêcher le port d'être down
• Hub man-in-the-middle!
+ Ursupation MAC
• Accès physique requis
• Intrusif
46. 802.1X Scénarios d'attaque
1. On laisse le client légitime branché
o -: 2 MAC actives en même temps
o UDP ok
o TCP possible si client refuse les SYN-ACK non-sollicités
o +: le vrai client peut renégocier le 802.1X
2. Prend la place du client légitime
o +: pas de problèmes réseau (une seule MAC active)
o -: s'il y a renégociation, on ne passera pas
47. Déni de service
• EAPOL-Logoff
o Message provenant du supplicant qui désire terminer sa
connexion
o Pas chiffré
o Pas de secret
• Usurpation des messages EAPOL-Logoff par un client
malicieux
o Termine la session
• Nécessite accès au medium
o entre port du commutateur et PC
• Pas de solution :(
48. Mitiger le 802.1X Bypass
• Renégociation 802.1X
o automatique
authentication periodic
authentication timer reauthenticate 3600
o sur demande
CLI: dot1x re-authenticate interface FastEthernet0/1
SNMP avec IEEE8021-PAE-MIB::dot1xPaePortReauthenticate
• IPsec
• Agent sur le client
• Surveillance (IDS/IPS, DHCP/TCP fingerprinting, flow, etc.)
o mêmes solutions que de valider le non-802.1X
49. Futur
• 802.1AE: IEEE MAC Security standard (MACsec)
o Authentification et chiffrement couche 2
o 802.1X-2010: intégration de 802.1X et MACsec
• IF-MAP: standardisation des événements de sécurité
o Intégrer l'infrastructure de surveillance (proxy, firewall, etc.)
50. PacketFence - la plug
• Où on en est (version 1.9.1)
o Port-Security based NAC
o Gestion flexible des VLANs
o 802.1X/Mac Authentication en sans fil
o DHCP fingerprinting
o UserAgent fingerprinting
o Intégration IDS (Snort)
o Analyse de conformité avec Nessus
o Interface de gestion
• Ce qui nous tient occupés
o Port-Security, 802.1X, Mac Authentication filaire et sans fil unifiée
o Amélioration de notre intégration à Snort
o Interpréteur NetFlow / IPFIX (alternative légère à Snort)
o Intégration avec un Agent côté client
o Version 2.0 bientôt!
Tout est gratuit / libre! Pas de version entreprise avec
plus de fonctionnalités.
52. Conclusion
• Qui et quoi est branché quand et où sur vos LAN?
• 802.1X
o important mais une partie du casse-tête
o périphériques legacy
• Implémentez des contre-mesures
o ACL, Fingerprinting, Surveillance
• Soyez conscient des risques résiduels
54. Des questions?
En attendant...
Réseaux sociaux
• LinkedIn: Olivier Bilodeau
• Identi.ca: plaxx
• Delicious: plaxxx
• Twitter: @packetfence
On se voit au Q&A!