Introduction
Bienvenue dans ce laboratoire sur l'accélération de la capture WEP IV. WEP (Wired Equivalent Privacy) est un protocole de sécurité Wi-Fi obsolète et non sécurisé. Sa principale faiblesse réside dans la manière dont il utilise les vecteurs d'initialisation (IV). Pour casser une clé WEP, un attaquant doit capturer un grand nombre de paquets de données, chacun contenant un IV unique.
Attendre passivement qu'un réseau génère suffisamment de trafic pour capturer des dizaines de milliers d'IV peut prendre des heures, voire des jours. Pour surmonter cela, nous pouvons utiliser une technique active appelée attaque par rejeu ARP (ARP Replay Attack). Cette attaque consiste à capturer un paquet ARP du réseau et à le réinjecter (ou "rejouer"). Cela trompe le point d'accès (AP) pour qu'il génère un grand volume de nouveaux paquets, chacun avec un nouvel IV, nous permettant ainsi de collecter les données nécessaires en quelques minutes.
Dans ce laboratoire, vous utiliserez l'outil aireplay-ng de la suite Aircrack-ng pour effectuer une attaque par rejeu ARP. Nous supposerons que vous avez déjà mis votre carte sans fil en mode moniteur.
Effectuer une fausse authentification avec aireplay-ng -1
Dans cette étape, vous allez effectuer une "fausse authentification" avec le point d'accès (AP) cible. Avant de pouvoir injecter des paquets dans le réseau, notre appareil doit être associé à l'AP. L'attaque par fausse authentification établit cette association, faisant croire à l'AP que nous sommes un client légitime.
Pour ce laboratoire, nous utiliserons les informations simulées suivantes pour la cible :
- Interface :
wlan0mon - ESSID (Nom du réseau) :
labex-wep - BSSID (Adresse MAC de l'AP) :
00:11:22:33:44:55 - Notre adresse MAC :
00:C0:CA:A1:B2:C3
Exécutez maintenant la commande suivante dans votre terminal pour effectuer la fausse authentification. Le paramètre -1 spécifie l'attaque par fausse authentification, 0 définit le délai de réassociation sur automatique, -e spécifie l'ESSID, -a le BSSID, et -h notre adresse MAC source.
sudo aireplay-ng -1 0 -e labex-wep -a 00:11:22:33:44:55 -h 00:C0:CA:A1:B2:C3 wlan0mon
Dans un environnement réel, vous verriez des messages indiquant la progression. Une exécution réussie affichera des messages tels que "Authentication successful" et "Association successful". En raison des limitations de l'environnement de laboratoire, la commande peut ne pas produire la sortie complète du monde réel, mais son exécution est une première étape cruciale.
12:34:56 Waiting for beacon frame (BSSID: 00:11:22:33:44:55) on channel 6
12:34:56 Sending Authentication Request (Open System) [ACK]
12:34:57 Authentication successful
12:34:57 Sending Association Request [ACK]
12:34:57 Association successful :-) (AID: 1)
Une fois l'association établie, nous pouvons passer à l'attaque principale.
Lancer l'attaque par rejeu ARP avec aireplay-ng -3
Dans cette étape, vous allez lancer l'attaque par rejeu ARP. Cette attaque, spécifiée par l'indicateur -3 dans aireplay-ng, écoute les paquets ARP sur le réseau. Une fois qu'elle en capture un, elle commencera à le réinjecter pour générer un flot de nouveaux IV.
Il est important d'exécuter cette attaque dans sa propre fenêtre de terminal, car elle s'exécutera en continu. Veuillez ouvrir un nouveau terminal pour cette commande. Vous pouvez le faire en cliquant sur l'icône + dans la barre d'onglets du terminal.
Dans le nouveau terminal, exécutez la commande suivante. L'indicateur -3 lance l'attaque par rejeu ARP, -b spécifie le BSSID cible (l'AP), et -h spécifie notre adresse MAC source (celle que nous avons utilisée pour l'authentification).
sudo aireplay-ng -3 -b 00:11:22:33:44:55 -h 00:C0:CA:A1:B2:C3 wlan0mon
Après avoir exécuté la commande, aireplay-ng commencera à écouter. La sortie indiquera initialement qu'il attend un paquet ARP.
Saving ARP requests in replay_arp-1234-567890.cap
You should also start airodump-ng to capture replies.
Read 0 packets (got 0 ARP requests, 0 ACKs), sent 0 packets...(0 pps)
L'outil écoute maintenant passivement. Il doit capturer au moins un paquet ARP pour commencer le processus de rejeu. Dans l'étape suivante, nous allons configurer un outil de surveillance pour suivre notre progression. Laissez ce terminal en cours d'exécution.
Surveiller la capture d'IV avec airodump-ng
Dans cette étape, vous utiliserez airodump-ng pour surveiller le réseau et, plus important encore, pour voir les résultats de votre attaque par rejeu ARP. airodump-ng capturera tous les paquets générés par l'attaque et les enregistrera dans un fichier. Le nombre de paquets de données (IV) capturés est la métrique clé du succès.
Cette commande doit également s'exécuter en continu dans son propre terminal. Veuillez ouvrir un troisième terminal en cliquant à nouveau sur l'icône +.
Dans ce nouveau terminal, exécutez la commande airodump-ng suivante.
--bssid: Centre la capture sur notre AP cible.-c 6: Définit le canal sur 6 (en supposant que l'AP se trouve sur ce canal).--write wep_capture: Indique àairodump-ngd'enregistrer les paquets capturés dans des fichiers avec le préfixewep_capture.wlan0mon: L'interface en mode moniteur à utiliser.
sudo airodump-ng --bssid 00:11:22:33:44:55 -c 6 --write wep_capture wlan0mon
Après avoir exécuté la commande, vous verrez l'interface airodump-ng. Portez une attention particulière à la colonne #Data pour notre BSSID cible. Ce nombre représente le nombre d'IV capturés.
CH 6 ][ Elapsed: 0 s ][ 2023-10-27 10:10
BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:11:22:33:44:55 -30 10 0 0 6 54 WEP WEP labex-wep
BSSID STATION PWR Rate Lost Frames Probe
Initialement, le nombre #Data sera nul ou très faible. Une fois que l'attaque aireplay-ng (de l'étape 2) aura capturé un paquet ARP et commencera à l'injecter, vous verrez ce nombre augmenter très rapidement. Laissez ce terminal en cours d'exécution et passez à l'étape suivante pour comprendre le processus.
Comprendre comment le rejeu ARP génère du trafic injectable
Cette étape est conceptuelle ; vous n'avez pas besoin d'exécuter de nouvelles commandes. L'objectif est de comprendre ce qui se passe dans vos trois fenêtres de terminal.
Dans un scénario réel, vous attendriez maintenant qu'un client légitime sur le réseau envoie une requête ARP (par exemple, lorsqu'il rejoint le réseau pour la première fois ou tente de trouver un autre appareil).
Capture : Votre processus
aireplay-ng -3(dans le deuxième terminal) attend que cela se produise. Une fois qu'il capture un paquet ARP, sa sortie changera. Il indiquera qu'il a lu un paquet et qu'il l'enregistre maintenant.Read 147 packets (got 1 ARP request), sent 0 packets...(0 pps)Rejeu : Immédiatement après avoir capturé le paquet ARP,
aireplay-ngcommencera à le réinjecter sur le réseau. Vous verrez le compteur "sent" augmenter rapidement.Read 250 packets (got 1 ARP request), sent 86 packets...(102 pps)Génération : L'AP reçoit ces paquets ARP rejoués. Pour chacun d'eux qu'il reçoit, il diffuse une réponse. Chaque réponse est chiffrée avec WEP et contient un IV nouveau et unique.
Surveillance : Votre processus
airodump-ng(dans le troisième terminal) capture toutes ces réponses de l'AP. Vous verrez la colonne#Datapour votre réseau cible commencer à monter en flèche, augmentant souvent de plusieurs centaines par seconde.
Cette boucle de rétroaction est le cœur de l'attaque. Nous utilisons un paquet ARP capturé pour tromper l'AP afin qu'elle génère des milliers de nouveaux paquets pour nous, accélérant ainsi considérablement le processus de collecte d'IV.
Arrêter l'attaque après avoir collecté plus de 20000 IV
Dans cette dernière étape, vous arrêterez l'attaque une fois que vous aurez collecté un nombre suffisant d'IV. Pour casser une clé WEP, une cible courante est de 20 000 à 40 000 IV, bien que davantage puissent être nécessaires en fonction de la force de la clé.
Pour ce laboratoire, nous nous arrêterons une fois que le compte dépassera 20 000.
Surveillez la colonne #Data dans votre terminal airodump-ng (le troisième terminal que vous avez ouvert). Une fois que la valeur est supérieure à 20 000, vous pouvez arrêter la capture et l'attaque.
Pour arrêter les processus, allez dans chacun des deux terminaux en cours d'exécution (airodump-ng et aireplay-ng) et appuyez sur Ctrl+C. Il est préférable d'arrêter d'abord airodump-ng pour s'assurer que tous les paquets sont écrits dans le fichier.
Après avoir arrêté les processus, la commande airodump-ng aura créé plusieurs fichiers dans votre répertoire ~/project. Le plus important est le fichier de capture, qui se termine par .cap. Listons les fichiers pour confirmer sa création.
ls -l
Vous devriez voir une sortie similaire à celle-ci, confirmant la présence de wep_capture-01.cap.
-rw-r--r-- 1 root root 2450000 Oct 27 10:15 wep_capture-01.cap
-rw-r--r-- 1 root root 78123 Oct 27 10:15 wep_capture-01.csv
...
Ce fichier .cap contient tous les IV que vous avez collectés et est maintenant prêt à être utilisé avec aircrack-ng pour casser la clé WEP.
Résumé
Dans ce laboratoire, vous avez appris avec succès à effectuer l'une des attaques les plus efficaces contre les réseaux protégés par WEP.
Vous avez commencé par effectuer une fausse authentification avec aireplay-ng -1 pour associer votre appareil au point d'accès cible. Ensuite, vous avez lancé le cœur du laboratoire, l'attaque par rejeu ARP à l'aide de aireplay-ng -3, qui écoute et rejoue les paquets ARP. Vous avez également configuré airodump-ng pour surveiller le réseau et capturer le trafic résultant.
Vous avez appris comment cette attaque crée une boucle de rétroaction, incitant l'AP à générer des milliers de nouveaux paquets de données (IV) par minute. Enfin, vous avez arrêté l'attaque après avoir collecté un nombre suffisant d'IV, ce qui a abouti à un fichier .cap prêt pour le cracking. Cette technique active est beaucoup plus efficace que d'attendre passivement le trafic réseau. La prochaine étape logique, qui est hors du cadre de ce laboratoire, serait d'utiliser aircrack-ng sur le fichier wep_capture-01.cap pour récupérer la clé WEP.


