I. La nature "insécurisée" des réseaux sans fil
Utilisant les ondes radios pour transmettre le signal, les réseaux
sans fils sont naturellement insécurisés. La propagation des ondes à
travers les airs ne connait pas le confinement localisé et
"physiquement protégé" des réseaux filaires.
Dans cette perspective, il semblait légitime et suffisant d'introduire
dans le standard IEEE 802.11 un protocole de sécurité assurant autant
d'intimité qu'un fil ... Le WEP (
Wired Equivalent Privacy) n'a d'ailleurs que cette seule
prétention.
D'un point de vue pragmatique, les implémentations sans fil sont
couramment
laissées sans aucune mesure de sécurité. Mise en oeuvre
facile et rapide, omission justifiée ou non, ignorance sont des éléments
qui expliquent cet
état de fait. Il suffit de se promener en rue avec un client wifi pour
constater que l'on
peut se connecter à l'Internet et aux réseaux locaux sans aucune
difficulté.
A ce titre, la principale menace des réseaux sans fil est celle du
"man-in-the-middle" : une
attaque à partir de l'intérieur d'un réseau local. Elle se concrétisera
par la présence de "points d'accès voyous" ("rogue APs") ou de clients
wifi espions. Ces "intrus" peuvent être placés délibérément avec
une volonté de nuisance. Mais le plus grand danger viendrait plutôt des
utilisateurs, remplis des meilleures intentions, qui placent du
matériel actif pour leur confort personnel ou même professionnel.
Egalement, on citera des attaques bien plus aisées et efficaces à
mettre en oeuvre telles que :
- l'attaque par interférence rendant un réseau sans fil inopérant
en polluant l'espace d'ondes aussi puissantes sur le même canal utilisé;
- l'attaque du déni de service en tentant d'envoyer des trames de
contrôle qui rendent les services ou le matériel hors d'usage.
Aussi, la définition d'un SSID ou d'un filtrage MAC sur le point d'accès
ne constituent en rien une sécurité suffisante :
-
une écoute du traffic permet de prendre connaissance d'adresses MAC
autorisées (l'en-tête de trame contenant les adresses MAC ne sont pas
encryptés par le WEP) et de
les usurper (spoofing).
D'un autre point de vue, les logiciels (firmware, pilotes, systèmes
d'exploitation) peuvent présenter des défauts de conception et des
failles exploitables.
Enfin, on verra ci-dessous que le protocole WEP n'est pas exempt de
faiblesses, ce n'est pas une nouveauté. Sans compétence particulière,
une attaque WEP peut
être menée uniquement avec des logiciels libres (voir Attaques
WEP simple).
Quoi qu'il en soit , pour les petites entreprises ou la maison, le WEP
sera mieux que rien. Toutefois, le WPA-PSK est largement disponible
aujourd'hui et il augmentera considérablement la sécurité de ces petits
réseaux.
II. Présentation brève du protocole WEP
Le WEP (Wired Equivalent Privacy) est le protocole initial de sécurité
des réseaux WIFI. Il est déclaré dans le document IEEE 802.11. Le
standard définit des méthodes d'authentification et d'encryption.
II.a. Authentification
En matière d'authentification, on trouvera deux méthodes :
-
L'authentification ouverte. Il s'agit d'une authentification
nulle,
pour le principe. Celle-ci consiste seulement à fournir le bon SSID
(Service Set ID).
-
L'authentification partagée. Chaque intervenant dispose d'une
même
clé WEP. Le point d'accès envoie un message en clair au client qui
répond avec un message crypté avec la clé WEP. Dans ce cas seul le
client authentifie le point d'accès. Il s'agit d'une authentification
asymétrique.
II.b. Encryption
"Le cryptage consiste à prendre un message, dit « en clair », et à le
soumettre à un algorithme mathématique pour produire un texte « crypté
». Le décryptage est la transformation inverse. Les algorithmes de
cryptage se servent le plus souvent d'une valeur, appelée clé, qui sert
à crypter et à décrypter les données.
Le cryptage WEP utilise le chiffrement continu RC4 inventé par Ron
Rivest de RSA Data Security, Inc. (RSADSI). L'algorithme de cryptage
RC4 est un chiffrement en continu symétrique qui supporte les clés de
longueur variable.
Le chiffrement en continu consiste à exécuter la fonction de cryptage ou
de décryptage sur une unité du texte en clair (dans ce cas, la trame
802.11b).
Dans le cryptage symétrique, la clé est un élément d'information
qui doit être partagé par les unités d'extrémité pour réaliser le
cryptage et le décryptage.
RC4 autorise une clé de longueur variable, qui peut atteindre
256 octets contrairement à d'autres algorithmes dont la clé a une
longueur fixe. L'IEEE a spécifié que les unités 802.11 devaient
supporter les clés de 40 bits, avec la possibilité d'accepter des clés
plus longues. Plusieurs constructeurs proposent le cryptage WEP à 128
bits dans leurs solutions WLAN.
Le protocole WEP est un chiffrement en continu, et il est indispensable
de disposer d'un mécanisme pour garantir que le même texte en clair ne
générera pas le même texte crypté. L'IEEE a stipulé l'utilisation d'un vecteur
d'initialisation (IV) qui doit être concaténé avec la clé
symétrique avant de générer le texte crypté en continu.
Ce vecteur d''initialisation est un nombre de 24 bits qui prend donc une
valeur entre 0 et 16 777 215. L'IEEE
suggère mais n'exige pas de modifier le vecteur d'initialisation
pour chaque trame. Comme l'émetteur génère le vecteur d'initialisation
sans schéma ni calendrier prédéfini, ce vecteur doit être envoyé en
clair au récepteur, dans la partie d'en-tête de la trame de données
802.11. Le récepteur peut ensuite concaténer le vecteur
d'initialisation reçu avec la clé WEP (la clé de base) stockée
localement pour décrypter la trame de données.
Comme le montre la figure suivante, l'algorithme RC4 ne crypte pas le
texte en clair lui-même mais sert à générer un flux de clé unique pour
la trame de données 802.11 concernée en reprenant le vecteur
d'initialisation et la clé de base comme clé de cryptage. Le flux de
clé unique ainsi obtenu est ensuite combiné avec le texte en clair et
le tout est transformé par une fonction mathématique appelée XOR qui
produit le texte chiffré."
Partie tirée de Cisco
SAFE : Description détaillée
de la sécurité pour les réseaux locaux sans fil
II.c. La faiblesse du WEP
II.c.1. Une clé statique
Une première faiblesse de la sécurité de base du WIFI est la
gestion et la distribution des clés. Un administrateur devra configurer
la même clé WEP sur tous les clients Wifi d'un réseau local. On notera
que l'identification se fondra seulement sur les périphériques et non
sur les utilisateurs.
Primo, la clé WEP unique ne permettra pas d'attribuer des ressources en
fonction d'un profil utilisateur. Secundo, un périphique Wifi dérobé
remet en cause l'ensemble de la sécurité d'un réseau local en obligeant
l'administrateur à reconfigurer l'ensemble des clients. Cette dernière
remarque est valable pour tout mécanisme à clé partagée dont WPA-PSK.
II.c.2. Les attaques FMS - attaques passives
"Les cryptoanalystes Fluhrer, Mantin et Shamir (FMS) ont découvert des
faiblesses inhérentes à l'algorithme RC4 de programmation des clés. Or
l'algorithme RC4 utilisé par WEP se sert d'un vecteur d'initialisation
de 24 bits et ne renouvelle pas les clés de cryptage de manière
dynamique.
Fluhrer, Mantin et Shamir ont pu montrer que ces faiblesses pouvaient
avoir des applications pratiques dans le décryptage des trames 802.11
qui utilisent WEP. Cette attaque se concentre sur une classe élargie de
vecteurs d'initialisation faibles qui peuvent être générés par RC4 et
met en évidence les méthodes qui permettent de « casser » la clé en
utilisant certaines formes récurrentes des vecteurs d'initialisation.
L'attaque appelée attaque FMS est pragmatique, mais le plus
déconcertant est quelle est totalement passive. L'attaque FMS présente
la dérivation théorique d'une clé WEP sur un éventail de paquets
entre 100 000 et 1 000 000 cryptés avec la même clé."
Des informations techniques sur l'attaque FMS peuvent être obtenues sur :
En améliorant les attaques statistiques mise en oeuvre par Korek
avec du trafic capturé, on obtient d'excellents résultats.
II.c.3 Les attaques actives par rejeu
Supposons qu'un attaquant connaisse exactement le texte clair d'un
message crypté. Il peut utiliser cette connaissance pour construire des
paquets cryptés. La procédure implique qu'il construise un nouveau
message en calculant la somme de contrôle en l'occurence CRC-32 et en
appliquant des changements minimes (bits flips) sur le trafic crypté
original pour changer le texte en clair. Ce paquet peut être accepté par
le point d'accès ou une station mobile légitime.
On peut aussi
mener une attaque plus insidieuse qui vise à changer quelques bits dans
le message et d'adapter correctement le CRC sans aucune connaissance du
paquet pour en obtenir une version cryptée correcte. Par exemple, il
pourrait être possible avec une connaissance partielle d'altérer des
commande shell d'une session Telnet.
On peut encore aller plus
loin. Un attaquant ne connait rien d'une trame capturée mais pourra
comme expliqué plus haut modifier les bits d'adresses IP de destination
et l'envoyer par une passerelle sur l'Internet. Vu que ce trafic quitte
le réseau sans fil, il sera envoyé en clair sur l'inter-réseau.
IV. Solutions
Aujourd'hui, on peut dire que la sécurité sans fil est meilleure que
les services fournis par défaut sur le fil. Les solutions proposées
aujourd'hui proposent toutes une authentification 802.11 ouverte :
solution |
authentification |
Encryption |
standard 802.11 |
WPA Home ou WPA-PSK |
Open |
TKIP (PreSharedKey) |
IEEE 802.11i |
WPA2 Home ou WPA2-PSK |
Open |
TKIP ou AES (PreSharedKey) |
IEEE 802.11i |
WPA Enterprise |
EAP/802.1x |
TKIP |
IEEE 802.11i |
WPA2 Enterprise |
EAP/802.1x |
TKIP ou AES (PreSharedKey) |
IEEE 802.11i |
Les solutions pour les petits réseaux utilisent une clé partagée avec du
TKIP (grosso modo du WEP amélioré) ou de l'AES avc authentification
nulle et pour de plus grosses implémentation on peut utiliser une
authentification des utilisateurs par un serveur Radius avec EAP/802.1x.
Encryption
Authentification
|
PEAP MS-chapv2 |
EAp-fast |
eap-tls |
leap |
Tunnel TLS préalable |
Oui |
Oui |
Oui |
Non |
Autorisation Radius |
Oui, MS-ISA, Cisco ACS, Juniper Odyssey (anc. Funk), MeetingHouse
(nouv. Cisco) |
Oui, Cisco ACS |
Oui, ouvert |
Oui, Cisco ACS |
Serveur de certificat |
Oui |
Non |
Oui |
Non |
Certificat côté serveur |
Oui |
Non |
Oui |
Non |
Certificat côté client |
Non |
Non |
Oui |
Non |
Crédits utilisés |
Mot de passe Windows |
Mot de passe Windows, ... |
|
|
DB d'authentification |
|
|
|
|
Standardisation |
|
|
|
|
Pilotes |
|
|
|
|
Avantages |
|
|
|
|
Désavantages |
|
|
|
|