Vous êtes sur la page 1sur 49

CH2-Les Protocoles dauthentification rseau

Mr Raki HAMMAMI Protocoles de scurit - GL4

Qu'est-ce que l'authentification rseau ?


Il s'agit d'authentifier une machine lorsqu'elle se branche sur le rseau afin de lui autoriser ou refuser l'usage du rseau. On authentifie pour dlivrer des autorisations Cette authentification est indpendante d'autres authentifications vers des systmes d'exploitation ou applications

Pourquoi faire de lauthentification rseau ?


Scuriser un rseau filaire ou sans-fil Pour interdire les postes inconnus Pour placer les postes connus a des endroits spcifiques du rseau (vlan)

de faon dynamique. Pour savoir quelle machine est connecte et o elle est connecte

Intrts de lauthentification rseau ?


Intrt pour un rseau filaire
Savoir qui se connecte sur quelle prise Eviter une utilisation illicite du rseau par des inconnus Affecter les machines sur des rseaux virtuels (cloisonnement)

Intrt pour un rseau sans fil


Obligatoire pour intgrer le rseau filaire cad que les machines sans-fil travaillent comme les machines filaires Affecter une machine sur le mme vlan que lorsquelle se connecte sur le rseau filaire. Authentification + cryptage Ncessit de grer un primtre arien, flou, incontrlable.

Authentifier quoi ? Des utilisateurs ou des machines ?


La rponse dpend de la destination et/ou de larchitecture du rseau.
Une authentification par utilisateur implique que les autorisations sont accordes quelque soit la machine utilise. Une authentification par machine implique quune machine recevra les mmes autorisations quelque soit lutilisateur qui lutilise.

Dans chaque cas il est possible de croiser les lments dauthentification avec ladresse MAC de la machine.

Elments pour authentifier


De quoi dispose ton pour authentifier ?
Ladresse MAC de la carte Ethernet Et/ou Une base de login/mot de passe (windows, LDAP) Et/ou De certificats (utilisateurs ou machines)

Obligatoire : ne pas rajouter de contraintes sur lutilisateur

Autoriser quoi ?
On autorise une machine utiliser tout ou partie dun rseau. Dans un rseau plat (sans sous-rseau) on autorise tout le rseau obligatoirement Dans un rseau segment on autorise la connexion sur un sous-rseau (Vlan)

Rappel sur les Vlans

Protocoles dauthentification
Protocoles propritaires => Exemple: VMPS de Cisco
Authentification sur adresse MAC uniquement Rseau filaire

Protocoles ouverts => Radius et 802.1x


Authentification sur adresse MAC, Login/password Certificats, cartes puce . Rseau filaire et sans-fil

Protocoles dauthentification: Radius


Deux possibilits :
Authentification par adresse MAC (Radius-Mac) Authentification 802.1x

Protocoles dauthentification: Radius

Protocoles dauthentification: Radius et 802.1x

Protocoles dauthentification: Radius et 802.1x

Protocoles dauthentification: Radius et 802.1x


802.1x met en uvre le protocole EAP pour les communications du client vers le serveur d'authentification. EAP (Extensible Authentication Protocol) est un protocole de transport de protocole d'authentification. L'intrt de l'architecture de EAP est de pouvoir utiliser divers mcanismes d'authentification sans que l'quipement rseau (NAS) aient besoin de les connatre. Dans ce cas il agit comme un tunnel transparent vers un serveur qui lui implmente les mcanismes souhaits. Par exemple: Mot de passe, certificats, carte puce .

Protocoles dauthentification: EAP


Principales mthodes d'authentification EAP: EAP/TLS
Authentification mutuelle entre le serveur et le client par certificat.

EAP/PEAP ou EAP/TTLS
Le client est authentifi par un login/mot de passe. Le serveur peut tre authentifi par son certificat.

Protocoles dauthentification:Terminologie

Le protocole Radius

Le protocole de base de RADIUS est dcrit dans le RFC 2865. Utilise UDP sur le port 1812 (anciennement 1645)

Le protocole Radius
Radius est un serveur de type AAA

Le protocole Radius: les types de paquets


Le protocole utilise 4 types de paquets suffisants pour assurer toutes les transactions: (hors accounting) Access-Request Access-Accept Access-Reject Access-Challenge

Le protocole Radius: les types de paquets


Access Request Premier paquet envoy par le client (NAS) Contient l'identit de l'utilisateur qui se connecte ( username/password ou CN du certificat ou MAC adresse) Access-Accept Renvoy par le serveur Radius pour accepter la requte du client aprs interrogation de sa base d'authentification. Ce paquet peut contenir une liste d'attributs correspondant aux services qui sont autoriss (par exemple le vlan).

Le protocole Radius: les types de paquets


Access-reject Emis par le serveur radius pour spcifier au client que sa requte est rejete. En principe ce paquet peut tre mis tout moment pour mettre fin une connexion, mais certains quipement ne supporte pas. Access-challenge Emis par le serveur Radius pour demander soit de r-emettre un access-request, soit pour demander des informations complmentaires.

Le protocole Radius: format des paquets

Le protocole Radius: les types de paquets

Authentificateur Lorsque le client NAS envoi un paquet access-request il inclut un authentificateur appel request-authenticator qui est une squence alatoire. Le serveur rpond par un paquet access-accept ou accept-reject ou accept-challenge avec un response-authenticator compos avec les informations contenues dans le paquet access-request, le request authenticator est un secret partag avec le NAS et le tout crypt MD5. Le NAS est alors en mesure de vrifier que le serveur qui rpond est bien celui qu'il a contact.

Le protocole Radius: les attributs


Les transactions RADIUS ont pour but de vhiculer des attributs et leur valeur entre le client NAS et le serveur. Ces attributs et leur valeur sont appels paires attribut-valeur (AVP= attribut-value pair) Ces attributs permettent au client de communiquer des informations au serveur (password, MAC adresse) et au serveur de communiquer les paramtres des autorisations qu'il dlivre (vlan) ou bien demander des informations complmentaires.

Le protocole Radius: les attributs


Un attribut est caractris par son type et sa valeur (ventuellement nulle) o Integer o Enumerated o IP address o Chane de caractres o Date o Binaire o Vendor-specific

Le protocole Radius: les attributs standards


Il y a beaucoup d'attributs standards mais peu sont utilisables dans le cas d'une utilisation avec 802.1x. Par exemple l'attribut CALLBACK-NUMBER contient le numro de tlphone sur lequel il faut rappeler le client. Ce qui est inutile dans notre cas

Seront dcrits ici uniquement les attributs intressants pour l'authentification 802.1X et Radius Mac

Le protocole Radius: les attributs standards


Called-Station-Id Contient l'adresse MAC de l'quipement NAS Calling-Station-Id Contient l'adresse MAC de la machine de l'utilisateur. NAS-IP-Address Adresse IP de l'quipement NAS

NAS-Port Port sur lequel est connect le supplicant


User-Name

User-Password

Le protocole Radius: le dictionnaire


Chaque attribut possde un numro d'identification. Seul ce numro est transmis dans les paquets . La correspondance entre le nom de l'attribut, son numro et son type est ralis dans un dictionnaire.

Le protocole Radius: les attributs vendor


Les fabricant de matriel rseau (NAS) ont parfois intgr leurs quipements des attributs spcifiques en plus des attributs standards dfinis dans le RFC.

Ces attributs sont encapsuls dans l'attribut standard vendorspecific qui a pour numero 26. Ils sont appels VSA = VendorSpecific Attribut

Le protocole Radius: les attributs vendor


VendorID: N d'immatriculation du fabricant (NMPECS= Network Management Private Enterprise Codes (RFC1700) Attribut number Comme pour les attributs standards, les vendor-attributs possdent un numro d'identification. Ce numro est rpertori dans un dictionnaire spcifique au fabricant. Longueur Valeur

Le protocole Radius: les attributs

Les extensions du protocole Radius: support des vlans


Le support des attributs de tunnel est une extension du protocole de base de RADIUS dont le but initial est de crer des tunnels avec des clients distants. Ces extensions sont dcrites dans le RFC 2868 Le support des VLANs est ralis par le biais des attributs de tunnel Les attributs concerns sont :
Tunnel-type Tunnel-Medium-Type Tunnel-Private-group-Id

Les extensions du protocole Radius: support des vlans


Tunnel-Type Il y a 13 types de tunnels. Bien que le RFC ne parle que des 12 premiers. Le 13me tant les VLAN 802.1q.

Les extensions du protocole Radius: support des vlans


Tunnel-Medium-Type Cet attribut indique quel type de transport est utilis. Il y a 14 types possibles.

Tunnel-Private-Group-Id Indique un group-id pour un tunnel spcifique. Dans le cas des VLANs il s'agit du numro de Vlan.

Les extensions du protocole Radius: support EAP (802.1x)


Radius a t tendu pour supporter le protocole EAP et donc l'authentification 802.1x. Pour cela 2 attributs ont t ajouts:
Message-Authenticator EAP-Message

Les paquets EAP sont encapsuls dans l'attribut EAP-Message Message-Authenticator est un attribut qui permet de signer les requtes qui contiennent des attributs EAP-Message. (calcul MD5 sur le contenu d'un access-request + secret partag) RFC:
2869 radius extension 3579 radius support for EAP 3748 EAP 2716 EAP/TLS 3580 802.1x radius usage guidelines

Les extensions du protocole Radius: support EAP (802.1x)


Authentification avec certificat (TLS)

Les extensions du protocole Radius: support EAP (802.1x)


Authentification avec certificat (TLS)
1- Le NAS envoi au client une requte EAP lui demandant son identit 2- Le client rpond avec le CN comme identit 3- Le serveur dmarre la squence TLS par lenvoi du message TLS_start 4- Le client rpond par un message client_hello : La version de TLS Un challenge (nombre alatoire) Un identifiant de session La liste des algorithmes de chiffrement supports par le client 5- Le serveur rpond par un message server_hello Son certificat et sa cl publique Demande au client denvoyer son certificat Un challenge Un identifiant de session calcul partir de celui du client. Choisit un algorithme de chiffrement en fonction de ceux connus par le client 6- Le client vrifie le certificat du serveur et envoi le sien et sa cl publique

Les extensions du protocole Radius: support EAP (802.1x)


Authentification avec certificat (TLS)
7- Le client et le serveur calculent une cl de chiffrement pour la session principale ( partir des challenges changs) 8- Le client renvoi une rponse EAP vide et le serveur rpond par un message EAP_success avec une cl de session pour la borne wifi. 9- A partir de cette cl de session la borne calcul une cl WEP ou WPA et lenvoi au client. Dans le cas dauthentification EAP/TLS la cl de session principale nest pas utilise. Seul lchange de validation mutuelle des certificats est utile

Les extensions du protocole Radius: support EAP (802.1x)


Authentification avec login/password (PEAP)

Les extensions du protocole Radius: support EAP (802.1x)


Authentification avec login/password (PEAP)

Les extensions du protocole Radius: support EAP (802.1x)


Remarques sur lidentit
Dans les phases 1 et 2 lidentit (rponse identity) transmise nest pas crypte Ce nest pas directement ce champ qui permet lauthentification. Mais cest lui qui est utilis pour lautorisation. Pour TLS : Cest la validation mutuelle des certificats qui constitue lauthentification Pour PEAP: Cest le username transmis dans le tunnel (crypt) qui sert faire lauthentification par vrification du mot de passe. Dans tous les cas il est possible de donner une identit diffrente du CN ou du username. Ceci afin que lidentit relle ne circule pas en clair.

Les extensions du protocole Radius: support EAP (802.1x)


Remarques sur le cryptage sans-fil
Pour EAP/PEAP les changes ncessaires lauthentification sont crypts dans un tunnel TLS et ce mme si ensuite aucune mthode de cryptage nest configure. Mme si 802.1x nimpose pas le cryptage des communications il est FORTEMENT recommand de crypter avec une mthode srieuse . (au moins WPA)
La borne doit grer la transmission automatique des cls de cryptage vers les postes clients et, de prfrence, la rotation dynamique de ces cls.

Les extensions du protocole Radius: support EAP (802.1x)


Remarques sur le cryptage sans-fil
Mthodes de cryptage: WEP : dpass ne pas utiliser WPA : Associ TKIP pour la rotation Initialisation des cls par 802.1x Changement de la cl tous les 10Ko Cl 128 bits (RC4) vecteur dinitialisation de 48 bits MIC: Contrle dintgrit

WPA2: = 802.11i Principe identique WPA avec: CCMP pour la rotation des cls AES pour le cryptage

Les extensions du protocole Radius: support EAP (802.1x)


Dans le cas du WIFI

Les extensions du protocole Radius: support EAP (802.1x)

Les faiblesses de 802.1X :


- Le protocol 802.1X a t prvu pour tablir une connexion physique. Donc linsertion dun hub permet de faire bnficier dautres personnes de louverture du port Ethernet, tout en restant transparent pour le 802.1X - Il est possible de configurer les quipements rseaux de faon bloquer le port Ethernet si ladresse MAC chang. - Il est galement possible de faire des attaques par coute, rejeu et vol de session.

Processus dauthentification et autorisation (Radius)

Processus dauthentification et autorisation (Radius) contenant une liste L'quipement NAS envoi un access-request
d'attributs appels request_items. Par exemple, l'adresse MAC est un request-item. Le serveur Radius dispose dans sa base d'authentification/autorisation d'une liste de check-items associe chaque utilisateur/machine connu. Radius interroge sa base pour trouver une entre qui correspond au username envoy et dont les check-items matches les request-item. Si aucune correspondance n'est trouve un access-reject est envoy. Si une correspondance est trouve, une reply-list est forme partir des reply-items contenu dans la base. Par exemple, le numro de vlan est un reply-item. Le username envoy est authentifi (mot de passe, certificats..) Si l'authentification est ok, la reply-list est envoy l'quipement NAS avec un access-accept.

Elments constitutifs de la base de donnes


Identifiant : Un username fournis par le client radius (switch) ou
par le supplicant

La mthode dauthentification:
Elle peut tre indique explicitement dans la base de donnes ou bien tre dduite implicitement en fonction du protocole utilis par le NAS ou le supplicant. (Local, EAP, LDAP)

Les check-items: Exemple:


Mot de passe : Fourni par le NAS dans le cas dune authentification par adresse MAC. Dans ce cas le mot de passe est ladresse MAC.

Les reply-items: Exemple: le ssid ou le N de vlan.