Hacking WPA : Menace du WPS et contre-mesure.

Hacking WPS talktalk O2Wireless

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 /!\)

 

 

 

About Alexandre Nogard

Check Also

Bash Scripting : Creation de vhosts automatisés avec Certificat Lets Encrypt

Bonjour à tous, Il y a quelques temps, j’avais posté un script bash permettant de …

Owncloud 9.X : Sécurisez votre serveur avec Fail2Ban sur Centos 7.X – Part3

Dans ce tuto, nous allons voir comment protéger Owncloud 9.X des brutes-forces sur les tentatives …

OpenVAS : Configuration & Utilisation sur CentOs 7 – Part 2

OpenVAS est installé sur notre CentOs 7, nous allons maintenant aborder la partie configuration et …

Leave a Reply

Your email address will not be published. Required fields are marked *