Vous êtes sur la page 1sur 7

Crack de cl WPA en quelques heures faille WPS

Wi-Fi Protected Setup (WPS) est un standard de rseau local sans fil simple et scuris. Le but du protocole
WPS est de simplifier la phase de configuration de la scurit des rseaux sans fil. Une grave vulnrabilit de la
mthode PIN a t dmontre en dcembre 2011 par Stefan Viehbck. Cette publication saccompagne dune
application appele reaver-wps qui implmente lattaque et permet lattaquant de rcuprer la cl WPA du rou-
teur. Nous allons donc voir comment cracker un rseau wifi en attaquant le WPS avec reaver !
Prsentation du WPS
Wi-Fi Protected Setup (WPS) est un standard de rseau local sans fil simple et scuris. Conu par la Wi-Fi Al-
liance, il a t lanc dbut 2007.
Le but du protocole WPS est de simplifier la phase de configuration de la scurit des rseaux sans fil. Il per-
met des particuliers ayant peu de connaissances sur la scurit de configurer un accs WPA, support par
les appareils Wi-Fi.
Ce standard met laccent sur lutilisabilit et la scurit, et le concept se dcline en quatre faons dtablir un
rseau domestique. Lutilisateur voulant ajouter un priphrique au rseau peut utiliser au choix :
la mthode PIN (Personal Identification Number), un numro lire sur une tiquette (ou un cran) du nouvel
appareil, et reporter sur le reprsentant du rseau (le point daccs ou le registrar).
la mthode PBC, o lutilisateur presse un bouton (physique ou virtuel), la fois sur le point daccs et sur
le nouvel appareil.
la mthode NFC, o lutilisateur approche le nouvel appareil du point daccs pour tablir une
communication en champ proche entre eux.
Une grave vulnrabilit de la mthode PIN a t dmontre en dcembre 2011 par Stefan Viehbck. Cette publi-
cation saccompagne dune application appele reaver-wps qui implmente lattaque et permet lattaquant de
rcuprer la cl WPA du routeur.
Comprhension du mcanisme lorigine de la faille de scurit
Dans la prochaine section de ce tutoriel, nous allons voir en dtails le fonctionnement de la mthode PIN utili-
se par la norme WPS ainsi que les diffrentes failles qui nous permettront de mettre en place une attaque.
La mthode sarticule autour de lauthentification par PIN entre le client et le routeur. Un nombre PIN est
compos de 8 chiffres :
Le checksum est calcul partir des sept premiers chiffres. Cest un chiffre dont le but principal est dassurer
la scurit et lintgrit du code PIN qui pourrait se retrouver altrer lors de la phase de communication entre le
client et le routeur.
Nous en arrivons la premire faille de scurit. Le nombre de combinaisons possibles est rduit de 10^8
10^7 soit tout de mme 10.000.000.
La seconde faille de scurit est de loin la plus intressante car, comme nous allons le voir par la suite, nous
permettra de tomber seulement 11.000 combinaisons possibles soit dix fois rien quand on parle de brute-
force !
Dans une norme sans faille, quand un routeur envoie un code PIN au routeur, celui devrait lui renvoyer le mes-
sage OUI, ce code est correct ou NON, code incorrect . Dans ce cas l, nous serions obligs de tester les
10.000.000 de combinaisons jusqu temps arriv au bon code PIN.
En ralit, le routeur va nous renvoyer plusieurs messages diffrents dits personnaliss (M4, M6, M7) selon la
validit dun sous-ensemble de ce code PIN.
Si le client reoit un message de type M4, il sait que le premier groupe de chiffres est faux ;
Si le client reoit un message de type M6, il sait que le second groupe de chiffres est erron ;
Si le client reoit un message de type M7, le code PIN est valide.
Cette forme dauthentification fait dcrotre de faon trs importante le nombre maximal de combinaisons pos-
sibles, le faisant passer de 10^7 seulement 10^4 + 10^4.
Mais comment nous avons prcdemment que le dernier chiffre sert pour le checksum, il y a tout au plus 10^4
+ 10^3 = 11.000 combinaisons possibles.
Lalgorithme est donc le suivant :
Voici titre dexemple, le droulement de cet algorithme :
Dans lexemple, les checksums ont t pris au hasard. Lalgorithme de calcul de checksum peut tre consul-
table dans les sources de reaver-wps mais ce nest pas lobjectif de ce tutoriel que de vous montrer en dtails
comment ce checksum est calcul.
Utilisation de reaver-wps et liste des fonctionnalits
Maintenant que nous avons vu ensemble les grandes lignes, il est temps de passer la pratique.
Pour cela, vous aurez besoin de :
Backtrack 5 R3 - available here: http://www.backtrack-linux.org/downloads/
Une connexion internet pour pouvoir tlcharger walsh
Si vous bloquez cette tape, je vous invite regarder mon autre tutoriel sur comment installer
BackTrack 5 sur une cl usb bootable avec la persistence.
Installation de Walsh
Walsh est un utilitaire non compris dans Backtrack 5 R3 qui permet de scanner les AP qui possdent le WPS.
Pour le tlcharger, rentrez la commande suivante :
wget http://reaver-wps.google.com/files/reaver-1.3. tar . gz
Vrifiez quil ny a pas de version plus rcente que la 1.3, si cest le cas, prenez la dernire version.
Si vous navez pas de connexion internet sous la main, assurez-vous davoir au pralable tlcharg reaver-
1.3.tar.gz depuis un hotspot avec accs internet (type McDo).
Une fois tlcharg, dcompressez le avec la commande tar xvf :
tar -xvf reprendre-1.3. tar . gz
Naviguez dans reaver-1.3/src/ et excutez ./configure pour crer le MakeFile.
Tapez simplement make pour dmarrer la compilation.
Deux nouveaux excutables sont apparus : reaver et walsh (en vert).
Avant dexcuter walsh, il est ncessaire de dmarrer son interface en mode monitoring (mon0) de la manire
suivante :
airmon-ng start wlan0
Remarque : Dans mon cas, mon interface sappelle wlan0. Dans votre situation, cela peut tre eth0, eth1, wlan0,
wlan1
Pour checker, tapez ifconfig dans votre terminal.
Si votre interface nest pas visible, tapez ifconfig a pour voir toutes les interfaces (down et up).
Slectionnez votre interface et rentrez la commande ifconfig <interface> up pour lactiver.
Vous pouvez prsent scanner les AP avec la commande :
./walsh i <interface_monitoring>
Retenez le BSSID de lAP qui vous intresse. Dans notre cas : 00 :26 :44 :FA :XX :XX.
Reaver
A prsent, je vous conseille dutiliser le reaver fourni avec Backtrack 5 R3 et non celui que vous avez gnr
avec la commande make (comme le cas de walsh).
La commande de lattaque est :
reaver -b (bssid de lAP) vv l 320 -i mon0
Et cest parti !
Si vous voulez quitter reaver, pensez que la session sera automatiquement sauvegarde dans un fichier situ
dans /usr/local/share/reaver/etc.
Pour ceux qui nont pas cr de cl BT avec le mode persistent, le contenu sera supprim chaque dmarrage.
Cest pourquoi je vous conseille de mettre les deux fichiers de reaver sur une autre cl usb.
Il vous suffira alors de les replacer dans /usr/local/share/reaver/etc pour reprendre la session automatiquement
Dans mon cas, les deux fichiers de sauvegarde de session sont 002644FAXXXX.wpc (nom du BSSID de lAP) et
reaver.db.
Une fois que vous aurez trouv les 4 premiers PINs, les prochains iront jusquau message M6. Un message M7
signifiera que ce sera le bon code PIN ! Vous naurez alors plus qu demander lAP de vous envoyer la cl
WPA via le rseau (reaver sen chargera
Finalement aprs des heures (voire mme des jours), vous aurez lcran suivant :
Il vous suffit maintenant daller dans Internet > Wicd puis de rentrer la WPA PSK dans le champ WPA de lAP.
Une fois sur le rseau, il vous suffira de rentrer dans la console dadministration et de noter sur papier blanc la
vraie cl WPA qui permettra nimporte quel ordinateur de se connecter sur le nouveau rseau.
Rsultats
En gnral, une tentative dauthentification prend entre 0.5 et 3 secondes.
La plupart des routeurs ont implment un mcanisme de blocage contre les attaques de type bruteforce de ce
genre. Lalgorithme de blocage est la plupart du temps de la forme :
Si le nombre de tentatives est suprieur 5, alors patienter 5 min et recommencer.
Pour les FAI qui nont pas implments ce mcanisme, une attaque peut se terminer en moins de 4h ( 1.3 se-
condes/tentative).
Remarque : Le temps moyen est gal la moiti du temps maximal car on considre que le code PIN suit une
loi alatoire uniforme.