802.1x et la sécurisation de l’accès au réseau local

6
 802.1X et la sécurisation de l’accès au réseau local Luc Saccavini  Direction des Réseaux et Systèmes d’Information, INRIA [email protected] Date : 15 octobre 2003 Résumé Cet article présente en détail le protocole 802.1X, dont l’objectif est d’autoriser l’accès physique à un réseau local après une phase d’authentification. Ce protocole s’appuie sur l’encapsulation EAP pour mettre en relation le serveur d’authentification et le système à authentifier. Le protocole EAP spécifié par le RFC2283 est décrit  succinctement. Enfin, les faiblesses et limites d’usage de 802.1X sont analysées, ainsi que les dernières évolutions du standard actuellement en cours d’élaboration. Mots clefs 802.1X, Ethernet, EAP, Sécurité, Radius, Authentification, Accès, Réseau 1 Pourquoi le protocole 802.1X ? Ce standard [1], mis au point par l'IEEE en juin 2001, a comme objectif de réaliser une authentification de l'accès au réseau au moment de la connexion physique à ce dernier. Cette authentification intervient avant tout mécanisme d'autoconfiguration (ex. DHCP, PXE...). Dans la plupart des cas, le service autorisé en cas de succès est le service Ethernet. L’objectif de ce standard est donc uniquement de valider un droit d’accès physique au réseau, indépendamment du support de transmission utilisé, et en s’appuyant sur des mécanismes d’authentification existants. 2 Le modèle et les concepts du standard IEEE Dans le fonctionnement du protocole, les trois entités qui interagissent (Figure 1) sont le système à authentifier (  supplicant ), le système authentificateur (authenticator system) et un serveur d’authentification ( authentication  server ). Le système authentificateur contrôle une ressource disponible via le point d’accès physique au réseau, nommé PAE (  Port Access Entity). Le système à authentifier souhaite accéder à cette ressource, il doit donc pour cela s’authentifier. Dans cette phase d’authentification 802.1X, le système authentificateur se comporte comme un mandataire (  proxy) entre le système à authentifier et le serveur d’authentification ; si l’authentification réussit, le système authentificateur donne l’accès à la ressource qu’il contrôle. Le serveur d’authentification va gérer l’authentification proprement dite, en dialoguant avec le système à authentifier en fonction du protocole d’authentification utilisé. Figure 1 : les trois entités qui interagissent dans 802.1X C’est au niveau du PAE que porte l’essentiel des modifications introduites par le protocole 802.1X. Dans la plupart des implémentations actuelles, le système authentificateur est un équipement réseau (par exemple un commutateur Ethernet, une borne d’accès sans fil, ou un commutateur/routeur IP), le service dont il

Upload: zoeus

Post on 09-Oct-2015

3 views

Category:

Documents


0 download

DESCRIPTION

802.1X Et La Sécurisation de l’Accès Au Réseau Local

TRANSCRIPT

  • 802.1X et la scurisation de laccs au rseau local Luc Saccavini Direction des Rseaux et Systmes dInformation, INRIA [email protected] Date : 15 octobre 2003

    Rsum Cet article prsente en dtail le protocole 802.1X, dont lobjectif est dautoriser laccs physique un rseau local aprs une phase dauthentification. Ce protocole sappuie sur lencapsulation EAP pour mettre en relation le serveur dauthentification et le systme authentifier. Le protocole EAP spcifi par le RFC2283 est dcrit succinctement. Enfin, les faiblesses et limites dusage de 802.1X sont analyses, ainsi que les dernires volutions du standard actuellement en cours dlaboration.

    Mots clefs 802.1X, Ethernet, EAP, Scurit, Radius, Authentification, Accs, Rseau

    1 Pourquoi le protocole 802.1X ? Ce standard [1], mis au point par l'IEEE en juin 2001, a comme objectif de raliser une authentification de l'accs au rseau au moment de la connexion physique ce dernier. Cette authentification intervient avant tout mcanisme d'autoconfiguration (ex. DHCP, PXE...). Dans la plupart des cas, le service autoris en cas de succs est le service Ethernet. Lobjectif de ce standard est donc uniquement de valider un droit daccs physique au rseau, indpendamment du support de transmission utilis, et en sappuyant sur des mcanismes dauthentification existants.

    2 Le modle et les concepts du standard IEEE Dans le fonctionnement du protocole, les trois entits qui interagissent (Figure 1) sont le systme authentifier (supplicant), le systme authentificateur (authenticator system) et un serveur dauthentification (authentication server). Le systme authentificateur contrle une ressource disponible via le point daccs physique au rseau, nomm PAE (Port Access Entity). Le systme authentifier souhaite accder cette ressource, il doit donc pour cela sauthentifier. Dans cette phase dauthentification 802.1X, le systme authentificateur se comporte comme un mandataire (proxy) entre le systme authentifier et le serveur dauthentification ; si lauthentification russit, le systme authentificateur donne laccs la ressource quil contrle. Le serveur dauthentification va grer lauthentification proprement dite, en dialoguant avec le systme authentifier en fonction du protocole dauthentification utilis.

    Figure 1 : les trois entits qui interagissent dans 802.1X

    Cest au niveau du PAE que porte lessentiel des modifications introduites par le protocole 802.1X. Dans la plupart des implmentations actuelles, le systme authentificateur est un quipement rseau (par exemple un commutateur Ethernet, une borne daccs sans fil, ou un commutateur/routeur IP), le service dont il

  • contrle laccs est le service Ethernet (ou le routage des datagrammes IP). Le systme authentifier est un poste de travail ou un serveur. Le serveur dauthentification est typiquement un serveur Radius, ou tout autre quipement capable de faire de lauthentification.

    3 Le point daccs au rseau (PAE) La principale innovation amene par le standard 802.1X consiste scinder le port daccs physique au rseau en deux ports logiques, qui sont connects en parallle sur le port physique. Le premier port logique est dit contrl , et peut prendre deux tats ouvert ou ferm . Le deuxime port logique est, lui, toujours accessible mais il ne gre que les trames spcifiques 802.1X.

    Figure 2 : le PAE

    On notera que ce modle ne fait pas intervenir la nature physique de la connexion. Elle peut tre matrialise par une prise RJ45 (cas dun support de transmission cuivre), des connecteurs SC, MT-RJ (cas dun support de transmission en fibre optique) ou par laccrochage logique au rseau (cas dun support de transmission hertzien en 802.11{a,b,g}).

    4 Fonctionnement gnral du protocole

    4.1 La circulation des paquets dauthentification Le standard 802.1X ne cre pas un nouveau protocole d'authentification, mais s'appuie sur les standards existants. Le dialogue entre le systme authentificateur et le systme authentifier se fait en utilisant le protocole EAP [2] (PPP Extensible Authentication Protocol) dfini par le RFC2284[2]. Les paquets EAP sont transports dans des trames Ethernet spcifiques EAPOL (EAP Over Lan) qui sont marques avec le numro de type (Ethertype) gal 88FE, ce qui permet une encapsulation directe de EAP dans Ethernet. Le dialogue entre le systme authentificateur et serveur dauthentification se fait par une simple r-encapsulation des paquets EAP dans un format qui convient au serveur dauthentification, sans modification du contenu du paquet par le systme authentificateur (voir Figure 3). Ce dernier effectue cependant une lecture des informations contenues dans les paquets EAPOL afin deffectuer les actions ncessaires sur le port contrl (blocage ou dblocage). Ainsi, le systme authentificateur dbloquera le port contrl en cas dauthentification russie, ou il le bloquera sil y a une demande explicite en ce sens du systme authentifier comme on le verra un peu plus loin.

    Figure 3 : 802.1X et serveur dauthentification

  • 4.2

    4.3

    Les paquets EAP et EAPOL Le RFC2284 dfinit les quatre types suivants de paquets EAP (champ code, sur un octet) Request : le systme authentificateur met une requte dinformation, Response : rponse du systme authentifier un paquet Request, Success : le systme authentificateur indique une authentification russie, Failure : le systme authentificateur indique un chec de lauthentification. Le paquet EAP contient aussi un champ identifier (sur un octet) pour identifier une session dauthentification. Dans le cas de paquets de type request ou response, un champ (type) dfinit la nature des informations qui sont contenues dans le paquet. Par exemple : Identity : chane de caractres identifiant lutilisateur (par exemple une adresse mail, un nom de login, etc.), Notification : chane de caractres envoye lutilisateur final, Nak : refus dun type dauthentification et proposition dun autre, MD5-Challenge : dfi (challenge) ou rponse (idem authentification Chap), One-Time-Password : dfi ou rponse, Generic Token Ring Card : dfi ou rponse, Lencapsulation EAPOL est dfinie pour les trois types de rseaux suivants : 802.3/Ethernet MAC, 802.5/Token Ring et FDDI/MAC. Dans le cas dEthernet, les paquets EAP tels que dfinis prcdemment sont insrs dans une trame dont le champ type la valeur 88-8E. Ces trames EAPOL peuvent tre des quatre types suivants : EAP-Packet : paquet de dialogue EAP, EAP-Start : authentification explicitement demande par le systme qui sauthentifie, EAP-Logoff : fermeture du port contrl explicitement demande par le systme qui sauthentifie, EAPOL-Key : si chiffrement disponible (ex 802.11), EAPOL-Encapsulated-ASF-Alert.

    Exemple de session 802.1X/EAP Avant la connexion du systme authentifier au port physique du PAE du systme authentificateur, le port contrl de ce dernier est bloqu, et seul le port non contrl est accessible. Lorsque le systme authentifier se connecte au port physique du systme authentificateur, il reoit un paquet EAP l'invitant s'authentifier. Sa rponse est reue sur le port non contrl du systme authentificateur, puis est retransmise au serveur d'authentification par ce dernier. Par la suite, un dialogue s'tablit entre le serveur d'authentification (voir Figure 4) et le systme authentifier par le biais du relais offert par le port non contrl du PAE du systme authentificateur.

    RAD Acc Req (EAP, Resp N)

    EAPOL Resp N

    EAPOL Success

    RAD Accept(EAP, Success)

    RAD Acc Req (EAP, Resp 1)

    EAPOL Resp 1

    EAPOL Req 1

    RAD Acc Chal (EAP, Req 1)

    RAD Acc Req (EAP, Identity)

    EAPOL Resp /Identity

    EAPOL Req /Identity

    Accs physique ou logique

    Serveur dauthentification (ex Radius)

    Authentificateur (point daccs)

    Systme authentifier

  • Figure 4 : Squence dauthentification

    Quand l'automate 802.1X du systme authentificateur voit passer un acquittement positif d'authentification (en provenance du serveur), il dbloque son port contrl (interrupteur ferm), donnant ainsi au client authentifi laccs au service. partir de cet instant, le schma logique du PAE du systme authentificateur devient tel que dcrit ci-dessous (voir Figure 5), et le trafic Ethernet est assur normalement. Cependant, les automates implmentant le protocole 802.1X restent actifs et peuvent nouveau ractiver un processus dauthentification en cas, par exemple, de demande explicite du client ou de dconnexion physique au rseau.

    Figure 5 : Exemple de situation aprs une authentification russie

    5 Les automates tats finis du PAE Pour bien comprendre le fonctionnement du protocole 802.1X, il est ncessaire de regarder en dtail les diffrents automates tats finis qui rgissent son fonctionnement. titre indicatif une version simplifie des deux principaux automates du standard 802.1X est donne ci-aprs. Les simplifications ont consist supprimer une grande partie des variables dtat et certaines transitions temporelles de bouclage dun tat sur lui mme pour ne laisser apparatre que la squence principale qui va de ltat INITIALISATION ltat AUTHENTIFI .

    5.1 PAE du systme authentificateur

    5.1.1 Schma simplifi de lautomate tats finis

    Figure 6 : Automate tats finis du systme authentificateur

  • 5.1.2 Dfinition des tats de lautomate tats finis

    INITIALISATION : cet tat est atteint quand le protocole 802.1X est activ (par exemple suite une opration de gestion) ou quand le port physique du PAE a t dbranch, ou enfin lorsque lquipement est mis sous tension. DCONNECT : dans cet tat, le port physique est actif (par exemple si lquipement authentifier est branch), mais les services contrls par le port protg sont inaccessibles. CONNEXION : lautomate de lauthentificateur envoie une requte EAP avec un type Identify au systme connect (quipement authentifier) physiquement sur son port physique, puis il se met en attente dune rponse. AUTHENTIFICATION : dans cet tat, lautomate de lauthentificateur sert de relais pour le dialogue entre le systme authentifier et le serveur dauthentification. Il interprte seulement (tout en les relayant) les rponses finales (Reject ou Accept) du serveur dauthentification pour passer dans ltat correspondant. AUTHENTIFI : les services contrls par le port protg sont accessibles. HELD : tat de temporisation (60s par dfaut) avant retour ltat CONNEXION. Cette attente est une parade une attaque de type force brute . Dans cet tat, tous les paquets sont ignors. ABORT : la procdure dauthentification est interrompue (demande de r-authetification, Logoff, Start). Remarque : la notion de Transition Inconditionnelle (TI) qui apparat entre les tats INITIALISATION et DCONNECT est considrer comme telle uniquement dans le contexte du protocole 802.1X. Cest en effet une action extrieure (par exemple le branchement sur le port physique) qui fait passer de ltat INITIALISATION ltat DCONNECT .

    5.2 PAE du systme authentifier

    5.2.1 Schma simplifi de lautomate tats finis

    Figure 7 : automate tat finis du systme authentifier

    5.2.2 Dfinition des tats de lautomate tats finis

    LOGOFF : cet tat est atteint quand lutilisateur du systme quitte sa session. On remarquera que les concepteurs du standard permettent, par cette fonctionnalit, de relier ltat du port contrl ltat de la session dun utilisateur ( condition bien sr que la connexion physique soit toujours active). DCONNECT : dans cet tat, le port physique est actif (par exemple, lquipement authentifier est branch).

  • CONNEXION : lautomate du systme authentifier est en attente dune requte EAP avec un type Identify du systme authentificateur du port o il est physiquement connect. Ds larrive dune telle requte, il passe dans ltat ACQUISITION . Pour permettre la compatibilit avec des quipements ne supportant pas le protocole 802.1X, le systme authentifier met rgulirement des requtes EAP avec un type Start. Au bout de 3 (valeur par dfaut) non rponses, il passe dans ltat AUTHENTIFI (considrant quil ny a pas de PAE authentificateur sur ce port). ACQUISITION : lautomate du systme authentifier envoie son identit au systme authentificateur, et passe dans ltat AUTHENTIFICATION ds rception du premier paquet EAP avec un type diffrent de Identify. AUTHENTIFICATION : dans cet tat, lautomate du systme authentifier rpond aux requtes du serveur dauthentification qui lui sont transmises par la systme authentificateur. AUTHENTIFI : les services contrls par le port protg sont accessibles. HELD : tat de temporisation (60s par dfaut) avant passage ltat CONNEXION . Cette attente est une parade une attaque de type force brute . Dans cet tat la rception dune requte EAP avec un type Identify provoque un passage ltat ACQUISITION .

    6 Les faiblesses de 802.1X La principale faiblesse de 802.1X vient de ce quil a t conu au dpart dans un contexte de connexion physique (type accs PPP sur RTC). Rien nempche en effet un utilisateur dinsrer un hub (transparent 802.1X) et de faire bnficier dautres utilisateurs de louverture du port Ethernet dun commutateur. La plupart des implmentations dquipementiers permettent de surmonter cette difficult en permettant de configurer un blocage du port Ethernet si ladresse MAC du systme authentifi change. Les attaques par coute et rejeu sont aussi possibles, ainsi que le vol de session. On pourra utilement consulter larticle [5] pour une analyse des faiblesses de 802.1X. Les attaques sur 802.1X sont, de plus, facilites dans le cas de lEthernet sans fil.

    7 Les volutions de 802.1X La rvision du standard 802.1X se fait par l'addendum 802.1aa, dont le dernier draft (numro 5) a t publi en fvrier 2003. Les principales modifications introduites concernent le non rejeu des changes, l'authentification mutuelle, et la gestion des cls. L'authentification mutuelle est une amlioration importante, car elle permet de rsoudre le cas o le client est lui-mme un fournisseur de service rseau, et a besoin d'tre sr qu'il s'adresse bien un port 802.1X de confiance. Un exemple type concerne le cas du branchement d'un commutateur sur un autre commutateur. Cette authentification mutuelle est faite par lenchanement de deux phases dauthentification, o les rles de chaque entit connecte sont changs, chacune jouant successivement le rle d'authentifiant puis d'authentifi.

    8 Conclusion Le principal risque dans lusage de 802.1X, est de lutiliser hors de son champ dapplication. Il faut donc bien avoir lesprit que son usage est simplement de contrler laccs physique un rseau local. Compare labsence de contrle daccs, ou un contrle daccs uniquement bas sur la valeur de ladresse MAC/Ethernet, lactivation de lauthentification 802.1X est un rel progrs. Ce progrs se mesure aussi par la facilit dingnierie que procure le recours un serveur dauthentification externe. Compte-tenu de la prsence quasi-systmatique de serveurs Radius sur un site, on peut considrer que lactivation de lauthentification 802.1X ne rajoute pas de complexit dans ladministration rseau dun site.

    9 Bibliographie [1] IEEE Std 802.1X-2001, Part-Based network Access Control, 2001 [2] RFC2284: PPP Extensible Authentication Protocol (EAP) [3] RFC2865 RFC2869 (Radius) [4] http://www.open1x.org : implmentation GPL dun client 802.1X [5] Mishra, A. & Arbaugh, W. (2002). An initial security analysis of the 802.1x standard.

    http://www.cs.umd.edu/~waa/1x.pdf [6] http://www.cartel-securite.fr/pbiondi/scapy.html : outil de manipulation de paquets permettant de tester un

    port 802.1X

    802.1X et la scurisation de laccs au rseau Pourquoi le protocole 802.1X?Le modle et les concepts du standard IEEELe point daccs au rseau \(PAE\)Fonctionnement gnral du protocoleLa circulation des paquets dauthentificationLes paquets EAP et EAPOLExemple de session 802.1X/EAP

    Les automates tats finis du PAEPAE du systme authentificateurSchma simplifi de lautomate tats finisDfinition des tats de lautomate tats fin

    PAE du systme authentifierSchma simplifi de lautomate tats finisDfinition des tats de lautomate tats fin

    Les faiblesses de 802.1XLes volutions de 802.1XConclusionBibliographie