Vous êtes sur la page 1sur 111

République Algérienne Démocratique et Populaire

Ministère de la Poste et Ministère de l’Enseignement


des Technologies de l’Information et Supérieur et de la Recherche
de la Communication Scientifique
Institut des Télécommunications d’Oran
Abdelhafid Boussouf

Mémoire de fin d’Etudes


pour l’obtention du diplôme
d’Ingénieur d’Etat en Télécommunications
-Option-
Systèmes des Télécommunications

Présenté par : Devant Le jury :

Mr DIENTA Sekou B. Mr L. Bensaada Président


Mr YARO Moussa
Mr R. Hachmani Examinateur
Mr A. Gasmi Examinateur
Promoteur:

Mr SIDI ALI MEBAREK Zerrouk

Promotion IGE 26
Juin 2006
1
2
Dédicaces
Je dédie ce travail à tous mes parents lointains ou proches et plus précisément à mon père DJEIDANY
YARO, ma mère FANTA BAGAYOKO ainsi qu’à tous mes frères et s urs qui malgré
la distance n’ont cessé de m’encourager dans le chemin du travail.

Puis ce travail est dédié à tous mes enseignants qui n’ont


ménagé aucun effort pour la réalisation de ce projet.

Et enfin à tous mes amis (es) qui de loin


ou de près m’ont soutenu dans mes
moments difficiles.

Merci à
Tous.

YARO MOUSSA

3
Dédicaces
A ma mère DJENEBA MAIDONA et mon père, MORY DIENTA, auxquels une dédicace
particulière pour leur soutient durant tout mon parcours scolaire jusque là.
A mes frères et s urs, mes amis, bref, tout
ceux qui m’ont aidé au cours
de ce cycle et antérieurs.
Merci à
tous.

DIENTA SEKOU BOUGADARY

4
Résumé du Projet

Notre projet de fin d’étude intitulé « Mise en place d’un réseau Wi-Fi expérimental sécurisé»
se situe dans la lignée du déploiement total d’un réseau Wi-Fi à l’ITO. L’objectif à atteindre
était tout d’abord de mener une étude sur les solutions de sécurité existantes dans le monde
du sans-fil et plus précisément pour les réseaux Wi-Fi.

Cette étude nous permettra de choisir une stratégie de sécurité qui est la mieux adaptée
possible en tenant compte des contraintes matérielles. Le travail accompli est complémentaire
de celui effectué par un autre binôme relatif à la planification de réseaux sans fil qui, une fois
implémenté sera sécurisé.

5
Introduction…………………………………………………………. 9

Partie 1 : Réseaux Wi-Fi


Chapitre I : Présentation de la technologie Wi-Fi…………………………….. 10
Introduction…………………………………………………. 11
1. Architecture des réseaux Wi-Fi……………………………... 11
1.1 Mode ad-hoc……………………………………………. 11
1.2 Mode Infrastructure…………………………………….. 12
1.3 Normes Wi-Fi existantes…………………………. ……. 13
2. Modèle en Couche………………………………………….. 14
2.1 Couche liaison de données……………………………… 14
2.2 Couche Physique………………………………………... 19
3. Administration des réseaux Wi-Fi………………………….. 20
3.1 La synchronisation……………………………………… 20
3.2 Authentification, Association et Réassociation…………. 20
3.3 Gestion d’énergie……………………………………….. 21

Chapitre II : Sécurité de Base des réseaux Wi-Fi…………………………….. 22


Introduction…………………………………………………. 23
1. Les attaques dans les Réseaux Wi-Fi………..……………… 23
1.1 Interception des données………………………………... 23
1.2 Intrusion dans le système………………………………. 23
1.3 Attaque de l’Homme au milieu………………………… 24
1.4 Porte dissimulée………………………………………... 24
2. Rappel sur les services de base de la cryptographie………... 25
2.1 Techniques de Cryptage………………………………… 25
2.2 Techniques d’authentification………………………….. 27
3. Solution de sécurité proposée par la norme IEEE 802.11….. 28
3.1 Les règles de protections élémentaires…………………. 28
3.2 LE WEP (Wired Equivalent Privacy)………………….. 28
3.3 Les faiblesses du WEP…………………………………. 32

6
Partie 2 : Sécurité Avancée des réseaux Wi-Fi

Chapitre III : Réseaux RSN et Norme 802.1x………………………………... 36


Introduction………………………………………………….. 37
1. La norme 802.1x……………………………………………. 37
1.1 Fonctionnement général du protocole 802.1x…………... 38
1.2 Mécanisme de transfert des messages………………….. 41
1.3 RADIUS…………………………………………………. 42
2. Les méthodes d’authentification…………………………….. 46
2.1 EAP-TLS………………………………………………... 46
2.2 EAP-TTLS et PEAP…………………………………….. 48
2.3 EAP-SIM………………………………………………... 50
2.4 Cisco LEAP……………………………………………... 53

Chapitre IV : WPA et Norme 802.11i…………………………………............ 55


Introduction…………………………………………………. 56
1. Hiérarchie des clés dans les réseaux WPA et 802.11i………. 56
1.1 Hiérarchie des Pairwise-Keys…………………………... 56
1.2 Hiérarchie des clés de groupe…………………………... 59
2. Les réseaux WPA…………………………………………… 60
2.1 Algorithme TKIP………………………………………... 60
2.2 Encapsulation et décapsulation TKIP…………………... 64
3. La Norme 802.11i…………………………………………… 67
3.1 Protocole CCMP………………………………………… 67
3.2 Mécanisme d’encapsulation CCMP……………………. 70

Chapitre V : Solution de sécurité VPN et Pare-feu…………………………… 75


Introduction…………………………………………………. 76
1. Les Réseaux Privés Virtuels………………………………… 76
1.1 Protocoles utilisés dans les technologies VPN…………. 77
1.2 Utilisation des VPN dans les réseaux Wi-Fi……………. 79
2. Les Pare-feu…………………………………………………. 80
2.1 Fonctions réalisées………………………………………. 80
2.2 Utilisation des Pare-feu dans les réseaux Wi-Fi………… 81

7
Partie 3 : Mise en Place Expérimentale
Chapitre VI : Déploiement et implémentation d'un protocole de sécurité……. 83
1. Caractéristiques des équipements exigés……………………. 84
1.1 Exigences………………………………………………... 84
1.2 Exemples d’équipements………………………………... 84
2. Installation des cartes réseaux sans-fil ……………………… 85
2.1 Rôle……………………………………………………… 85
2.2 Installation……………………………………………….. 85
3. Installation des Point d’accès ……………………….............. 85
3.1 Rôle……………………………………………………… 85
3.2 Installation……………………………………………….. 85
4. Etude d’un système d’adressage sur le réseau sans-fil……… 86
4.1 Un réseau local unique………………………………….. 86
4.2 Plusieurs sous réseaux locaux…………………………… 86
5. Implémentation d’un protocole de sécurité………………….. 86
5.1 Objectifs et solution retenue…………………………….. 86
5.2 Implémentation d’EAP-TLS (Windows 2003 Server) sur
le réseau sans-fil…………………………………………. 87
5.3 Installation d’une autorité de certificat racine ………….. 87
5.4 Installation et Configuration du serveur RADIUS……… 88
5.5 Configuration du point d’accès …………………………. 90
5.6 Configuration du poste Client …………………………... 92
5.7 Test de sécurité du réseau……………………………….. 95

Chapitre VII : Perspectives……………............................................................ 97

Conclusion Générale…………………………………………………………. 100

Annexes……………………………………………………………………….
Annexe1 : Principe du CSMA/CA ………………………………………. 101
Annexe2 : Notion sur les certificats et les infrastructures de gestion de clés PKI 103
Annexe3 : Attaques FMS ………………………………………………. 106
Abréviations et Acronymes………………………………………………….. 109
Bibliographie…………………………………………………………………. 111

8
INTRODUCTION
Confirmant une révolution technologique et culturelle des systèmes d’information
traditionnels filaires, la mobilité d’une manière générale ou de manière plus spécifique, son
support technique, les réseaux sans-fil, ont commencé à véritablement s’imposer dans les
paysages informatiques et pour cause, la pression combinée des constructeurs d’équipements
et de certaines catégories d’activités des entreprises. Ceci est d’autant plus vrai que les
ordinateurs actuellement en vente, particulièrement les ordinateurs portables, sont nativement
équipés de cette technologie (Centrino par exemple). Ces technologies, porteuses de progrès
indéniables, font émerger de nouvelles façons d’accéder aux ressources informatiques et
d’échanger des données. Elles ont également créé une nouvelle problématique de sécurité car
elles peuvent grandement fragiliser la sécurité d’un système d’information (réseau filaire) au
préalable très bien protégé si elles sont mises en uvre de manière non maîtrisée ou sans
réelle prise en compte de ces problématiques de sécurité.

Il est désormais essentiel que les responsables informatiques en entreprise intègrent ces
technologies et les problématiques qu’elles posent dans leur politique de sécurité globale en
mettant en place les solutions techniques et organisationnelles adaptées.

Dans le cadre de cette problématique complexe de la sécurité des réseaux sans-fil en


entreprise, l’objectif de ce présent PFE est d’aborder les réseaux sans-fil sous l’angle de la
sécurité. Après une présentation générale des réseaux sans-fil, nous aborderons les problèmes
de sécurité et les risques associés, les solutions de sécurité disponibles et pour terminer, la
présentation et la mise en place de la solution retenue (proposition) pour l’implémentation du
réseau sans-fil Wi-Fi de l’ITO.

9
Chapitre I :

Présentation
de la
technologie
Wi-Fi

10
INTRODUCTION
Ces dernières années ont vu l’usage des appareils portatifs croître exponentiellement de plus,
l’usage des réseaux sans-fil s’est fortement étendu. En effet les réseaux sans-fil sont des
systèmes de transmission de données conçus pour assurer une liaison indépendante de
l’emplacement des périphériques informatiques qui composent le réseau en utilisant des ondes
radios ou infrarouges plutôt qu’une infrastructure câblée.

L'informatique mobile présente donc, en plus du confort de la mobilité, un avantage certain


sur les réseaux filaires dans de nombreux cas comme, entre autres :
§ Mise en place d’un réseau de courte durée (chantiers, expositions, formations,….)
§ Accès à Internet dans des lieux publics (visiteurs dans une entreprise, aéroports,
gares…)
§ Liaison par voie hertzienne entre deux bâtiments ayant chacun leur réseau câblé
(grands immeubles).

C’est dans ce contexte qu’a émergé le standard IEEE 802.11 de Institute of Electrical and
Electronics Engineers pour réseau local sans-fil WLAN (Wireless Local Area Network). Le
standard 802.11 a été conçu pour offrir aux stations des services comparables à ceux
disponibles dans les réseaux locaux filaires LAN (Local Area Network) à l’aide d’une
connexion sans fil des stations fixes ou se déplaçant à des vitesses faibles (piétons, véhicules
industriels) aussi bien en intérieur (halls d’aéroports, hôpitaux…) qu’en extérieur (campus,
parkings …).

Le terme station correspond ici à tout appareil susceptible d’inclure une interface IEEE
802.11 (carte réseau sans fil) à titre d’exemple nous citerons les ordinateurs portables
(Laptop) ainsi que les assistants numériques personnels (PDA1).

Le terme Wi-Fi est une contraction de Wireless Fidelity, nom initialement attribué aux
réseaux sans-fil 802.11 par la WECA2 qui est un organisme Américain. Cet organisme,
actuellement appelé Wi-Fi Alliance, regroupe les principaux acteurs de l’industrie du sans-fil.
Sa mission est de certifier l’interopérabilité et la compatibilité inter fournisseurs des produits
répondant à la norme IEEE 802.11 auxquels on attribue le label Wi-Fi.

1. ARCHITECTURE DES RESEAUX Wi-Fi :


Les réseaux Wi-Fi possèdent une architecture basée sur un système cellulaire. Les stations
802.11 peuvent s’organiser suivant deux modes de fonctionnement : Le mode Infrastructure et
le mode ad-hoc.

1.1 LE MODE ad-hoc :


Cette architecture, aussi connue sous l’appellation IBSS3, ne nécessite aucune infrastructure
préalablement déployée pour permettre la communication entre ses membres, elle représente
simplement un ensemble de stations 802.11 autonomes, qui communiquent directement entre
elles sans point d’accès ni connexion à un réseau filaire.

1
PDA : Personal Digital Assistant
2
WECA : Wireless Ethernet Compatibility Alliance
3
IBSS : Independent Basic Service Set

11
Les stations jouent chacune tous les rôles, elles doivent en effet, opérer de manière autonome
et être capables d’effectuer toutes les opérations nécessaires à l’établissement et au maintien
du réseau (authentification et association).

Cette architecture est très souple, mais la connectivité est soumise aux aléas inhérents à ce
type de réseau à savoir :
§ Le mode ad-hoc fonctionne en point à point ou en multipoint, mais sans relayage de
trames et donc sans fonction de routage (si deux stations A et B veulent communiquer
entre elles alors qu’un obstacle les empêche de se « voir », une station tierce visible
par A et B ne pourra pas servir de relais). Une station pourra ainsi inonder ses voisines
directes, mais pas l’ensemble du réseau.
§ Les protocoles utilisés sont plus complexes par l’obligation d’effectuer toutes les
opérations citées ci avant.
§ De nombreux points ne sont pas clairement spécifiés par le standard, ce qui rend
l’interopérabilité entre des stations de constructeurs différents très aléatoire.

L’importance majeur de ce mode est qu’il permet de créer rapidement et simplement un


réseau sans-fil là où il n’existe pas d’infrastructure filaire (monuments historiques) ou encore
là où une telle infrastructure n’est pas nécessaire pour les services attendus ou enfin lorsque
l’accès au réseau filaire est interdit.

1.2 MODE INFRASTRUCTURE


Cette architecture est la plus utilisée. Elle est particulièrement adaptée pour assurer la
connectivité dans des lieux clos tels que les halls d’aéroports et les hôpitaux. Elle repose sur
un réseau dorsal appelé système de distribution DS4, sur lequel sont connectés les points
d’accès. Contrairement au réseau ad-hoc où chaque station doit être capable d’effectuer toutes
les opérations, ici les rôles ne sont pas identiques.

Les points d’accès AP5 servent de relais de communication. Ils prennent en charge les
processus d’association et d’authentification des stations. Ces points d’accès fixes, bénéficient
généralement d’une alimentation en courant électrique. Ils permettent une gestion efficace de
la consommation d’énergie des stations mobiles.

Le système de distribution DS permet de relier les différents points d’accès. Grâce à


l’utilisation de ce réseau dorsal, la couverture du réseau s’étend au-delà de la simple
couverture radio d’un point d’accès. Des fonctionnalités de gestion de la mobilité (Roaming)
sont aussi possibles. Ainsi, il est possible à une station de quitter la couverture radio d’un
point d’accès sans pour autant perdre sa connectivité au réseau ni même perdre ses
connexions en cours (le DS prend en charge le transfert des paquets vers la nouvelle position
de la station mobile). Le standard ne spécifie pas le mode de connexion des points d’accès
mais le réseau Ethernet est l’un des réseaux les plus utilisés pour effectuer cette
interconnexion.

Cette architecture permet d’offrir aux usagers mobiles l’accès à d’autres ressources (serveurs
de fichier, imprimantes, etc.) ou d’autres réseaux (Internet). Ainsi les stations connectées à un
réseau sans-fil 802.11 peuvent dialoguer avec des stations connectées à n’importe quel autre
réseau.

4
DS: Distribution System
5
AP : Access Point

12
Figure 1.1: Mode ad-hoc et Infrastructure.

1.3 NORMES Wi-Fi EXISTANTES


La norme IEEE 802.11 a conduit à la mise au point de deux types de réseaux sans-fil
fonctionnant soit à 11 Mbits/s soit à 54 Mbits/s. Les premiers se fondent sur la norme
IEEE 802.11b et les seconds sur les normes IEEE 802.11a et g.

§ La norme IEEE 802.11b : Fonctionnant à la fréquence des 2,4 GHz, la couche


physique définie par l’extension « b » du standard utilise comme modulation la
technique du DSSS6. La couche physique DSSS initiale pouvait offrir des débits de 1
ou 2 Mbits/s. La nouvelle couche physique aussi désignée par le sigle HR/DSSS7 ,
utilise un codage permettant de transmettre jusqu'à 11 Mbits/s sur voie radio. Le débit
réel atteint s’établit autour de 5 Mbits/s alors que la couverture théorique est de 100m,
mais elle se situe en pratique autour de 30 à 60 m.

§ La norme IEEE 802.11a : Cette norme fonctionne à la fréquence de 5GHz et permet


d’obtenir un débit plus important (54 Mbits/s) que la norme IEEE 802.11b, mais son
usage est plus contraignant. La portée est plus faible, de plus cette norme n’est pas
compatible avec la norme 802.11 originelle et les équipements sont onéreux.

§ La norme IEEE 802.11g: Cette norme a été mise au point pour répondre aux
problèmes posés par la norme précédente, elle utilise la technique de modulation
OFDM8 avec un débit de 54 Mbits/s. Cette norme est compatible avec la norme IEEE
802.11b (bande de fréquences de 2.4 GHz) et possède tous les atouts pour s’imposer
comme le standard des WLAN : débits relativement élevés, coûts faibles, portée
satisfaisante.

6
DSSS : Direct Sequence Spread Spectrum
7
HR/DSSS : High Rate DSSS
8
OFDM : Orthogonal Frequency Division Multiplexing

13
2. MODELE EN COUCHE DE LA NORME IEEE 802.11
Comme tous les standards de l’IEEE, 802.11 couvre les deux premières couches du modèle de
référence OSI, c'est-à-dire : La couche PHYSIQUE et la couche LIAISON DE DONNEES.

LLC
Couche liaison de données
MAC
PLCP
Couche physique
PMD

Figure 1.2: Modèle IEEE

2.1 COUCHE LIAISON DE DONNEES


La couche liaison de données de la norme 802.11 est composée de deux sous-couches :
§ La sous-couche de contrôle de liaison logique (LLC : Logical Link Control)
§ La sous-couche de contrôle d’accès au support (MAC : Medium Access Control)

2.1.1 Sous-couche LLC


La sous-couche LLC 802.11 est totalement identique à la sous-couche LLC 802.2. Le rôle de
cette couche est, entre autres, d’adapter les données venant des couches supérieures à la
couche physique. Il est ainsi tout à fait possible et voulu de connecter un réseau WLAN à tout
autre réseau IEEE 802, filaire ou non.

2.1.2 Sous-couche MAC


La sous-couche MAC intègre les mêmes fonctionnalités que la sous-couche MAC 802.3, à
savoir :
§ Procédure d’allocation du support ;
§ Adressage des paquets ;
§ Formatage des trames ;
§ Contrôle d’erreurs

En plus de ces fonctions habituellement rendues par la sous-couche MAC, la sous-couche


MAC 802.11 offre d’autres fonctions qui sont normalement confiées aux protocoles
supérieurs, comme :
§ La fragmentation et le réassemblage ;
§ Les retransmissions de paquets ;
§ Les accusés de réception.

2.1.2.1 Mécanisme d accès au support


La norme 802.11 introduit deux méthodes d’accès au support physique fondamentalement
différentes, le DCF9 et le PCF10.
§ La méthode DCF équivaut à la méthode d’accès au support des réseaux filaires
traditionnels supportant le Best-effort, c’est-à-dire des réseaux dans lesquels tous les
utilisateurs ont une même chance d’accéder au support.

9
DCF : Distributed Coordination Function
10
PCF : Point Coordination Function

14
§ La méthode PCF, se base sur l’interrogation des terminaux, ou polling, contrôlée par
le point d’accès (AP, Access Point). Elle est utilisée pour la transmission de données
temps réel, telles que la voix ou la vidéo.

Un réseau de type ad-hoc supporte uniquement le DCF, tandis qu’un réseau infrastructure
peut supporter à la fois le DCF et le PCF ainsi, cette dernière architecture permet de délivrer
de la qualité de service sur le réseau.

a. Méthode d accès DCF :


Le DCF est conçu pour prendre en charge le transport des données asynchrones dans lequel
tous les utilisateurs désirant transmettre des données ont une chance égale d’accéder au
support de transmission. Il utilise un algorithme distribué pour gérer l’accès au canal. Cet
algorithme est basé sur les mécanismes de CSMA/CA (Carrier Sense Multiple Access with
Collision Avoidance) ou méthode d’accès multiple à détection de porteuse et évitement de
collision.

Les protocoles CSMA sont très efficaces lorsque le support n’est pas surchargé, puisqu’ils
autorisent les stations à émettre avec un minimum de délai, mais il y’a toujours une chance
que des stations émettent en même temps (collision). Ceci est dû au fait qu’une station écoute
le support, le repère libre, et finalement décide de transmettre, parfois en même temps qu’une
autre exécutant cette même suite d’opérations.

Ces collisions doivent être détectées pour que la sous-couche MAC puisse retransmettre le
paquet sans avoir à repasser par les couches supérieures. Dans Ethernet cette collision est
repérée par les stations qui transmettent (Détection de Collision). Dans les réseaux Wi-Fi, le
mécanisme de détection de collision ne peut être envisagé pour deux causes principales :
§ Les liaisons radio ne sont pas Full Duplex, la transmission couvre la réception de
signaux sur la même fréquence et ne permet pas à la station d’entendre la collision.
Comme une station ne peut écouter sa propre transmission, si une collision se produit,
la station continuera à transmettre la trame complète, ce qui entraîne une perte de
performance du réseau.
§ Dans un environnement sans fil, on ne peut être sûr que toutes les stations s’entendent
entre elles (ce qui est l’hypothèse de base du principe de détection de collision), donc
le faite que la station voulant transmettre teste si le support est libre, ne veut pas
forcement dire que le support l’est effectivement autour du récepteur.

La technique d’accès de Wi-Fi doit tenir compte de ces phénomènes, d’où le choix sur la
méthode d’accès multiple avec évitement de collision. Elle est complétée par un mécanisme
de tirage de délai aléatoire avant transmission (Random Backoff). Chaque station exécute cet
algorithme localement afin de déterminer à quel moment elle pourra commencer sa
transmission.

La méthode CSMA/CA nécessite l’utilisation d’intervalles de temps IFS11 entre les


transmissions contiguës. Le standard a défini trois type d’IFS :
§ Le premier SIFS12 est le plus court de tous, il est utilisé pour la transmission des
trames d’acquittement et des rafales de trames issues d’une même station.

11
IFS : Inter Frame Space
12
SIFS : Short IFS

15
§ Le second PIFS13 est utilisé en mode PCF, il permet aux transmissions PCF de gagner
l’accès au médium par l’utilisation d’un IFS plus court que celui utilisé pour la
transmission des trames en DCF.
§ Le troisième DIFS14 est le plus couramment utilisé (avec le SIFS). Il est utilisé en
mode DCF comme temps minimal d’attente avant transmission.

Trois niveaux de priorité sont donc implicitement établis : les trames d’acquittement et les
rafales de trames sont les plus prioritaires, suivent les trames en mode PCF émises par le point
d’accès et finalement le reste du trafic utilisant DIFS et les mécanismes de gestion d’accès
multiple (temporisation aléatoire).

Figure 1.3: Relations entre SIFS, PIFS et DIFS.

b. Méthode d accès PCF :


Le PCF est un mode d’accès sans contention. Elle consiste en une gestion centralisée des
ressources, basée sur un mécanisme de partage coordonné par le point d’accès suivant un
multiplexage temporel et dynamique des stations sur le canal de communication. Les stations
envoient des trames spéciales appelées PR15 (demande d’accès au support) et c’est le point
d’accès qui ordonne les transmissions en distribuant le droit à la « parole » par l’intermédiaire
de trames d’administration définies à cet effet et permettant d’effectuer une sollicitation
explicite auprès d’une station pour lui attribuer le droit à émettre (mécanisme de Polling).
L’utilisation du PCF est optionnelle et donc peu ou même pas implémentée dans les matériels
802.11.

Pour contrôler l’accès au support, le point d’accès dispose d’une priorité supérieure en
utilisant les inter trames PIFS qui sont plus courts que les inter trames DIFS utilisés par les
stations. Toutefois, le point d’accès doit s’assurer que les stations puissent accéder au support
au moyen de la technique DCF, c’est pourquoi les deux modes sont alternés : il existe une
période dite CFP16 pour le PCF et une période dite CP17 pour le DCF alternées par une trame
balise permettant de synchroniser les stations.

13
PIFS : PCF IFS
14
DIFS : DCF IFS
15
PR : Polling Request
16
CFP : Contention Free Period
17
CP : Contention Period

16
Type de Transmission Applications Gestion des ressources
Transmission de
DCF
Asynchrone Données asynchrones Distribué
PCF Synchrone Temps réel Centralisé

Tableau 1.1: Comparaison des modes d’accès

2.1.2.2 Protection contre les stations cachées:


Un problème spécifique au monde du sans-fil est le problème de la station cachée. Deux
stations situées chacune à l’opposé d’un point d’accès (mode infrastructure) peuvent écouter
l’activité de ce point d’accès mais ne pas s’entendre entre elles du faite que la distance entre
les deux est trop grande ou qu’un obstacle les empêche de communiquer entre elles. Pour
détecter des stations cachées, il est nécessaire de mettre en place un mécanisme qui utilise des
trames d’annonce RTS18/CTS19.

a. Mécanisme de réservation RTS/CTS


Lorsqu’une station souhaite transmettre des trames, elle commence par envoyer une trame
RTS à la station à joindre à travers le point d’accès. La station qui reçoit la trame RTS envoie
si les conditions sont réunies, une trame CTS à travers le point d’accès. Ces deux trames
contiennent la durée prévue pour la transmission des données, elles sont courtes (20 octets
pour RTS et 14 octets pour CTS) et rencontrent donc une faible probabilité de collision.

Poind d’accès

Client A
Client B

RTS
RTS

CTS

CTS

Figure 1.4: Séquences RTS/CTS

18
RTS : Request To Send
19
CTS : Clear To Send

17
Grâce à l’envoi de la trame RTS, toutes les stations situées dans la couverture radio de la
source sont informées d’une transmission imminente et de sa durée éventuelle. Elles peuvent
ainsi mettre à jour leurs NAV et passer en mode économie d’énergie pour la dite durée. Le
CTS a le même rôle d’annonce mais cette fois autour du récepteur.

Ce mécanisme bien qu’efficace entraîne des surcoûts importants occasionnés par l’envoie de
trames de signalisation RTS/CTS sur la voie radio et la possibilité de collisions (plusieurs
stations peuvent émettre en même temps une demande d’émission imminente en utilisant
RTS). De plus ce mécanisme n’est pas envisageable pour la transmission de trames diffusées
à tous les membres dites trames Broadcast. En effet, le destinataire n’étant pas unique, on ne
peut avoir de réponse en retour (CTS), par conséquent des collisions sur les trames diffusées
sont toujours possibles.

b. Seuil de déclenchement
Les surcoûts correspondent à autant de bande passante qui n’est pas utilisée pour transmettre
des données. C’est pourquoi à ce mécanisme est associé un seuil de déclenchement qui en
limite l’usage lorsque le surcoût devient trop important. Si la longueur des données à
transmettre est inférieure à ce seuil, la transmission se fera sans utilisation des trames
RTS/CTS. Si le seuil est dépassé alors le mécanisme est utilisé pour la transmission.

c. Formats des trames RTS/CTS :

2 Octets 2 Octets 6 Octets 6 Octets 4 Octets


Contrôle de Durée Adresse Adresse FCS
trame /ID Destinataire Expéditeur
Trame RTS

2 Octets 2 Octets 6 Octets 4 Octets


Contrôle de Durée Adresse FCS
trame /ID Destinataire
Trame CTS

Figure 1.5 : Trames RTS/CTS

§ Durée/ID : temps nécessaire, en microsecondes, à la transmission de la trame de


données ou de gestion suivante, plus une trame CTS, ACK et trois SIFS
§ Adresse Destinataire : adresse du récepteur de la prochaine trame de données ou de
gestion
§ Adresse Expéditeur : adresse de la station qui émet la trame
§ FCS : contrôle d’erreur

2.1.2.3 Fragmentation et réassemblage :


Dans un environnement de réseau local sans fil, la taille des paquets est plus petite que pour
les réseaux filaires (ex : Ethernet utilise des paquets de 1518 octets) en raison principalement
du taux d’erreur par bit qui est plus important (La probabilité pour qu’un paquet soit
corrompu, augmente avec sa taille).

Dans le cas d’un paquet corrompu (collision ou même du bruit) le surdébit engendré par sa
retransmission est fonction de la taille du paquet (l’augmentation de la taille entraîne une

18
augmentation de surdébit). De plus, dans les systèmes Wi-Fi à saut de fréquence (FHSS), le
support est interrompu périodiquement (toutes les 20 ms) pour effectuer le saut de fréquence,
donc plus le paquet est petit, plus la chance d’avoir une transmission interrompue est faible.

Pour éviter de créer un nouveau protocole LAN afin de pouvoir utiliser des paquets de petite
taille, l’IEEE a décidé de résoudre ce problème en ajoutant un simple mécanisme de
fragmentation et de réassemblage au niveau de la sous-couche MAC. Pour savoir qu’une
trame doit être fragmentée, on compare sa taille à une valeur seuil, appelée Fragmentation-
Threshold. Si la taille est plus grande que ce seuil, la trame est fragmentée. Les fragments ont
une taille équivalente à celle du seuil, sauf pour le dernier qui peut avoir une taille plus petite.

Lorsqu’une trame est fragmentée, tous les fragments sont transmis de manière séquentielle.
Le support n’est libéré qu’une fois tous les fragments transmis avec succès ou lorsque la
station source ne réussi pas à recevoir l’ACK d’un fragment transmis. La station destination
acquitte chaque fragment reçu avec succès en envoyant un ACK à la station source. La station
source garde le contrôle du support pendant toute la durée de transmission d’une trame en
attendant un SIFS après la réception d’un ACK et après la transmission d’un paquet. Si un
ACK n’est pas correctement reçu, la station source arrête la transmission et essaye d’accéder
de nouveau au support et lorsqu’elle y accède, la transmission commence à partir du dernier
fragment non acquitté.

En bref ce mécanisme se résume à un algorithme simple d’envoi et d’attente de résultat, où la


station émettrice n’est pas autorisée à transmettre un nouveau fragment tant qu’elle n’a pas
reçu l’acquittement du fragment courant ou qu’elle décide qu’un fragment a été retransmis
trop souvent et abandonne la transmission de la trame.

2.1.2.4 Format de la trame MAC :

2 Octets 2 Octets 6 Octets 6 Octets 6 Octets 2 Octets 6 Octets 0 à 2312 4 Octets


Contrôle de Durée Adresse Adresse Adresse Contrôle de Adresse Corps
FCS
trame /ID 1 2 3 séquence 4 de la trame
En-tête MAC

Figure 1.6 : Trame MAC

2.2 LA COUCHE PHYSIQUE


La couche physique des réseaux Wi-Fi se décompose en deux sous-couches : la sous-couche
PLCP20 et la sous-couche PMD21.

La sous-couche PMD abrite toutes les fonctions de couche physique appliquée à une
technologie donnée. Elle spécifie le type de support de transmission, le type d’émetteur
récepteur, le type de connecteur, et le type de modulation et de démodulation.

La sous-couche PLCP prend en charge l’écoute du support, pour cela elle fournie un CCA22,
qui est le signal utilisé par la sous-couche MAC pour savoir si le support est occupé ou non.
Cette sous-couche réalise une correspondance entre les fonctions de la PMD et les interfaces
standards implémentées dans la sous-couche MAC.
20
PLCP : Physical Layer Convergence Protocol
21
PMD : Physical Medium Dependent
22
CCA : Clear Channel Assessment

19
Un protocole PLCP est défini pour chaque type de couche physique. Avant toute transmission
la sous couche PLCP ajoute à chaque unité de données MAC (MPDU23) un entête qui
contient :
§ des données de synchronisation ;
§ la durée de la transmission de la trame MAC ;
§ un CRC qui permet de contrôler le contenu de l’entête PLCP ;
§ la technique de modulation utilisée. La norme Wi-Fi définit quatre types de couches
physiques différentes et donc quatre techniques de modulation (FHSS, DSSS, OFDM
et Infrarouge).

3. ADMINISTRATION DES RESEAUX Wi-Fi


Les fonctions d’administration comprennent la gestion de l’énergie, la synchronisation,
l’authentification, l’association, la réassociation, etc.

3.1 SYNCHRONISATION
La précision des transmissions et du respect des temporisateurs est une donnée essentielle
dans une architecture distribuée. Dans un réseau sans-fil, chaque station possède une horloge
interne qui lui permet de déclencher ses processus (émission, réception). Cette horloge aussi
précise soit-elle reste soumise à une dérive. Pour limiter les effets des dérives d’horloge, il est
nécessaire de synchroniser l’ensemble des participants du réseau de manière périodique. Cette
fonction est assurée par l’envoi d’une trame particulière appelée trame balise (Beacon)
contenant un temps de référence. Dans une architecture basée sur une infrastructure, cette
fonction est assurée par le point d’accès responsable de la cellule. Pour l’architecture ad-hoc,
la fonction de synchronisation doit être assurée par un mécanisme distribué.

3.2 AUTHENTIFICATION, ASSOCIATION ET REASSOCIATION


Les mécanismes d’association et d’authentification sont réalisés lors de l’entrée d’une station
au sein du réseau. L’authentification a pour but de vérifier si la station demandant son
association est autorisée sur le réseau. Ce mécanisme n’est pas nécessaire dans les réseaux
filaires car il est possible d’empêcher l’accès physique à de tels réseaux, chose qui n’est pas
réalisable avec un réseau sans-fil. Après l’authentification de la station auprès du réseau, elle
peut commencer à émettre en respectant les règles établies par la sous-couche MAC pour
l’accès au médium.

L’association a pour but d’enregistrer la station auprès du point d’accès. Le point d’accès
attribue une adresse à la station mobile qui lui permettra d’être identifiée sur le réseau. Du fait
de la mobilité, une station passe de la couverture radio d’un point d’accès à la couverture
radio d’un autre. Pour tenir compte de cela, un processus de réassociation a été prévu. Lors
d’une transition entre cellules, la station mobile va se réassocier auprès du nouveau point
d’accès puis se désassocier de l’ancien. Cette opération est réalisée de manière transparente à
l’utilisateur. Le réseau dorsal se charge de l’acheminement des trames depuis son ancienne
position afin de garantir la continuité des transmissions en cours.

23
MPDU : MAC Protocol Data Unit

20
GESTION DE L’ENERGIE
La gestion de l’énergie disponible pour une station mobile fonctionnant sur batterie est un
élément essentiel. De cette gestion efficace va dépendre son autonomie. C’est pourquoi un
mécanisme permettant à une station de fonctionner dans un mode très économique a été mis
au point.
Une station peut être soit en mode normal soit en mode d’économie d’énergie. En mode
normal, elle doit pouvoir recevoir des trames qui lui sont destinées à tout instant. En mode
économie d’énergie, la station ne se réveille qu’à des instants bien précis (négociés avec le
point d’accès) et interroge le point d’accès si elle constate que des trames lui étant destinées
sont stockés dans la mémoire de ce dernier.

21
Chapitre II :

Sécurité de
base des
réseaux Wi-Fi

22
INTRODUCTION
L’ouverture des réseaux d’une entreprise au monde extérieur, la décentralisation des
traitements et des données ainsi que la multiplication des postes de travail accroissent les
risques de dénaturation des systèmes et d’altération des données. De ce fait, la sécurité
devient un problème inhérent à tout système de communication, où, par définition, les
échanges d’informations interviennent sur ces réseaux, souvent déployés sur de vastes zones
géographiques.

Toute politique de sécurité devrait prendre en considération les aspects suivants :


§ On ne voit pas son correspondant directement, il faut donc authentifier ce dernier.
§ On ne sait pas par où passe les données il faut donc les protéger (Chiffrement).
§ On ne sait pas si quelqu’un ne va pas modifier les informations émises, il faut donc
vérifier leur intégrité.
Il existe d’autres considérations du même genre qui doivent être prises en charge par les
réseaux.

En particulier, les réseaux sans-fil ont l’inconvénient majeur de diffuser les informations à
tout récepteur situé à la portée radio des ondes émises. L’écoute comme la transmission vers
le réseau devient dès lors évidente. Cette facilité d’interaction à distance (à la différence des
LAN filaires qui nécessitent une connexion physique au réseau pour opérer des attaques)
place une difficulté particulière sur l’implémentation de la sécurité dans ces réseaux.
Globalement, on peut diviser la sécurité en deux parties: la sécurité lors de l’ouverture de la
session et la sécurité lors du transport de l’information.

Toute implémentation efficace de politique de sécurité passe tout d’abord par l’identification
de tous les types d’attaques éventuelles pouvant être envisagées contre le réseau protégé afin
de pouvoir justifier les solutions retenues et évaluer leur impacte sur la sécurité. C’est dans cet
ordre d’idée que nous allons recenser dans ce qui suit, les différentes attaques possibles sur les
réseaux sans-fil.

1. LES ATTAQUES DANS LES RESEAUX Wi-Fi


Les attaques qui sont le plus souvent répertoriés dans les réseaux sans-fil sont au nombre de
quatre :
§ Interception des données ;
§ Intrusion dans le système ;
§ Attaque de l’Homme au milieu ;
§ Porte dissimulée.

1.1 INTERCEPTION DES DONNEES


L’interception des données est l’attaque la plus classique, elle est facilitée par le caractère
ouvert des équipements de réseaux sans-fil. Elle consiste en l’écoute et l’analyse du trafic
circulant sur le réseau.

1.2 INTRUSION DANS LE SYSTEME


L’intrusion dans le système consiste, pour un élément étranger, à se connecter au point
d’accès radio puis à pénétrer dans le réseau local derrière le point d’accès (réseau de
l’entreprise). Les points d’accès servent à l’attaquant de point d’entrée dans le réseau, après
quoi il peut tenter de pénétrer les équipements reliés à celui-ci

23
Figure 2.1 : Différents cas d’attaques

1.3 ATTAQUE DE L’HOMME AU MILIEU


L’attaque de l’Homme au milieu est classique dans les réseaux, mais elle est particulièrement
facile à mettre en uvre dans les réseaux sans-fil. Il suffit de disposer d’un point d’accès dans
la couverture radio. Une station cherche à s’y connecter, livrant ainsi les clés du processus de
connexion, qui après avoir été collectées, servent à un futur intrus pour pénétrer dans le
réseau.

1.4 PORTE DISSIMULEE


Cette attaque consiste à raccorder un point d’accès illégal à un réseau, ce point d’accès,
contrôlé par l’espion, lui sert de point d’entrée dans le réseau.

Type d’attaque Equipement(s) nécessaire(s) Domaine de sécurité


Interception des données Ordinateur équipé de Cryptage
Intrusion dans le système carte sans fil Contrôle d’accès
Point accès (non raccordé au réseau)
Attaque de l’Homme au milieu Authentification
placé dans la zone de couverture
Point d’accès pirate raccordé
Porte dissimulée Sécurité du périmètre
illégalement au réseau

Tableau 2.1: Récapitulatif des types d’attaques

L’interception et l’analyse des données nécessitent l’utilisation d’un ordinateur équipé d’une
carte réseau sans-fil. En fonction du type d’antenne utilisée, l’ordinateur pirate peut être situé
soit dans la zone de couverture soit en dehors de celle-ci s’il est équipé d’une antenne
directive, cette dernière permettant d’augmenter considérablement la portée.

24
2. RAPPEL SUR LES SERVICES DE BASE DE LA CRYPTOGRAPHIE
Afin de mieux cerner et évaluer les solutions de sécurité proposées pour adresser les différents
types d’attaques, il nous semble nécessaire de rappeler quelques notions de base en
cryptographie qui, avec la cryptanalyse constitue la cryptologie.

La cryptographie est la science de la sécurisation des données (informations), elle est basée
sur les mathématiques pour crypter et décrypter les données. La cryptographie permet de
stocker ou de transmettre les informations sensibles à travers des réseaux non sécurisés
(comme Internet) de telle sorte qu’elles ne puissent être lues que par le destinataire convenu.

La cryptanalyse est la science de l’analyse et du cassage des communications sécurisées, dont


les spécialistes (cryptanalystes) sont souvent appelés attaquants. La cryptanalyse classique
mêle une combinaison de raisonnement analytique, d’application d’outils mathématiques, de
découverte de redondances, de patience, de détermination, et de chance.

La cryptographie permet de rendre un certains nombre de services de base en sécurité à


savoir :
§ La confidentialité des données (algorithmes de chiffrement);
§ L’intégrité des données (algorithmes de hachage) ;
§ Authentification de l’émetteur des données (algorithmes de signature numérique).

Définitions
1. Le cryptage est une technique destinée à transformer, à l’aide d’une clé (convention
secrète) des informations en clair en informations inintelligibles pour des tiers non
autorisés. Le décryptage est, quant à lui, la technique qui permet de retrouver les
informations en claires, à partir des informations chiffrées en utilisant la clé secrète de
décryptage.
2. L’authentification est la procédure dans laquelle, on cherche à s’assurer de l’identité de
son correspondant.
3. Le hachage est une opération fréquemment utilisée en cryptographie. Son but est de
combiner deux ou plusieurs nombres pour produire un résultat de telle sorte qu'il est
extrêmement difficile ou même impossible de renverser le processus. En d'autres termes,
si A et B sont hachés ensemble pour produire C, alors la connaissance de C ne renseigne
rien au sujet de A ou B.

2.1 TECHNIQUES DE CRYPTAGE

2.1.1 Cryptage à clé symétrique


Les systèmes à clés symétriques (secrètes) utilisent une clé unique pour le cryptage et le
décryptage des données. Pour que les données chiffrées ne soient lisibles que par le
destinataire, la valeur de cette clé (unique) doit être un secret partagé, uniquement, par les
deux entités communicantes. Ces systèmes utilisent soit la technique de substitution soit la
technique de transposition ou bien ces deux techniques en même temps.

Il existe un certain nombre d’algorithmes qui fonctionnent suivant ce principe :


§ DES24 est l’algorithme à clé symétrique le plus connu, il a été mis au point par IBM et
consiste en une suite de substitutions (DES-S) et de transpositions (DES-P), par bloc
de 64 bits en utilisant des clés de 56 bits.

24
DES : Data Encryption Standard

25
§ IDEA25 (1992) est un algorithme dont le fonctionnement est proche de DES, il
effectue un cryptage par blocs de 64 bits avec des clés de 128 bits.
§ AES26: Cet algorithme a été développé en 2000 par Rijndael. Il a été créé en open
source dans le but de remplacer l’algorithme DES (actuellement facilement cassable).
AES est facile à implémenter et possède des longueurs de clés de 128, 192 et 256 bits.
§ On peut aussi citer RC2, RC4, RC5 (Rivest's Code #4, #5 » 1987) ou BLOWFISH
(1993)

Il est important de noter que les algorithmes symétriques ne permettent pas de résoudre les
problèmes suivants:
§ Quel canal utiliser pour échanger les clés symétriques? Ce point est critique pour des
applications d’Internet.
§ L’augmentation rapide du nombre de clés à gérer avec le nombre de correspondants.
Le calcul du nombre de clés secrètes pour qu’au sein d’un groupe de n personnes,
toutes les communications chiffrées soient possibles, montre qu’il faut disposer d’un
nombre de clés égal au nombre de combinaisons de 2 parmi n, soit n(n − 1) / 2 clés !
A l’échelle d’Internet, ce problème n’a pas de solution.

L’avantage de ces systèmes est que les opérations de chiffrement et de déchiffrement sont
rapides à exécuter sur des ordinateurs classiques.

2.1.2 Cryptage à clé asymétrique


Pour éviter la diffusion des clés, les systèmes à clés asymétriques appelés systèmes à clé
publique utilisent une technique basée sur deux clés, une clé publique qui est connue de tous
(ne pas confondre avec système à clé publique) et une clé privée qui n’est connue que par l’un
des correspondants. Les deux clés sont reliées mathématiquement, mais l’utilisation de grands
nombres (> 1024 bits) rend ce lien pratiquement impossible à retrouver. Un message crypté
avec l’une des clés ne peut être décrypté qu’avec l’autre.

Il existe un certain nombre algorithmes qui fonctionnent suivant ce principe. L’algorithme


RSA27, est le plus répandu, sa robustesse est basée sur :
§ la non divulgation de la clé privée,
§ la difficulté qui existe à factoriser des grands nombres,
§ l’absence de méthodes mathématiques pour déduire la clé privée de la clé publique.

Les systèmes à clé publique permettent d’assurer la confidentialité des données mais aussi
l’authentification de l’émetteur d’un message. De plus le découpage en clé publique et clé
privée est très utile pour une utilisation à grande échelle. En effet par ces systèmes, on résout
les deux difficultés majeures des algorithmes de chiffrement symétriques qui sont: l’absence
d’un canal sûr pour l’échange des clés secrètes et la complexité en n2 du nombre des clés.
Cependant, ces systèmes nécessitent une puissance de calcul importante.

25
IDEA : International Data Encryption Algorithm
26
AES : Advanced Encryption Standard
27
RSA : Rivest Shamir Adleman

26
2.1.3 Utilisation des algorithmes à clés asymétriques pour l échange des clés d algorithmes
symétriques
Pour contourner l’importante puissance de calcul requise pour le traitement des algorithmes à
clés asymétriques et en même temps profiter de la simplicité relative des systèmes à clés
symétriques, une solution consiste à utiliser les deux types de cryptage (à clés symétriques et
à clés asymétriques) pour effectuer la transmission d’un document chiffré.

Un des interlocuteurs tire aléatoirement une clé à usage unique et la transmet à l’autre
interlocuteur en la cryptant avec la clé publique de ce dernier. Le destinateur déchiffre cette
clé à l’aide de sa clé privée. Ensuite chacun de son côté calcule la clé de session à partir du
secret partagé et d’un algorithme convenu à l’avance. En d’autres termes, les systèmes à clé
publique permettent l’établissement d’un canal sûr pour l’échange des clés d’algorithmes
symétriques.

2.2 TECHNIQUES D’AUTHENTIFICATION

2.2.1 Authentification par systèmes à clés publiques


Un message crypté avec une clé publique n’est déchiffrable qu’à l’aide de la clé privée
correspondante, cela assure la confidentialité, mais ne permet pas d’authentifier l’auteur du
message. L’authentification de l’émetteur peut être obtenu en cryptant le message avec la clé
secrète et en le déchiffrant avec la clé publique. Parce qu’un message crypté avec une clé
privée donnée ne peut être décrypté qu’avec la clé publique correspondante, ce procédé
permet d’authentifier l’origine d’un message.

2.2.2 Authentification par signatures numériques


Le cryptage permet de mettre en place des services de confidentialité. La signature
électronique va permettre de garantir l’authentification de l’origine d’un message et son
intégrité.

Pour cela, une signature numérique doit avoir un certain nombre de propriétés :
§ elle ne doit pas être falsifiable ;
§ elle ne doit pas être réutilisable par un autre document ;
§ la modification d’un document doit altérer sa signature;
§ elle ne doit pas être reniable.

Une signature numérique est générée en combinant un système de cryptographie et une


fonction de hachage. Selon que l’on utilise un système de cryptographie à clé secrète ou
publique on obtient une signature numérique dite symétrique ou asymétrique.

Dans un système à signature symétrique, l’émetteur calcule le digest (signature numérique)


sur la concaténation de la clé secrète et du message. Le destinateur procède de même, si le
digest trouvé est identique à celui qui a été reçu, c’est d’une par que le message n’a pas été
altéré et d’autre part qu’il a bien été émit par l’autre possesseur de la clé partagée.

Dans un système à signature asymétrique, le digest est calculé sur le message puis chiffré à
l’aide de la clé privée de l’émetteur, le résultat est joint au message envoyé. Le destinateur
calcule le digest sur le message, déchiffre le digest reçu à l’aide de la clé publique de
l’émetteur. Si les résultats sont identiques, le message n’a pas été altéré et l’émetteur est
identifié, c’est le possesseur de la clé privée.

27
3. SOLUTION DE SECURITE PROPOSEE PAR LA NORME IEEE
802.11
Pour permettre aux réseaux sans fil d’avoir un trafic aussi sécurisé que celui des réseaux
filaires, le groupe IEEE 802.11 a mis au point le protocole WEP (Wired Equivalent Privacy),
dont les mécanismes permettent le cryptage, le contrôle d’intégrité des données et
l’authentification des stations . Avant de présenter le WEP, rappelons les règles de protection
élémentaires disponibles dans les produits IEEE 802.11.

3.1 LES REGLES DE PROTECTIONS ELEMENTAIRES


Ces systèmes de sécurité de base des réseaux radio n’utilisent pas d’algorithme de cryptage et
ne peuvent prétendre résoudre que le problème du contrôle d’accès dans un réseau sans-fil.
Les solutions minimales utilisent deux techniques, éventuellement de façon complémentaire :
§ L’identificateur du réseau (SSID);
§ La protection par adresse MAC IEEE 802.11.

3.1.1 Identificateur du réseau


Cet identificateur, inclus dans la norme IEEE 802.11, permet de filtrer le trafic. Un trafic ne
portant pas le même identificateur que celui du réseau qu’on souhaite pénétrer est ignoré par
ce dernier. Il est donc nécessaire de connaître le nom du réseau pour y pénétrer. Cette
protection est en fait très sommaire, car il est possible de s’enquérir de l’identifiant du réseau
soit par le biais du point d’accès qui l’envoie périodiquement et en clair dans les trames
balises (Beacon Frames), soit par écoute des trames d’un utilisateur qui souhaite se connecter
au réseau, ce dernier devant donner le SSID.

3.1.2 Protection par adresse MAC IEEE


Ce procédé n’autorise que les communications contrôlées par une liste d’adresses MAC IEEE,
appelée également liste de contrôle d’accès ACL28. Cela permet de ne fournir l’accès qu’aux
stations dont l’adresse MAC est spécifiée dans la liste. Cette protection n’est pas non plus
difficile à contourner, car l’écoute passive du réseau permet de récupérer des adresses MAC
IEEE autorisées. De plus, de nombreuses cartes radio permettent de modifier par logiciel leur
propre adresse MAC.

3.2 LE WEP (WIRED EQUIVALENT PRIVACY)


La sécurité dans IEEE 802.11 est obtenue grâce à l’algorithme de cryptage WEP qui assure la
confidentialité, l’authentification et le contrôle d’intégrité sur ces réseaux. Le WEP est basé
sur l’utilisation d’une clé statique, symétrique, secrète et partagée entre les utilisateurs que
nous appellerons dans la suite du document clé SK.

3.2.1 Cryptage et décryptage WEP des données


Les trames transmises sur le réseau sans-fil sont protégées par un cryptage. Seul un
décryptage avec la bonne clé Ki, construite à partir de la clé WEP statique SK, sécrète et
partagée entre le terminal émetteur et le réseau est autorisé. Cette clé Ki est obtenue par la
concaténation de la clé WEP statique SK de 40 ou de 104 bits et d’un vecteur d’initialisation
IV29 de 24 bits. Celui-ci est changé dynamiquement pour chaque trame. La taille finale de la
clé Ki (graine binaire) est donc de 64 ou de 128 bits.

28
ACL : Access Control List
29
IV : Initialization Vector

28
La clé ainsi obtenue permet de générer une séquence pseudo-aléatoire à l’aide de l’algorithme
RC4 (Ron’s Code 4). Elle est placée dans un générateur de nombres pseudo-aleatoires,
PRNG30. Ce générateur détermine une séquence d’octets pseudo-aléatoires ou Key Stream.
Cette série d’octets appelée Ksi, est utilisée pour chiffrer un message en clair (Mi) à l’aide
d’un classique protocole de Vernam, réalisant un OU Exclusif XOR entre Ksi et Mi.

Ci = Ksi ⊕ Mi

Par ailleurs un champ de contrôle d’intégrité (ICV) est calculé à partir de la trame à encoder
initiale, le message Mi est composé des données Di qui sont concaténées à leur ICV (Integrity
Check Value). La trame envoyée contient, outre l’entête habituel, un identificateur de la clé de
codage, le vecteur d’initialisation, les données cryptées et un champ de contrôle d’intégrité.
Ce champ de contrôle d’intégrité est obtenu par un CRC 32 calculé sur les données cryptées.

En-tête
IV
Res/KeyID

IV Ki Ksi
Clé secrète SK || PRGN ⊕

Ci Données
(RC4) ⊕ Chiffrées
Partagée

Données (Di) Mi
|| CRC
CRC 32

Figure 2.2 : Cryptage d’un paquet WEP

Pour décrypter une trame par le protocole WEP, le récepteur régénère, à partir de l’IV reçu la
séquence pseudo-aléatoire de cryptage et effectue un OU Exclusif sur les données reçues.

Mi’ = Ci ⊕ Ksi
Mi’ = (Ksi ⊕ Mi) ⊕ Ksi
Mi’ = Mi ⊕ Ksi ⊕ Ksi
Mi’ = Mi

Ensuite, le récepteur vérifie le checksum sur la donnée décryptée en subdivisant celle-ci sous
la forme : Mi’= (Di || ICV’), recalcule le checksum ICV sur les données en clair Di et
compare qu’il est identique au checksum ICV’ reçu. Ceci assure que seules les trames avec un
champ de contrôle d’intégrité valide sont acceptées par le récepteur.

30
PRNG : Pseudo Random Number Generator

29
Figure 2.3: Décryptage WEP

3.2.2 Authentification
Il existe deux services d’authentification. Le premier service qui est le système
d’authentification par défaut est appelé système ouvert d’authentification. Il ne produit aucune
vérification. Le second service, dit de la clé partagée, permet de s’assurer que la station qui
souhaite s’authentifier possède bien la clé partagée. Cette vérification ne nécessite pas de
transmettre en clair la clé, mais s’appuie sur l’algorithme de cryptage décrit précédemment.

a- Système ouvert d authentification (Open System Authentication) :


Le système ouvert d’authentification permet à une station de s’authentifier auprès d’une autre
station. Pour cela cette station envoie une requête d’authentification à la station auprès de
laquelle elle souhaite s’authentifier. Dans le système ouvert d’authentification, la réponse à
cette requête doit toujours être positive, pour autant que la station réceptrice accepte ce mode
d’authentification sans vérification. L’authentification du mode ouvert est purement formelle,
la seule vérification étant que ce mode soit supporté par la station qui valide l’authentification.

30
Terminal Authentificateur

Authentification Request
(Requête d’authentification)

Confirm Succès)
(Confirmation du succès)

Figure 2.4 : Fonctionnement du mécanisme Open System Authentication

b- Système à clé partagée (Shared Key Authentication) :


Le système à clé partagée nécessite l’échange de quatre trames pour réaliser l’authentification.
§ La première, envoyée par la station qui souhaite s’authentifier vers la station
authentifiante, est une simple requête d’authentification qui précise, outre l’identité de
celle-ci, le type d’authentification souhaité, soit , ici, le système à clé partagée.
§ La deuxième trame est envoyée par la station identifiante. Elle contient un texte
aléatoire de probation de 128 octets produit par l’algorithme de cryptage à l’aide de la
clé sécrète et d’un vecteur d’initialisation quelconque. Ce texte aléatoire correspond à
une séquence que la station qui souhaite s’authentifier doit renvoyer cryptée à la
station identifiante.
§ La troisième trame, renvoyée par la station qui souhaite s’authentifier contient la
réplique cryptée du texte de probation envoyé. Cette trame contient donc un champ de
contrôle d’intégrité permettant de s’assurer que la trame a été cryptée avec la bonne
clé de cryptage.
§ La station identifiante déchiffre la trame reçue. Si le test du contrôle d’intégrité est
positif, le texte décodé est comparé avec la version envoyée. S’il y a correspondance,
la station renvoie un message d’authentification réussi. Dans le cas contraire c’est un
message d’échec qui est envoyé.

31
Terminal Authentificateur

Authentification Request
(Requête d’authentification)

Challenge Text
Texte d’essai)

Challenge Response
(Réponse d’essai)
Encrypted Challenge Text
(Texte d’essai chiffré)

Confirm Succès)
(Confirmation du succès)

Figure 2.5 : Fonctionnement du mécanisme Shared Key Authentification

3.3 LES FAIBLESSES DU WEP


L’algorithme WEP était supposé remplir trois principaux rôles de sécurité à savoir :
§ Le contrôle d’accès, qui permet de protéger l’accès à l’infrastructure du réseau
sans-fil.
§ La confidentialité, qui permet de prévenir tout espionnage de trafic sur le réseau.
§ L’intégrité des données, qui consiste à protéger les données contre les altérations, de
sorte que les données modifiées ne puissent transiter par le réseau.
Nous verrons dans ce qui suit que ces trois objectifs n’ont pas été pleinement atteint par le
protocole.

3.3.1 Contrôle d accès


Le processus d’authentification n’est pas fiable, son principe est le suivant : le point d’accès
envoie un texte à la station qui souhaite s’authentifier, laquelle retourne le texte chiffré par le
biais du WEP. Le cryptage WEP nécessite la génération d'une séquence pseudo-aléatoire
appelée Key Stream (RC4 (IV||SK)) qui sera exclu au texte en clair pour produire le texte
crypté.

Tout attaquant espionnant le réseau en ce moment pourrait disposer du challenge text en clair
et de sa version cryptée. Ensuite il récupère la séquence pseudo-aléatoire de cryptage par
simple OU Exclusif entre ces deux informations. L'attaquant connaît maintenant un Key
Stream et l'IV correspondant. Il fait tout simplement une demande d'authentification, attend le
challenge text, l'exclut au Key Stream calculé, et renvoie le résultat avec l'IV correspondant.

Pour vérifier l’authenticité du client, le point d'accès concatène l'IV (choisi par l'attaquant) à
la clé secrète SK et produit le Key Stream qui sera bien sûr identique à celui avec lequel
l'attaquant a crypté le message car la clé SK et l’IV pour le calcul sont les mêmes que ceux
qui ont servi au calcul du Key Stream dérobé par l'attaquant. Par conséquent quand le point

32
d'accès décrypte le message, il trouvera que le résultat correspond au challenge text envoyé.
L'attaquant est donc authentifié sans avoir eu besoin de connaître la clé secrète.

Bien qu'un attaquant pourrait se faire authentifier de cette manière, par la suite, il ne pourra
pas, en principe, communiquer sur le réseau: toutes les transmissions sont cryptées, par
conséquent, il a aussi besoin de casser la confidentialité dans WEP. Nous verrons par la suite
que ceci ne constitue non plus un obstacle, l’authentification fournit sur un plateau à un
espion une attaque de type texte en clair. Il y’a là un défaut grossier de conception,
authentification et cryptage reposant sur la même protection.

3.3.2 Confidentialité
La technique du WEP utilise un cryptage par OU Exclusif avec une séquence pseudo-aléatoire
produite par l’algorithme RC4. La graine d’initialisation pour l’algorithme RC4 est la
concaténation de la clé symétrique de cryptage SK et du vecteur d’initialisation IV. La
connaissance d’une trame cryptée et de sa version en clair permet de construire pour le
vecteur d’initialisation utilisé IV, la séquence pseudo-aléatoire de cryptage. Il est ensuite
facile de déduire la séquence pseudo-aléatoire de cryptage pour un autre vecteur
d’initialisation IV’. Il suffit d’exploiter les identités suivantes :

RC4(y) = RC4(x) ⊕ x ⊕ y
x = IV||SK y = IV’||SK

La connaissance de RC4(x), la séquence aléatoire pour le vecteur d’initialisation IV, permet


de calculer RC4(y), la séquence aléatoire pour le vecteur d’initialisation IV’, sans pour autant
avoir à calculer la clé de cryptage SK. Il est dès lors possible, sans possession de la clé
secrète, de crypter pour transmettre ou de déchiffrer des données vers ou en provenance du
réseau.

3.3.3 Intégrité des données


L’algorithme du contrôle d’intégrité étant linéaire, il est facile de le contourner. Supposons
que nous disposions par écoute, d’une trame chiffrée valide avec son champ de contrôle
d’intégrité. Si nous modifions une partie de cette trame, du fait de la linéarité du système de
calcul du champ de contrôle d’intégrité, il suffit de calculer le champ de contrôle d’intégrité
correspondant aux modifications apportées à la trame chiffrée initiale et de l’ajouter à son
champ contrôle d’intégrité pour construire une trame possédant un champ de contrôle
d’intégrité valide.

3.3.4 Autres types d attaque :


D’autres types d’attaques ont été mis en évidence dont nous citerons : les rejeux de trames, les
attaques de type FMS (dues à l’utilisation de clés faibles) et la réutilisation de l’IV.

§ Les rejeux de trames : Le rejeu consiste à capturer les données d’un utilisateur légal
pour les retransmettre par la suite sur le réseau. Il y a beaucoup d’exemples dans
lesquels une attaque de type rejeux peut compromettre la sécurité d'un réseau
(contournement du processus d’authentification, usurpation d'identité ...). Donc un
réseau doit être conçu pour détecter et rejeter des vieilles copies de messages.
Lors de l’implémentation du WEP, aucune protection contre les rejeux n’a été prise
en compte. Il y a cependant un nombre séquentiel (IV) dans les trames MAC qui

33
s'incrémente avec chaque trame transmise, mais, il n'est pas inclus dans la protection
WEP contre les rejeux.
La protection contre les rejeux n'est pas cassée dans WEP; il n'existe tout simplement
pas.

§ Réutilisation de l IV (collision d IV) : Il y a collision d’IV lorsque deux trames


utilisent, pour le cryptage, la même séquence pseudo-aléatoire, donc la même graine
binaire (IV||SK) ou enfin, la même valeur de l’IV. L’utilisation d’une même valeur de
l’IV pour deux trames différentes peut révéler des informations concernant ces deux
paquets, les deux étant cryptés par la même séquence de cryptage. En effet,
considérons deux textes cryptés C1 et C2 définis par les équations suivantes :

C1 = P1 ⊕ RC4 (IV || SK) 


 ⇒ C1 ⊕ C 2 = [P1 ⊕ RC4 (IV || SK) ] ⊕ [P2 ⊕ RC4 (IV || SK)] = P1 ⊕ P2
C 2 = P2 ⊕ RC4 (IV || SK) 

Ainsi, si l’on connaît l’une des deux valeurs P1 ou P2, on peut alors facilement
déduire l’autre valeur. Il existe beaucoup d’autres types d’attaques dues à la
réutilisation d’une même valeur d’IV (analyse fréquentielle, attaques de type
dictionnaire..).

Le WEP utilise des IV’s sur 24 bits. Par conséquent, sur des réseaux à fort trafic, la
réutilisation d’une même valeur de l’IV peut être très fréquente :
− Pour un même utilisateur, aux environs de 16 millions de paquets transmis ;
− Entre utilisateurs différents, du fait que tout le monde utilise la même clé
statique.

§ Attaques de type FMS : Les cryptanalystes Scott Fuhler, Itsik Mantin et Adi Shamir
ont publié un article sur les différentes failles de RC4 qu’ils ont découvert. Ils ont en
particulier trouvé un moyen de casser le WEP (détermination de la clé secrète SK).
Avant de parler de l’attaque en question (nommée FMS), rappelons la façon dont le
WEP chiffre les données. Un vecteur d’initialisation IV est généré avant chaque
émission de trames, qui est concaténé à la clé secrète partagée SK pour donner la clé
de cryptage Ki = (IV||SK), différente pour chaque trame émise. Le texte en clair Di
est lui concaténé à son checksum ICV (Di). Ce texte est ensuite chiffré par l’opération
suivante:

Ci = [Di||ICV (Di)] ⊕ RC4 (Ki).

Le paquet effectivement envoyé est IV||Ci. Donc l’IV correspondant à chaque trame
est visible en clair sur le réseau.

L’attaque consiste à deviner une partie de la clé secrète SK à l’aide du premier mot
chiffré de Ci. En effet, le RC4 procède en deux phases qui se déroulent comme suit :
− Première phase : En premier il crée un tableau de 256 octets (S-Box) avec
toutes les valeurs de 0 à 255 et un autre tableau de 256 octets avec la clé de
cryptage Ki, en reprenant les valeurs de celle-ci jusqu'à ce que ce tableau soit
rempli. Ensuite il réarrange le tableau S-Box en utilisant les valeurs du
tableau formé à l'aide de la clé Ki pour le calcul de l’indice.

34
− Deuxième phase : En cette seconde phase, il génère la séquence pseudo-
aléatoire de cryptage, toujours en réarrangeant encore S-Box préalablement à
la sortie d’un octet.

Le problème est qu'il n'y a pas assez de permutations entre la situation initiale (phase 1) et la
sortie du premier octet de la séquence de cryptage, de telle sorte qu'il est, pour certaines
valeurs de l’IV (qui créent des cas de clés faibles), tout à fait possible (avec une probabilité
raisonnable), de déduire de cet octet, des informations sur la clé secrète SK. Typiquement, il
suffit d’analyser 60 IV’s de ce genre, pour avoir une relative certitude quand à la valeur d’un
octet de la clé secrète.

La robustesse du protocole WEP, étant fondamentalement basée sur le secret partagé (système
symétrique), l’apparition de ces genres d’attaques a prouvé, de façon définitive, la nécessité
de recourir à d’autres solutions de sécurité pour la mise en place de réseaux sans-fil de type
Wi-Fi.

CONCLUSION
Nous venons de voir que le WEP n’est pas une solution de cryptage efficace car il ne fournit
aucune garantie quand aux éléments clés de la sécurité à savoir : confidentialité, contrôle
d’intégrité et authentification. Par conséquent le WEP ne doit pas être implémenté dans des
réseaux qui requièrent un haut niveau de sécurité. Pour mettre en place un réseau Wi-Fi
sécurisé d’autres moyens doivent être utilisés. Dans ce qui suit nous présentons les trois
approches qui permettent de rendre un réseau sans-fil sûr, à savoir :
§ Intervention au niveau des protocoles IEEE 802.11 dans les noeuds sans-fil ;
§ Adaptation des techniques générales de sécurité réseau aux réseaux sans-fil, ce dernier
étant considéré comme un réseau classique et la mise en place se faisant au niveau
réseau ;
§ Sécurisation des applications utilisées au niveau transport et au niveau application.

Les réseaux ainsi obtenus sont de type WPA (Wi-Fi Protected Access) ou RSN (Robust
Security Networks).

35
Chapitre III :

Réseaux RSN
et Norme
802.1x

36
INTRODUCTION
Le groupe de travail IEEE 802.11i définit un nouveau type de réseaux sans-fil appelés RSN31
(réseaux de troisième génération) dans lesquels les stations sans-fil doivent avoir de
nouvelles capacités qui ne sont actuellement pas disponibles sur les matériels Wi-Fi existants.
Dans ce type de réseaux, les points d'accès n'autorisent l'accès qu'aux stations mobiles qui
disposent de ces capacités et placent de sérieuses contraintes de sécurité dans les processus
qui permettent à ces stations d'être authentifiées.

Cependant, du fait que bon nombre d'utilisateurs voulaient sécuriser leurs réseaux avant la
mise en place définitive des RSN (norme 802.11i), le standard a défini également des réseaux
pré-RSN appelés TSN32 (réseaux de deuxième génération) dans lesquels les nouveaux
systèmes et les matériels existants peuvent fonctionner en parallèle. L’IEEE 802.11i a donc,
au lieu d’imposer directement la troisième génération, incompatible avec la première (WEP),
propose de passer par une étape intermédiaire, le WPA, en utilisant TKIP pour garantir une
excellente sécurité en attendant le passage à la troisième génération. Rien n’empêche
évidemment les clients désirant implanter des réseaux sans-fil Wi-Fi d’adopter directement la
troisième génération.

Un réseau RSN a pour but de garantir sécurité, mobilité, intégrité et confidentialité ainsi que
passage à l’échelle et flexibilité. Il s’appuie sur la norme IEEE 802.1x pour les services
d’authentification et de gestion des clés.

1. LA NORME IEEE 802.1x


Initialement prévue pour les réseaux Ethernet, la norme IEEE 802.1x a pour objectif de
réaliser une authentification de l'accès au réseau lors de la connexion physique. Cette
authentification intervient avant tout mécanisme d'autoconfiguration (ex. DHCP...). L’objectif
de cette norme est de valider le droit d’accès physique au réseau, indépendamment du support
de transmission utilisé, elle s’appuie sur des mécanismes d’authentification existants.

La norme IEEE 802.1x définit trois acteurs:


§ le client (système à authentifier) ;
§ le système authentificateur (Point d’accès dans le cas de Wi-Fi) ;
33
§ le serveur d’authentification (RADIUS est le standard de fait).

Le système authentificateur contrôle une ressource (PAE34) disponible via le point d’accès
physique au réseau. Le système à authentifier souhaite accéder à cette ressource, il doit donc
pour cela s’authentifier.

La principale innovation amenée par la norme IEEE 802.1x consiste à scinder le port d’accès
physique au réseau en deux ports logiques, qui sont connectés en parallèle sur le même port
physique. Le premier port logique est dit « contrôlé », et peut prendre deux états «ouvert » ou
« fermé », quant au deuxième port logique (dit non contrôlé), il est, lui, toujours accessible
mais ne gère que les trames spécifiques à IEEE 802.1x.

31
RSN : Robust Security Network
32
TSN : Transitional Security Networks
33
RADIUS : Remote Access Dial-In User Service
34
PAE : Port Access Entity

37
Authentificateur
Système
Client d’Authen
Ressource
PAE Offerte par PAE
client Authen Authen Serveur

Figure 3.1 : Ar

LAN
EAP sur couches Sup
Port contrôlé

Figure 3.1 Architecture du standard 802.1x

1.1 FONCTIONNEMENT GENERAL DU PROTOCOLE 802.1x

Comme indiqué précédemment, la norme IEEE 802.1x ne crée pas un nouveau protocole
d'authentification, mais s'appuie sur les standards existants. Le dialogue entre le système
authentificateur et le système à authentifier se fait grâce au protocole EAP35 qui a été défini
dans le RFC2284.

1.1.1 Protocole EAP


EAP est un protocole d’authentification général, qui supporte de multiples méthodes
d’authentification, telles que :
§ EAP-TLS,
§ EAP-TTLS,
§ PEAP,
§ Kerberos V5,
§ EAP-SIM,
§ etc.

EAP est extensible puisque tout mécanisme d’authentification peut être encapsulé à l’intérieur
des trames EAP. Seul le champ type de la trame EAP, codé sur un octet, limite le nombre de
mécanismes d’authentification possibles. En effet le protocole EAP a été conçu comme
protocole générique pour le transport du trafic des protocoles d’authentification. Il est
construit autour d’un modèle de communication demandant un défi (Challenge), auquel une
réponse doit être apportée pour qu’il y ait authentification.

Quatre types de message (contenu dans la trame EAP) permettent de réaliser l’authentification
d’un client sur un serveur :
§ EAP Request : requête d’authentification ;
§ EAP Response : réponse à une requête d’authentification ;

35
EAP : Extensible Authentication Protocol

38
§ EAP Success : pour indiquer le succès d’authentification ;
§ EAP Failure : pour informer le client du résultat négatif de l’authentification.

1.1.2 Format de la trame EAP :


Tous les messages EAP ont un format de base semblable.

Code Identifier Lenght Data


1 Oct 1 Oct 2 Oct

Figure 3.2 : Format du message EAP

Code : Permet d’indiquer le type du message ;

Valeur du code
Type de message
(Décimale)
01 EAP Request
02 EAP Response
03 EAP Success
04 EAP Failure
Tableau 3.1 : Types de messages

Identifier : Codé sur 1 octet (0-255), ce champ est incrémenté pour chaque message envoyé.
Sa valeur dans une réponse est égale à celle de la requête correspondante. Cela permet de
vérifier quelle réponse va avec quelle requête.

Length : Utilise 2 octets et sert à déterminer la longueur total de la trame EAP.

Data : Données constituant la requête ou la réponse EAP envoyée.

Les messages EAP-Request et EAP-Response sont subdivisés selon le Type. Le champ Type
indique quelle information est transportée dans le message EAP. Les six premiers types sont
définis dans le standard; toutes les autres valeurs sont réservées pour les méthodes
d'authentification spécifiques (13 pour TLS) et sont attribuées par l’IANA36. Le type prédéfini
le plus important est Identity (type de valeur 1). Typiquement, celui ci est utilisé comme
phase d'amorçage d'EAP : le message EAP-Request/Identity est envoyé par l'authentificateur
(AP) à un nouveau client. Les clients répondent avec le message EAP-Response/Identity qui
contient le nom d'utilisateur.

Les EAP-Success et EAP-Failure sont des messages courts, ils ne contiennent pas de données.
Un de ces messages est utilisé à la fin du processus d'authentification pour signaler le résultat
de l’authentification et du fait qu’ils sont communs à tous les protocoles d'authentification les
points d'accès peuvent détecter l'issue d'une authentification sans pour autant comprendre les
détails de la méthode d'authentification utilisée.

36
IANA : Internet Assigned Number Authority

39
Le RFC d'EAP ne spécifie pas comment les messages EAP devraient être transmis sur le
réseau. EAP n'est pas un protocole LAN, il a été conçu à l'origine pour les liaisons PPP (ligne
téléphonique via un modem). Dans ces conditions, pour transmettre des messages EAP sur un
réseau informatique tel qu’un réseau Wi-Fi, il est nécessaire de trouver une façon d'encapsuler
ces messages pour les transmettre. C’est la raison pour laquelle la norme IEEE 802.1x définit
un protocole appelé EAP Over LAN (EAPOL) pour la transmission des messages EAP entre
un client et un point d'accès (authentificateur).

1.1.3 EAPOL37
La norme IEEE 802.1x fournit une description pour EAPOL. Il décrit les formats de trame
pour Ethernet (IEEE 802.3) et token-Ring (mais pas pour IEEE 802.11). De ce fait, pour
transmettre des messages EAP sur les réseaux sans fil il serait possible d’ajouter un entête
MAC Ethernet et l'envoyer sur le LAN sans-fil. Mais le comité de l'IEEE 802.1x a décidé
d'ajouter quelques messages et champs utiles lors de la définition du standard, donc toutes les
trames EAPOL ne portent pas réellement des messages EAP; quelques unes sont utilisées
pour exécuter des tâches administratives.

Il existe cinq types de messages EAPOL:

a. EAPOL-Start
Lorsqu’un client désire se connecter au réseau, il ne connaît ni l'adresse MAC du point d'accès
ni l’existence de l’implémentation d’un processus d'authentification. La diffusion du message
EAPOL-Start à l’intension des points d'accès, permet à un client de savoir si un processus
d'authentification est implémenté en informant un point d'accès qu'un nouveau client est prêt à
être authentifié et attend une réponse de la part de celui-ci.

b. EAPOL-Key
En utilisant ce type de paquets, le point d'accès envoie les clés de cryptage au client une fois
qu'il a décidé de l’autoriser à accéder au réseau. Il est bien sûr nécessaire de crypter les clés
avant de les envoyer, et IEEE 802.1x ne spécifie pas comment se fait cette procédure (En
réalité, IEEE 802.1x offre un procédé qui permet de combiner le cryptage avec le processus
d’authentification). Ce qui était un obstacle majeur qui devrait être surmonté dans les réseaux
WPA/RSN (Hiérarchie de Clé pour WPA/RSN).

c. EAPOL-Packet
Il est utilisé pour envoyer les messages EAP courants. C’est simplement un conteneur qui
permet de transporter un message EAP à travers le réseau local, ce qui était l'objectif initial du
protocole EAPOL.

d. EAPOL-Logoff :
Ce type de message indique que le client souhaite se déconnecter du réseau.

e. EAPOL-Encapsulated-ASF-Alert : non utilisé

Les cinq messages cités précédemment ont tous le même format de trame qui est donné dans
la figure ci-dessous.

Packet Body
Ethernet MAC Protocol Packet Packet Body
Length

37
EAPOL : EAP Over LAN

40
Header Version Type

Figure 3.3 : Format du message EAPOL

§ Protocol version : indique la version du protocole EAPOL et est égal à 1 (Version 1).
§ Packet Type : indique le type de paquet (EAPOL-Start, EAPOL-Key, …)
§ Packet Body : indique la longueur totale du corps de la trame EAPOL, certains
message ne comporte aucune information supplémentaire, dans ce cas la longueur du
corps du paquet (Packet-Body) est mise à 0

1.2 MECANISME DE TRANSFERT DES MESSAGES


Les messages doivent circuler entre trois entités: le client, le point d'accès et le serveur
d'authentification. Le protocole IEEE 802.1x utilise EAPOL, pour transmettre ces messages
entre le client sans-fil (Wi-Fi) et l'authentificateur. Quant aux messages qui circulent entre le
point d’accès et le serveur d’authentification, ils sont encapsulés dans des paquets RADIUS
dans le cas où celui-ci est utilisé.

1.2.1 Les séquences d authentification


Quand un client désire se connecter, il doit attirer en premier lieu l'attention de
l'authentificateur qui en général, sera déjà alerté par le processus d'association (branchement
du câble pour les réseaux filaires et association avec le point d'accès dans le cas des réseaux
sans-fil). Si non, le message EAPOL-Start peut toujours être envoyé.

L'authentificateur envoie un message EAP-Request/Identity. Le client doit répondre avec un


message EAP-Response/Identity.

Ensuite il faut que le client réponde correctement en fonction de la méthode d’authentification


utilisé, à « n » requêtes d’authentification envoyées par le serveur d’authentification (par
l’intermédiaire du point d’accès) avant de se voir autorisé l’accès au port contrôlé du réseau,
si l’authentification réussit, le système authentificateur donne l’accès à la ressource qu’il
contrôle, c'est-à-dire l’accès au réseau.

Pendant le processus d'authentification, l'authentificateur analyse chaque message EAP qui


transite entre le client et le serveur à la recherche d’un certain nombre de messages tels que:
EAP-Success ou un EAP-Failure. L’authentificateur doit donc attendre la réponse du serveur
d’authentification (ex : RADIUS) qui permet de savoir si le client est accepté ou refusé.

41
Start

Request Identity

Response Identity
A Response Identity
U
T
Request 1
Request 1 H
E S
N E
C Response 1 T R
Response 1
L I V
I F E
E I U
N C R
T A
T Request n
Request n E
U
Response n R
Response n

Success
Success

Figure 3.4 : Séquences d’authentification dans 802.1x

1.3 RADUIS
RADIUS est défini par l'IETF, il est conçu pour être utilisé sur des réseaux TCP/IP ce qui
suppose que tous les équipements sont raccordés à un réseau IP pour communiquer avec un
serveur RADIUS. La motivation pour RADIUS est d'avoir un serveur d'authentification
central qui gère tous les utilisateurs en permettant aux systèmes authentificateurs (points
d'accès) d'envoyer les informations d'authentification à un site central pour leur vérification.

Bien que RADIUS ne fasse pas spécifiquement partie du standard de l'IEEE 802.11i,
beaucoup d'implémentations en entreprise l'utilisent pour les communications entre le point
d'accès et le serveur d'authentification.

RADIUS définit un ensemble de fonctionnalités communes entres les serveurs


d'authentification ainsi qu’un protocole qui permet à d'autres équipements (points d'accès)
d'accéder à ces fonctions. Dans ce qui suit nous parlerons de RADIUS lorsque l’on fait
référence au protocole utilisé pour communiquer avec le serveur.

1.3.1 Fonctionnement de RADIUS


Au niveau protocole, l’ensemble des messages de base de RADIUS est superficiellement très
simple. Il y a juste quatre types de message

42
Access-Request NAS38 è AS39
Access-Challenge NAS ç AS
Access-Accept NAS ç AS
Access-Reject NAS ç AS

Tableau 3.2 : Sens de dialogue des messages RADIUS

Conçu à l’origine pour fonctionner dans les systèmes de sécurité sur réseau téléphonique,
RADIUS utilise deux protocoles d’authentification : PAP40 et CHAP41. PAP est une approche
simple basée sur des couples Login/Mot de passe alors que CHAP fonctionne un peu à la
manière du protocole WEP qui consiste, pour l’authentification, au relèvement d’un défi par
le client.

a. Protocole PAP (Password Authentication Protocol)


Le processus d'authentification PAP se fait en quatre étapes :
§ L’utilisateur sollicite le serveur d’accès NAS ;
§ Le NAS répond en lui demandant son identité. L'utilisateur répond alors en envoyant
son Login/Mot de passe c'est à dire son compte ;
§ Le NAS envoie un message Access-Request qui contient le compte du client ainsi
que la méthode d’authentification utilisée (PAP) au serveur RADIUS ;
§ Le serveur RADIUS répond avec un Access-Accept ou un Access-Reject et le NAS
agit en conséquence.

[3] [1]
[4] [2]

Figure 3.5: Séquences d’authentification PAP

Ce type d’authentification est une approche très simple qui présente un certain nombre de
failles (ex : transmission du mot de passe en clair sur le réseau) ce qui permet un grand
nombre d'attaques.

b. Protocole CHAP (Challenge Handshake Authentication Protocol)

38
NAS : Network Access Server
39
AS : Authentication Server
40
PAP : Password Authentication Protocol
41
CHAP : Challenge Handshake Authentication protocol

43
Contrairement au protocole PAP, le protocole CHAP n’envoie pas de mot de passe en clair
sur le réseau, le processus d’authentification se fait en 4 étapes :
§ L'utilisateur transmet son nom (Username) au serveur d’accès NAS.
§ Le NAS répond en lui envoyant un défi (chalenge) qu’il reçoit de la part du serveur
d’authentification. Cependant, dans la plupart des mises en oeuvre le NAS produit lui
même le défi et le passe à l'utilisateur qui est chargé de chiffrer ce défi avec son mot
de passe et de le renvoyer au NAS.
§ Le NAS envoie le défi, sa version chiffrée et l'identité du client au serveur en
indiquant le processus d'authentification utilisé (CHAP).
§ Le serveur d’authentification retourne un Access-Accept ou un Access-Reject et le
NAS agit en conséquence.

[1]

[2]

Figure 3.6: Séquences d’authentification CHAP

Cette approche évite d'envoyer le mot de passe en clair, et permet également d’éviter le rejeu
car le défi est un texte aléatoire qui change pour chaque tentative d'accès. Cependant, il est
soumis aux attaques de type dictionnaire, car le défi et sa version cryptée sont accessibles aux
attaquants.

1.3.2 Format des messages RADIUS


Tout message RADIUS a le même format de trame de base comme indiqué ci-dessous :

Figure 3.7: Format Message RADIUS

Code (1 octet) : Indique le type de message.

Valeur du code Type de message


1 Access-Request
2 Access-Accept
3 Access-Reject
11 Access-Challenge
Tableau 3.3 : Types de message RADIUS

44
Identifier : C’est un nombre aléatoire qui est utilisé pour repérer les réponses par rapport aux
requêtes.
Length : Il permet de donner la taille en octets du message.
Authenticator (16 Octets) : Ce champ a un rôle important dans la sécurité, son usage dépend
du type de message.

1.3.3 Les attributs


Comme mentionné plus haut, RADIUS utilise deux protocoles d'authentification PPP : le PAP
et le CHAP. Dans les réseaux WPA/RSN, nous avons besoin d'utiliser RADIUS
conjointement avec un protocole de sécurité qui est en relation avec l'état de l'art, bien plus
complexe mais beaucoup plus solide que ces simples méthodes PAP et CHAP. Pour ce faire,
nous avons besoin de modifier le but de certains messages RADIUS.

Les modifications des messages RADIUS sont possibles du fait que le protocole RADIUS est
assez flexible et utilise des attributs. La capacité d'extension de RADIUS ne dépend que de la
possibilité de définir et de lui faire supporter de nouveaux attributs. Chaque message peut
contenir un ou plusieurs attributs contenant des informations indépendantes (paquets EAP).
Ces attributs contiennent l’information utile portée dans les messages RADIUS.

Tous les attributs ont le même format :


§ Un champ Type d’un octet indiquant le type de l’attribut ;
§ Un champ Length d’un octet indiquant le nombre d’octets contenus dans l’attribut ;
§ Un champ contenant les données spécifiques de l’attribut.

Le RFC2869 généralise l'usage des messages Access-Request et Access-Challenge et donc les


messages EAP sont envoyés au serveur d'authentification à l'intérieur d'un message Access-
Request et les réponses sont renvoyées à l'intérieur d'un message Access-Challenge. Notons
qu’un serveur RADIUS doit de plus, prendre en charge, pour son utilisation dans les réseaux
sans-fil, la génération d’une clé maîtresse (PMK42) et sa livraison en toute sécurité au point
d’accès.

Figure 3.8: Transfert des messages EAP

42
PMK : Pre-Master Key

45
2. LES METHODES D’AUTHENTIFICATION
Une méthode d’authentification EAP utilise les différents éléments cités ci-dessous pour
identifier un client sans fil ou un serveur:
§ Login/mot de passe ;
§ Certificat électronique ;
§ Biométrie ;
§ Puce (SIM43).

Certaines méthodes combinent plusieurs critères (certificats et Login/mot de passe etc.). En


plus de l’authentification, EAP gère la distribution dynamique des clés de chiffrement. Les
principales méthodes sont :
§ EAP-TLS44: authentification mutuelle entre le client et le serveur RADIUS par le
biais de certificats (cotés client et serveur).
§ EAP-TTLS45 et EAP-PEAP46: authentification mutuelle du client et du serveur
RADIUS par le biais d’un certificat coté serveur, le client quant à lui peut utiliser un
couple login/mot de passe.
§ EAP-MD547: pas d’authentification mutuelle entre client et serveur RADIUS, le client
s’authentifie par mot de passe.
§ EAP-LEAP48 : méthode propriétaire de Cisco.
§ EAP-SIM : basée sur l’utilisation de cartes SIM qui est la méthode utilisée pour
l’authentification GSM.

Nous allons étudier ces différentes méthodes d’authentification afin de choisir celle qui est la
mieux adaptée à la sécurité que l’on désire mettre en place, le réseau sans-fil sécurisé de
l’établissement.

2.1 EAP-TLS
Comme d’autres protocoles (SMTP-TLS, IMAP-TLS, SHTTP, etc.) EAP s’appuie sur TLS
pour proposer une authentification sécurisée. Cette méthode s’appuie sur les certificats
électroniques. Ainsi, chaque partie (serveur et client) doit posséder un certificat pour prouver
son identité. L’utilisation de certificats possède des avantages et des inconvénients. Ils sont
considérés comme plus sûr que les mots de passe, cependant les opérations de gestion qu’ils
engendrent peuvent se révéler fastidieuses (création, suppression, liste de révocation, etc.) et
l’existence d’une infrastructure de gestion de clés (PKI) est requise. La distribution des
certificats aux clients est une contrainte qu’il ne faut pas négliger.

Lors des phases d’authentification dans EAP-TLS le client s’associe physiquement au point
d’accès (EAPOL-Start).

1. Le point d’accès envoie une requête d’identification au client.


2. Le client répond avec son identifiant (nom de machine ou login), ce message est relayé
par le point d’accès vers le serveur RADIUS.

43
SIM : Subscriber Identity Module
44
EAP-TLS : EAP Transport Layer Secure
45
EAP-TTLS : EAP Trivial Transport Layer Secure
46
EAP-PEAP : EAP Protected EAP
47
EAP-MD5 : EAP Message Digest
48
EAP-LEAP : EAP Lightweight EAP

46
3. Le serveur RADIUS initie le processus d’authentification TLS par le message EAP-
Request/TLS-Start.
4. Le client répond avec un message CLIENT HELLO, qui contient :
§ des spécifications de chiffrement vides en attendant qu’elles soient négociées entre le
serveur et le client ;
§ la version TLS du client ;
§ un nombre aléatoire (Nonce)
§ les types d’algorithmes de chiffrement supportés par le client ;
5. Le serveur renvoie une requête contenant un message SERVER HELLO qui contient :
§ son certificat (x509) contenant sa clé publique ;
§ la demande du certificat du client ;
§ un nombre aléatoire (Nonce) ;
§ un identifiant de session ;
§ un message CIPHERSUITE, qui correspond à l’algorithme de chiffrement choisi (le
serveur choisit un algorithme de chiffrement parmi ceux qui ont été proposés par le
client).
6. Le client répond par un message EAP-Response contenant :
§ Son certificat ;
§ Le Pre-Master Secret dans un message Client Key Exchange ;
§ Des informations pour la vérification de son certificat ;
§ Un message Change Cipher ;
§ Un message Finished.
7. Le serveur envoie maintenant un message qui contient :
§ Un message Change Cipher ;
§ Un message Finished.
8. Le client n’ayant plus de message à transmettre, répond quand même en envoyant un
paquet EAP-Response vide.
9. Finalement, pour terminer le processus d’authentification, le serveur envoie un EAP-
Success si toutes les étapes se sont bien déroulées. Si n’importe quelle de ces étapes avait
échoué, le serveur aurait envoyé un EAP-Failure au point où le problème aurait été
détecté.
Association
A
U
1 T
A H
2 U E
T N
S 3 T
U H
I
P E
4 C
L N
A
I T
I 5 T
C I
A C
O
N A
6 N
T T
O
7 S
R
E
R
8 V
E
9 R

47
Figure 3.9: séquences d’authentification TLS

Le message Client Key Exchange a pour but de créer une clé secrète mutuelle PMK49 entre le
client et le serveur. Le calcul de cette clé inclut les nombres aléatoires qui ont été échangés
dans les messages Client/Server HELLO et une valeur secrète, appelée Pre-Master Secret,
créée dynamiquement, et connue uniquement par les deux parties (le client et le serveur).

Notons que les nombres aléatoires (Nonces) envoyés dans les messages HELLO pourraient
être vus par n'importe quel attaquant, ils sont échangés en clair. Par contre, la valeur aléatoire
créée à ce stade est connue sous le nom Pre-Master Secret pour refléter le fait que c'est secret
et sera utilisé pour produire la clé maîtresse.

La façon la plus simple de produire le PMK et de l'acheminer en toute sécurité au serveur et


au client est de profiter du certificat du serveur. Le client produit simplement un nombre
aléatoire (48 octets), le crypte en utilisant la clé publique du serveur, et l'envoie au serveur en
utilisant un message Client Key Exchange. Le serveur le décrypte avec sa clé privée, à ce
moment là, les deux parties possèdent en toute sécurité le Pre-Master Secret. Le serveur et le
client, chacun de son coté, déterminent la clé de chiffrement principale PMK utilisée pour la
session.

La clé de session générée précédemment est réutilisée par le point d’accès pour créer une clé
WEP dans le cas où il s’agit d’une station Wi-Fi. La clé de session est valide jusqu’à ce que le
client se déconnecte ou que son authentification expire, auquel cas il doit s’identifier à
nouveau. Le tunnel TLS (message CIPHERSUITE) créé lors de la création de la clé de
session n’est pas exploité.

Seul le TLS HANDSHAKE est utilisé, il permet l’authentification mutuelle des deux parties.
EAP-TLS est une méthode d’authentification performante, elle est la plus utilisée à l’heure
actuelle dans les infrastructures des sociétés bien que relativement lourde à mettre en oeuvre.

2.2 EAP TTLS et PEAP


Ces deux méthodes sont assez similaires, elles constituent des solutions de rechange à EAP-
TLS dans le cas où une infrastructure de gestion de clés n’est déjà déployée. PEAP, comme
son nom le suggère (Protected EAP), fournit une façon de faire la négociation EAP à l'abri
des yeux indiscrets. La motivation originale pour PEAP était de faire des authentifications
basées sur mot de passe à l'abri d'attaques de type dictionnaire. Pour accomplir ceci, la session
EAP est complètement cachée aux attaquants :

En considérant la méthode EAP, nous constatons qu'elle présente les faiblesses suivantes :
§ Du fait que les messages EAP-Identity sont sans protection, ils peuvent être
interceptés, permettant à un attaquant d'apprendre l'identité d'un utilisateur qui essaie
de se connecter.
§ Les messages EAP-Success/Failure sont sans protection et pourraient être manipulés
par un attaquant.

49
PMK : Pre-Master Key

48
Une solution à ces deux problèmes est d'exécuter la négociation EAP dans un "tunnel" crypté.
Si nous établissons une connexion sécurisée entre le client et le serveur, alors nous pouvons
faire la négociation EAP entière sans aucun risque et l'identité du client ne sera pas révélée.
Toute la flexibilité d'EAP sera conservée et on pourrait négocier chacune des méthodes
d'authentification disponibles. Ceci est l'idée de base de PEAP: La négociation EAP entière
est protégée.

La question évidente qui survient ici est comment établir un tel canal de communication
sécurisé, étant donné que le but d'EAP est d’installer un tel canal! Pour répondre à la question,
nous avons besoin de revenir à l’un des principes de base de la sécurité et faire la différence
entre « intimité » et « authenticité ». Intimité veut dire qu'aucun tiers non désiré ne peut
comprendre les communications protégées. Authenticité veut dire que les deux parties
peuvent mutuellement prouver leurs identités: Il est tout à fait possible d'avoir intimité sans
authenticité (vice versa) et ceci est utile quelques fois. L'objectif d'EAP est l’authenticité :
Extensible Authentication Protocol et celui de PEAP est de faire cette authentification en
toute sécurité, Protected EAP. Pour concilier ces deux objectifs, nous établissons en premier
un canal privé sans authenticité; et ensuite nous faisons l'authentification en utilisant ce canal
privé. En d'autres termes, nous utilisons une approche biphasée:

§ Dans la première phase, EAP est utilisé d'une manière conventionnelle pour établir
une connexion sécurisée en utilisant TLS et c'est uniquement le serveur qui est
authentifié dans cette phase.
§ Dans la deuxième phase, le canal privé est utilisé pour faire une autre négociation EAP
complète, dans laquelle l'authentification proprement dite du client est effectuée.

TLS est la méthode choisie pour l'établissement du canal privé dans la phase 1; mais une fois
le canal privé est établi, toute autre méthode d'authentification EAP pourrait être négociée. La
première phase de PEAP inclut une étape de l'authentification, le serveur est obligé de
prouver son identité. Il fait ceci en utilisant un certificat, comme décrit pour TLS. Ceci
permet au client de savoir que le serveur est légitime et non un de ces serveurs espions mis en
oeuvre par des attaquants. Ceci est particulièrement important pour les LAN sans fil parce
qu'il est relativement facile de mettre en place des équipements espions dans ces
environnements. Examinons maintenant les deux phases EAP de PEAP.

Phase 1 : Cette phase est presque identique à la méthode d'authentification TLS décrite
précédemment. La différence provient de la fin de la phase 1 qui, au lieu d'envoyer un EAP-
Success, la négociation bascule sur la deuxième phase et débute une nouvelle session EAP
entièrement cryptée en utilisant les clés récemment négociées (phase 1).

Au début de chaque phase, le serveur envoie un message EAP-Request/Identity au client. Le


client doit répondre en donnant son identité. Cependant, le client est explicitement autorisé
d'envoyer un pseudonyme durant cette phase 1. La vraie identité du client est envoyée
pendant la phase 2.

Pendant la négociation TLS, le serveur demande un certificat au client (Fournir un tel


certificat compromettra l'identité du client ce qui est contraire à l'objectif de PEAP). Donc
dans PEAP le client a le droit de refuser de fournir un certificat et le serveur est obligé de
continuer la négociation.

49
Phase 2 : La phase 2 est une négociation EAP conventionnelle qui autorise tout protocole
d'authentification supporté par le serveur. La seule différence est qu'elle utilise la session
cryptée établie en phase 1.

Les différences principales avec EAP-TTLS et EAP-PEAP résident dans les protocoles
supportés à l’intérieur du tunnel et les exigences en terme d’implémentation. En effet, EAP-
TTLS supporte l’encapsulation de tous les protocoles d’authentification alors que PEAP se
limite à EAP et MS-CHAPv2. De plus, du côté client, seul PEAP est supporté en natif par
Windows XP.

L’avantage présenté par ces deux méthodes vient du fait que le client peut être authentifié par
mot de passe, on supprime donc la complexité de gestion liée aux certificats caractéristique de
EAP-TLS, tout en proposant une authentification forte et mutuelle.

2.3 EAP-SIM
Dans un proche avenir, l'industrie de l'ordinateur et celle du téléphone mobile vont
certainement se fusionner. En effet, les nouveaux types de téléphones cellulaires construits de
nos jours, ont des capacités de communications numériques très évoluées. Le téléphone
cellulaire du futur sera sans doute un petit ordinateur portable avec des capacités de traitement
comparables à celles d’un ordinateur conventionnel et les usagers du mobile voudrons
sûrement avoir une connexion haut débit à Internet (connexion à d’autres ordinateurs et
serveurs). Malheureusement, les réseaux de mobiles fonctionnent à un débit beaucoup plus
inférieur que celui des réseaux d’ordinateurs utilisant la technologie Internet.

Mais comme le mobile est maintenant un ordinateur, il serait donc possible et intéressant de
permettre aux usagers mobiles de commuter sur un réseau sans fil dès que cela devient
possible (portée radio) et exploiter le haut débit disponible sur ces réseaux pour surfer sur
Internet. Il s'en suit qu'une seule méthode d'authentification serait intéressante pour les deux
types de réseaux et qui saurait répondre au niveau de sécurité exigé sur chacun d’entre eux.
Du fait que les cartes SIM existent déjà, il serait beaucoup moins coûteux si l’on pouvait les
réutiliser pour l'authentification dans les réseaux sans fil, d’où cette idée d’étendre la méthode
GSM aux réseaux Wi-Fi.

2.3.1 Rappel sur la méthode d’authentification utilisée dans les réseaux GSM
Dans GSM trois nombres sont utilisés pour le processus d’authentification et le cryptage des
communications :
§ Random challenge RAND ;
§ Clé Kc de 64 bits utilisée pour l’encryptage des communications ;
§ Un nombre SRES résultant d’une certaine combinaison de la clé Kc avec RAND.

Quand un téléphone veut s'enregistrer dans un nouveau réseau, il envoie son numéro
d'identification stocké dans la carte SIM appelé IMSI. Ce numéro est unique pour chaque
abonné. Le serveur d’authentification du réseau local peut identifier le réseau mère du
téléphone cellulaire à l'aide de son IMSI et demander à l'AUC de ce dernier de créer et
d'envoyer un triplet (RAND, Kc, SRES) pour l'authentification. Cette méthode assure le
Roaming aux mobiles tout en leur permettant d'être toujours authentifiés par leur fournisseur
d'origine.

Quand le réseau local reçoit le triplet, il envoie le RAND au téléphone qui le passe à la carte
SIM. En tant que carte intelligente, la puce dispose de son propre microprocesseur et est

50
capable de calculer les deux autres composants du triplet en utilisant une technique de
cryptage et la clé secrète cachée dans la puce. Le résultat SRES est renvoyé au réseau pour
vérification et alors la session s'ouvre en utilisant la clé Kc calculée pour le cryptage de la
communication.

Figure 3.10 : Authentification GSM

2.3.2 Adaptation de la Sécurité GSM aux réseaux Wi-Fi


Un des problèmes dans la méthode d'authentification GSM est que la carte SIM ne produit pas
de longues clés de session, seulement 64 bits. Les standards d'aujourd'hui requièrent, au moins
des clés de 128 bits. La carte SIM produit la clé de session en tant que composant de son
triplet. Pour obtenir une clé plus longue, plusieurs triplets sont utilisés. Au lieu d'envoyer un
seul défi, le serveur peut en envoyer deux, ou trois, pendant le processus EAP. A chaque fois
qu'elle reçoit un défi, la carte SIM calcule le triplet correspondant qui contient une autre clé
de session de 64 bits. En joignant ces clés ensemble, on peut aboutir à une clé de session de
longueur quelconque.

Un autre problème est en rapport avec le fait que l'identité de l'abonné est visible pendant
l'authentification (envoi de l'IMSI). Pour éviter ceci, le serveur et le mobile consentent sur une
nouvelle identité de l'abonné à utiliser pour la prochaine authentification. Cela est appelé un
pseudonyme. Ce pseudonyme change chaque fois que le mobile se connecte et du fait qu'il est
crypté, ce sont uniquement le mobile et le serveur qui savent quelle identité sera utilisée
prochainement.

Le troisième problème avec l'authentification GSM est que la méthode n'authentifie pas
explicitement le réseau. Si un serveur espion accepte la réponse au défi sans vraiment vérifier,
le mobile penserait à tord qu'il s'est connecté à un réseau légitime. Ce problème est résolu en
imposant au mobile d'envoyer une valeur aléatoire Nonce au début de la négociation. Le
serveur doit incorporer ce Nonce dans une réponse cryptée pour le renvoyer au mobile. Pour
faire correctement ceci, il doit forcement disposer du bon triplet.

Processus d’authentification
Les messages échangés dans un processus d’authentification EAP-SIM sont les suivants :

51
1. Tout commence avec le message habituel EAP, EAP-Rquest/Identity. Le téléphone
cellulaire envoie son IMSI réel. Cependant, pour toute connexion ultérieure, il envoie un
pseudonyme convenu avec le serveur pendant l'authentification antérieure.
2. Le serveur envoie un message EAP-Request/SIM/Start indiquant au mobile que la
méthode d'authentification EAP-SIM va commencer.
3. Le mobile répond en envoyant son Nonce (c'est une valeur unique de 16 octets).
4. Dans cette étape, le serveur accomplit plusieurs tâches :
§ il demande à l'AUC de l'opérateur du mobile d'envoyer plusieurs triplets; supposons
que deux triplets sont obtenus pour simplifier le reste de l'explication.
§ Il calcule une clé de session de 128 bits en utilisant les deux clés Kc de 64 bits. Plutôt
que de concaténer simplement ces valeurs comme décrit plus haut, il combine les deux
valeurs avec le Nonce du mobile en utilisant un algorithme de hachage.
§ Le mobile utilise les RANDs pour générer ses propres triplets en utilisant la carte SIM.
Par conséquent, ces valeurs doivent être envoyées en clair au mobile et peuvent être
altérés en cour de route. Pour prévenir ceci, un contrôle d'intégrité (MIC) est calculé
sur ces deux valeurs en utilisant la clé de session de 128 bits qui vient juste d'être
calculée.
§ Le serveur crée le pseudonyme que le mobile devrait utiliser pour une prochaine
authentification. Ce pseudonyme est ensuite crypté avec la nouvelle clé de session.
5. Maintenant le serveur est prêt à répondre au mobile. Il envoie un EAP-
Request/SIM/Challenge qui contient les deux RANDs, le MIC, et le nouveau
pseudonyme crypté.
6. Ayant reçu les deux RANDs, le mobile détermine à l'aide de la carte SIM les valeurs
correspondantes de SRES et Kc pour chaque RAND. En supposant que tout est légitime,
ces valeurs seront identiques à celles tenus par le serveur. Le mobile calcule alors la clé
de session en utilisant sa copie du Nonce et vérifie le MIC envoyé par le serveur. Il est
aussi capable de décrypter et stocker le nouveau pseudonyme.
7. Maintenant le mobile renvoie les valeurs de SRES que la carte SIM a calculé. Ceci
permet au réseau de s'assurer que le mobile a vraiment une carte SIM valide. De la même
façon que le serveur a fait pour les RANDs, le mobile calcule un MIC sur les deux
valeurs de SRES et l'envoie avec la réponse.
8. En supposant que le serveur a pu vérifier que ses valeurs de SRES sont identiques à celles
envoyées par le mobile et vérifié le MIC, l'authentification est maintenant complète et un
message EAP-Succes est envoyé. Le mobile et le réseau se sont authentifié mutuellement
et ont aussi produit une clé de session forte de laquelle seront dérivées les clés
temporelles.

52
Figure 3.11: Séquences d’authentification EAP-SIM

2.4 CISCO LEAP (Lightweight EAP)


Cisco a développé sa propre méthode EAP de manière à pouvoir proposer une solution
complète (cartes clients, points d’accès, serveur RADIUS). Malgré tout, les équipements
Cisco supportent d’autres types d’authentification (PEAP, EAP-TLS etc.). Du point de vue de
l’administrateur, le fait d’avoir une solution complète est un avantage indéniable. Cependant,
il est difficile de contraindre tous les utilisateurs à s’équiper avec des cartes et des points
d’accès d’un seul constructeur. Cette solution n’est donc envisageable que dans bien peu de
cas. Par ailleurs, LEAP présente quelques défaillances. Tout d’abord, la clé utilisée entre le
client et le point d’accès est dérivée du login et du mot de passe stockés sur le serveur
RADIUS. Ensuite, les échanges EAP ne sont pas chiffrés, le login passe en clair, seul le mot
de passe est protégé.

CONCLUSION
Ce chapitre décrit plusieurs méthodes d’authentification dans les réseaux Wi-Fi WPA et RSN.
Elle décrit principalement les méthodes EAP-TLS, EAP-PEAP, EAP-TTLS, EAP-SIM et
EAP-LEAP.

EAP-TLS est la méthode d’authentification la plus sûr et la plus utilisée en général. EAP-
PEAP et EAP-TTLS constituent aussi des méthodes robustes et sont particulièrement
intéressante dans le cas où la création et la gestion d’une infrastructure de clé se révèlent
fastidieuse pour une entreprise.

La méthode SIM sera également intéressante par la suite car elle comble le retard entre
l'industrie du téléphone cellulaire et les réseaux d'Internet en permettant aux systèmes Wi-Fi
d'incorporer la méthode d'authentification GSM.

53
Enfin, la méthode Cisco mérite aussi d'être citée car elle fut quand même la première
approche basée sur 802.1x pour l'authentification et la génération de clés temporelles dans les
réseaux Wi-Fi.
Le prochain chapitre abordera la génération des clés de chiffrement qui permettent de
sécuriser la session Wi-Fi créée lors de l’association d’une station au réseau.

54
Chapitre IV :

WPA et la
norme 802.11i

55
INTRODUCTION
Comme mentionné précédemment, quand le WEP était cassé, le groupe de travail de l’IEEE
(Institute of Electrical and Electronic Engineers), nommé 802.11i, a travaillé sur le projet de
sécurisation des réseaux sans-fil. Et qu’étant donné l’énorme lacune de sécurité du WEP, ce
travail s’est effectué en deux étapes :
§ améliorer la première norme (WEP), pour arranger les choses au plus vite (sans avoir
besoin de changer le matériel existant), ce qui donna naissance au WPA (Wi-Fi
Protected Access).
§ établir une nouvelle norme qui rendra vraiment sécurisés les échanges de données à
travers un réseau sans-fil (au prix du renouvellement du matériel), ce qui donnera
naissance aux réseaux de type RSN ou norme 802.11i.

WPA et RSN ont la même architecture (authentification et génération de la clé maîtresse


PMK basées sur 802.1x/EAP). Mais, alors que RSN offre une grande flexibilité dans
l'implémentation des réseaux, WPA ne dispose que d'un sous-ensemble de ces techniques
focalisé sur une méthode unique pour implémenter un réseau. WPA dispose uniquement de
TKIP pour la génération et la gestion des clés de chiffrement temporelles comme nous
l'indiquerons plus tard, alors que RSN supporte aussi AES en plus de TKIP. Les clés de
chiffrement temporelles sont issues d’une hiérarchie de clés que nous expliquerons dans le
paragraphe suivant.

1. HIERARCHIE DES CLES DANS LES RESEAUX WPA ET 802.11i


Les réseaux Wi-Fi sont conçus pour permettre à plusieurs stations de communiquer via un
seul point d'accès, c'est à dire qu'un groupe de stations mobiles doivent se partager un même
canal radio pour communiquer via ce point d'accès.

Les données transmises :


§ entre deux stations mobiles sont appelées Unicast ;
§ par un point d'accès vers plusieurs stations sont appelées Multicast ;
§ le cas dans lequel un point d'accès envoie des données à toutes les stations est un cas
spécial de Multicast appelé Broadcast.

Les messages Multicast et Unicast ont des caractéristiques différentes de sécurité. Les
messages Unicast envoyées entre deux entités sont des messages privés qui doivent être
tramis dans un « tunnel ». Une façon simple d'accomplir ceci est d'utiliser une clé spécifique
pour chaque paire de stations en communication : nous appellerons ces clés Pairwise-Keys.
En pratique, elles protègent les communications entre une station mobile et un point d'accès.
Cela veut dire que chaque station mobile dispose d'une Pairwise-Key, et le point d'accès, de
plusieurs, une pour chaque station mobile qui lui est associée.

§ Par contre, les Broadcast (ou Multicast) doivent être reçus par plusieurs stations
formant un groupe. Par conséquent, une même clé doit être partagée entre tous les
membres de ce groupe et le point d’accès: Nous appellerons ces clés Group-Keys.

1.1 HIERARCHIE DES PAIRWISE-KEYS


Cette hiérarchie commence avec le PMK50 issu de la procédure d'authentification ou du PSK
dans le cas d'une authentification par secret partagé. Il y a un PMK différent pour chaque
station mobile associée, duquel sont dérivées toutes les autres clés de cette hiérarchie qui

50
PMK: Pre Master Key

56
serviront à protéger les transmissions entre deux entités (par exemple, entre le point d'accès et
une station mobile).

Quatre clés distinctes sont nécessaires pour faire ce travail car il y a deux transmissions à
protéger (les EAPOL Handshake et les données utilisateur) et deux fonctions
cryptographiques pour chaque transmission (contrôle d'intégrité et chiffrement). Ces clés sont
nommées comme suit :
§ Data Encryption Key (128 bits) : chiffrement des données utilisateur;
§ Data Integrity Key (128 bits) : control d’intégrité des données utilisateur ;
§ EAPOL-Key Encryption Key (128 bits): chiffrement du Group-Key Exchange;
§ EAPOL-Key Integrity Key (128 bits): contrôle d’intégrité des messages Handshake;

Elles sont connues sous le nom de clés temporelles car elles sont renouvelées après chaque
association du mobile au point d'accès. Leur assemblage est connu sous le nom de
Pairwise Transient Key (PTK).

Du fait que les clés temporelles sont renouvelées pour chaque session, il doit y avoir quelque
chose qui change chaque fois pour leur calcul afin d’assurer la génération de clés différentes
pour chaque session. On assure ceci en incluant dans le calcul, deux nombres aléatoires
appelés Nonce. De plus le calcul inclut également les adresses MAC des deux parties et le
PMK. L'inclusion des adresses MAC permet de faire dépendre les clés des identités des deux
parties en communication, ce qui permet de créer des clés temporelles différentes pour chaque
communication.

Figure 4.1 : Clés de Cryptage

Génération des clés temporelles


Comme mentionné précédemment, le point d'accès et la station mobile doivent prouver, l'un à
l'autre qu’ils possèdent le même PMK. Dans WPA/RSN cette procédure est combinée avec le
processus de dérivation des clés temporelles. Quatre messages sont échangés au cours de ce
processus donnant ainsi le nom de « 4 -Ways Handshake ». Les échanges se font en utilisant
des messages EAPOL-Key.

Préalablement aux échanges, un nombre aléatoire différent, Nonce est calculé par le client et
le point d'accès. Le Nonce calculé par le point d'accès est appelé ANonce et celui du client,
SNonce. Ceci est suivi par l'échange des quatre messages que nous appellerons
respectivement A, B, C, et D.

57
Message A : Authentificateur è Client
Le premier message EAPOL-Key est envoyé par l'authentificateur au client et contient le
ANonce. Ce message n'est ni crypté ni protégé. L'altération de ce message conduit tout
simplement à l'échec du Handshake, il n'y a aucun danger supplémentaire.
Une fois que le client a reçu le message A, il a toutes les informations qu'il a besoin pour
calculer les clés temporelles. Il avait déjà le PMK, son propre SNonce, et son adresse MAC et
maintenant il a le ANonce et l'adresse MAC de l'authentificateur. Il calcule alors les quatre
clés temporelles à l'aide de l'algorithme retenu pour cet effet.

Message B : Client è Authentificateur


L'authentificateur ne peut encore calculer ses clés car il ne connaît pas encore la valeur du
SNonce. Celle-ci est maintenant envoyée par le client. Ce message n'est pas crypté mais il
inclut un message de contrôle d'intégrité (MIC) pour prévenir les altérations. Ceci est la
première utilisation de la clé EAPOL-Key Integrity Key, une des quatre clés temporelles
décrites plus haut. Le calcul du MIC sur la totalité du message B empêche à ce dernier d'être
altéré sans détection. Plus important encore, il permet à l'authentificateur de vérifier que le
client possède vraiment le PMK. Du fait que le message n'est pas crypté, l'authentificateur
peut extraire le SNonce, et calcule toutes les clés temporelles et, ensuite revient pour vérifier
le MIC avant de continuer avec la prochaine étape.

En ce moment là, la première moitié du Handshake est accomplie. Les deux parties possèdent
maintenant les quatre clés temporelles et l'authentificateur a vérifié que le client doit avoir le
bon PMK.

Message C : authentificateur è Client


Ce message est envoyé par l'authentificateur pour dire au client qu'il est prêt à utiliser les
nouvelles clés pour le cryptage. Il est important de synchroniser cette opération (l’installation
des clés pour le cryptage), car, si le client ou le point d'accès active le cryptage avant que
l'autre ne soit prêt, le Handshake échouera. Le message C inclut un MIC, donc le client peut
vérifier que l'authentificateur possède le bon PMK. Il contient aussi un numéro de séquence
initial qui sera utilisé pour la première trame cryptée qui sera envoyée.

Le message C est envoyé non crypté et l'authentificateur n'installe ses clés qu'après avoir reçu
le dernier message D car, si le message C n'arrive pas au client, il doit le retransmettre et, si
les clés sont installées plus tôt, cette retransmission sera cryptée et le client la rejettera.

Message D : client è authentificateur.


Quand le client reçoit le message C, il répond avec le message D. Ceci acquitte l'achèvement
du 4-Way Handshake et indique que le client va installer les clés et commencer le cryptage.
Le message D est envoyé non crypté, c'est après son envoie que le client installe ses clés. A la
réception du message D, l'authentificateur installe aussi ses clés et les messages qui vont
suivre, seront tous cryptés.

A ce stade, le client et le point d'accès ont calculé, et installé les clés de cryptage. Ils
communiquent maintenant sur un canal sécurisé. Il reste à installer les clés de groupe afin que
le point d'accès puisse transmettre des Multicasts et des Broadcasts au client qui vient d'être
authentifié.

58
I-2 HIERARCHIE DES CLES DE GROUPE
La négociation des Pairwise-Keys était un peu délicate car nous devions commencer cette
dernière via un canal non sécurisé, avec des risques d'attaques (écoute passive, altérations..).
La situation est moins compliquée pour les Group-Keys car, ici nous utilisons le canal
sécurisé établi par les Pairwise-Keys pour les envoyer au nouveau client. Ce qui fournit une
simplification considérable, les clés de groupe actuelles sont envoyées directement à chaque
station sans interception ni altération. La distribution des Group-Keys s'effectue en utilisant
des messages EAPOL-Key comme pour les Pairwise-Keys. Cependant, seulement deux
messages sont nécessaires. Ils sont envoyés par le point d’accès aux stations.

Génération et distribution des Group-Keys: Durant la distribution des Group-Keys, le point


d’accès effectue les étapes suivantes :
§ Il crée un nombre aléatoire de 256 bits appelé GMK (Group Master Key) ;
§ Il dérive de ce GMK une clé de 256 bits appelée GTK (Group Transient Key) qui est
composée des clés temporelles de groupe ;
§ après chaque association :
§ il envoie le GTK à la station mobile nouvellement associée en utilisant
le numéro de séquence initial ;
§ il s’assure de sa réception en attendant un ACK.

Une fois le GMK sélectionné, on y dérive les clés temporelles de groupe. Deux clés sont
générées :
§ Group Encryption Key GEK (128 bits)
§ Group Integrity Key GIK (128 bits)

La combinaison de ces deux clés constitue le GTK. C'est cette valeur qui est envoyée par le
point d'accès à chacune des stations associées. Le GTK est dérivé du GMK en le combinant
avec un Nonce et l'adresse MAC du point d'accès.

Lorsqu’une station se désassocie du point d’accès, celui-ci efface les clés de cette dernière et
cesse de lui transmettre des données. Cependant la station est toujours capable de recevoir et
de décrypter les messages en diffusion car elle possède toujours la clé de groupe. Pour éviter
ceci, dès qu’une station se désassocie, le point d’accès crée une nouvelle clé de groupe et
l’achemine aux stations associées en utilisant leurs clés individuelles (Pairwise-Keys).

Du fait qu'il est nécessaire de mettre à jour la clé de groupe plus souvent, il serait intéressant
d'opérer cette mise à jour sans pour autant causer des arrêts de service. Car le point d’accès
prend du temps pour générer une nouvelle clé et la distribuer à toutes les stations qui lui sont
associées.

Les trames Wi-Fi comportent un champ KeyID sur deux bits. Ceci implique qu’une station
peut stocker jusqu’à quatre clés différentes. Les Pairwise-Keys ont pour ID, la valeur zéro.
Ainsi nous pouvons utiliser les autres ID pour stocker jusqu’à trois clés de groupe différentes.
Au cours d’une mise à jour, la clé de groupe actuelle est encore utilisée pendant tout le temps
qu’il faudra au point d’accès pour générer et livrer la nouvelle clé aux stations (qui la
placeront dans emplacement différent), et lorsqu’il y parvient, il active la nouvelle clé et alors
toutes les diffusions seront effectuées en utilisant cette dernière.

59
Les réseaux WPA utilisent TKIP pour le cryptage des données alors que la norme 802.11i
utilise AES-CCMP qui est plus sûr.

Du fait que AES-CCMP fournit un niveau de sécurité plus élevé, on pourrait penser qu'il
utilise des clés plus longues que celles de TKIP ou en nombre plus grand. En fait c'est le
contraire qui est vrai. Au total, TKIP utilise 768 bits pour les clés alors que AES-CCMP
n'utilise que 512 bits. Ceci vient du fait que dans AES-CCMP les fonctions de contrôle
d'intégrité et celles du cryptage utilisent la même clé, alors qu'elles utilisent des clés distinctes
dans TKIP.

Pour AES-CCMP, les Pairwise-Keys sont:


§ Data Encryption/Integrity Key (128 bits) ;
§ EAPOL-Key Encryption key (128 bits) ;
§ EAPOL-Key Integrity key (128 bits) ;

Les Group-Keys sont: Group Encryption/Integrity key (128 bits).

Le PMK et le GMK sont toujours crées de la même manière mais, l'algorithme de calcul des
clés temporelles produit moins de bits. Le 4 -Way Handshake est utilisé en même temps pour
WPA et 802.11i, mais il est possible que de nouveaux mécanismes de générations de clés
soient introduits pour 802.11i dans le futur, car le 4 -Way Handshake peut prendre plusieurs
secondes pour se terminer. Ceci peut être un problème par exemple pour des systèmes à
Handover rapide tels que la voix sur IP.

2. LES RESEAUX WPA (Wi-Fi Protected Access)


Comme mentionné précédemment, le Wi-Fi Protected Access (WPA) n’est en substance
qu’une norme de fait, poussée par les constructeurs, améliorant WEP en corrigeant une à une
ses failles, en utilisant dans la norme 802.11i les solutions transposables au parc matériel
existant. Il utilise principalement 802.1x et TKIP pour pallier aux insuffisances du WEP. La
norme 802.1x a été développé dans le chapitre précédent, nous examinerons dans ce qui suit
l’algorithme TKIP.

2.1 ALGORITHME TKIP (Temporal Keys Integrity Protocol)


La meilleure façon de pallier aux insuffisances du WEP est de concevoir de nouveaux
algorithmes, solides, pour l'encryptage et le contrôle d'intégrité. Cependant, l'implémentation
en logiciel de ces algorithmes n'est pas faisable dans les appareils Wi-Fi existant du fait que
beaucoup d'entre eux utilisent des processeurs de faibles capacités et déjà pleinement
exploités pour une utilisation des réseaux à la bande passante maximale. Le but de TKIP est
de fournir confidentialité, intégrité, et protection contre les rejeux, avec la contrainte de
réutiliser le moteur WEP existant dans ces matériels Wi-Fi déjà déployés en n'exigeant qu'une
simple mise à jour sur les stations sans-fil et les points d'accès. TKIP a été adopté comme
élément de WPA mais il existe aussi comme option dans IEEE 802.11i. Ce qui permet aux
réseaux d’entreprises et domestiques de redevenir sécurisés et d’évoluer à un rythme
acceptable vers les réseaux RSN en introduisant progressivement des appareils compatibles
802.11i.

60
2.1.1 Description de TKIP
Pour apercevoir au mieux l’apport des solutions adoptées, revoyons les faiblesses déclarées
dans WEP:
1. la valeur de l'IV est trop courte, de sorte qu'une même valeur pourrait se répéter
pendant une même session ;
2. la façon dont les clés sont construites à partir de l'IV les rend susceptibles aux attaques
de type clés faibles (attaques FMS) ;
3. il n'y a aucun contrôle efficace de l'intégrité des messages ;
4. WEP utilise directement le PMK (SK) et n'offre aucune possibilité de mise à jour des
clés ;
5. il n'y a aucune protection contre les rejeux ;

TKIP introduit un ensemble de mesures qui résolvent chacune de ces faiblesses comme suit :
1. TKIP utilise un nombre de 48 bits appelé TSC (TKIP Sequense Counter) qui
s'incrémente par MPDU pour la protection contre les rejeux. Le TSC est composé
d'un nombre sur 4 octets, appelé Extended IV, et 2 octets de l'IV du WEP. L'autre
octet de l'IV du WEP est calculé en fonction du deuxième octet le plus significatif de
ce dernier de façon à éviter les clés faibles. Il y a un TSC unique par MPDU et par clé
de session, quand la valeur du TSC revient à zéro, une nouvelle clé est renégociée via
les Handshake.
2. TKIP utilise les clés issues des Handshake et définit un processus à deux étapes
utilisant chacune une fonction cryptographique afin de produire une clé différente par
MPDUs et par directions (c.-à-d., de la STA vers l'AP et de l'AP vers la STA) ;
3. Un algorithme de contrôle d'intégrité, léger,et connu sous le nom Michael est conçu
spécialement pour un contrôle d'intégrité réalisé sur chaque MSDU, les adresses MAC
source et destination.

2.1.2 Génération des clés de cryptage dans TKIP


Dans RC4, certaines valeurs de la clé WEP, appelées Weak Keys, créent une situation dans
laquelle les premiers octets de la suite de bits en sortie du moteur WEP ne sont pas tous
aléatoires. En d'autres termes, si une clé faible est utilisée, il y aurait une forte probabilité que
certains bits de la clé secrète SK réapparaissent dans les premiers octets en sortie. Ce fait est
exploitable: Si l'on peut savoir qu'une clé faible est utilisée, on pourrait deviner la valeur de la
clé SK en observant tout simplement les premiers octets des trames pour ces genres de
clés, un certain nombre de fois. Le WEP a cette faiblesse particulière parce qu'il utilise l'IV
comme les premiers octets de la clé WEP concaténé à la valeur de la clé statique partagée, et
la valeur de l'IV est visible pour tout le monde offrant la possibilité aux espions d'attaquer en
toute aisance.

Pour défaire ces attaques, la clé de cryptage est changée pour chaque paquet envoyé. Après
tout, un attaquant ne peut pas attaquer la clé si elle change chaque fois.

Pour ce faire, TKIP utilise deux fonctions cryptographiques séparées pour produire une clé
différente par MPDUs et dans chaque direction du trafic afin d’utiliser correctement le
cryptage RC4 dans WEP en combinant le PTK ou le GTK avec le TSC et l'adresse MAC du
transmetteur pour produire une clé de 13 octets qui sera utilisée comme clé RC4.

TKIP assure une clé différente dans chaque direction en combinant de façon cryptographique
l'adresse du transmetteur avec la clé de session et les 4 octets les plus significatifs du TSC

61
(Extended IV) pour dériver une clé intermédiaire de 10 octets en phase 1. Les 4 octets les plus
significatifs du TSC changent seulement tous les 2 16 MPDUs, et donc la valeur de la phase 1
peut être stockée pour cette durée pour une utilisation efficace du processus. Dans la
deuxième phase, la clé intermédiaire est combinée avec les 2 octets les moins significatifs du
TSC (issus du WEP IV) et la clé de session elle même. La phase 2 résulte en une clé de 13
octets appelée Per-Packet Key (PPK) et est fournie à RC4 avec le WEP IV qui est sur 3 octets.
Les fonctions de mixage de TKIP sont spécifiées dans la norme 802.11i.

Figure 4.2 : Génération des clés TKIP

C’est l’implication des adresses MAC dans les calculs qui permet la génération d’une clé
différente dans chaque direction d’une communication, évitant ainsi des collisions d’IV.

2.1.3 Contrôle d intégrité


Le contrôle de l'intégrité des messages est essentiel dans la sécurité. Si un attaquant est
capable de modifier des messages, il y aura bon nombre de façons de compromettre le
système de sécurité. Comme mentionné plus haut, le WEP n’offre en réalité aucun contrôle
d’intégrité. Cependant, il existe plusieurs méthodes solides pour le calcul du MIC, mais
nécessitant chacune soit un algorithme spécial pour le calcul, soit de rapides calculs utilisant
des multiplications. Ces méthodes ne peuvent être implémentées dans les matériels Wi-Fi
existants pour les raisons suivantes :
§ Par conception, le matériel existant ne peut supporter les méthodes nécessitant un
nouvel algorithme ;
§ Les processeurs dans les cartes Wi-Fi et dans les points d’accès ne sont pas très
puissants et ne peuvent pas supporter d’opérations rapides de multiplication.

Il fallait donc pour TKIP une méthode qui était aussi solide que ces célèbres méthodes, mais
ne nécessitant ni un nouvel algorithme cryptographique ni une capacité de calcul trop
importante, ce qui n'est pas très évident. Cependant, un bon compromis est venu du
cryptographe Niels Ferguson qui inventa une méthode qu'il a appelé Michael. Michael est une
méthode de calcul de MIC qui n'utilise pas de multiplications, juste des décalages et des

62
additions. Cependant, le coût de cette simplicité est que Michael est vulnérable aux attaques
de type force brute. En effet, le niveau de sécurité offert par cette technique est uniquement de
20 bits, donc un choix aléatoire d’une valeur de MIC a environ une chance sur un million
d'être jugée comme valide. Une chance sur un million n'est pas considérée comme très rare
dans les standards cryptographiques. Michael compense cette vulnérabilité en introduisant le
concept de contre-mesures.

2.1.4 Calcul du MIC par Michael


Le calcul du MIC est effectué sur le MSDU plutôt que sur chaque MPDU. Ceci a deux
avantages. En premier, il permet l'implémentation du calcul au niveau des couches
supérieures des stations avant que les données n'arrivent au niveau de la carte Wi-Fi. En
second, il évite de surcharger le réseau parce qu’il n'est plus nécessaire d'ajouter un MIC à
chaque fragment MPDU du message.
Le MIC est calculé sur le SA, DA, et les données du MSDU à l’aide d’une des deux clés
temporelles de 64 bits dérivées pour cet effet du PTK ou du GTK. Le MIC est alors placé à la
suite du MSDU pour être fragmenté en MPDUs (le MIC est contenu dans le dernier
fragment). Ces MPDUs sont alors envoyés au moteur WEP pour chiffrement qui en calculera
l’ICV [ICV = CRC (MPDU)], le placera à la suite et chiffrera le tout à l’aide du PPK.
Finalement, notons que le MIC ne protège pas le TSC.

C’est à la réception du dernier fragment que le MIC est vérifié, ce bloc est déchiffré, son ICV
vérifié et le MIC extrait. On reconstitue alors la trame d’origine dont on pourra vérifier
l’intégrité et l’authenticité de son transmetteur en recalculant un MIC et en le comparant à
celui reçu.

2.1.5 Concept de contre-mesure (Countermeasures)


Dans la plupart des cas, le remplacement du MIC ne donnera pas en réception un contrôle
avec succès et le message sera rejeté. Cependant, il y a quant même une petite chance pour
que cela réussisse et le message sera retenu malgré qu'il ait été modifié. Donc, si un attaquant
est capable d'essayer cette ruse un million de fois, il recouvre toutes les chances: tôt ou tard,
l'attaque va réussir si on ne l'arrête pas. Le but de la contre-mesure est de détecter une telle
attaque et d’empêcher l'attaquant d’opérer plusieurs essais en fermant les communications des
stations pendant une période d'une minute : l'objectif est d’empêcher l'attaquant d'opérer des
attaques successives (pas plus d’une attaque par minute), tout en essayant, le mieux possible,
de préserver le bon fonctionnement du réseau. Ceci est fait de façon différente pour le point
d’accès ou la station mobile et selon le type de trafic écoulé :

Détection au niveau de la station :


§ Cas des trafics Multicasts :
1. Désactiver les clés de groupe ;
2. Demander une nouvelle copie des clés de groupe au point d’accès ;
3. Enregistrer l’événement et informer l’administrateur système ;
§ Cas des trafics Unicasts :
1. Abandonner toutes les trames reçues et bloquer toutes les transmissions ;
2. Négocier de nouvelles clés (Pairwise-Keys) ;
3. Enregistrer l’événement et informer l’administrateur système ;

Détection au niveau du point d’accès :

63
§ Cas de trafic Multicast :
1. Désactiver la clé de groupe en cours et arrêter les diffusions ;
2. Enregistrer l’événement et informer l’administrateur système ;
3. S’il y avait eu une autre détection dans les 60 secondes précédentes, alors
attendre encore 60 secondes avant de continuer
4. Créer une nouvelle clé de groupe et la distribuer à toutes les stations ;
§ Cas de trafic Unicast :
1. Enregistrer l’événement et informer l’administrateur système ;
2. Abandonner toutes les trames reçues, bloquer toutes les transmissions ;
3. S’il y avait eu une autre détection dans les 60 secondes précédentes, alors
attendre encore 60 secondes avant de continuer ;
4. Initier le 4 –Way Handshake (avec la station concernée) pour établir de
nouvelles clés Pairwise.

Le concept de contre-mesure est une méthode forte de prévention contre les attaques, mais il
permet également aux attaquants de générer des dénies de service. Si un attaquant envoie des
messages multicast forgés toutes les 59 secondes, le réseau serait en permanence dans des
périodes de négociation des clés de groupe et donc incapable de fonctionner correctement. En
principe, ceci est possible et constitue une autre classe de dénie de service. Ce n'est cependant
pas si simple car, en réception, la trame forgée doit d'abord passer le contrôle du TSC et être
décrypté correctement avant que le MIC lui même ne soit vérifié. Par conséquent l’attaquant
a les contraintes suivantes :

§ La trame forgée doit avoir un TSC correct pour ne pas être rejetée en tant que « trame
hors séquence ».
§ Le TSC constitue aussi l'IV, et l'IV est utilisé dans la génération des clés PPK. Donc
s'il change le TSC, la trame ne sera pas correctement décryptée, la vérification de
l'ICV échouera et la trame sera rejetée.

Donc pour monter de telles attaques, l'attaquant devra capturer une trame en transmission et
l'empêcher de parvenir à sa destination. Il modifie la trame et recalcule l’ICV avant de la
retransmettre.

2.2 ENCAPSULATION ET DECAPSULATION TKIP


Les étapes suivantes illustrent le processus d’encapsulation de l’algorithme TKIP. On suppose
que les clés de session sont déjà générées et que le n ud sans-fil est prêt à transmettre les
données.
1. Le MIC est calculé et concaténé aux données du MSDU.

2. La couche MAC pourrait fragmenter ces données en MPDUs préalablement au


processus de cryptage TKIP.

3. une valeur unique du TSC est générée pour chaque MPDU pour la protection contre
les rejeux et pour le calcul de la clé PPK utilisée par TKIP pour crypter les données du
MPDU (le TSC est incrémenté pour chaque MPDU).

4. Cette étape concerne le cryptage des données du MPDU par TKIP utilisant le moteur
WEP. Le cryptage concerne, comme pour le WEP, le corps du MPDU et l’ICV généré
pour celui-ci (le corps du dernier MPDU contient la valeur du MIC).

64
Transmission du MSDU

Compute Mic Append Mic

Michael Bloc

Fragmentation
Mic Key

Master Key

Key
derivation
Encryption Key Bloc

IV Generation Append IV/ICV

Key Mixing Add MAC Hdr

Encrypt
RC4 Bloc

Extended Mic ICV FCS


Mac IV/KeyID
IV Data (PDU) >=1 8 octets 4 octets 4 octets
Header 4 octets
4 octets

CHIFFRE

Figure 4.3: Encapsulation TKIP

2.2.1 Décapsulation TKIP

1. A la réception d’une trame, le TSC est extrait et comparé à la valeur attendue de sorte
à éviter les rejeux de paquets.

2. Si le TSC est bon, la clé PPK correspondante est calculée pour effectuer le décryptage
en utilisant le moteur WEP.

3. Après décryptage, l’ICV est vérifié. Si cette vérification réussie, le MPDU est accepté,
si non il est rejeté.

4. Après réception de tous les fragments, on reconstitue le MSDU original. Le récepteur


calcule une valeur du MIC sur ces données et la compare au MIC reçu. S’il y a égalité,

65
les données sont acceptées, dans le cas contraire, elles sont rejetées et le concept de
contre-mesure est invoqué.

MSDU accepté

Compute Mic Remote & check Mic

Michael Bloc Rejet si Mic faux


Invocation du
Countermeasure
Re-assembly
Mic Key

Master Key

Key
derivation
Encryption Key Bloc

RC4 Bloc Rejeter si


Decrypt
mauvais ICV
Key Mixing

IV Extraction Check TSC Window Rejeter si mauvais


TSC Bloc
TSC

Strip MAC Hdr

Extended Mic ICV FCS


Mac IV/KeyID
IV Data (PDU) >=1 8 octets 4 octets 4 octets
Header 4 octets
4 octets

CHIFFRE

Figure 4.4: décapsulation TKIP

CONCLUSION SUR LE WPA


Voyons les améliorations de cette technique par rapport au WEP. D’abord, la gestion des clés
de chiffrement ne se fait plus à partir d’un élément unique et commun à toutes les stations du
réseau, mais à partir d’une clé de session par station. Ceci est renforcé par l’intervention dans
le calcul des clés PPK des adresses MAC de la station et du point d’accès. Toute attaque ne

66
peut donc porter que sur chaque association indépendante des autres, ce qui rend d’autant plus
longue la collecte d’éventuelles informations utiles. L’incrémentation unitaire de l’IV/TSC
pour chaque trame permet d’une part l’utilisation de chaque valeur et d’autre part de l’utiliser
comme numéro de séquence de manière à détecter et empêcher les rejeux de trame. Elle n’est
cependant pas problématique (visibilité), puisque l’IV n’est pas utilisé directement pour
générer le PPK, mais à travers les deux phases de hachage. Enfin, la norme interdit
explicitement la réutilisation d’IV et stipule que le cas échéant, l’association doit être cassée
et renégociée de manière à générer un nouveau PTK.

Ainsi, on peut affirmer que :


§ les attaques par constitution de tables d’association entre IV et séquence RC4 sont
impossibles, vu la quantité énorme de données nécessaire.
§ l’attaque de Fluhrer, Mantin et Shamir ne peut plus aboutir puisque la clé utilisée par
le moteur WEP n’a plus de partie fixe.

L’accès par un intrus au réseau supposera donc qu’il soit capable de s’attribuer un PMK
valide. Ceci implique qu’il parvienne à voler des éléments valides d’authentification, soit les
éléments 802.1x, soit le PSK en cas de secret partagé. Cette dernière approche est plus
réaliste.
Cependant il est possible de générer des dénis de service du fait de la solidité du contrôle
d’intégrité.

3. NORME IEEE 802.11i


Finalisée en juin 2004, la norme 802.11i est la solution finale de sécurité des réseaux sans-fil,
du moins pour très longtemps préconisée par le groupe de travail « i » pour pallier
définitivement aux différents problèmes de sécurité découverts dans la norme WEP en
séparant l’authentification des utilisateurs au chiffrement/Contrôle d’intégrité des messages.
Ainsi, on définit une architecture de sécurité robuste appelée RSN (Robust Security
Networks). Par contre, cette norme dite de troisième génération, estampillée WPA2 sur les
produits, n’est compatible ni avec la première (WEP) ni avec la deuxième (WPA) génération
et remet donc en cause tous les investissements en sécurité précédents, qui peuvent être
relativement lourds. Cette non compatibilité provient de l’utilisation de l’algorithme de
chiffrement AES, qui ne peut être chargé dans le firmware des cartes Wi-Fi actuelles.

Le standard utilise la norme 802.1x pour l’authentification et la gestion des clés de cryptage,
ainsi que le protocole CCMP (Counter CBC MAC Protocol) pour le chiffrement et le contrôle
d’intégrité des données. Le protocole CCMP est fondé sur l’algorithme de chiffrement
AES (Advanced Encryption Standard).

Nous avons déjà vu le fonctionnement de 802.1x/EAP dans le chapitre précédent, nous allons
donc décrire ici le protocole CCMP, ainsi que l’algorithme de cryptage sur lequel il est fondé
c'est-à-dire l’algorithme de chiffrement AES.

3.1 PROTOCOLE CCMP


CCMP est le protocole utilisé pour chiffrer, déchiffrer, contrôler l’intégrité et authentifier des
messages. Ce protocole a été choisi pour remplacer TKIP car il est plus robuste. En effet, le
protocole CCMP est fondé sur AES51. Il utilise le mode d’opération CCM, qui combine les

51
AES: Advanced Encryption Standard

67
atouts du mode CTR (Counter Mode) pour la confidentialité et de CBC-MAC (Cipher Block
Chaining-Message Authentication Code) pour l’authentification et l’intégrité des messages.

3.1.1 Description de AES


AES est un algorithme de chiffrement symétrique utilisant des fonctions mathématiques et
logiques pour crypter des blocs de données à l’aide de clés de chiffrement. Il admet le choix
de la longueur des blocs de données et celle de la clé parmi les valeurs 128, 192 ou 256 bits
pour chacun. Cependant le groupe IEEE 802.11i restreint les choix à 128 bits aussi bien pour
les données que pour la clé. AES combine la clé et le bloc de données de 128 bits pour
produire un bloc de données différent (crypté). Il est impossible d’exécuter cette
transformation sans posséder la clé de chiffrement.

AES est un algorithme réversible c'est-à-dire qu’il est possible de retrouver les données
initiales par déchiffrement des données reçues (les dispositifs de cryptage et de décryptage
sont identiques dans le cas du mode CCM).
L’algorithme AES peut être utilisé avec un certain nombre de modes opératoires, entre autres
nous citons : le mode ECB, COUNTER, CBC-MAC, OCB etc.
Le mode ECB (Electronic Code BOOK) consiste à crypter directement un message
préalablement subdivisé en un nombre entier de blocs de données de taille fixée à l’aide d’une
même clé. Cette approche présente essentiellement deux défauts. Le plus évident est qu’un
message n’est généralement pas un multiple exact de blocs fixes et, il y a donc nécessité de
rembourrer les messages de taille quelconque au sauvegarde de la taille exacte de ces derniers.
Il y’a aussi un problème de sécurité : deux blocs identiques donnerons des résultats identiques
après cryptage livrant ainsi des informations aux attaquants.

3.1.2 Mode COUNTER


Le mode COUNTER retenu pour le protocole CCMP n’utilise pas directement l’algorithme
AES pour crypter les blocs de données. Il encrypte d’abord une valeur aléatoire appelée
Counter et exclut le résultat aux blocs de données à encoder pour former le texte chiffré. Le
compteur est généralement incrémenté de 1 pour les blocs successifs d’où le nom donné à ce
mode opératoire.

Figure 4.5: Mode Counter

68
Du fait que ce mode change de valeur pour chaque bloc, il pallie au problème de blocs
identiques rencontré dans l’ECB. Même si deux blocs sont identiques leurs versions codées
sont forcement différentes. Cependant cette méthode pourrait coder de la même façon deux
messages identiques mais indépendants, c’est pourquoi le compteur ne commence pas à 1.
Typiquement il est initialisé avec une valeur aléatoire qui change pour chaque message.

Une autre caractéristique utile, pour certaines applications, est que les cryptages des blocs
peuvent être faits en parallèle car les valeurs des compteurs sont connues à priori. On pourrait
disposer d'un certain nombre de codeurs AES pour crypter un message entier en une seule
opération, ce qui n'est pas le cas pour beaucoup d'autres modes d'AES. La dernière propriété
utile est qu'il n'y a aucun problème si le message ne tombe pas en un nombre exact de blocs
de données de taille fixe, on chiffre le dernier bloc (le plus court) en l'excluant tout
simplement avec la sortie codée du compteur correspondant en utilisant le nombre de bits
dont on a besoin.

Le mode COUNTER est une technique qui est utilisées depuis très longtemps. Il inspire
confiance et est bien connu par la communauté cryptographique. Sa simplicité et sa maturité
font de lui une option attirante pour les RSN. Cependant, le mode COUNTER de base ne
fournit aucune authentification des messages, seulement le chiffrement. Par conséquent, un
mode supplémentaire doit être ajouté pour les RSN.

3.1.3 Mode COUNTER + CBC-MAC (CCM):


Inventé par 3 cryptographes du groupe de travail de l’IEEE 802.11i, le mode CCM fut crée
spécialement pour être utilisé dans les RSN de 802.11i, mais est aussi utilisable dans d’autres
systèmes.

CCM utilise le mode COUNTER en conjonction avec une méthode d’authentification des
messages appelée CBC (Cipher Bloc Chainning). CBC est utilisé pour produire un MIC
(Message Integrity Code), ce dernier étant appelé Message Authentication Code par les
cryptographes, alors CBC a pris le nom de CBC-MAC.

CBC-MAC est une technique qui est utilisées depuis très longtemps, et est basé sur un
concept très simple :
§ On prend le premier bloc du message et on le chiffre en utilisant AES ;
§ Puis on applique un XOR entre le résultat précédent et le second bloc et on encrypte
encore ce résultat en utilisant AES ;
§ Encore on applique un XOR entre le résultat précédent et le bloc suivant et on
encrypte le résultat et ainsi de suite.

Le résultat final est un bloc unique (128 bits dans notre cas) qui sera combiné au reste du
message pour le chiffrement. Il suffit du changement d’un seul bit du message pour que le
MIC recalculé à la réception soit différent.

CBC est une technique simple mais a l’inconvénient de ne pouvoir être utilisé en parallèle
mais seulement de façon séquentielle. Aussi il ne peut être utilisé qu’avec un nombre entier de
blocs de taille fixe. Cependant CCMP fournit une solution de bourrage afin d’atteindre un
nombre entier de blocs.

Le mode CCM tirant profit des deux approches CBC-MAC et COUNTER, met également en
uvre d’autres caractéristiques très importantes à savoir :

69
§ Spécification du nombre aléatoire Nonce : donc séparation des messages cryptés ;
§ Utilisation d’une même clé pour le chiffrement et l’authentification des messages ;
§ Le calcul du MIC s’étend sur des données qui ne sont pas cryptées (adresses MAC,
entête CCMP).

3.2 MECANISME D’ENCAPSULATION CCMP


Le chiffrement CCMP est effectué sur les MPDU qui sont le résultat de la fragmentation du
MSDU. En effet les messages qui arrivent des couches hautes sont appelés MSDU. Ils sont
fragmentés au niveau MAC et chaque fragment formant un MPDU est composé de données,
d’un entête contenant les adresses MAC et d’autres informations. A ce stade tous les MPDU
seront traitées par CCMP et seulement les données sont chiffrées et non les entêtes. Aussi
CCMP rajoute d’autres champs qui augmenteront de 16 octets (8 octets MIC et 8 octets pour
l’entête CCMP) la taille du MPDU initial.

Figure 4.6: MPDU

3.2.1 Entête CCMP


L'en-tête CCMP a deux rôles. En premier, il fournit un champ de 48 bits appelé Paquet
Number (PN) qui fournit une protection contre les attaques de type rejeux de trame et permet
au récepteur de dériver la valeur du Nonce qui a été utilisé dans le chiffrement. En second,
dans le cas des communications multicasts, il permet au récepteur de déterminer la clé de
groupe qui a été utilisée dans le chiffrement. Le format de l'en-tête CCMP est très semblable à
celui utilisé pour l'en-tête TKIP. Ceci était intentionnel dans le but de simplifier la mise en
oeuvre de points d'accès pouvant gérer un groupe mixte formé de stations implémentant TKIP
et CCMP. L’entête CCMP est acollé aux données cryptées et est transmis en clair.

70
Figure 4.7 : En-tête CCMP

3.2.2 Etapes de chiffrement et de transmission


Avant le début du processus de chiffrement, il est utile de ranger dans l’ordre d’utilisation par
le processus, les champs qui vont intervenir dans le chiffrement. Le chiffrement inclut d’abord
trois champs : l’entête MAC, l’entête CCMP et le texte en clair. Cependant, les champs non
utilisables de l’entête MAC sont masqués à 0. L’entête CCMP est rempli avec le PN et le Key
ID. Le PN est incrémenté de 1 pour chaque MPDU.

L’adjonction de l’entête MAC et de l’entête CCMP fournit ce que l’on appelle l’AAD
(Additional Authentication Data). Les AAD ne sont pas cryptés mais sont protégés par le MIC
(car figurent parmi les champs utilisés pour le calcul du MIC). La première opération après
l’assemblage consiste à calculer le MIC.

3.2.3 Calcul du MIC


Le calcul du MIC est effectué en utilisant le mode CBC-MAC, lequel code un bloc initial
(First Block) et l'exclut successivement aux blocs de données fixes de 128 bits subséquents en
codant toujours le résultat. Le résultat final étant un bloc fixe de 128 bits CCMP n’utilise que
les 64 premiers bits les plus significatifs.

Dans CCMP le bloc initial de CBC-MAC n’est pas issu directement du MPDU, mais formé à
partir d’un processus utilisant un nombre aléatoire (Nonce). Son format est le suivant :

Figure 4.8: Champs nécessaires pour le calcul du MIC

71
Le Nonce : Codée sur 104 bits il est formé à partir des champs Priorité, l’adresse MAC de la
source et du numéro de paquet (PN).

Flag : Toujours égal à 1011001, il indique que le MIC est codé sur 64 bits.

Dlen : longueur du MPDU.

3.2.4 Chiffrement du MPDU


Une fois le MIC calculé et concaténé aux données en clair, nous sommes prêts pour
commencer à crypter le MPDU. Ce cryptage a lieu en utilisant le mode COUNTER et
s'applique sur les données qui suivent immédiatement l'en-tête CCMP dans le MPDU. Du fait
que le mode COUNTER permet le cryptage de blocs de taille quelconque, il n'est pas
nécessaire d'utiliser le bourrage pour le cryptage des paquets.

L'étape essentielle du mode COUNTER est l'initialisation du compteur de manière à éviter


qu'une même valeur soit utilisée deux fois pendant la même session. Pour ce but, le compteur
est construit à partir d'un procédé presque identique à celui du calcul du First bloc pour le
MIC. En fait la valeur du Nonce utilisé ici est identique à celui du MIC. En plus du Nonce le
compteur inclut deux autres champs: Flag et Ctr.

Figure 4.9: Champs nécessaires pour le Counter

Le compteur Ctr débute à 1 et s'incrémente par pas de 1 avec les blocs successifs d'où le nom
COUNTER MODE donné à ce mode. Du fait de l'unicité du Nonce et de la taille du Ctr
(2 octets), il est garanti d'avoir des valeurs uniques du compteur pour tout message avec
moins de 65536 blocs. Cela accommode le plus grand MPDU permis dans IEEE 802.11.
Une fois le compteur initialisé, on procède au chiffrement en utilisant le mode COUNTER
défini dans les sections antérieures : Chaque valeur consécutive du compteur est codée en
utilisant la clé secrète et est exclue aux données des blocs de 128 bits pour produire les blocs
chiffrés.

La trame finale est obtenue en concaténant l’entête MAC (dans lequel on restaure les champs
qui ont été masqués à 0 pour le calcul du MIC), l’entête CCMP et les données chiffrées.

72
Figure 4.10: Encapsulation CCMP

3.2.5 Mécanisme de décapsulation CCMP


Quand le MPDU chiffré est reçu par le récepteur, la première chose est de retrouver la bonne
clé pour le décryptage. Les clé unicasts correctes sont sélectionnées en se basant sur l'adresse
MAC source dans l'en tête MAC. Il y a plusieurs étapes que le récepteur doit suivre pour
extraire et vérifier la validité des données reçues, le décryptage est seulement une étape de ce
processus qui est appelé plus généralement décapsulation.

Cette décapsulation suit un certain nombre d’étapes qui sont :


1. Le PN est transmis en clair dans l'en-tête CCMP. La première chose que le récepteur
fait est de lire le PN et le compare à celui du dernier MPDU reçu. S’il est inférieur ou
égal au dernier PN reçu, le récepteur détruit le MPDU (cas de rejeux de trame).

2. En assumant que le PN est bon, la prochaine étape est de préparer le décryptage qui
utilise le mode AES/COUNTER. Cela exige le calcul de la valeur initiale du compteur
qui doit être égale à celle utilisée dans le chiffrement. Toutes les informations sont
disponibles dans la trame reçue pour ce calcul. Le numéro de séquence PN est
combiné avec l'adresse MAC source et le champ priorité pour créer le Nonce. Celui-ci
est alors combiné avec le champ Flag connu et le Ctr (initialisé à 1). Notons qu'il n'y
a aucun secret ici: Tout attaquant peut calculer la même valeur. Cependant, cela ne
sert à rien à moins que la clé secrète soit connue aussi. Le décryptage opère de la
même manière que le cryptage (menant à une excellente simplification de la mise en
uvre) : les valeurs consécutives du compteur sont codées et exclues aux blocs du
MPDU reçu afin de restaurer les données non chiffrées et la valeur MIC.

73
3. La prochaine étape est de vérifier que la valeur du MIC est correcte. La valeur du MIC
est recalculée sur les mêmes données (et les bourrages) comme ce fut le cas à
l'émission sur le MPDU original, les champs non utilisables dans l'en-tête MAC sont
masqués à 0 et le calcul est exécuté sur le MPDU reçu, à l'exclusion du MIC. Si les
données sont inchangées au cours de la transmission, et que nous possédons la bonne
clé secrète, le même résultat sera obtenu. Ce dernier est comparé à la valeur du MIC
envoyée dans la trame: Une égalité veut dire que la trame est valide. Une disparité est
très probablement un cas d'attaque et la trame est abandonnée. Il y a là,
authentification de l’émetteur et contrôle de l’intégrité des données reçues.

CONCLUSION SUR LA NORME 802.11i


La norme 802.11i répond à la problématique posée pour la sécurisation des réseaux sans fils.
En effet, elle utilise un système d’authentification reconnu dans le « monde » des réseaux
filaires (méthodes définies dans la norme 802.1x). Elle repose de plus sur le nouveau standard
de chiffrement : AES, qui est énormément plus robuste que le cryptage WEP. Cependant,
malgré que AES se calcule assez rapidement, sa prise en charge nécessitera un
renouvellement du matériel (cartes réseau et points d’accès Wi-Fi).

Par ailleurs, il existe d’autres solutions également très fiables, comme l’utilisation de réseaux
privés virtuels et les solutions de sécurité de niveau applicatif. Certaines de ces solutions
seront discutées dans les sections qui vont suivre.

74
Chapitre V :

Solution de
sécurité VPN
et Pare-feu

75
INTRODUCTION
Nous avons vu jusqu'à présent comment la sécurité était obtenue, pour la lutte contre l’écoute
passive, par le chiffrement au niveau 802.11 et, pour le contrôle d’accès, par l’authentification
d’une machine auprès du point d’accès. Cependant, comme nous avons déjà eu à le signaler,
un réseau Wi-Fi peut être considéré comme tout autre type de réseau local. Il doit donc être
possible de lui appliquer toutes les solutions de sécurité réseau existantes.

Les solutions générales de sécurité réseau dérivent le plus souvent du concept de réseau privé
virtuel ou VPN (Virtual Private Network) ou de celui des Pare-feu (Firewall).

Le rôle initial d’un VPN est d’autoriser un client (un ordinateur par exemple), à accéder à un
serveur ou une application distante située sur un réseau donné, en passant par des réseaux
dans lesquels la sécurité n’est pas assurée mais en offrant tout de même un bon niveau de
sécurité de bout en bout.

Les Pare-feu sont des outils classiques de sécurité, qui permettent de protéger un équipement
ou un réseau des attaques extérieures.

Nous verrons dans ce qui suit les principaux types de VPN et de Pare-feu, les protocoles
utilisés, ainsi que leurs implémentations dans les réseaux sans fil.

1. LES RESEAUX PRIVES VIRTUELS


Un réseau privé virtuel comprend un serveur, un client, un tunnel et le protocole qui permet
de créer la connexion. Le client est l’entité qui sollicite la connexion ; le serveur est l’entité
qui accepte l’établissement d’une connexion de réseau privé virtuel ; le tunnel est la portion
de connexion entre le client et le serveur dans laquelle les données sont encapsulées. Afin
d'assurer un accès aisé et peu coûteux aux intranets ou aux extranets d'entreprise, les réseaux
privés virtuels simulent un réseau privé, alors qu'ils utilisent en réalité une infrastructure
d'accès partagée, comme Internet.

Pour l’établissement du VPN, il faut créer un chemin privé virtuel sécurisé (tunnel crypté)
entre la source et la destination. Le tunneling consiste à construire un tel chemin après avoir
identifié l'émetteur et le destinataire. Par la suite, la source chiffre les données et les achemine
en empruntant le chemin virtuel préétabli.

Il existe 3 types de standards d'utilisation des VPN à savoir :

1. Les VPN d Intranet : utilisé pour relier au moins deux intranets distants d’une même
entreprise.
2. Les VPN d extranets : utilisé pour la connexion entre sites d’entreprises différentes.
3. Le VPN d'accès : utilisé pour permettre à des utilisateurs itinérants d'accéder au réseau
privé de l’entreprise. Dans ce mode d’utilisation, l'utilisateur se sert d'une connexion
Internet pour établir la connexion VPN avec le réseau de l’entreprise, il existe deux
cas:
§ L'utilisateur demande à un fournisseur d'accès de lui établir une connexion
cryptée vers le serveur distant : il communique avec le NAS (Network Access
Server) du fournisseur d'accès et c'est le NAS qui établit la connexion cryptée.

76
§ L'utilisateur possède son propre logiciel client pour le VPN auquel cas il établit
directement la communication de manière cryptée vers le réseau de
l'entreprise.

Ce type de VPN permet l’implémentation de la sécurité dans les réseaux Wi-Fi basée sur la
technologie VPN.

1.1 PROTOCOLES UTILISES DANS LES TECHNOLOGIES VPN


Nous pouvons classer les protocoles utilisés dans les VPN en deux catégories :
§ Les protocoles de niveau 2 : L2TP, PPTP
§ Les protocoles de niveau 3 : IPsec, MPLS

Le protocole IPsec étant celui préconisé par l’IETF et probablement celui le plus utilisé dans
la technologie VPN, il est le seul protocole qui sera détaillé dans la suite de ce document.

1.1.1 IPsec (Internet Protocol security)


IPsec est l’architecture générale de sécurité développé par l’IETF afin de se prémunir des
écoutes et des usurpations d’identité, en modifiant le protocole IPv4 pour permettre de :

§ chiffrer les paquets IP (leur contenu seul ou le paquet entier) ;


§ introduire un authentificateur permettant d’authentifier l’équipement émetteur et de
contrôler l’intégrité de tout ou parties du paquet IP.

Pour cela, deux nouveaux en-têtes IPv4 dédiés à la sécurité ont été définis (ils sont encore
appelés extensions pour la nouvelle génération IPv6 du protocole IP) :

§ l’en-tête d’authentification (AH : Authentication Header) : contient entre autres un


authentificateur. Il permet donc de vérifier l’identité de l’équipement de sécurité
émetteur, et de contrôler l’intégrité des données. Il permet optionnellement de détecter
si les données reçues n’ont pas été précédemment reçues (afin d’éviter qu’une
personne malveillante ayant réussi à récupérer un paquet légitime sur le réseau ne
puisse rejouer ce paquet vers le même destinataire). Pour éviter que les modifications
apportées par le réseau n’aboutissent, au niveau de l’équipement de sécurité récepteur,
à des rejets de paquets pourtant légitimes, l’authentificateur doit être calculé sur les
champs dont on est sûr qu’ils ne seront pas modifiés par le réseau. Pour le calcul et la
vérification, l’entête AH et ces champs modifiables sont mis à zéro (pour IPv4 ces
champs sont: type de service TOS, les Flag, Offset, la durée de vie TTL, et le
Checksum) ;
§ l’en-tête de confidentialité (ESP : Encapsulating Security Payload) : permet de
transporter un paquet IP tout ou en partie chiffré, ainsi qu’un authentificateur offrant la
même gamme de services que l’en-tête d’authentification. Il est important de constater
ici que l’authentificateur est calculé après avoir réalisé le chiffrement. Cela permet un
gain de temps à la réception du paquet. En effet, si le paquet est erroné, plutôt que de
le déchiffrer et de se rendre compte ensuite que l’authentificateur est mauvais,
l’authentificateur est d’abord vérifié et, s’il est correct, le déchiffrement a lieu.

Remarque : l’authentification et le contrôle d’intégrité réalisés par l’authentificateur dans


l’en-tête ESP ne protègent que le contenu de l’en-tête ESP, contrairement à l’en-tête AH qui
porte sur tout le paquet IP excepté les champs susceptibles d’être modifiés par le réseau.

77
Dans certains cas, suivant le niveau de protection en intégrité souhaité, il peut être nécessaire
de recourir aux deux en-têtes de sécurité pour protéger le même paquet, l’en-tête ESP ne
rendant alors que le service de confidentialité.

D’après le RFC 2401, la protection des paquets IP peut être réalisée de deux manières :
§ protection de bout en bout ;
§ protection sur des segments de réseau.

Selon le type de protection sélectionné, deux modes de protection utilisant ces en-têtes sont
disponibles :
§ le mode transport assure uniquement la protection de certains champs du paquet IP.
Le mode transport n’est utilisable que dans le cas d’une protection de bout en bout
entre terminaux ;
§ le mode tunnel s’applique à un tunnel IP. L’équipement tunnelier réalisant le tunnel IP
a pour fonction d’encapsuler le paquet IP lui arrivant dans un nouveau paquet IP. La
protection qu’il met en place doit porter sur tout le paquet IP entrant, ainsi que sur
certains champs du nouveau paquet IP construit. Ce mode peut être indifféremment
utilisé pour une protection de bout en bout ou une protection sur des segments de
réseaux.

Mode Transport Mode Transport


Contenu du Paquet Contenu
Entête IP Entête IP S.entête Auth
AH IP original Paquet Queue
original ESP ESP
original original

Champ Authentifié Champ chiffré

Champ authentifié

Mode Tunnel Mode Tunnel


Nouvel Entête Contenu du Paquet Nouvel S.entête Entête Contenu Queue Auth
AH IP IP IP Paquet
Entête IP entête ESP ESP ESP
original original original original

Champ Authentifié Champ chiffré

Champ Authentifié

Figure 5.1: Encapsulation IPsec

Pour initier un échange, les deux équipements de sécurité (terminaux, passerelles de sécurité)
qui veulent protéger leurs échanges doivent se mettre d’accord sur le type d’en-tête de
sécurité à introduire/extraire dans les paquets IP, ainsi que les services et les paramètres de
sécurité (algorithmes et clés de chiffrement, etc.) à utiliser en vue de protéger les échanges de
paquets IP. Le résultat de cette négociation est appelé : association de sécurité.

Une association de sécurité contient donc entre autres :


§ l’algorithme de chiffrement, les clés de chiffrement, etc., utilisés pour générer l’en-tête
de confidentialité si le service de confidentialité est sélectionné ;

78
§ l’algorithme d’authentification, les clés de chiffrement, etc., utilisés pour générer l’en-
tête de confidentialité si le service d’authentification est sélectionné ;
§ l’algorithme d’authentification, les clés de chiffrement, etc., utilisés pour générer l’en-
tête d’authentification ;
§ la durée de vie de l’association (une association de sécurité doit être régulièrement
renouvelée) ;
§ le mode du protocole IPsec, à savoir tunnel ou transport.

IPsec offre pratiquement tous les services de sécurité, mais l’abondance de ses options
engendre un système complexe qui souffre encore de problèmes d’interopérabilité. De plus, il
ne supporte pas la translation d’adresse (NAT) ni l’adressage dynamique (DHCP), ce qui peut
poser problème dans le cadre des réseaux sans fil.

1.2 UTILISATION DES VPN DANS LES RESEAUX Wi-Fi


Un réseau privé virtuel permet essentiellement de sécuriser une liaison point à point.
L’utilisation d’un tel concept pour sécuriser un réseau local n’est donc pas évidente. Si l’on
souhaite assurer au saint d’un réseau local sans-fil la confidentialité des transmissions et le
contrôle d’accès sur tout le réseau, on aboutit à une architecture où toute paire de stations
souhaitant communiquer entre elles, doivent nouer une association de sécurité pour dresser un
tunnel sécurisé. Une telle architecture est tout sauf facile à mettre en uvre. Elle peut toute
foie être largement simplifiée. L’idée est d’obliger une station sans-fil qui souhaite se joindre
à un réseau, à nouer une association de sécurité avec un serveur dédié, ce serveur sert de
passerelle d’accès vers le reste du réseau. La négociation de cette association permet
d’authentifier avec des méthodes fiables le n ud sans-fil qui souhaite joindre le réseau. Un
chemin privé virtuel sécurisé, ou tunnel est crée entre le n ud sans-fil et la passerelle qui
fournit l’accès au réseau.

Cette approche (concept de VPN) permet de ne plus protéger, ou en tout cas d’alléger les
contraintes dans le processus d’association des stations avec les points d’accès. La station
peut accéder au réseau derrière le point d’accès, mais cet accès ne lui permet pas d’entrer dans
le réseau principal de l’entreprise, car il lui faut franchir la barrière de la passerelle pour
accéder à ce dernier. Ceci peut se faire de deux manières différentes :

Si l’on souhaite offrir une sécurité maximale, il est utile de séparer physiquement le réseau
local (DS) qui supporte les points d’accès de celui qui supporte le réseau principal. Faute de
cela, la station radio pourrait accéder au réseau principal et chercher des failles de sécurité sur
toutes les machines de ce dernier. En limitant les points d’attaques possibles pour accéder au
réseau principal, il est clair qu’on augmente considérablement la sécurité du système.
Une autre utilité des passerelles est le contrôle du débit des stations radio. Au sein d’une
même entreprise on peut ainsi offrir des débits différents suivant les types d’usagers. Les
visiteurs de l’entreprise, par exemple, peuvent se voir affecter un débit plus faible que celui
attribué aux employés.

Le mécanisme se déroule comme suit :


1. la station radio sollicite auprès de la passerelle la mise en place d’une association de
sécurité ;
2. la passerelle cherche à authentifier la station radio (les réponses de la station radio sont
généralement relayées vers un serveur d’authentification lequel décide de l’acceptation
de cette dernière) ;

79
3. après authentification de la station radio il y a mise en place d’un tunnel entre le
mobile et la passerelle.

Si l’on est prêt à quelques compromis sur la sécurité, il est possible d’utiliser le réseau
principal de l’entreprise pour connecter directement les points d’accès et donc de se passer du
réseau filaire qui connecte ces point d’accès. En effet, certains points d’accès disposent de
fonctionnalités de routeur et peuvent obliger tout trafic en direction du réseau filaire à
s’orienter vers une machine unique. Toute station sans-fil souhaitant accéder au réseau
principal voit donc son trafic orienté vers cette machine, qui fait office de passerelle d’accès
vers ce réseau principal. Cela permet de faire cohabiter les points d’accès sur le réseau
principal de l’entreprise tout en offrant un contrôle d’accès vers ce dernier. Dans cette
configuration se pose quand même le problème de piratage des points d’accès.

Station sans-fil

Point d’accès
Passerelle de contrôle
d’accès au réseau

Serveur
d’authentification

Figure 5.2: Architecture logique de sécurité sans-fil par un tunnel vers une passerelle de contrôle

2. PARE-FEU

2.1 FONCTIONS REALISEES


Le Pare-feu est un système aux fonctions de filtrage évoluées. Indépendamment des fonctions
de routage et de translation d’adresse, chaque paquet est examiné, une décision de rejet ou
d’acceptation est prise en fonction de nombreux critères :
§ Adresse destination ;
§ Adresse Source ;
§ Le protocole transporté ;
§ Le port destination ;
§ Le port source ;
§ La valeur de certains flags (ACK, SYN…)…..

La décision est prise pour chaque datagramme, il n’y a pas de notion de contexte. Il existe
deux types de Pare-feu :

80
Le Pare-feu à séparation des réseaux segmente le réseau en deux tronçons : le réseau interne
et le réseau externe. Il contrôle le trafic et peut réaliser une translation d’adresse.

Le Pare-feu à fil de l’eau n’effectue aucune séparation physique des réseaux. Cependant,
comme le Pare-feu à séparation des réseaux, il réalise l’isolation des trafics. Les postes ne
communiquent qu’avec le Pare-feu (passerelle par défaut).

Les Pare-feu comportent souvent des outils de surveillance du trafic, qu’il peut être utile pour
surveiller le trafic sur le WLAN. Cette approche permet d’alerter l’administrateur réseau en
cas d’apparition de trafic suspect.

2.2 UTILISATION DES PARE-FEU DANS LES RESEAUX Wi-Fi


La sécurité d’un réseau sans-fil peut être obtenue au dessus du niveau réseau en sécurisant les
applications transportées. Dans cette approche comme dans celle des solutions VPN, on allége
les contraintes dans le processus d’association des stations avec les points d’accès. Mais un
chiffrement peut protéger contre l’écoute passive des transmissions (ceci est généralement
obtenu par le biais des protocoles qui permettent de sécuriser les applications autorisées, ex :
SSL, TLS …).
Les points d’accès doivent être isolés par un Pare-feu du reste du réseau et des ressources de
l’entreprise. Ceci peut se faire de deux manières différentes :

2.2.1 Architecture L2 dédiée


Une architecture L2 dédiée consiste en l’interconnexion des points d’accès dans une DMZ
d’un Pare-feu et représente la solution idéale. En limitant les points d’attaque possibles pour
accéder au réseau de l’entreprise, on augmente la sécurité du système, l’étanchéité de
l’isolement entre le DS et le réseau de l’entreprise dépendant uniquement du Pare-feu.

DMZ d’interconnexion

Serveur

Pare-feu

Ordinateur

Figure 5.3 : Architecture L2 distribuée

81
2.2.2 Architecture L2 mutualisée
L’utilisation de VLAN permet d’implémenter l’isolement tout en mutualisant l’architecture
L2 (réseau de l’entreprise) préexistante. La mise en place de ce type d’architecture nécessite
un environnement réseau L2 capable de gérer des VLAN.

LAN d’entreprise

Serveur

Pare-feu

Ordinateur
Figure 5.4: Architecture L2 mutualisée

CONCLUSION
Ces deux solutions ne sécurisent pas en réalité l’environnement radio mais plutôt les accès des
utilisateurs mobiles aux ressources du réseau c ur de l’entreprise. Ce qui implique que les
données sensibles ne circulent pas directement entre les stations mobiles, mais transitent
toujours par le réseau c ur.

Néanmoins, elles permettent l’utilisation des appareils mobiles existants sans exigence
particulière sur la génération de l’interface radio qu’ils utilisent pour autant que ces appareils
supportent l’implémentation de logiciels clients VPN ou les applications qu’on souhaiterait
utiliser sur le réseau sans-fil dans le cas de la solution Pare-Feu.

82
Chapitre VI

Déploiement et
implémentation
un protocole
de sécurité

83
INTRODUCTION
Ce chapitre vise à fournir un guide de déploiement de réseaux sans-fil sécurisé de type
802.11, en tenant compte des résultats obtenus en 2005 dans le cadre du mémoire de fin
d’étude [PFE-05] dans lequel l’étude de la norme a déjà été faite et qui inclut les éléments
suivants :
§ Etude de l’architecture sans fil (positionnement optimal des points d’accès) ;
§ Etudes et mesures de la propagation ;
§ Etude de la planification fréquentielle.

Nous détaillerons dans ce chapitre, les interventions nécessaires au niveau des n uds du
réseau (Points d’accès et stations clients…) afin de permettre la mise en uvre du réseau sans
fil sécurisé. Ces interventions sont les suivantes :
§ Choix des équipements
§ Installation et configuration des cartes réseaux sans fil ;
§ Configuration des points d’accès sans fil ;
§ Etude d’un système d’adressage sur le réseau sans fil.
§ Implémentation d’un protocole de sécurité

1. CARACTERISTIQUES DES EQUIPEMENTS EXIGES

1.1 EXIGENCES
Les caractéristiques des équipements dépendent de la solution de sécurité que l’on désire
implémentée sur le réseau sans-fil.
Dans notre cas, l’implémentation de la solution de sécurité WPA exige de la part des n uds
réseaux l’acquisition d’interfaces radio supportant ce protocole (aussi bien pour les stations
que pour les points d’accès).

1.2 EXEMPLES D’EQUIPEMENTS


Citons quelques exemples d’équipements supportant la norme WPA :

Carte PCMCIA Carte PCI Point d’accès

DLINK:

DWL-G650 DWL-G520 DWL-2100AP

Linksys:

WPC11 FR
PCI Linksys WRT54G

Cisco

CB20A Aironet PCI Adaptater Aironet 1200

84
TRENDnet

TEW-421PC TE100PCIWN TEW-430APB

2. INSTALLATION DES CARTES RESEAUX SANS-FIL

2.1. ROLE
Une carte réseau est l’équipement qui s’interface entre un ordinateur et le media de
communication. Dans le cas d’un réseau sans-fil la carte assure les fonctions suivantes :
§ Implémentation des protocoles de la couche MAC ;
§ Modulation/Démodulation des signaux ;
§ Transmission/Réception Radio fréquence.

2.2 INSTALLATION
L’installation d’une carte 802.11 se déroule de la façon suivante :
§ Branchement physique de la carte IEEE 802.11 à l’ordinateur ;
§ Recherche et installation du pilote (driver) qui dépend du SE installé;
§ Configuration de la carte ;
§ Mise en correspondance du pilote avec les couches réseaux. (configuration TCP/IP).

3. INSTALLATION DES POINT D’ACCES

3.1 ROLE
Le point d’accès est l’équipement sans-fil qui prend en charge les processus d’association,
d’authentification et le relayage des trames d’une station émettrice vers une station réceptrice.

Il est généralement composé de :


§ Une ou plusieurs antennes ;
§ Une interface filaire (Connexion au DS) ;
§ Une interface sans fil ;
§ D’autres interfaces optionnelles.

Il offre en fonction du type utilisé, des services comme le DHCP, SNMP…

3.2 INSTALLATION
La configuration du point d’accès se déroule généralement en deux étapes :
§ Montage de(s) l’antenne(s) ;
§ Connexion au point d’accès par l’intermédiaire d’une adresse IP (fournit avec
l’équipement) pour :
o Configurer le protocole réseau (TCP/IP) ;
o Sélectionner le canal de communication (selon la législation en vigueur) ;
o Configurer le protocole de sécurité.

85
4. ETUDE D’UN SYSTEME D’ADRESSAGE SUR RESEAU SANS-FIL
Pour paramétrer convenablement l’adressage du réseau sans fil, il faut au préalable étudier la
structure du réseau de l’entreprise (réseau de distribution DS). Deux cas peuvent se présenter :
Un seul réseau local ou plusieurs réseaux locaux.

4.1 UN RESEAU LOCAL UNIQUE


Dans ce cas de figure, tous les n uds du réseau appartiennent au même sous réseau IP. Il n’y
a donc pas de routage Internet au sein du réseau de l’entreprise et les adresses IP
appartiennent au même sous réseau. L’adressage peut alors être statique ou dynamique par
l’intermédiaire de serveur DHCP.

4.2 PLUSIEURS SOUS RESEAUX LOCAUX


Dans ce deuxième cas de figure, tous les n uds du réseau de l’entreprise n’appartient pas au
même sous réseau IP, et les paquets sont routés au sein du réseau afin d’assurer une
connectivité totale au sein de l’entreprise. Les stations sans-fil étant mobiles dans l’entreprise
et du fait qu’une station doit avoir une adresse IP conforme à l’adressage IP du sous réseau
auquel elle est rattachée, les adresses IP doivent être obligatoirement attribuées de façon
dynamique (DHCP) pour autant que l’on veille que la mobilité soit totale au sein de
l’entreprise.

5. IMPLEMENTATION D’UN PROTOCOLE DE SECURITE

5.1 OBJECTIFS ET SOLUTION RETENUE


A l’issue de l’études faite sur les différents protocoles de sécurité implementables sur les
réseaux Wi-Fi à savoir :
§ EAP-TLS : authentification mutuelle entre le client et le serveur RADIUS par le biais
de certificats (cotés client et serveur).
§ EAP-TTLS et EAP-PEAP : authentification mutuelle du client et du serveur RADIUS
par le biais d’un certificat coté serveur, le client peut utiliser un couple login/mot de
passe.
§ EAP-MD5 : pas d’authentification mutuelle entre client et serveur RADIUS, le client
s’authentifie par mot de passe.
§ EAP-LEAP : cas particulier, méthode propriétaire de Cisco.
§ EAP-SIM : utilisation de la méthode d’authentification GSM (carte SIM)

Notre choix s’est porté sur la méthode EAP-TLS car, malgré sa lourdeur relative, elle est la
méthode la plus sécurisé de plus, c’est elle qui est actuellement la plus utilisée dans les
réseaux d’entreprises.

La mise en place d’un protocole de sécurité basée sur EAP-TLS requiert les éléments
suivants :
§ Des adaptateurs Wi-Fi (cartes réseaux) qui supportent le protocole WPA ;
§ Un logiciel d’accès client capable d’exécuter EAP (Système d’exploitation XP ou
Linux) ;
§ Des points d’accès sans-fil qui supportent également le protocole WPA ;
§ Un serveur d’authentification compatible EAP ;
§ Une autorité de certificat CA.

86
Objectif : Solution la plus sécurisée possible avec le coût le plus bas possible

Solution 1 : Linux
Solution 2 : Windows 2003 Server (Licence)

Solutions retenues
§ Adaptateurs Wi-Fi : DLINK raisons supporte le protocole WPA
§ Clients généralement PC portables è Windows XP qui est capable d’exécuter EAP
autres clients possible (Linux, Millenium,….) ;
§ Points d’accès sans-fil qui supportent également le protocole WPA ;
Autorisation accordée à l’ITO par l’ARPT è Cisco 1200 (non disponible)
Pratique è choix selon la disponibilité du matériel : DLINK
§ Un serveur d’authentification compatible EAP : RADIUS
§ Une autorité de certificat CA.

5.2 IMPLEMENTATION D’EAP-TLS (WINDOWS 2003 SERVER) SUR LE RESEAU


SANS-FIL
La mise en place d’une autorité de certificat racine d’entreprise nécessite au préalable
l’installation d’un serveur contrôleur de domaine c'est-à-dire l’installation d’Active
Directory.

5.2.1 Installation d Active Directory :


L’installation d’Active Directory s’effectue comme suit :
On part dans le Menu démarrer | exécuter | taper : dcpromo Puis s’affiche l’assistant
d’installation d’Active directory, puis suivez les étapes.

Après l’installation d’Active Directory nous pouvons commencer l’installation de l’Autorité


de certificat racine.

5.3 INSTALLATION D’UNE AUTORITE DE CERTIFICAT RACINE


L’installation d’une Autorité de certificat racine nécessite d’abord l’installation des services
IIS (Internet Information Service).

5.3.1 Installation des services IIS :


L’installation des services IIS s’effectue comme suit :
§ Cliquez sur Menu Démarrer | outil d Administration | Gérer votre Serveur.
§ Cliquez sur Ajouter ou Supprimer un rôle. Puis cliquez sur Suivant sur la page qui
s’affiche.
§ Choisir le service à ajouter : Serveur d Application IIS, ASP.NET. Puis cliquez sur
Suivant.
§ Puis nous avons le choix d’installer les extensions front Page ou ASP.NET. Dans
notre cas nous choisirons ASP.NET car les services de certificat requièrent cette
technologie.
§ Cliquez sur Terminer pour terminer l’installation.

Maintenant nous pouvons commencer l’installation proprement dite de l’Autorité de


Certificat.

5.3.2 Installation de l Autorité de certificat racine :


Pour installer les services de certificat nous partons dans :

87
§ Menu Démarrer | Panneau de configuration | Ajout ou Suppression des programmes |
Ajout ou suppression des Composants | Services de certificat. Puis suivre l’assistant en
renseignant les champs nécessaires comme :
Nom Autorité : certificat-ito
Période de validité : 3 ans
Date d’expiration : 08/05/2009 à 04 : 22
§ Sélection de l’emplacement de la base de Données et du Journal de Certificats :Dans
notre cas : Valeur par défaut.
§ Pour continuer les Services IIS doivent être redémarrés. Cliquez sur OK pour
continuer.
§ L’installation des certificats commence.
§ Demande d’activer les pages ASP pour permettre les demandes de certificats via les
pages WEB. Cliquez sur OK.
§ Cliquez sur Terminer pour achever l’installation de l’autorité de certificat.

Remarque : on peut vérifier si le service de certificat est disponible via les pages WEB.
Pour cela lancer l’explorateur puis entrer l’URL suivante :
http://localhost/certsrv/
Nous devons avoir la page suivante :

5.4 INSTALLATION ET CONFIGURATION DU SERVEUR RADIUS


Pour installer un serveur RADIUS appelé serveur d’authentification Internet (IAS) par
Microsoft, aller dans :
Menu Démarrer | Panneau de configuration | Ajout ou Suppression des programmes |
Ajout ou suppression des Composants | Services de mise en réseau | Détail | services
authentification Internet.

Après nous devons créer un utilisateur et un groupe dans Active Directory pour les utilisateurs
du réseau Wi-Fi avant de passer à la configuration du serveur RADSIUS.

88
5.4.1 Création d un compte utilisateur dans Active Directory
Pour créer un compte utilisateur dans Active Directory :
§ Cliquer sur Démarrer | Outil d Administration | utilisateur et ordinateur Active
Directory
§ Puis renseigner les informations de l’utilisateur :
Prénom : wifi1 ;
Nom complet : wifi1 ;
Nom d’ouverture de session : wifi1@ito-wireless.com.
§ Puis on clique sur suivant
§ Renseignez le mot de passe et ses propriétés :
Mot de passe : telecommunication1
§ Cliquer sur suivant pour continuer. Et apparaît le résumé de la création du compte.
§ Cliquer sur terminer pour continuer.

Editer les propriétés de l’utilisateur wifi1 pour autoriser l’accès distant :


§ Clic droit sur l’utilisateur wifi1| propriétés
§ Dans l’onglet Appel Entrant, on coche autoriser l’accès.

5.4.2 Création d un groupe dans Active Directory


Pour créer un groupe dans Active Directory :
§ Cliquer sur Démarrer | Outil d administration | utilisateur et ordinateur Active
Directory
§ Clic droit sur User | nouveau | groupe
§ Renseigner le champ :
Nom du groupe : wifigroup
§ Puis valider par OK.
§ Ajouter l’utilisateur wifi1 au groupe wifigroup. Pour cela, clic droit sur wifigroup puis
cliquer sur propriétés.
§ Dans l’onglet Membres, ajouter le nom de l’utilisateur puis cliquer sur OK pour
valider : wifi1@ito-wireless.dz

5.4.3 Configuration de RADIUS

a. Configuration des stratégies d accès du Groupe wifigroup:


Menu Démarrer | Outil d Administration | Services d authentification Internet.

b. Vérification des propriétés d’EAP-TLS :


c. Ajout d’un client RADIUS (Point d’accès) :
§ Menu Démarrer | Outil d Administration | service d authentification Internet
Renseignez les champs suivants :
− Nom Convivial : TREDnet
− Adresse IP : 192.168.100.176
§ Définir le secret partagé entre le point d’accès et le serveur RADIUS.
Secret partagé : dientasekoubyaromoussa
§ Achevez en cliquant sur Terminer.
§ Puis on peut vérifiez que le nouveau Client apparaît dans la configuration du Serveur
d’authentification Internet.

89
5.5 CONFIGURATION DU POINT D’ACCES
Pour effectuer nos essai, nous avons utilisé le point d’accès TRENDnet pour lequel la
configuration du point d’accès se fait en suivant les étapes suivantes après connexion à ce
dernier:
§ Renseigner l’adresse IP du Serveur RADIUS utilisé, dans notre cas : 192.168.100.59
§ Renseigner le secret partagé entre le serveur RADIUS et le Point d’accès :
dientasekoubyaromoussa
§ Renseigner le numéro du port de communication : 1812
§ Renseigner l’intervalle de temps de changement des clés : 3600 s

5.5.1 ADRESSAGE

90
5.5.2 CONNEXION AU RESEAU SANS CONFIGURATION DE SECURITE

5.5.3 CONFIGURATION DE RADIUS

91
5.5.4 CONFIGURATION DE WPA

5.6. CONFIGURATION DU POSTE CLIENT


La configuration du poste client s’effectue en deux étapes :
§ Installation de certificat sur le poste client ;
§ Configuration de la connexion sans-fil.

5.6.1 INSTALLATION DES CERTIFICATS

a. Ajout de l autorité de certificat principal de confiance


Pour ajouter l’autorité principale de confiance, il faut tout d’abord ouvrir une session au nom
de l’utilisateur qui recevra le certificat et suivre les étapes suivantes :

§ Se connecter à http://ito-wireless.dz/certsrv
§ S’authentifier auprès du serveur IIS en renseignant le compte de l’utilisateur (Mot de
passe, Nom utilisateur) fournis dans Active Directory.
§ Ensuite apparaît la page web ;
§ Cliquer sur le lien : Télécharger un certificat d’autorité de certification, une
chaîne de Certificat ou une liste de révocation de certificat.
§ Cliquer sur : Installer cette chaîne de certificat d’autorité de certification.
§ Valider la boite de dialogue informant l’installation d’une nouvelle CA.

Remarque : On peut vérifier le nouveau CA dans le menu:

92
Outils | Option Internet | Contenu | Certificat | Autorité Principale de confiance.

b. Ajout d un certificat X.509


Pour ajouter un certificat X.509 on procède comme suit :

§ Retourner à la page d’accueil de la page web


§ Cliquer sur le lien : Demander un certificat
§ Ensuite cliquer sur le lien : Certificat utilisateur
§ Cliquer sur Envoyer >
§ Confirmer la génération de la clé publique du client en cliquant sur oui.
§ Confirmer l’installation du certificat utilisateur.

Remarque : On peut vérifier que le certificat à bien été délivrer pour cela aller dans le menu:
Outils | Option Internet | Contenu | Certificat | Personnel.

5.6.2 CONFIGURATION DE CONNEXION SANS-FIL


Pour la configuration de la connexion sans-fil du poste client il faut:
è Ajouter le réseau à la liste des réseaux favoris et le configurer pour les différents onglets
qui apparaissent :

93
è Onglet Association :
§ Renseignez le SSID du réseau : CH446
§ Renseignez la solution de sécurité adoptée : WPA
§ Renseignez l’algorithme de cryptage : TKIP
§ Renseignez l’architecture utilisée : Infrastructure (donc ne pas cocher ad-hoc)

è Onglet Authentification :
§ On doit trouver 802.1x coché et désactivé
§ On sélectionne : carte à puce ou autre certificat
§ On clique sur propriété
§ On coche parmi les autorités de confiances existantes, notre autorité de certification :
certificat-ito

94
5.7. TEST DE SECURITE DU RESEAU

Avant l’installation d’une autorité de certificat et d’un certificat chez le client :


Un message s’affiche disant qu’il n’a pas trouvé de certificat pour la connexion

Après installation d’une autorité de certification et d’un certificat chez le client


Une fois l’autorité de certification et un certificat sont installés et après avoir ajouté le réseau,
alors un message nous indique que nous sommes connectés.

95
Si nous n’ajoutons pas le réseau pour le configurer et qu’on active la diffusion du SSID, alors
un message nous informe qu’il y’a un réseau disponible, et de cliquer sur ce message pour
fournir les informations de sécurité. Une fois qu’on clique sur le message l’écran suivant
s’affiche :

Si nous cliquons sur OK nous serons connecté si non on peut annuler l’opération et on ne sera
pas connecté.
Remarque : on peut aussi voir le certificat du CA en cliquant sur : Afficher le certificat du
serveur.

96
Chapitre VII

Perspectives

97
INTRODUCTION
Comme nous l’avons souligné dans les sections antérieures, ce travail est une partie d’un
projet qui permettra le déploiement d’un réseau Wi-Fi à l’Institut des télécommunications
d’Oran. Ceci étant, son adjonction avec les autres projets dans la même lancée permettra le
déploiement total du réseau sans-fil.

Nous avons proposé et mis en place une solution de sécurité basée sur les protocoles dans les
uds au niveau 802.11, c'est-à-dire le WPA/TLS. Cette solution nous semble être la mieux
adaptée dans le cadre du déploiement d’un réseau requérant un niveau accru de sécurité.

Cependant, ce projet de sécurisation des réseaux Wi-Fi peut être amélioré sur différents plans
qui sont :
§ Surveillance et test périodiques du réseau à l’aide de logiciels d’administration.
§ Détection et localisation par triangulation de points d’accès qui n’appartiennent pas
au réseau sécurisé ;
§ Architecture de sécurité basée sur une séparation logique par VLAN ;
§ Authentification d’une population par carte à puce ;

1. SURVEILLANCE ET TEST CONTINUS DU RESEAU


Partant du principe qu’il n’existe pas de sécurité absolue, il est alors nécessaire de surveiller et
de tester de façon périodique le réseau afin de s’assurer qu’on n’est pas attaqué mais aussi de
s’assurer du bon fonctionnement du réseau. Pour cela on peut utiliser des logiciels dédiés à cet
effet tel que les logiciels de capture de trames: Wi-Fi Crack, NetStumbler….
Et aussi pour la gestion du réseau en utilisant le protocole SNMP.

2. DETECTION ET LOCALISATION PAR TRIANGULATION DES POINTS D’ACCES


PIRATES
Les solutions de sécurité proposées permettent d’empêcher un attaquant d’accéder au réseau,
mais ne permettent pas de détecter et de localiser ce dernier.

Une amélioration du projet pourra aller dans ce sens en ce qui concerne la détection et la
localisation des attaquants en utilisant des méthodes comme la triangulation.

3. ARCHITECTURE DE SECURITE BASEE SUR UNE SEPARATION LOGIQUE PAR


VLAN
La solution de sécurité WPA/TLS nécessite l’utilisation d’infrastructure de gestion de clé PKI
(certificats). Or il se trouve que l’institut reçoit des invités venus d’ailleurs pour peu de temps,
alors il n’est pas intéressant des les soumettre aux contraintes de sécurité des certificats. Donc
on peut diviser la population en deux parties :
§ Les permanents : qui subiront un accès contrôlé par WPA.
§ Les invités : qui subiront tout simplement un contrôle alléger tel que WEP mais pour
accéder au système d’information devront passer par une authentification VPN ou
Pare-feu.

La réalisation d’une telle architecture requière l’acquisition d’équipements qui intègrent les
technologies VLAN et le mieux adapté est CISCO Aironet 1200 (car il supporte les SSID
multiples et le mappage SSID/VLAN).

L’architecture de sécurité dans ce cas sera composée de 2 VLAN :


§ VLAN1 : pour les permanents ;

98
§ VLAN2 : pour les invités.

Au VLAN1 nous appliquerons WPA/TLS et au VLAN2 nous appliquerons tout simplement le


WEP et les VPN ou Pare-feu pour l’accès de ces utilisateurs au réseau de l’établissement.

4. DEFINITION D’UNE POPULATION UTILISANT LES CARTES A PUCE


Dans le futur le système d’information de l’établissement pourrait abriter des informations
clés auxquelles seul un nombre restreint de particuliers aura droit d’ y accéder.

Dans cette situation l’utilisation des cartes à puce en utilisant la méthode d’authentification
EAP-SIM que nous avons développé dans les chapitres antérieurs pourrait être une solution
très intéressante. Donc seul le nombre restreint de particulier disposerons des cartes SIM et
n’en ferrons usage que pour accéder à ces informations clés.

Mais ce type de solution nécessite des investissements conséquents pour les cartes à puce.

99
CONCLUSION GENERALE
L’émergence des technologies sans-fil dans le monde des réseaux informatiques
s’accompagne clairement de nouvelles problématiques de sécurité. Ces dernières sont
particulièrement graves et placent de nombreuses entreprises dans des situations d’insécurité
critiques que des pirates n’hésitent pas à exploiter.

Il est dès lors important que les responsables informatiques en entreprise intègrent au plutôt
ces technologies et les risques associés dans leur politique de sécurité globale afin de définir
et de prendre les mesures nécessaires pour protéger leurs systèmes d’information. Cela doit
être fait d’autant plus rapidement qu’il est devenu quasiment impossible de tenir
complètement une entreprise à l’écart des systèmes sans-fil.

Pour combattre efficacement ces problèmes de sécurité, il faut avant tout avoir conscience que
l’insécurité existe mais qu’elle n’est en rien une fatalité car les solutions nécessaires pour la
combattre découlent du panorama des solutions de sécurité que nous avons vu, du
renforcement de la sécurité informatique interne de l’entreprise et de la mise en place des
moyens de contrôle de l’espace radio.

100
ANNEXE 1 : Principe du CSMA/CA

Le principe du CSMA/CA est simple. Avant qu’une station ne décide d’émettre, elle vérifie
au préalable que le canal de transmission n’est pas déjà occupé par une autre transmission. La
vérification de la disponibilité du canal s’effectue au moyen d’une primitive offerte par la
couche physique. Ce mécanisme est appelé détection physique de porteuse ou CCA (Clear
Channel Assessment). Si la détection a montré que le canal était libre pour un temps
spécifique (appelé DIFS), alors la station peut envisager de transmettre. Dans le cas contraire,
elle doit différer sa transmission jusqu’à ce qu’elle détecte que le canal est de nouveau libre.
La station réceptrice va vérifier le CRC du paquet reçu et renvoie un accusé de réception
(ACK). La réception de l’ACK indiquera à l’émetteur qu’aucune collision n’a eu lieu. Si
l’émetteur ne reçoit pas l’accusé de réception, alors il retransmet le fragment jusqu'à ce qu’il
l’obtienne ou abandonne au bout d’un certain nombre de retransmissions.

Afin d’améliorer le mécanisme, une seconde option lui a été ajoutée : la détection virtuelle de
porteuse. Cette option est appelée ainsi car elle n’utilise pas les primitives offertes par la
couche physique. Elle permet à une station émettrice de réserver pour une période de temps
déterminée le canal radio et aux autres stations d’être informées de l’indisponibilité du canal.
La détection virtuelle de porteuse a pour but d’éviter des collisions pendant les transmissions.
Elle permet de prévoir l’état d’occupation du canal. Elle est basée sur l’utilisation de données
transmises dans les trames (champ de Durée/ID). Ces données concernent la durée supposée
de la transmission. Ces informations sont exploitées par toutes les stations à portée radio.
Chaque station tient à jour un vecteur d’allocation réseau NAV (Network Allocation Vector).
Chaque fois qu’une trame est détectée, le NAV est mis à jour. Avant toute transmission, la
station vérifie que le canal est libre auprès du NAV. Puis elle vérifie directement auprès de la
couche physique si le médium est réellement libre.
PRINCIPE DE L’ALGORITHME DE BACK-OFF
C’est lorsque le canal radio se libère que la probabilité de collisions dues à des transmissions
simultanées est la plus élevée. Le Backoff est une méthode bien connue pour résoudre les
différents entre plusieurs stations ayant tenté d’avoir accès au support en même temps. Cette
méthode demande que chaque station choisisse un délai aléatoire compris entre 0 et un certain
nombre de timeslots avant de transmettre ses données. Concrètement, lorsqu’une station
souhaite transmettre, elle calcule la valeur d’un temporisateur, appelé timer de Back-off. Lors
de la première tentative de transmission d’une trame, ce délai est choisi dans un intervalle
réduit compris entre 0 et 7 et correspondant à un certain nombre de timeslots. Lorsque le canal
est libre durant un slot, le délai calculé est décrémenté d’un slot. Si le canal est détecté
occupé, le délai restant est laissé constant durant toute la période d’occupation. Lorsque le
délai atteint zéro, la station essaye de transmettre. Si la transmission échoue, l’intervalle de
valeurs dans lequel est choisi le délai est doublé, la transmission est différée et le processus
réitéré. Si après un certain nombre de tentatives, la transmission n’a pas réussi, elle est
abandonnée et les couches supérieures sont informées de l’incident.
Le mécanisme de tirage aléatoire décri ci avant garantit un certain niveau d’équité entre les
stations tentant d’accéder au canal.
Le standard 802.11 définit l’algorithme de Back-off comme devant être exécuté dans les cas
suivants :
§ Quant la station écoute le support avant la première transmission d’un paquet et que le
support est occupé ;
§ Pour chaque retransmission ;
§ Après une transmission réussie.

101
Le seul cas où ce mécanisme n’est pas utilisé est quand la station décide de transmettre un
nouveau paquet et que le support a été libre pour un temps supérieur au DIFS.

Mise à jour
Déclenche le
Du
NAV
NAV

Non
NAV=0 ?

Station veut
émettre
Support Non
libre ?
Ecoute du
support
Attente DIFS

Support Non Support Non


libre ? libre ?

Calcul Timer
Attente du DIFS

Décrémentation

Support Non
libre ?
Support Non Bloque le
libre ? Timer

Transmission

Non Non
Timer=0 ?

ACK ? Non Limite de


retrans ?
Transmission

Echec
ACK ?

Transmission réussie

Transmission réussie

102
ANNEXE 2 : Notion sur les certificats et les infrastructures de gestion de clés PKI

Les systèmes à clés symétriques (clés secrètes), posent un problème d’échange sécurisé des
clés de chiffrement. Aussi, ces systèmes sont mal adaptés pour une utilisation à grande échelle
(besoin de générer n clés pour l’ajout d’un nouvel utilisateur à un groupe de n utilisateurs). En
utilisant un système de chiffrement à clés asymétriques, un nouvel utilisateur n’aura besoin
que d’un couple de clés (une clé privée et une clé publique) pour pouvoir communiquer avec
l’ensemble des autres entités. Cependant, ces types de systèmes introduisent un nouveau
problème : l’utilisation d’un couple de clés entraîne la nécessité de publication, en toute
confiance, de la clé publique. En effet, l’utilisation des clés publiques requiert un certain
nombre d’assurances, à savoir :
§ la clé est bien celle appartenant à la personne avec qui les échanges sont envisagés ;
§ le possesseur de cette clé est « digne de confiance » ;
§ la clé est toujours valide.

En conséquence, la distribution des clés publiques devient une question cruciale pour un
système global sécurisé, à laquelle l’infrastructure de gestion de clés offre une solution en
faisant intervenir des certificats et des autorités de certification.

CERTIFICATS ET AUTORITES DE CERTIFICATION


Un certificat constitue une carte d’identité numérique. Il repose sur le même principe que les
cartes d’identité nationales :
§ Ils permettent de justifier l’identité d’un individu (ou d’une entité comme une
entreprise ou un composant réseau) sur présentation du certificat. Tout comme la carte
d’identité, sa validité peut être vérifiée sur présentation.
§ Ils reposent sur la certification de cette identité par un tiers de confiance reconnu. La
carte d’identité est certifiée par la préfecture, il en est de même pour le certificat qui
est certifié par une autorité de certification de manière numérique.

Cette carte d’identité prend la forme d’un fichier qui peut être stocké de différentes manières,
directement sur le système de stockage du poste du propriétaire, ou de manière plus sûre sur
un support amovible comme une carte à puce, une clé USB … Une norme soutenue par
l’IETF existe, il s’agit de la norme X.509. Les certificats sont la clé de voûte des architectures
à clé publique (PKI).

Le certificat est signé (au sens signature électronique) : on effectue une empreinte (ou un
condensé) du certificat à l’aide d’un algorithme de hachage (MD5 par exemple), et on chiffre
l’empreinte obtenue. Le chiffrement s’effectue avec la clé privée de l’autorité de certification
qui possède elle même son propre certificat.

Un certificat étant signé, il est non falsifiable. Son authenticité ne dépend pas du canal par
lequel il a été reçu mais est intrinsèque.

Une Autorité de Certification (CA) est une organisation qui délivre des certificats
électroniques à une population. Le CA émet, gère et révoque les certificats. La clé publique
du certificat du CA doit être reconnue de confiance par tous les utilisateurs finaux. Les
certificats émis par les utilisateurs finaux sont appelés certificats utilisateurs et ceux émis pour
validation entre les différents CA sont appelés certificats de CA.
Une seule autorité de certification pour le monde entier ne serait pas appropriée. Il est
nécessaire que l’architecture PKI soit distribuée, les CA étant autorisés à certifier d’autres

103
CA. Le CA peut déléguer son autorité à une autorité subordonnée en émettant un certificat de
CA, créant ainsi une hiérarchie de certificats. En règle générale il peut y avoir un nombre
aléatoire de CA sur le chemin entre deux utilisateurs. Pour obtenir la clé publique de son
correspondant, un utilisateur doit vérifier le certificat de chaque CA. Ce procédé est appelé
validation du chemin de certification (séquence ordonnée de certificats de la dernière à la
racine).

Exemple de certificat

INFRASTRUCTURE DE GESTION DE CLES PKI


L’Infrastructure de Gestion de Clés PKI est un ensemble de protocoles et de services associés
qui assurent la gestion des clés publiques. Elle est constituée de l'ensemble des matériels,
logiciels, personnes, règles et procédures nécessaires à une Autorité de Certification pour
créer, gérer et distribuer des certificats X509.

Un PKI est donc une structure à la fois technique et administrative permettant la mise en
place, lors de l’échange de clé, de relations de confiance entre des entités morales et/ou
physiques et/ou logiques. Les principales fonctions réalisées par le PKI sont les suivantes :
§ Enregistrement de demandes et vérification des critères pour l’attribution d’un
certificat ;
§ Création des certificats ;
§ Diffusion des certificats entraînant la publication des clés publiques ;

104
§ Archivage des certificats pour assurer la sécurité et la pérennité ;
§ Renouvellement des certificats en fin de périodes de validité ;
§ Suspension des certificats ;
§ Révocation des certificats pour péremption, perte, vol ou compromission de clés ;
§ Création et publication des listes de révocation des certificats ;
§ Délégation de pouvoirs à d’autres entités reconnues de confiance.

Exemple de fonctionnement d un PKI


Le fonctionnement d’un PKI, dans le cas où le client génère lui-même son couple de clés se
déroule comme suit : BOB formule une demande de certificat auprès d’une autorité de
certification CA. Celui-ci après vérification de l’identité de BOB, lui délivre un certificat et le
signe avec sa clé privée. BOB, pour communiquer avec Alice, envoie son certificat à cette
dernière et le signe avec sa clé privée. Alice apprend ainsi la clé publique de BOB (validée
par la signature numérique du CA) et vérifie auprès du CA la validité du certificat
(consultation de la liste des révocations).Elle vérifie ensuite que BOB est bien l’émetteur du
message par lecture de la signature de BOB (utilisation de la clé publique de BOB).

En résumé nous pouvons dire que l’utilisation de certificats à travers une architecture PKI
permet de rendre les services suivants:
§ Identification et Authentification : les certificats, en tant que cartes d’identité
électroniques, vont permettre d’authentifier les entités en présence de manière plus
sécurisée que les simples couples Login/mot de passe.

§ Intégrité et Confidentialité : l’utilisation du chiffrement asymétrique et du calcul


d’empreintes permet d’assurer respectivement la confidentialité des échanges et
l’intégrité des données.

§ La non répudiation : la signature numérique d’un message en utilisant les données


d’un certificat permet d’assurer au destinataire que le signataire est bien l’émetteur et
que le signataire est bien celui il affirme être.

L’utilisation de certificats possède des avantages énormes en terme de sécurit é, cependant


comme nous avons pu le constater, les opérations de gestion qu’ils engendrent peuvent se
révéler fastidieuses.

105
ANNEXE 3: Attaques FMS

Le protocole WEP utilise une clé sécrète SK, partagée entre le n ud émetteur et les
récepteurs, de 40 bits pour WEP1 et de 104 bits pour WEP2. Un vecteur d’initialisation IV, de
24 bits est généré avant l’émission de chaque trame et est concaténé à la clé SK pour former
une clé K différente pour chaque émission (K=IV||SK). La trame en clair T est lui concaténée
à son checksum ICV (T) pour être cryptée selon l’opération suivante :

C= [T||ICV (T)] +RC4 (K).

Le paquet effectivement envoyé est IV||C. Donc l’IV correspondant à chaque émission est
disponible en clair sur le réseau. Avant de nous concentrer sur l’attaque en question, voyons,
en détail le fonctionnement de RC4.

Cette fonction se déroule en deux parties : une première partie où la permutation S est
générée :
KSA (K)
Initialization:
For i = 0 ... N - 1
S[i] = i
j=0
Scrambling:
For i = 0 ... N - 1
j = j + S[i] + K[i mod l]
Swap(S[i], S[j])
End;

Une deuxième partie où les sorties sont générées :

PRGA (K)
Var z: integer
Initialization:
i=0
j=0
Generation Loop /*tant que nombre d’octets sortis est inférieur*/
i=i+1
j = j + S[i]
Swap(S[i], S[j])
Output z = S[S[i] + S[j]]
End;
RC4 est donc:

RC4
S: array[0...N-1] of integer;
IV: array[0...2] of integer;
SK: array[0...L] of integer; /* L=4 ou L=12*/
K: array[0... (L+2)] of integer;

SK ç Créer la clé secrète;


IV ç Generer l’IV ;

106
K = IV||SK ;
KSA(K);
PRGA(K);
End.

ATTAQUE
L’attaque consiste à deviner une partie de la clé SK à l’aide du premier mot chiffré de C. ce
mot nous est donné par la partie PRGA(K). Le premier z sorti est S[S[1] +S[S[1]]]
(i=1, j=S[1]), il ne dépend donc que des trois éléments suivants:
(S[1], S[S[1]] et S[1] +S[S[1]]).

Définition
Soit a=Si[1], b=Si[a], i et Si étant l’itération et le tableau S de cette itération, dans KSA. Si
i>sup(1, a, a+b), on appelle cette situation, situation résolue.
Procédures de l’attaque :
Simulation
0 1 K(0) 255
S= 0 1 ……. K(0) …………… 255

i=0 j=0
J=0+0+K(0) =K(0) swap(S[0], S[K(0)])

S0= K(0) 1 0 255

i=1
j=K(0)+1+K(1) et si K(1)=IV(1)=N-1 alors j=K(0)+1+N-1=K(0) swap(S[1], S[K(0)])

S1= K(0) 0 ……… 1 …………….. 255

i=2
j=K(0)+S[2]+K(2)=K(0)+2+K(2) et si K(2)=IV(2)=X est tel que j {0, 1} alors les deux
premiers éléments restent inchangés.

S2= K(0) 0 ……….

* En supposant qu’à partir de là, les K(0)-2 itérations suivantes sont telles que ces deux
éléments restent toujours inchangés on aura :

SK(0)-1= K(0) 0 ………. S[K(0)] …….. S[jf] ……


i=K(0)
j=jK(0)-1+S[K(0)]+K(K(0))=jf swap(S[i], S[j])

SK(0)= K(0) 0 ………. S[jf] …….. S[K(0)] ……

Dans les étapes subséquentes, i aura dépassé 1, S[1]=0 et S[1]+S[S[1]]=0+K(0) et nous serons
dans une situation résolue.

** En supposant que les trois éléments (S[0], S[1], S[K(0)]) ne changent plus jusqu’à la fin,
alors le premier octet z sorti sera :
z=S[S[1] +S[S[1]]]=S[0+S[0]]=S[K(0) +0]=S[jf]

107
Si nous disposons de cet octet (en capturant le premier octet et en vérifiant qu’il est bien égal
à sa valeur supposée, avec 5% de chances), alors il est possible d’opérer les calculs suivants :
§ On repère la position de cet octet dans SK(0)-1, soit jf
§ On pose jf= jK(0)-1+SK(0)-1[K(0)]+ K(K(0))èK(K(0))= jf - jK(0)-1-SK(0)-1[K(0)]
Si K(0)=IV(0) est de la forme 3+B, alors K(K(0))=K(3+B)=SK(B) d’où :

SK(B)= jf +jK(0)-1+SK(0)-1[K(0)]

On détermine ainsi le B° octet de la clé secrète.

Remarques
§ La clé entière peut être déterminée (B=0, 1, 2,…….). Les étapes franchies nous aidant
à opérer l’étape suivante.
§ L’attaque ne peut être effectuée que sur des IV de la forme (3+B, N-1, X) avec :
X+2+ (3+B) {0,1}.
§ Le premier octet z sorti n’est pas directement le premier octet du texte chiffré qui est
z+premier octet [T||ICV (T)]. Cependant, le protocole étant connu (WEP), le premier
octet l’est aussi (SNAP Header=0xAA), z peut donc en être déduit.

PROBABILITE DES HYPOTHESES


Déterminons maintenant la faisabilité des hypothèses posées précédemment.

Probabilité de *
Pour que les deux premiers éléments ne changent pas de l’étape i=3 à i=K(0), il suffit que
l’indice j ne tombe pas sur l’une des valeurs 0 ou 1. En modélisant les valeurs possibles de j
par une loi uniforme sur [0, N-1] on a :
P*= [(N-2)/N]B+1 1 (pour N grand).

Probabilité de **
Pour que les trois éléments (S[1], S[S[1]] et S[S[1]+S[S[1]]]), ne changent plus à partir de
l’étape i=K(0) jusqu’à la fin, de sorte que la sortie soit déterminée, il suffit que j ne tombe
plus sur l’une des valeurs (0, 1,K(0)) d’où :
P** =[(N-3)/N](N-1)-(K(0)+1)+1>[(N-3)/N]N (1-3/N)N -3 0,05=5%.

Donc la probabilité des situations décrites ci-dessus est :


P=P*x P** 5%. (Les tentatives n’aboutissent que 5% du temps)
Ainsi, suffit d’avoir 60 IV de ce type pour pouvoir dériver trois valeurs possibles de l’octet de
la clé recherchée et selon la règle du maximum de vraisemblance, on décide de la bonne
valeur de l’octet B de la clé sécrète.

108
ACK: ACKnowledgment

AP: Access Point

BSS: Basic Service Set

BSSID: Basic Service Set Identifier

CCA: Clear Channel Assessment

CFP: Contension Free Period

CP: Contension Period

CRC: Cyclic Redundancy check

CSMA/CA: Carrier Sense Multiple Access/Collision

CTS: Clear To Send

DCF: Distribution Control Function

DHCP: Dynamic Host Configuration Protocol

DIFS: Distributed Inter-Frame Spacing

DS: Distribution System

DSSS: Direct Sequence Spread Spectrum

ESS: Extended Service Set

ESSID: Extended Service Set Identifier

ETSI: European Telecommunications Standard


Institute

FHSS: Frequency Hopping Spread Spectrum

GSM: Global System for Mobile


Communication

IEEE: Institute of Electrical and Electronics


Engineers

IFS: Inter-Frame Space

IETF: Internet Engineering Task Force

109
LLC: Logical Link Control

MAC: Medium Access Controler

NAV: Network Allocation Vector

OFDM: Orthogonal frequency Division


Multiplexing

OSI: Open Systems Interconnection

PCF: Point Coordination Function

PIFS: Point coordination Inter-Frame Spacing

PLCP: Physical Layer Control Protocol

PLW: PLCP_PDU Length Word

PMD: Physical Medium dependant

PSF: PLCP Signaling Field

SFD: Start Frame Delimiter

RTS: Request To Send

SIFS: Short Inter-Frame Spacing

WECA: Wireless Ethernet Compatibility


Alliance

WEP: Wired Equivalent Privacy

WLAN: Wireless Local Area Nerwork

WMAN: Wireless Metropolitan Area Network

WPAN: Wireless Personal Area Network

WWAN: Wireless Wide Area Network

110
OUVRAGES :

[PUJ-05] : Les Réseaux Edition 2005 – Guy Pujolle - Eyrolles

[PUJ-04] : Les Réseaux Edition 2004 – Guy Pujolle -Eyrolles

[PAUL] : 802.11 et les Réseaux sans fil - Paul Muhlethaler

[AGHA] : Réseaux de Mobile et les réseaux sans fil - Al Agha, Pujolle et Vivier

Real 802.11 Security : Wi-Fi Protected Access and 802.11i - Jon Edney,
[JON]:
William A Arbaugh

Security in Wireless LANs and MANs -Thomas Hardono, Lakshminath R.


[THOM]:
Dondeti

Deploying Secure 802.11 Wireless Networks With Microsoft


[JOSE] :
Windows - Joseph Davies

Wi-Fi Security: Enhance security and maintain privacy of


[STEW] :
mission, critical data, even when going wireless-Stewart S. Miller.

[CLAU] : Réseaux et Télécoms- Claude Servin- Dunod


Etude des performances de la norme IEEE 802.11 pour ’implémentation d’un
[PFE-05] :
réseau Wi-Fi à l’ITO. – BA Magatte et NIANG Djibril

SITES WEB:

1. [www-01] : http://www.ldlc.fr/fiche/PB00021124.html
2. [www-02] : http://www.laboratoire-microsoft.org/articles/network/wpa/0/
3. [www-03] : http://www.frameip.com/vpn/
4. [www-04] : http://www.hsc.fr/ressources/cours/linux/index.html.fr

111