Outils pour utilisateurs

Outils du site


aircrack-ng

Description

Aircrack-ng est un groupe d'outils de surveillance pour réseau sans fil dont l'utilisation principale est le « cassage » de clés WEP et WPA-PSK des réseaux WIFI.

C'est un fork de Aircrack, lequel fut développé sous licence GPL par Christophe Devine (diplômé de l'ENSIIE et consultant en sécurité informatique) puis repris par Thomas d'Otreppe sous le nom de Aircrack-ng(next génération).

:!: En tant qu'outil de surveillance réseau, Aircrack a été conçu pour tester la sécurité de son propre réseau. Cependant, ces logiciels peuvent permettre à un cracker d'entrer sans autorisation sur un réseau informatique, ce que de nombreux pays répriment comme un délit.

Identifier son interface sans fil

Avant de commencer tout test avec le WIFI, il faut connaître des pré-requis afin d'éviter tout problème par la suite dont la plus importante est de pouvoir identifier son matériel sans fil. Il faut donc en premier lieu naturellement savoir si on utilise une carte interne ou en PCI ou une carte connecté à l'aide du port USB de son ordinateur. Dans le cas d'une carte interne ou PCI nous utiliseront une commande différente d'une carte connectée en USB, ces commandes sont toujours à retranscrire dans une console ou terminal, et il est obligatoire de savoir utiliser les commandes terminal avant de vouloir utiliser une interface graphique pour les test de sécurité sans fils auquel cas le test peut ne pas aboutir et vous seriez dans l'impossibilité de savoir pourquoi (marche pas, je sais pas pourquoi ???) et vous inonderez les forums d'aide de question inutiles, pour des problèmes dont vous serez le seul responsable.

Donc pour identifier une carte WIFI interne ou branché via le port PCI nous utiliserons la commande lspci qui va lister les périphériques PCI détecté par votre système. Il sera judicieux de filtrer avec grep afin d'avoir peu de lignes au retour de la commande dans le terminal.

lspci | grep -i "net"

Dans le cas d'une interface connecté en USB nous utiliserons la commandes lsusb qui va lister les périphériques relier en USB sur votre machine.

lsusb

La commande ci-dessous devrait afficher une réponse comme sur cette image si une interface sans fils est connectée en USB.

Ces commandes sont primordiales à renseigner pour toutes demande d'aide sur un forum en ce qui concerne l'utilisation de la suite aircrack-ng, sans elle, impossible d'obtenir de l'aide.

Une fois ces commandes connue, on peut vérifier si les interface sont montée dans le système avec la commande iwconfig, dans le cas d'une interface filaire ou locale vous aurez comme réponse “no Wireless interface detected”, cette commande permet de savoir le nom de l'interface à renseigner par la suite dans les lignes de commande.

Dans le cas d'une interface interne, elle sera souvent nommé wlan0 et l'interface USB wlan1 et le nom change à chaque fois qu'on monte un périphérique différent sur sa machine.

:!: le cas des renommages des interfaces selon les distributions diffère selon qu'on soit sous debian, fedora ou Archlinux, il faut donc bien lire les documentations spécifique à ces distributions, dans le cas présent, debian (donc Kali Linux) à gardé le nommage ancien des interfaces, il arrive également qu'une interface sans fils se nomme dans certains cas eth(X) au lieux de wlan(x) mais je n'ai plus rencontré le cas depuis longtemps.

Vérifier la compatibilité avec le mode monitor

Toutes les interfaces sans fils ne sont pas compatible avec le mode monitor, mais il est facile de vérifier cela en utilisant simplement la commande airmon-ng sans argument ni option, elle listera donc toutes les interface compatible avec ce mode.

airmon-ng

:!: Sous kali Linux 2.0 version light (avec xfce) j'ai eu comme réponse qu'il fallait installer lsusb pour pouvoir utiliser airmon-ng, lsusb fait partie du paquet usbutils, c'est donc celui-ci qu'il faut installer pour pouvoir utiliser airmon-ng

Mettre son interface en mode écoute avec airmon-ng

Ce script peut être utilisé pour activer le mode moniteur sur les interfaces sans fil. Il peut également être utilisée pour revenir en mode moniteur au mode managé. la saisie de la commande airmon-ng sans paramètres affiche l'état des interfaces. :!: Le mode moniteur (aussi appelé Radio Frequency Monitoring, RF Monitor, rfmon, RFMON, Air Monitor, Network Monitor, NetMon, ou encore surveillance RF) permet à un ordinateur équipé d'une carte réseau Wi-Fi d'écouter tout le trafic d'un réseau sans fil. À la différence du mode promiscuous, qui est aussi utilisé pour sniffer un réseau, le mode moniteur permet aux paquets d'être capturés sans avoir besoin de s'enregistrer sur un point d'accès (AP) ou réseau ad hoc. Le mode moniteur n'existe que sur les réseaux sans fil, tandis que le mode promiscuous peut être utilisé à la fois sur les réseaux filaires et sans fil. Source: https://fr.wikipedia.org/wiki/Mode_moniteur

  <code>usage: airmon-ng [start|stop] "interface" [channel*](*facultatif) or airmon-ng [check|check kill]</code>

La première chose à faire est de visualiser votre interface wifi, comme expliqué juste au dessus, lancez le terminal et utilisez la commande airmon-ng seule pour choisir l'interface à mettre en mode monitor.

airmon-ng

Si une interface est détectée, elle sera affiché en réponse à la commande, dans le cas contraire, connectez une interface compatible en USB.

Une fois l'interface choisi, il vous faudra vérifier les processus pouvant interférer avec le test, par précaution je stoppe le service network-manager avec la commande ci-dessous.

service network-manager stop

Bien qu'ayant passé à systemd la commande service fonctionne encore, ensuite on va vérifier les autres processus et les tuer, avec l'option check kill de airmon-ng

airmon-ng check kill

La commande listera tout les processus qu'elle aura tué.

Une fois tout cela fait vous pouvez démarrer votre interface en mode monitor, votre interface changera de nom une fois ce mode activé et passera de wlan0 à wlan0mon.

airmon-ng start wlan0

Ce qui devrait donner une réponse proche de celle ci-dessous:

Airodump-ng

Airodump-ng est dédié à l’audit 802.11, ses fonctionnalités le dotent à la fois d’un scanner et d’un sniffer réseau dans le but d’en retirer les informations qui le compromettront. Sa part de travail dans une attaque de clé WPA, consiste à récupérer le handshake afin de pouvoir lancer une attaque dictionnaire dessus. et dans un crackage de clé WEP, consiste à récupérer le maximum d’IVs. (vecteur d'initialisation)

usage: airodump-ng "options" wlan0mon

Nous pouvons isoler le protocole d'encryption WPA ou WEP via l'option –encrypt ou -e.

Exemple:

airodump-ng --encrypt wep wlan0mon

Pour ensuite isoler une cible et son canal et créer un fichier .cap.

airodump-ng --write NOM-DU-FUCHIER --channel LE-CHANNEL --bssid @MAC wlan0mon

Ensuite vous pouvez soit activer le trafic afin d'accélérer le processus de capture d'IVS si il s'agit d'une attaque contre un point d'accès protégé par une clé WEP, ou utiliser une dés-authentification du point d'accès afin de récupérer le handshake dans le cadre d'une attauqe de clé WPA.

Le handshake

Le protocole WPA utilise un “4 Way HandShake” pour pouvoir démarrer une communication sécurisée entre un client et un point d'accès. En effet, c’est le seul moment dans la communication où ils s’échangent des informations pour pouvoir se connecter avec succès et c’est la partie la plus importante du protocole. De plus, c’est précisément à ce moment là que les Hackeurs veulent collecter des informations précieuses qu’on verra ensemble plus tard.

Le 4 Way HandShake se compose de 4 parties :

1. Accord au niveau du protocole de sécurité utilisé ́(Agreeing on the security policy)
2. (802.X Authentification)
3. Génération des clés et distributions (Key hierarchy and distribution)
4. (RSNA data confidentiality and integrity)

Aireplay-ng

Pour commencer on vérifie si votre carte est compatible avec l'injection, le test d'injection détermine si votre carte peut réussir à injecter et de déterminer les temps de réponse ping vers le point d'accès (AP). Si vous avez deux cartes réseau sans fil, il peut aussi déterminer quels tests d'injection spécifiques peuvent être réalisées avec succès.

Pour pouvoir faire le test, il est primordial de stopper le service network-manager, auquel cas contraire, l'interface sera occupée et le test ne pourra pas se faire, ensuite faite le test proprement dit.

aireplay-ng -9 wlan0mon

si vous avez la réponse suivante, l'injection à réussi.

Dans le cas contraire, si vous voyez ceci:

Vérifier que votre interface est bien en mode monitor et recommencez le test.

Aireplay met actuellement en œuvre plusieurs attaques différentes:

  Attack 0: Deauthentication
  Attack 1: Fake authentication
  Attack 2: Interactive packet replay
  Attack 3: ARP request replay attack
  Attack 4: KoreK chopchop attack
  Attack 5: Fragmentation attack
  Attack 6: Cafe-latte attack
  Attack 7: Client-oriented fragmentation attack
  Attack 8: WPA Migration Mode – will be available in the next release-
  Attack 9: Injection test

Vérifier la validité d'un handshake

Pour ceux qui ne connaissent pas pyrit, ce n'est pas seulement un minéral, mais c'est un outil bien pratique dont l'une de ces fonctionnalité permet de tester un handshake. Bien souvent on utilise généralement l'option attacl_db, mais l'option analyze est aussi bien utile.

il suffit de pointer pyrit sur le fichier de capture et de vérifier celui-ci.

pyrit -r fichier.cap analyze

Par fainéantise j'ai pris n'importe quel .cap (la flemme de capturer un handshake), mais ça permet de voir le message en cas de non validité du handshake.

Aircrack-ng

FIXME

                                                                       Aircrack-ng 1.1 r1904


                                                       [00:00:00] Tested 565 keys (got 335470 IVs)

   KB    depth   byte(vote)
    0    0/  1   6D(460032) 76(361216) 05(353536) 3F(353536) 4E(353024) 33(352512) C2(352256) 31(352000) C3(351744) 87(351488) 5C(349184) CB(349184) 
    1    0/  2   B7(453120) 84(364032) C4(363008) 0B(360192) D8(360192) 70(356608) 23(355840) 6E(354304) 8D(354304) 07(353280) D7(352768) 15(352512) 
    2    7/  2   8E(354304) 17(353024) C2(353024) 48(352000) E8(351744) 83(351488) 03(350976) 12(350976) 3C(350208) 47(350208) 59(349696) EE(349440) 
    3    5/  7   96(357376) 95(356608) 17(355328) DA(354560) 59(353536) 4D(353280) 8A(352256) C3(352000) 90(351744) D3(351744) 9C(351488) 08(350976) 
    4    6/  4   57(354560) 05(352000) B5(351232) EF(350720) EA(350208) C7(349952) 68(349440) C6(348928) 6B(348672) F6(348672) CB(348160) DF(347904) 

             KEY FOUND! [ 6D:B7:0C:97:83:A9:B4:76:29:1E:9B:65:75 ] 
	Decrypted correctly: 100%

Lorsque vous avez capturé des IVs et que vous craquez votre fichier cap avec aircrack-ng vous n'utilisez pas spécialement toute la puissance de votre machine.

Comme pour les options de compilation “MAKEOPTS=”-j5“” vous pouvez choisi le nombre de CPU utilisé grâce à l'option -p.

aircrack-ng -p X *.cap

Remplcez X par le nombre de core CPU utilisé

Machine virtuelle et WIFI

La problématique des machines virtuelle est courante, car il arrive fréquemment qu'un utilisateur d'une autre distribution ou un utilisateur Windows utilise Kali Linux en machine virtuelle, ce qu'il faut savoir dans ce cas c'est que la connexion sans fil ne peut se faire qu'exclusivement par le biais d'une interface USB, en aucun cas une interface sans fil utilisée sur l'hôte ne pourra être détectée sur la machine virtuelle.

Pour utiliser une interface USB, il vous faudra installer les extensions invité de votre machine virtuelle, pour cela, référer vous à la documentation de votre outils de virtualisation.

Les outils dérivés

Plusieurs outils utilisent la suite aircrack-ng pour automatiser ce genre de tâches, par exemple Fern Wifi Cracker qui est une GUI et Wifite outils codé en python qui utilise également Reaver et PixieWPS pour automatiser les attaques.
Il est conseillé d'apprendre à utiliser la suite aircrack-ng avant d'utiliser de tels outils afin de ne pas subir de blocage en cas d'attaque avortée du à une ou plusieurs erreurs incomprises.

:!: “Cracker le WIFI” est souvent utiliser par abus de langage car actuellement on à pas encore trouvé de méthode pour cracker une clé WPA mais il s'agit en réalité d'une attaque par dictionnaire ou par brute-force.

En cour de rédaction… DELETEME

aircrack-ng.txt · Dernière modification: 2016/08/24 18:58 (modification externe)