Le Wi-Fi Protected Setup (WPS) est un protocole qui a pour but de simplifier l’accès à un routeur Wi-Fi pour l’utilisateur final, qui a souvent du mal, qu’on se le dise, à entrer sa clé WPA pour s’authentifier.
Gràce au WPS, nous pouvons joindre notre boxe de quatre manières :
– PBC, ou l’utilisateur appuie sur un bouton pour autoriser son matériel à joindre la boxe,
– NFC, où l’utilisateur doit approcher son appareil prêt de la boxe pour la joindre,
– USB : on transfère les données relative à notre boxe sur notre appareil,
– Et enfin : Le PIN (Personnal Identification Number), qui est un numéro à 8 chiffres à entrer pour avoir accès au réseau.
Vous l’aurez sans doute compris, la méthode qui présente une vulnérabilité est la dernière : le PIN.
Le PIN est un code a 8 chiffres donc, présent sur presque toutes les boxes grand public du marché, avec le WPS activé dans les boxes, par défaut …
Là on se dit cool, on va lancer un bruteforce sur la boxe, mais le temps que la boxe nous réponde, ça va prendre énormément de temps, sachant qu’il y a 10^8 possibilités (100 000 000) …
Et bien NON, Il y a en réalité 11000 possibilité, pourquoi ?
Notre code PIN est décomposé en 3 parties, une partie 10^4, une 10^3 et une 10.
Et durant le bruteforce, le routeur va nous valider les parties séparément … puis à la fin, va nous transmettre la clé WPA.
Je n’entre pas dans les détails, mais vous pourrez trouver la documentation de Stefan Viehböck, le chercheur qui a découvert la faille ici : Brute forcing Wi-Fi Protected Setup: When poor design meets poor implementation .
Des hackers, à partir de la documentation de Stefan ont créé un tools qui s’appelle Reaver, disponible sur linux, c’est celui que nous allons utiliser pour la démonstration.
J’ai utilisé une BackTrack 5 :
# reaver -i mon0 -b 00:00:00:00:00:00 -vv -E -L
La commande se décompose comme ceci :
-> -i = l’interface de notre carte Wi-Fi
-> -b = le bssid du routeur victime (que l’on va trouver avec un airodump-ng mon0)
-> -vv = option verbose
-> -E & -L = Envoy un EAP-FAIL à chaque fin de session & ignore le status locké du routeur.
Pour plus d’options tapez simplement reaver.
Au bout de quelques heures, le pin devrait être cracké, et vous devriez obtenir ceci :
Pour connaitre la liste des routeurs vulnérables, rendez-vous ici :
http://www.kb.cert.org/vuls/id/723755
et ici :
https://docs.google.com/spreadsheet/lv?key=0Ags-JmeLMFP2dFp2dkhJZGIxTTFkdFpEUDNSSHZEN3c
La seule protection possible est de désactiver l’option WPS, pour cela, rendez-vous dans la partie administration de votre routeur. (/!\ Il y a des routeurs où on ne peut désactiver WPS /!\)