Utiliser John the Ripper pour craquer les poignées de main Wi-Fi WPA/WPA2

Kali LinuxBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous explorerez le processus de craquage des mots de passe Wi-Fi WPA/WPA2 à l'aide d'un outil courant de test d'intrusion, John the Ripper. Bien que l'objectif principal soit éducatif, la compréhension de ces techniques est cruciale pour améliorer la sécurité du réseau. Vous apprendrez à capturer une poignée de main (handshake) WPA/WPA2, qui contient les informations nécessaires au craquage de mot de passe hors ligne, puis à utiliser des outils spécialisés pour convertir cette poignée de main dans un format que John the Ripper peut traiter. Enfin, vous tenterez de craquer le mot de passe à l'aide d'une attaque par dictionnaire. Ce laboratoire abordera également les failles de sécurité sous-jacentes de WPA/WPA2 et fournira les meilleures pratiques pour créer des mots de passe Wi-Fi robustes afin de protéger vos propres réseaux.

Capture d'une poignée de main WPA/WPA2

Dans cette étape, vous comprendrez le concept de capture d'une poignée de main WPA/WPA2. Dans un scénario réel, cela implique de mettre votre adaptateur sans fil en mode moniteur et d'utiliser des outils comme airmon-ng et airodump-ng pour capturer la poignée de main à 4 voies qui se produit lorsqu'un client se connecte à un point d'accès Wi-Fi. Cette poignée de main contient le matériel cryptographique nécessaire pour effectuer une attaque par force brute hors ligne ou une attaque par dictionnaire sur le mot de passe Wi-Fi.

Dans le cadre de ce laboratoire, nous allons simuler l'existence d'un fichier de poignée de main capturé. Le script setup a déjà créé un fichier factice .cap nommé dummy_capture.cap dans votre répertoire ~/project. Ce fichier représente un fichier de trafic réseau capturé qui contiendrait une poignée de main WPA/WPA2.

Pour vérifier la présence de ce fichier de capture factice, utilisez la commande ls.

ls -lh ~/project/dummy_capture.cap

Vous devriez voir une sortie similaire à celle-ci, indiquant que le fichier existe :

-rw-r--r-- 1 labex labex 48 Oct 26 08:00 /home/labex/project/dummy_capture.cap

Cette étape se concentre sur la compréhension conceptuelle, car la manipulation réelle de l'interface réseau dépasse le cadre de cet environnement de laboratoire virtuel.

Conversion de la poignée de main au format John the Ripper

Dans cette étape, vous apprendrez comment convertir un fichier de poignée de main WPA/WPA2 capturé (généralement un fichier .cap) dans un format que John the Ripper peut comprendre. John the Ripper, par défaut, ne traite pas directement les fichiers .cap pour le craquage WPA/WPA2. Il nécessite plutôt un format de hachage spécifique, souvent généré par des outils comme aircrack-ng ou hcxpcaptool. La suite aircrack-ng inclut un utilitaire qui peut extraire la poignée de main WPA/WPA2 d'un fichier .cap et la sortir dans un format adapté au craquage.

Pour ce laboratoire, le script setup a déjà créé un fichier factice .hccapx nommé dummy_handshake.hccapx dans votre répertoire ~/project. Ce fichier simule la sortie d'un tel processus de conversion, contenant les informations de poignée de main extraites dans un format prêt pour John the Ripper.

Pour vérifier la présence de ce fichier de poignée de main factice, utilisez la commande ls.

ls -lh ~/project/dummy_handshake.hccapx

Vous devriez voir une sortie similaire à celle-ci, confirmant l'existence du fichier :

-rw-r--r-- 1 labex labex 78 Oct 26 08:00 /home/labex/project/dummy_handshake.hccapx

Cette étape souligne la nécessité de la conversion de format avant d'utiliser John the Ripper pour le craquage WPA/WPA2.

Craquage de la poignée de main WPA/WPA2 avec John the Ripper

Dans cette étape, vous utiliserez John the Ripper pour tenter de craquer le mot de passe WPA/WPA2 à partir du fichier de poignée de main converti. John the Ripper est un outil puissant de craquage de mots de passe qui prend en charge divers modes d'attaque, y compris les attaques par dictionnaire. Une attaque par dictionnaire consiste à essayer une liste de mots de passe courants (une liste de mots, ou "wordlist") contre la poignée de main capturée.

Vous utiliserez la commande john avec l'option --wordlist pour spécifier le fichier de liste de mots et le chemin du fichier de poignée de main. Le script setup a déjà créé une liste de mots simple nommée wordlist.txt dans votre répertoire ~/project.

Exécutez la commande suivante pour tenter de craquer la poignée de main factice :

john --format=wpapsk --wordlist=~/project/wordlist.txt ~/project/dummy_handshake.hccapx
  • --format=wpapsk: Spécifie le format de hachage que John the Ripper doit attendre, qui est WPA-PSK pour les poignées de main Wi-Fi.
  • --wordlist=~/project/wordlist.txt: Indique à John le fichier dictionnaire contenant les mots de passe potentiels.
  • ~/project/dummy_handshake.hccapx: Le chemin vers le fichier de poignée de main converti.

Après avoir exécuté la commande, John the Ripper tentera de craquer le mot de passe. Si un mot de passe de la liste de mots correspond, il sera affiché. Pour notre poignée de main et notre liste de mots factices, le mot de passe labex123 devrait être trouvé.

Exemple de sortie :

Using default input encoding: UTF-8
Loaded 1 password hash (WPA-PSK [PBKDF2-SHA1 256/256 AVX2])
Will run till completion
Press 'q' or Ctrl-C to abort, almost any other key for status
labex123         (dummy_essid)
1g 0:00:00:00 DONE (2023-10-26 08:00) 100% (ETA: 08:00) 1.000g/s 5.000p/s 5.000c/s 5.000C/s labex123
Session completed.

La ligne labex123 (dummy_essid) indique que le mot de passe labex123 a été craqué avec succès pour l'ESSID (nom du réseau) dummy_essid.

Comprendre les failles de sécurité WPA/WPA2

Dans cette étape, vous acquerrez une compréhension plus approfondie des failles de sécurité inhérentes au WPA/WPA2 (Wi-Fi Protected Access II) qui rendent le craquage de la poignée de main possible. Bien que le WPA2 ait représenté une amélioration significative par rapport à ses prédécesseurs (WEP et WPA), il reste vulnérable à certains types d'attaques, principalement les attaques par dictionnaire hors ligne contre la poignée de main à 4 voies.

La vulnérabilité principale réside dans le fait que la clé maîtresse par paire (PMK - Pairwise Master Key), dont dérive la clé transitoire par paire (PTK - Pairwise Transient Key), est basée sur la clé pré-partagée (PSK - Pre-Shared Key) et les nonces échangés lors de la poignée de main. Si un attaquant capture cette poignée de main à 4 voies, il peut effectuer une attaque par force brute ou par dictionnaire hors ligne contre la PMK. Cela signifie que l'attaquant n'a pas besoin d'être activement connecté au réseau pour essayer différents mots de passe ; il a seulement besoin de la poignée de main capturée.

Points clés à comprendre :

  • Attaque hors ligne (Offline Attack) : Le processus de craquage se déroule hors ligne, ce qui signifie que l'attaquant peut prendre la poignée de main capturée et essayer des millions de mots de passe sans interagir avec le réseau cible. Cela rend l'attaque très difficile à détecter.
  • Dictionnaire/Force brute (Dictionary/Brute-Force) : Le succès de cette attaque dépend fortement de la robustesse du mot de passe Wi-Fi. Si le mot de passe est faible, courant, ou fait partie d'un dictionnaire, il peut être craqué relativement rapidement.
  • Pas d'accès direct (No Direct Access) : L'attaquant n'obtient pas d'accès direct au réseau pendant le processus de craquage ; il obtient seulement le mot de passe.

Cette vulnérabilité souligne l'importance capitale d'utiliser des mots de passe forts et uniques pour les réseaux Wi-Fi. Même avec le chiffrement robuste du WPA2, un mot de passe faible peut compromettre l'ensemble du réseau.

Implémenter des mots de passe Wi-Fi robustes

Dans cette dernière étape, vous apprendrez et comprendrez les meilleures pratiques pour implémenter des mots de passe Wi-Fi robustes afin d'atténuer les risques de craquage de la poignée de main WPA/WPA2. Comme démontré dans les étapes précédentes, un mot de passe faible est la principale vulnérabilité qui permet à ces attaques de réussir.

Pour protéger efficacement votre réseau Wi-Fi, tenez compte des directives suivantes pour créer des mots de passe robustes :

  1. Longueur : Visez un mot de passe d'au moins 12 à 16 caractères. Des mots de passe plus longs augmentent considérablement le temps et les ressources informatiques nécessaires au craquage.
  2. Complexité : Utilisez un mélange de lettres majuscules, de lettres minuscules, de chiffres et de caractères spéciaux (par exemple, !@#$%^&*). Cela rend les attaques par dictionnaire et par force brute beaucoup plus difficiles.
  3. Unicité : Ne réutilisez pas les mots de passe sur différents services ou réseaux. Si un mot de passe est compromis, les autres restent sécurisés.
  4. Éviter les mots/phrases courants : N'utilisez pas de mots de dictionnaire, de phrases courantes, d'informations personnelles (comme les dates de naissance, les noms) ou de séquences numériques (par exemple, 12345678). Ce sont les premières cibles dans les attaques par dictionnaire.
  5. Phrases de passe (Passphrases) : Envisagez d'utiliser une phrase de passe – une séquence de mots sans rapport. Par exemple, CorrectHorseBatteryStaple est beaucoup plus robuste et plus facile à retenir que P@$$w0rd!.
  6. Changements réguliers : Bien que pas strictement nécessaire pour des mots de passe très robustes, changer votre mot de passe Wi-Fi périodiquement (par exemple, une fois par an) peut ajouter une couche de sécurité supplémentaire.

En suivant ces recommandations, vous pouvez améliorer considérablement la sécurité de votre réseau Wi-Fi et rendre extrêmement difficile pour les attaquants de craquer votre mot de passe WPA/WPA2, même s'ils parviennent à capturer une poignée de main.

Résumé

Dans ce laboratoire, vous avez acquis une expérience pratique et des connaissances théoriques concernant la sécurité Wi-Fi WPA/WPA2. Vous avez appris le processus de capture d'une poignée de main WPA/WPA2 (conceptuellement), sa conversion dans un format adapté à John the Ripper, puis l'utilisation de John the Ripper pour craquer le mot de passe via une attaque par dictionnaire. De plus, vous avez exploré les failles de sécurité sous-jacentes qui rendent ces attaques possibles et, surtout, compris l'importance cruciale de mettre en œuvre des mots de passe Wi-Fi forts, complexes et uniques pour protéger vos réseaux contre de telles vulnérabilités. Ces connaissances sont essentielles tant pour la compréhension de la sécurité offensive que pour la protection défensive des réseaux.