Wifi : casser une clé WEP avec aircrack

Pré-requis

Bien que le crack d’une clé WEP soit réalisable sous Windows et Linux, il est bien plus simple de le faire sous Linux.

Partons donc du principe que vous avez soit :

  • Une distribution Linux installé (Debian par exemple, ou Backtrack)
  • Un live-cd Linux sous la main comme Backtrack

Vous possédez aussi une carte/clé wifi pouvant être mise en mode monitor.

La suite Aircrack-ng

Le bijoux par ses créateurs :

Aircrack-ng est un programme de cassage de clés WEP 802.11 et clés WPA/WPA2-PSK.
Aircrack-ng peut retrouver la clé WEP une fois qu’assez de paquets encryptés ont été capturés avec airodump-ng.
Cette partie de la suite aircrack-ng retrouve la clé WEP en utilisant deux méthodes principales. La première via l’approche PTW (Pyshkin, Tews, Weinmann). L’avantage principale de l’approche PTW est que très peu de paquets sont requis pour casser la clé WEP. La seconde méthode est la méthode FMS/Korek. La méthode FMS/Korek incorpore des attaques statistiques variées pour découvrir la clé WEP et les utilises en combinaison avec le brute force.
Additionnellement, le programme offre une méthode par dictionnaire pour déterminer la clé WEP. Pour casser les clés partagées WPA/WPA2, seul une méthode par dictionnaire est utilisée.

Elle se compose de :

  • Airodump-ng : collecte les paquets échangés sur un réseau wifi. Equivalent à Kismet.
  • Aireplay-ng : génère artificiellement du trafic pour diminuer le temps nécessaire à la collecte des paquets utiles à Aircrack-ng.
  • Aircrack-ng : casse les clés WEP.

Carte wifi et mode monitor

La commande

airmon-ng

détecte les interfaces wifi. Sélectionnez celle que vous voulez démarrer avec la commande

airmon-ng start interface_wifi

Le mode monitor est la plupart du temps directement activé. Il est aussi appelé mode promiscuous.
S’il n’est pas passé en mode monitor, utilisez :

iwconfig interface_wifi  mode monitor

Application pratique

Il faut tout d’abord sniffer les réseaux aux alentours :

~# airodump-ng --write toto --channel 11 rausb0
  CH  2 ][ Elapsed: 16 s ][ 2007-02-07 00:24
  BSSID              PWR  Beacons    #Data, #/s  CH  MB  ENC  CIPHER AUTH ESSID
  XX:XX:XX:XX:XX:XX    7        7        0    0   6  48  WEP  WEP         SpeedTouch
  XX:XX:XX:XX:XX:XX   20       30        0    0  11  48  WPA2 CCMP   PSK  Livebox-XXXX

  BSSID              STATION            PWR  Lost  paquets  Probes
  XX:XX:XX:XX:XX:XX   XX:XX:XX:XX:XX:XX    -1     0      373

airodump-ng va nous permettre de scanner les réseaux voisins. --write toto permet de sauvegarder les paquets reçus dans le fichier nommé toto. le channel spécifié n'est pas obligatoire mais permet d'affiner les résultats. le ath0 est votre interface wifi.

La colonne BSSID correspond à l'adresse mac des points d'accès (AP).
La colonne ESSID est le nom du réseau (Livebox-XXXX, freebox etc).
La colonne importante est la colonne #DATA car c'est elle qui nous donnera les IVs tant recherchés.

On laisse tourner airodumg-ng, on va maintenant s'occuper de l''authentification.

Authentification et association

La première étape consiste a s’authentifier et a s’associer a l’acces point que l’on veut attaquer. Pour cela on utilise l’attaque par fake authentification d’aireplay :

~# aireplay-ng -1 0 -a XX:XX:XX:XX:XX:XX [adresse mac AP] -e essid_ -h XX:XX:XX:XX:XX:XX ath0
      14:49:33  Sending Authentication Request
      14:49:33  Authentication successful
      14:49:33  Sending Association Request
      14:49:35  Association successful :-) 

Voilà, nous somme désormais authentifié à l’AP comme n’importe quel autre machine sur le réseaux. Nous pouvons donc communiquer avec…

Note : l’attaque a reussit puisque l’association est declarée (Association successful). Si il y avait un filtrage MAC cela n’aurait pas fonctionné. Dans ce cas là on aurait du attendre qu’une station se connecte à l’AP pour récupérer son adresse MAC. Nous aurons ensuite ’spoofé’ l’adresse, nous aurions pris l’identité de la machine pour pouvoir communiquer avec l’AP.

Ca ne marche pas chez moi. Deauth

Le filtrage MAC est peut etre mise en place. Nous allons alors dés-authentifier la station afin de usurper son identité et se faire donc passer pour cette station.

aireplay-ng -0 1 -a XX:XX:XX:XX:XX:XX [adresse mac AP] -c XX:XX:XX:XX:XX:XX [adresse mac client a desauth.] ath0

On envoie alors une requete vers l’AP (-a) en disant que la station dont l’adresse MAC est X (-c) veut se des-authentifier (-0) de l’AP. Le résultat est que la station ne communiquera plus avec l’AP. Nous pourrons maintenant lancer une nouvelle tentative d’authentification avec l’adresse MAC de la station déchue. L’AP la reconnaitra comme légitime car dans la liste blanche des adresses MAC. Attention, il faudra être le premier à se ré-authentifier.. Nous sommes à présent associer à l’AP. Nous allons maintenant injecter du traffic vers l’AP dans le but de capturer plus de paquets que ce qui nous arrive.

Injection de paquets

On utilise aireplay-ng encore pour injecter des paquets. On modifie quelques paramètres.

L’attaque la plus prolifique est l’attaque « -3″ dite de réinjection d’ARP.

aireplay-ng -3 -e ESSID -b [adresse mac AP] -h [adresse mac station] ath0

Le but est de récupérer des paquet ARP afin de les rejouer (re-transmettre) dans le trafic vers l’AP. Ce dernier va devoir nous renvoyer un ARP avant un nouvel IV. Et ainsi de suite. Bingo!

La monté de paquets ARP devraient être significative, autant dans aireplay-ng que dans airodump-ng.

Il existe d’autres méthode pour générer du trafic, en voici quelques unes :

  • Interactive packet replay (option -2) -  permet de choisir un paquet spécifique pour la re-injection. Diverses sources peuvent être mise en place (fichier pcap, requête forgé, ou directement venant du trafic).
  • KoreK chopchop (option -4) -  peut déchiffrer un paquet de données WEP sans connaître la clé. Cette attaque ne récupère pas la clé WEP en soi, mais ne fait que révéler le texte en clair. Toutefois, certains points d’accès ne sont pas vulnérables à cette attaque.
  • Fragmentation Attack (option -5) – en cas de succès permet de récupérer 1500 octets de RPAG (algorithme de génération pseudo-aléatoire). Cette attaque ne récupère pas la clé WEP elle-même, mais obtient simplement la RPAG. La RPAG peut ensuite être utilisé pour générer les paquets avec packetforge-ng qui sont à leur tour utilisées pour des attaques d’injection différents.

Pour plus d’informations sur ces méthodes, consultez le site officiel d’aireplay-ng.

Phase finale : le crack

Nous avons maintenant assez d’IVS. Combien ? Environ 40 000  suffisent. aircrack-ng vous dira combien il possède d’IVS.

La commande est très simple :

~# aircrack-ng -z *.cap

N’oubliez pas le -z, il permet d’utiliser l’algorithme PTW qui n’a besoin que de peu d’IVS. Attention, ne pas lui passer le .ivs mais bien le .cap.

La clé devrait désormais s’afficher après quelques minutes…

Conclusion

Ce processus n’est légal que s’il est effectué sur son propre équipement à des fins de tests.

N’hésitez pas à laisser des commentaires. (PAS de commentaires demandant de l’aide, merci)




4 Commentaires

  • Ashura dit :

    Bonjour, et tout d’abord merci, ton site est d’une grande aide, pour l’approfondissement de mes cours de réseaux, et surtout pour constater à quel point mon réseau est vulnérable.
    Ensuite, une petite question : connais-tu des outils comme aircrack fonctionnant sous Windows ? Non pas que je refuse de tester BackTrack, qui a l’air d’être super pour les tests de sécurité réseau, mais surtout que ma carte réseau intégrée est incompatible, et que du coup ma VM n’est pas satisfaisante.

    Merci encore !

    Ashura.

    RépondreRépondre
  • ethneo dit :

    Il existe un package pour Windows sur le site offciciel : http://www.aircrack-ng.org/doku.php?id=downloads
    Mais, sache que si ta carte ne supporte pas le mode monitor, windows n’y changera rien, tu ne pourra pas capturer le flux réseau..

    RépondreRépondre
  • Ashura dit :

    Mmh au temps pour moi, c’est mon VMware Workstaion qui ne reconnait plus ma carte réseau, mais de toute manière il est temps d’acquérir la version 7.0.
    Pour la version windows j’avais déjà vu ce lien mais la commande airmon et iwconfig n’y sont pas, puis je préfère m’habituer à BackTrack…! (le dragon rouge, c’est tout de suite plus attirant qu’une fenêtre 4 couleurs =D).

    Encore merci pour ta réponse si rapide !

    RépondreRépondre
  • jimy Joseph dit :

    Bonjour
    je viens de lire ce travail intéressant et permettez moi de vous dire que c’est très compréhensible. Est ce que vous pouvez m’expliquer un peu comment ça se passe la phase d’authentification et association, ainsi que pourquoi dans aircrack-ng -z *.cap je n’utilise pas .ivs, autrement dit quelle différence y a t-il entre .cap et .ivs merci et félicitation pour le travail, encore une fois, je le trouve très utile en attendant votre réponse pour procéder à un exposé au collège
    Jimy

    RépondreRépondre

Laisser un commentaire :