Introduction technique aux réseaux 802.11
Posted by Daniel on 06 Mar 2008 at 05:37 | Tagged as: sécurité
Article publié en 2002 dans MISC 6.
Les standards 802.11 de l'IEEE définissent le mode de fonctionnement de réseaux de données sur un support radio. Cet article présente brièvement les caractéristiques techniques de ces réseaux, en s'intéressant plus spécifiquement aux trois standards existants ou émergents que sont le 802.11a, le 802.11b, et le 802.11g.
Caractéristiques physiques
Le 802.11b est aujourd'hui disponible mondialement, contrairement au 802.11a, principalement implanté aux États-Unis et commençant seulement à se répandre en Europe. Le premier utilise la bande de fréquence comprise entre 2.4 et 2.483 GHz, séparée en 14 canaux de 22 MHz. Le lecteur aura immédiatement remarqué qu'en pratique, seuls trois de ces canaux sont complètement disjoints, les canaux 1, 6 et 11. En France, seuls 13 canaux sur 14 sont autorisés, contre seulement 11 aux États-Unis. Le 802.11a, quant à lui, utilise plusieurs plages de fréquences séparées dans la bande des 5 GHz. Enfin, le 802.11g est une extension du 802.11b pour permettre de plus hauts débits dans la bande des 2.4 GHz.
En termes de vitesse, le 802.11b est le moins performant de tous, offrant quatre différents débits théoriques, respectivement 1, 2, 5.5 et 11 Mbps. Une version propriétaire développée par TI, le 802.11b+, est compatible avec les cartes et AP 802.11b, mais propose des débits de 22 Mbps quand tous les équipements supportent cette norme. Le 802.11a, quant à lui, propose 6, 9, 12, 18, 24, 36, 48 et 54 Mbps. L'un comme l'autre permettent d'agréger plusieurs canaux sur une même zone en utilisant plusieurs points d'accès. Ainsi, il est possible de monter le 802.11b jusqu'à un débit théorique de 33 Mbps. Enfin, le 802.11g est compatible avec le 802.11b, proposant des débits de 5.5 et 11 Mbps, mais il permet aussi de travailler à 54 Mbps en utilisant les même techniques que le 802.11a. Il existe également des technologies propriétaires (développées par Texas Instruments et Intersil) permettant d'utiliser le 802.11g à des fréquences intermédiaires.
Débits (Mbps) |
Bande de fréquence |
Disponibilité (France) |
|
802.11a |
6, 9, 12, 18, 24, 26, 48, 54 | 5 GHz | A l'étude |
802.11b |
1, 2, 5.5, 11 | 2.4 GHz | Oui |
802.11b+ |
1, 2, 5.5, 11, 22 (TI) | 2.4 GHz | Oui |
802.11g |
5.5, 11, 33 (Intersil), 6-54 (TI), 54 | 2.4 GHz | Non |
Modes de communication
Dans le monde merveilleux du sans fil, les deux types d'éléments pouvant communiquer sont les clients (ordinateurs plus ou moins portables, désorganiseurs personnels, etc) et les points d'accès (ou AP). Ces derniers sont en pratique des bornes qui s'annoncent à leur entourage et peuvent être utilisées comme relais par les clients. Les points d'accès peuvent également servir de pont vers un réseau filaire classique.
Le mode infrastructure
Le mode le plus utilisé est souvent appelé infrastructure. Dans ce mode, un client va s'associer à un point d'accès pour pouvoir l'utiliser, le processus d'association pouvant ou non inclure une authentification. Une fois cette opération effectuée, le client peut donc communiquer avec toutes les autres stations associées au même point d'accès, et si l'AP est relié à un réseau filaire, l'utiliser comme pont vers ce réseau.
Exemple d'associationLe mode ad hoc
Quand l'interface réseau sans fil d'un client est dans le mode ad-hoc, il peut directement établir un réseau point-à-point avec un autre client équipé d'une configuration similaire. Il est tout à fait possible pour un client donné d'avoir plusieurs liens ad hoc différents simultanément.
Format des trames 802.11
De manière générale, une trame 802.11 se présente sous le format suivant (en partant de la couche MAC, nous ne parlerons pas ici de la couche physique sous-jacente, qui par ailleurs varie entre les différentes déclinaisons du 802.11) :
Trame MAC 802.11Les champs correspondent respectivement à :
- FC, pour frame control : version du protocole et type de trame (gestion, données ou contrôle).
- ID, pour duration/ID : valeurs utilisées pour l'envoi de certains messages et le calcul du Network Allocation Vector.
- Adresses : en fonction du champ 'frame control', jusqu'à quatre adresses peuvent être utilisées dans une trame. Chacune de ces adresses peut correspondre à l'une de cinq types différents : adresse source, adresse destination, adresse de l'émetteur, adresse du récepteur, et adresse du point d'accès.
- SC, pour sequence control : indique un numéro de fragment et un numéro de séquence, permettant de réordonner des fragments et de repérer les paquets dupliqués.
- Le corps de la trame contient les données de niveau supérieur, par exemple un paquet IP.
- CRC (cyclic redundancy check) : un simple checksum permettant de vérifier l'intégrité du paquet.
Il est également intéressant de décomposer le champ FC bit à bit (et non plus octet par octet comme dans le schéma précédent) :
Frame control 802.11- Protocole : la version du standard 802.11.
- Type : gestion, contrôle ou données. Le type gestion contient par exemple les demandes d'association et les messages d'annonce d'un point d'accès. Le type contrôle est utilisé pour l'accès au média, avec des messages comme les demandes d'autorisation d'émission (utilisés seulement dans certains cas spécifiques). Le type données concerne les communications normales.
- Sous-type : dépend du type.
- To DS, pour To Distribution System : positionné à 1 si le message est à destination du système de distribution, 0 sinon.
- From DS : positionné à 1 si la trame provient du système de distribution.
- More frag : positionné à 1 s'il reste des fragments appartenant à la même trame après le fragment courant.
- Retry : positionné à 1 s'il s'agit d'une réémission du fragment courant.
- Pw Mgt : indique le mode de gestion de l'énergie que la station utilisera après avoir transmis le fragment courant.
- More data : indique que la station a encore un certain nombre de trames dans son tampon.
- WEP : indique ou non l'utilisation de l'algorithme de chiffrement WEP (voir plus loin).
- Ordre : indique si la trame est émise en utilisant une classe spéciale.
Caractéristiques logiques
Un réseau sans fil 802.11 est caractérisé par un certain nombre d'éléments. Parmi ceux-ci, on retrouve en particulier le canal utilisé, qui va définir précisément la bande de fréquence utilisée. Dans la mesure où la grande majorité des cartes réseaux 802.11 sont capables de scanner l'ensemble des canaux pour découvrir un éventuel point d'accès, le choix du canal n'a que peu d'impact pratique sur le déploiement du réseau (à un détail près, seuls certains canaux étant autorisés pour une utilisation en extérieur en France).
Conjointement avec le canal, c'est le service set identifier, ou SSID, qui va définir le réseau en lui-même. On parle parfois également de Basic SSID, pour marquer la différence avec l'extended service set identifier, ou ESSID. Il s'agit simplement d'un identifiant déclaré sur le point d'accès, et que les clients doivent fournir pour s'associer. On parle de SSID (ou BSSID) quand il s'agit d'un point d'accès isolé, et d'ESSID quand un ensemble de points d'accès sont configurés avec le même SSID pour offrir une couverture plus étendue à un même réseau, un utilisateur pouvant alors se déplacer d'une cellule à l'autre sans perte de connectivité. Par défaut, un point d'accès s'annonce régulièrement à son entourage par l'émission d'annonces, ou beacon frames. Cela dit, il est tout à fait possible d'interdire à un AP de s'annoncer ainsi.
Il a déjà été dit qu'une authentification du client pouvait être requise avant de permettre son association à un point d'accès. Les différents modes d'authentification sont les suivants :
- ouvert : pas d'authentification requise
- fermé : le client doit connaître le SSID
- WEP : le client doit connaître le SSID et un secret partagé (voir ci-dessous)
WEP : Wired Equivalent Privacy
Un problème évident inhérent aux réseaux sans fil s'impose à nous : comment garantir la confidentialité d'informations circulant sur un support radio, que n'importe qui peut capter? Pour ce faire, l'utilisation d'un protocole cryptographique semble être le choix le plus logique. Le WEP, pour Wired Equivalent Privacy (et non Wireless Encryption Protocol, comme de nombreuses âmes simples en sont convaincues), est un protocole dédié au chiffrement des trames 802.11. Son utilisation est relativement simple, puisqu'il suffit de déclarer des clés de session WEP sur le point d'accès et sur chaque client, et de leur confirmer que les communications doivent être chiffrées. Le lecteur avisé aura remarqué que ces clés sont donc statiques, et que toute modification de la configuration s'avèrera plutôt lourde.
En pratique, le WEP s'appuie sur l'algorithme de chiffrement (symétrique) RC4, avec des clés d'une longueur de 64 ou 128 bits. Cet algorithme génère un flux de données, qui sera superposé comme un masque aux données émises sur une interface réseau sans fil (l'opération réalisée est un XOR, c'est-à-dire un ou exclusif bit à bit). Pour chaque paquet, la clé utilisée utilise 24 bits de vecteur d'initialisation (ou plus simplement IV), laissant 40 ou 104 bits pour la partie statique de la clé. C'est cette partie statique, de 5 ou 13 octets, qui est déclarée sur les clients et le point d'accès. Comme d'autres articles de ce dossier l'explicitent, cette solution ne présente pas un niveau de sécurité satisfaisant.
Il existe également des technologies d'authentification d'un client auprès du point d'accès qui permettent l'utilisation de clés WEP dynamiques, beaucoup plus sûres. En revanche, ces technologies (notamment l'authentification 802.1x) demandent une infrastructure plus complexe, puisqu'elles imposent généralement l'utilisation d'un serveur d'authentification externe au point d'accès, ainsi que l'installation de clients spécifiques sur chaque client.
Et la sécurité dans tout ça?
L'objectif de cet article n'étant que de donner un aperçu de la technologie 802.11, l'angle de la sécurité n'y a pas été abordé. Le lecteur est cordialement invité à lire la suite du dossier pour cela!