Aussi fou que cela puisse paraître, je reprend les études. Je suis maintenant à Telecom Paristech, en mastère SSIR (sécurité informatique). J’essayerai donc occasionnellement, et avec l’accord de certains enseignants, de vous faire profiter de documents qui me sembleront intéressants et accessibles. Et aujourd’hui, on va parler du chiffrement WIFI.
Pour faire simple
Avant d’entrer dans les détails des failles du protocole WEP (et donc de ce qui à été ajouté ou modifié dans WPA puis dans WPA2) il faut comprendre le fonctionnement de base : Le chiffrement symétrique. Mathématiquement parlant, le seul chiffrement parfait que l’on connaisse s’appelle « One Time pad » (OTP). Il s’agit de faire un « ou exclusif » (XOR) entre les données à protéger et une clef secrète (unique et différente à chaque fois) partagée entre les deux parties. Ce mode de chiffrement est « parfait » car un attaquant qui intercepte le message ne peut absolument rien en déduire sur la clef ou sur le contenu du message. Mais il y a un soucis pratique. Pour faire un XOR entre les données et la clef il faudrait une clef qui soit au moins de la taille du message. Pour envoyer un fichier de 2 Go il faudrait donc une clef de Go. Et comment envoyer cette clef ? En la chiffrant ?
Du coup, voila comment ça fonctionne. La clef secrète est toute petite, on la paramètre dans la box et dans les paramètres Wifi de nos ordinateurs. A partir de cette clef, les deux équipements vont générer une clef beaucoup plus longue en appliquant sur cette « petite » clef un algorithme spécifique. C’est loin d’être aussi parfait, mais ça fonctionne suffisamment bien. Dans le cas du WEP (et de WPA), l’algorithme qui permet de générer une longue chaîne de bit, ensuite utilisée pour chiffrer (via XOR) les données à envoyer, s’appelle RC4. RC4 n’est d’ailleurs pas utilisé que pour le WEP, on le retrouve aussi dans SSL. Or, tout le monde sait que le WEP est complètement cassé, troué de partout, et qu’il ne faut plus l’utiliser. Le but de l’un de nos TD à été de comprendre pourquoi.
Failles dans l’implémentation
Il y a le protocole (écrits théoriques) et il y a la pratique. Par exemple, le protocole prévoyait une clef différentes pour chaque équipements Wifi. En pratique, aucune box ne permet d’avoir plusieurs clefs. Alors oui, c’est beaucoup plus simple pour l’utilisateur. Mais obliger les gens à découvrir qu’une box se configure n’aurait pas forcément été une mauvaise chose…
Failles dans le protocole lui même
C’est plus précisément sur cet aspect qu’a porté notre TD. Le plus simple, c’est encore de regarder. Sincèrement, il me semble que ça reste assez compréhensible. Rien à voir avec mes cours de math par exemple. Commencez par lire le sujet, qui explique bien les choses ainsi que les conventions d’écriture utilisées. Ensuite vous pouvez essayer de répondre aux questions. Toutes les réponses sont ici.
Bonne lecture 🙂