Wi-Fi et sécurité : WEP et WPA

Par 4n9e le 02-02-2005



Tour d'horizon des protocoles de sécurité liés au Wi-Fi



Sommaire :
I. Introduction
II. Ouat is Ouep ?
III. Ca y est, ca prend l'eau ?
IV. On bouche les trous avec WPA
V. Ca prend quand meme l'eau ?


I. Introduction


Les connexions à l'Internet via une infrastructure sans fil type Wi-Fi tendant a se dévellopper de plus en plus, il est interressant de s'arreter un instant sur la problematique de sécurité posée par ce type d'acces. Dans ce systeme, l'intégrité du transfert de données est assuré par le système WEP, pour Wired Equivalent Privacy (on trouvera aussi Wireless Encryption Privacy). Nous verrons dans ce sujet une petite présentation générale de ce protocole, et qui sait, un peu plus tard, nous pourrons apporter de plus amples détails sur ce sujet, le but étant dans un premier temps de poser les bases.


II. Ouat is Ouep ?


Le WEP est est donc le protocole privilégié dans le cas de reseau sans fil WLAN (wireless local area networks). Il est definit pour le standard Wi-Fi 802.11b. Il intervient sur les deux couches inferieures du modèle OSI (data link et couche physique). Sa raison d'être est de proposer un degré de sécurité équivalent a un reseau cablé, ce sur un reseau sans fil. Evidement, les reseaux LAN sont intrisèquement plus sécurisés que les WLANs du simple fait de la structure physique du reseau, ce reseau étant le contenu d'une infrastructure fermée et definie (un immeuble, par exemple). Du coté du WLAN en revanche, l'environement est, du fait de la propagation libre des ondes radio, indéfinit et plus ou moins ouvert, ouvrant la porte aux possibilités d'acces non-autorisés. Le but de WEP est donc de fournir cette sécurité manquante au moyen de cryptage des données sur la partie de la connexion supportée par les ondes radio. La problématique intervient a ce niveau, puisqu'il est mis en evidence des le départ que le WEP n'est pas aussi sécurisé qu'il le devrait ou qu'il l'annonce.


III. Ca y est, ca prend l'eau ?


Certes un reseau Ethernet qui voit transiter des données sur une infrastructure filaire non blindée emet lui aussi en forme de fuites un certain nombre de ces données dans l'environement proche. Toutefois, il y a une différence importante avec un reseau WLAN, qui peut être écouté et intercepté de facon totalement passive, sans acces physique ou équipement couteux. En fait, tout ce dont il est besoin a l'attaquant serait l'interface d'acces sans fil et quelques connaissances de base. Dans un reseau 802.11b, un point d'acces (AP) agit comme une passerelle pour un groupe de machines qui lui sont reliées par une infrastructure sans fil. A ce niveau, WEP authentifie les stations qui cherchent a communiquer avec l' AP. Malhereusement, il a été demontré par les chercheurs d'Intel ,Berkeley , l'Université du Maryland et d'autres nombre de failles fondamentales sur ce protocole. Les AP et les stations échangent des données de service pour établir et maintenir le reseau radio. Periodiquement, le point d'acces transmet une trame contenant un identifiant unique qui lui est propre, du nom de service set identifier (SSID). Les stations transmettent a leur tour une trame pour retrouver et se signaler au point d'acces en question. Lorsque la station a trouvé son AP, celui ci propose une méthode d'authentification. Le probleme est que la méthode la plus courante par defaut est l' Open System Authentication (OSA). Or en réalité, cette methode n'offre absolument aucune authentification, mais une identification simple. Dans OSA, il est donc possible a toute station de joindre le PA. Une sécurité plus accrue est offerte par la méthode SKA (Shared Key Authentication), méthode selon laquelle le AP génère une clé aléatoire de 128 bits (appellons la KEY 1), et une trame d'accueil en clair intiant la discution avec la station cherchant a se connecter ; la clé permettra par la suite le cryptage du transit. La station répond en renvoyant la donnée recue par cryptage sur une autre clé (disons KEY 2), partagée celle ci entre l'AP et les stations du reseau. L'intégrité de ces séquences est verrifié par controle de redondance cyclique systématiquement, et le même dialogue est alors amorcé dans le sens inverse afin d'assurer une authentification mutuelle de la station et de l'AP l'une vis a vis de l'autre. A chaque fois, la station ou l'AP qui a envoye la trame d'accueil en clair, la recoit en crypté, la décrypte et si les deux trames coincident, considère le correspondant comme autorisé. La faille intervient lorsqu'un attaquant intercepte cette séquence de présentation de l'AP aupres de la station : de ce fait, il possède dans les trames détournées les données claires, les données cryptées avec KEY 2,le vecteur d'initialisation (IV) utilisé pour transformer le clair en chiffré et la clé de cryptage du traffic KEY 1. Du fait que le protocole WEP utilise l'algoritme de cryptage RC4 (connu), l'attaquant dispose dès lors de suffisament d'informations pour violer l'acces au reseau :il est possible de déduire de la donnée RC4 les bits "XORés" a partir de la donnée claire pour aboutir à la donnée cryptée. Connaitre cet élément, et le vecteur d'initialisation permet donc de répondre par la suite a toute tentative de ré-authentification sans même connaitre la véritable clé partagée KEY 2. Il est primordial dès lors que ces protocoles d'authentification soient couplés a des mesures de controle d'acces qui permettent ou non a une machine particulière de s'inscrire, fût elle duement authentifiée. Si on sait que sur le reseau, A,B, et C ont le droit de venir, lorsque D(attaquant) s'inscrit et est authentifié, il n'a rien a faire dans le reseau pour autant et doit être rejeté. Trois méthodes sont utilisées : Une méthode sur certains AP est le controle d'adresses MAC depuis l'AP d'après une liste d'adresses autorisées. Toutefois, les MAC peuvent être sniffées puisqu'elles sont transmises en clair dans les trames. L'attaquant opère alors en mode promiscuous depuis sa base sans-fil pour la capture de paquets, et devra disposer de la capacité de spoofing de son adresse. Rien d'impossible en somme. Une autre consiste a affecter tout simplement un SSID aux stations autorisées elles aussi, non pas seulement à l'AP. Les stations doivent periodiquement le présenter durant le traffic. Comme là aussi le systeme est particulièrement bien fait... Ce SSID est envoyé, comme pour l'AP, en broadcast par les stations dans de nombreuses trames durant le traffic... En clair, s'il vous plait ! On ne revient pas alors sur le sniffing / spoofing (voir plus haut). La troisieme consiste à combiner une authentification au niveau station avec une authentification au niveau utilisateur. On s'approche là du fonctionnement répandu d'Internet, avec une base de donnée de couples Login::Pass La faille de la méthode est alors la(les) même(s) que dans tout systeme à mots de passe sur le Net. La encore, rien d'inenvisageable. Disons même avec une pointe d'ironie que dans ce cas, la mission du WEP est totalement remplie : on a bien affaire à une protection EQUIVALENTE à celle d'un reseau cablé (ie : intrinsèquement discutable) Soulignons une autre difficulté touchant la sécurité directe du reseau Wi-Fi norme 802.11b : son débit. Le debit théorique étant de 11Mb/s, et chaque opération de cryptage / décryptage occupant du temps précieux, en règle générale afin de ne pas ralentir la connexion la plupart des barrières de sécurité sont baissées (du reste, par defaut). En effet, avec toutes ces barrières, le debit chute aux alentours de 2Mb/s seulement (traffic de service inclus, il en reste en réalité moins pour les données utiles). La technologie 802.11g doit quant a elle offir un debit théorique de 54 Mb/s par multiplexage OFDM (Orthogonal Frequency Division Multiplexing) Toutes barrières mises, on atteint alors un debit de 18 à 20 MB/s.


IV. On bouche les trous avec WPA


Face aux aberations de sécurité dont souffre le protocole WEP, la solution WPA (Wi-Fi Protected Access) est develloppée. Les innovations qu?apporte WPA sont les suivantes: 802.1x/EAP(Extensible Authentication Proto-col) au niveau authentification, et TKIP(Temporal Key Integrity Protocol) en ce qui concerne le cryptage. Dès lors, les clés sont uniques pour chaque client et dynamiques : l? attaquant mettra donc plus de temps pour les casser. Une premiere faiblesse a ce niveau est le choix d?avoir gardé l?algorithme de cryptage RC4. Pour information, WPA intègre aussi une protection accrue de l?intégrité des donnees sans comparaison avec WEP, mais aussi et surtout une protection contre les redondances de séquences (ce qui va empecher de pouvoir rejouer certaines du coté attaquant) La vraie innovation vient du coté de la norme 802.11i, puisqu?elle introduit l?algorithme de cryptage AES (Advanced Encryption Standard). Celui-ci se trouve plus puissant que DES et plus léger que le triple DES. Un bon compromis donc, qui necessite néanmoins une forte puissante de calcul. C?est pour cette raison que le changement de norme intervient, puisqu?il est impossible a implementer sur les anciennes normes utilisées par les premiers AP. Face a cette evolution de normes, les solutions sont d?attendre le develloppement d?interoperabilités véritables, ou de se tourner vers des solutions propriétaires. En effet, certains fournisseurs tels que Cisco annoncent une sécurité forte, en avance sur celle que devrait proposer le standard WPA ou 802.11i dans un avenir proche.


V. Ca prend quand même l'eau ?


Sur ces normes, comme au niveau WEP, on trouvera nombre de comportements d?utilisateurs qui, par negligeance, ouvrirons la voie aux attaquants potentiels. Par exemple, comme pour le filtrage OSA (voir paragraphe sur le WEP), il est possible d?utiliser une particularité de Windows XP : dans cet environement, la gestion du Wi-Fi est automatique et transparente. D?autant que le DHCP attribue automatiquement une adresse à un poste présent dans le réseau Wi-Fi. Ceci a pour effet de donner la possibilité littéralement d? «accrocher» un point d?acces proche faux et établir une passerelle entre deux réseaux. Ici, la solution est de désactiver la gestion wireless sur les stations raccordées au réseau cablé. Mais ce n?est pas tout. Les failles propres a WPA existent-elles aussi. Citons en une pour exemple : La sécurité sur WPA est assurée par le principe de clé partagée (Pre Shared Key). Ainsi, sur chaque station du reseau est stocké une phrase secrete definie par l?administrateur. Or, le traffic est quand à lui crypté selon une clé qui derive directement de 5 éléments : la clé partagée, le SSID, la longueur du SSID et les adresses MAC des interfaces réseau du client et de sa borne. A la lecture du paragraphe sur le WEP, on aura retenu que lors des séquences d?authentification et pendant le traffic, on peut tres simplement obtenir ces éléments par sniffing (ceux-ci étant transmits en clair dans les trames). La seule inconnue pour reconstruire la clé de chiffrement est donc la clé partagée, qui elle n?est jamais émise sur le reseau. Elle peut potentiellement se déduire par forcage, si aucun systeme de detection d?intrusion n?est en place. Et pour le coup, le brute forcing est facilité par le fait qu?on pourra constater que la majorité des interfaces utilisées pour parametrer la clé partagée en limitent volontairement la taille. C?est la société ICSA Labs qui a mis en evidence cette faille, et recommande une clé d?au moins 20 caractères. Comme on le voit, le deploiement d'une solution Wi-Fi quelle que soit la technologie est subordonné à la connaissance du risque encourut, tant que les protocoles de sécurité WEP et autorisation d'acces n'évoluent pas vers plus de pragmatisme.


4N9e pour FutureZone, 2005