vide en ligne depuis 02.10.1998

Présentation de BackTrack / KaliLinux

BackTrack, c'est quoi donc ? C'est une excellente question, et pour y répondre, allons faire un tour sur Wikipedia... "BackTrack est une distribution Linux, basée sur Slackware jusqu'à la version 3 et Ubuntu depuis la version 4, apparue en 2006. Elle est née de la fusion de Whax et Auditor. Son objectif est de fournir une distribution regroupant l'ensemble des outils nécessaires aux tests de sécurité d'un réseau.
Depuis 2013, BackTrack est devenu Kali Linux."


BackTrack se présente sous la forme d'un live DVD que vous pouvez lancer tel quel ou mieux, installer sur le disque dur d'un PC.
Il est aussi possible de l'installer sur une clef USB grâce à UNetBootin ou dans une machine virtuel comme VMware ou VirtualBox.

Backtrack propose un large panel d'outils de sécurité en partant du scanner de port jusqu'aux crackers de mot-de-passe.
J'aborderais certain des logiciels contenus dans Backtrack sur ce site.

BackTrack classe les outils en 12 catégories : Rassemblement d'informations (Information Gathering), Estimation des vulnérabilité (Vulnerability Assessment), Outils d'utilisation des failles (Exploitation Tools), élévation des privilèges (Privilege Escalation), Maintient d'accès (Maintaining Access), Ingénierie inverse (Reverse Engineering), Outils RFID (RFID Tools), Test de résistance (Stress testing), Recherche forensique (Forensics), Outils d'obtention de rapports (Reporting Tools), Services (Services), Divers (Miscellaneous).

En fait, près de 300 outils sont contenus dans cette distribution.

BackTrack aborde tous les domaines liés aux sécurités modernes. De l'audit réseau à l'analyse et l'identification de vulnérabilité, BackTrack est reconnu par les professionnels de la sécurité informatique comme un outil complet et utilisée à des fins d'audit de réseaux sans fil Wifi : son développement est en effet axé sur la prise en charge de cartes ou circuits Wifi supportant le mode écoute totale (promiscuous), comme l'Atheros équipant entre autres l'Eee PC 700 et 701.

Les outils qu'elle regroupe (Kismet et autres) mettent en évidence le manque de fiabilité des chiffrements WEP et WPA.

Tous les tutos de ce site supposerons que KaliLinux (ou BackTrack) est installée en dur sur votre machine.



Analyse de trafic

wireshark

"Wireshark est un analyseur de paquets libre utilisè dans le dèpannage et l'analyse de rèseaux informatiques, le dèveloppement de protocoles, l'èducation et la rètro-ingènierie.
Son appellation d'origine (Ethereal) est modifièe en mai 2006 pour des questions relatives au droit des marques.

Wireshark reconnaît 759 protocoles."


Wireshark est une des boites à outils des administrateurs rèseaux et est utilisè lorsque d'autres solutions n'ont pas permies de rèsoudre un problème donnè.
Cela peut être complexe et fastidieuse pour un non spècialiste.

Une capture réseau est un instantané de ce qui transite sur un réseau informatique à un moment donné. La qualité de la capture dépendra essentiellement du point de capture qui nous permettra d'enregistrer la totalité du trafic intéressant sans pour autant sauvegarder des giga-octets de données.

On utilisera Wireshark essentiellement pour : (liste non exhaustive)
- Analyser les flux d'une nouvelle application avant sa mise en production.
- Identifier les causes d'un problème de performance réseau (tempête de broadcast...)
- Identifier les flux consommateurs.

Dans l'exemple ci-dessous, nous allons capturer puis analyser le trafic généré par la récupération d'une page WEB grâce au moteur de recherche de Google.

Lançons donc notre butineur WEB favori sur notre PC puis dans la foulée, ouvrez un terminal en mode administrateur et lancez Wireskark.

Commençons la capture sur l'interface eth0 du PC et ouvrez la page d'accueil du moteur de recherche Google à partir de votre navigateur précédemment ouvert. Attendons que la page soit complètement chargée.

Arrêtons la capture.

interface


Nous nous retrouvons avec une capture qui contient moult informations dont certaines n'ont rien à voir avec le but recherché !
Par exemple, dans cette capture, vous allez retrouver des requêtes réseau générées par votre OS et qui concernent la mise à jour de votre OS ou de votre anti-virus, des requetes LAN... Bref, plein de choses indésirables dans notre cas ce qui va nous obliger par filtrer petit par petit tout le trafic indésirable pour ne conserver que celui nécessaire au chargement de la page WEB.

Commençons par filtrer les paquets dont l'adresse source ou destination est votre propre PC, dans mon cas, il s'agit de 192.168.1.12.

filtre


Normalement, le premier paquet devrait être une résolution DNS du domaine google.fr et l'on voit qu'effectivement c'est bien le cas mais il y a du trafic avant...

Nous constatons aussi que le paquet en question porte le numéro 13, nous allons donc modifier le filtre pour n'afficher que les paquets dont le numéro est supérieur à 12.

filtre


Bien sur, cela ne va pas être suffisant pour y voir plus clair et pour vous en convaincre nous allons utiliser les outils spécifiques aux paquets http de Wireshark en allant dans le menu Statistics > HTTP > Request

request


puis cliquez sur le bouton "Create stat"

request


Dans ce cas, il n'y à qu'un appel mais testez sur d'autres sites et vous verrez que l'on voit bien que le chargement d'une page WEB implique un nombre très important de requêtes http sur le réseau !

Nous allons donc activer la résolution des noms de machines lors de l'affichage. Pour cela, rendez-vous dans le menu Edit > Preferences.

filtre


C'est quand même plus parlant non ?

Utilisons aussi la fonction conversation qui va nous permettre de voir la liste complète des requêtes client / serveur, menu Statistics > Conversations.

conversation


et si vous aimez les graphes, vous vous rendez dans le menu Statistics > IO Graphs

graph


Voila, cette petite introduction à Wireshark est terminée mais vous l'aurez compris, nous n'avons abordé ici que le sommet de l'iceberg !
Pour la suite, nous devrons acquérir de solides bases en réseau IP ce qui nous permettra de parfaire nos analyses...



Sniffer les mots de passe sur un réseau avec WireShark

trouve

Pour notre exemple, nous allons nous connecter avec nos identifiants sur un compte de forum ou n'importe quel autre service WEB demandant un login et un mot de passe ce qui va, je l'espère déclencher en vous un sursaut sécuritaire salvateur...

Commencer par ouvrir votre butineur sur une page WEB demandant un login et commencez à capturer le trafic réseau comme d'habitude.
Saisissez votre login et valider puis revenez à Wireshark.

Chercher un paquet HTTP envoyé par la méthode POST :


Vous constatez que le couple identifiant/mot de passe apparait ici en clair !

Cette façon de sniffer un réseau est très facile à mettre en oeuvre et ce, sans aucunes connaissances particulières, la seule contrainte est de bien choisir où connecter la sonde car dans le cas présent, la capture a été réalisée sur le PC ou Wireshark est installé, je n'ai donc sniffé que se qui rentre ou sort de ce PC.

Ce problème est essentiellement du au protocol HTTP qui ne crypte aucune données et c'est pourquoi il est fortement déconseillé de saisir un quelquonque mot de passe dans un cybercafés ou un réseau WIFI public.

Pour une raison simple à comprendre, il est impossible de savoir quels logiciels ou matériels sont connectés sur ces machines et vous pouvez donc être victime d'un reniflage réseau.

Il existe bien entendu une protection contre ce type d'attaque, le protocol de communication sécurisé HTTPS.

Voici une capture d'écran reprenant le test précédent mais cette fois en utilisant le protocol HTTPS.


Cette fois c'est beaucoup mieux, les données ne sont plus transmises en clair...

Pour se protéger des sites à risques, il est possible, grâce à un module Firefox, de se connecter automatiquement en HTTPS.



Encryptage WEP

backtrack

BackTrack se présente sous la forme d'un live DVD que vous pouvez lancer tel quel ou mieux, installer sur le disque dur d'un PC.
Il est aussi possible de l'installer sur une clé USB grâce à UNetBootin ou dans une machine virtuel comme VMware ou VirtualBox.
Dans la suite de cet article, nous supposerons que BackTrack est installée en dur sur votre machine.

Pour mener à bien cette démonstration, vous aurez besoin de :

  • D'un PC avec un lecteur de DVD
  • Du DVD de BackTrack
  • Une carte WIFI qui supporte l'injection de paquets

Commencez par télécharger Backtrack et graver l'ISO sur un DVD.
Démarrez le PC avec ce DVD et installez BackTrack sur le disque dur du PC, en Dual Boot ou comme je l'ai fait, sur tout le disque.
Nota : Cette distribution boot en mode console, il faudra donc lancer le serveur X à la main par : startx
Les identifiants / password sont : root / toor

Le serveur X étant démarré, nous allons ouvrir un terminal, Terminator dans mon cas, et activer notre interface en tapant la commande suivante : airmon-ng start wlan0
Normalement, vous devriez voir la liste des périphériques vous permettant de vous connecter en Wifi et vous ne devriez en avoir qu'un seul : mon0 pour monitor 0.


Nous allons maintenant, vérifier si la carte Wifi de notre PC supporte bien l'injection de paquets.
Tapez dans le terminal la commande suivante : aireplay-ng -9 mon0
Si Injection is working apparaît, c'est que votre périphérique Wifi est compatible. Dans le cas contraire, il faudra sûrement mettre à jour le pilote...


Toujours dans le terminal, saisissez la commande suivante afin de lancer le scan des différents réseaux Wifi connus autour de vous : airodump-ng mon0 et cherchez le nom de votre box dans la liste.
Notez le BSSID qui est en fait l'adresse MAC du point d'accès, le canal et le type d'encodage car nous en aurons besoin par la suite.
Notez aussi l'adresse qui figure sous Station. Cette adresse permet de joindre un ordinateur connecté au point d'accès et sans cette dernière, vous ne pourrez hacker votre clé WEP.

Nota : La liste des connexions entre PC et PA permet de contourner un éventuel filtrage MAC en falsifiant sa propre adresse MAC via la commande : macchanger --mac [nouvelle MAC adresse] mon0

Avant d'aller plus loin, quelques mots sur le protocole WEP.
Le protocole WEP présente une faille de sécurité dans les paquets ARP qui transitent entre le PA et le PC.
Une clé WEP se présente sous cette forme : FF5F3E45AA2B44FF32FA3CDDFF

Pour trouver cette clé, il va nous falloir sniffer les trames de type ARP à l'aide de airodump-ng et pour ce faire, nous allons stimuler un peu le PA en lui injectant des données via le Wifi.
Cette injection de paquets va générer des IVs et ceci est très important car, c'est le nombre d'IVs capturé qui va nous permettre de trouver la clé WEP !
Comptez bien 40 000 IVs pour une clé WEP soit environ 2 ou 3 minutes de scan !

Une fois les données capturées, nous pourrons exploiter la faille ARP à l'aide de aircrack.

Ouvrez un nouveau terminal et placez vous dans votre répertoire de stockage puis tapez la commande suivante : airodump-ng --channel [channel] --write [fichier sortie] mon0
Remplacez les valeurs entres crochets par vos propres valeurs, les crochets ne sont pas à écrire.
Nota : Vous devez laisser le programme tourner pendant toute la durée du crackage !


Pour la suite, vérifions que airodump-ng capture bien les données sur le disque. Si tel est le cas, nous allons injecter des paquets pour générer du trafic.
Un petit mot sur les méthodes d'injection de données. Il existe pas mal de méthodes pour injecter des données sur un réseau Wifi comme le montre l'écran suivant :


Dans ce wiki, j'utiliserai la méthode ré-injection de paquets (-3) plus simple à mettre en oeuvre, elle permet de capturer directement le paquet ARP et de le renvoyer sur le réseau Wifi. La seule chose à faire est d'attendre la génération d'IVs.

La syntaxe de cette commande est la suivante : aireplay-ng -3 -b [MAC_AP] -h [MAC_PC] -x [paquets/s] mon0

Nota : Si vous utilisez les méthodes ChopChop ou fragmentation, lorsque ces programmes auront atteint 100%, 2 fichiers (.xor et .cap) seront enregistrés sur le disque ! Notez leurs noms et chemin, nous en aurons besoin plus tard.


Si vous avez utilisé les méthodes ChopChop ou fragmentation, il nous faut maintenant générer un paquet ARP valide à l'aide de packetforge-ng.
Nous allons nous servir des 2 fichiers créés précédemment pour construire notre paquet ARP valide.
packetforge-ng -0 -a [MAC_PA] -h [MAC_PC] -k [IP_BOX] -l [MASK_BOX] -y [fichier xor] -w [fichier cap]

Nota : Le paramètre k permet de définir l'adresse IP de la BOX distante, soit dans la plupart des cas :192.168.1.1
Si par extraordinaire cela ne fonctionnait pas, essayez 255.255.255.255 pour les paramètres k et l.

Maintenant que nous avons construit notre paquet, nous devons l'envoyer et pour ce faire nous allons utiliser la commande suivante : aireplay-ng -3 -b [MAC_PA] -h [MAC_PC] -r [fichier arp.cap] -x [paquets/s] mon0
Nota : Le programme airodump-ng doit être en fonctionnement et enregistrer des données !
Le champ #data doit normalement augmenter en fonction de la vitesse de transmission, paramètre -x

Lorsque vous aurez capturé assez de données avec airodump-ng et que aireplay-ng ait généré assez d'IVs, vous pourrez alors trouver la clé WEP via le programme aircrack-ng et grâce à la commande suivante : aircrack-ng -x *cap

S'il n'y a pas d'assez IVs, vous pouvez laisser tourner aircrack-ng qui reprendra automatiquement le traitement tous les 5000 nouveaux IVs capturés.


Comptez bien 15 minutes en fonction de la vitesse et de la distance du point d'accès pour que le programme puisse trouver la clé.
Pour rappel, il faut au moins 40 000 IVs pour cracker une clé WEP !


Ressources
Backtrack
VirtualBox
UNetbootin

Bibliographie
Wiki Backtrack
Forum Crack-wifi



Encryptage WPA/WPA2

BackTrack se présente sous la forme d'un live DVD que vous pouvez lancer tel quel ou mieux, installer sur le disque dur d'un PC.
Il est aussi possible de l'installer sur une clé USB grâce à UNetBootin ou dans une machine virtuel comme VMware ou VirtualBox.
Dans la suite de cet article, nous supposerons que BackTrack est installée en dur sur votre machine.

Pour mener à bien cette démonstration, vous aurez besoin de :

  • D'un PC avec un lecteur de DVD
  • Du DVD de BackTrack
  • Une carte WIFI qui supporte l'injection de paquets
  • Un fichier avec une liste de mots (dictionnaire)

Commencez par télécharger Backtrack et graver l'ISO sur un DVD.
Démarrez le PC avec ce DVD et installez BackTrack sur le disque dur du PC, en Dual Boot ou comme je l'ai fait, sur tout le disque.
Nota : Cette distribution boot en mode console, il faudra donc lancer le serveur X à la main par : startx
Les identifiants / password sont : root / toor

Le serveur X étant démarré, nous allons ouvrir un terminal, Terminator dans mon cas, et activer notre interface en tapant la commande suivante : airmon-ng start wlan0
Normalement, vous devriez voir la liste des périphériques vous permettant de vous connecter en Wifi et vous ne devriez en avoir qu'un seul : mon0 pour monitor 0.


Nous allons maintenant vérifier si la carte Wifi de notre PC supporte bien l'injection de paquets.
Tapez dans le terminal la commande suivante : aireplay-ng -9 mon0
Si Injection is working apparaît, c'est que votre périphérique Wifi est compatible. Dans le cas contraire, il faudra sûrement mettre à jour le pilote...


Toujours dans le terminal, saisissez la commande suivante afin de lancer le scan des différents réseaux Wifi connus autour de vous : airodump-ng mon0 et cherchez le nom de votre box dans la liste.
Notez le BSSID qui est en fait l'adresse MAC du point d'accès, le canal et le type d'encodage car nous en aurons besoin par la suite.
Notez aussi l'adresse qui figure sous Station. Cette adresse permet de joindre un ordinateur connecté au point d'accès et sans cette dernière, vous ne pourrez hacker votre clé WPA.

Il s'agit en fait de faire déconnecter un ordinateur connecté au point d'accès Wifi puis attendre qu'il se reconnecte.
Le gestionnaire de réseau Wifi de Windows est réglé par défaut pour se reconnecter automatiquement à un point d'accès en cas de déconnexion.
Il faudra donc absolument qu'un ordinateur ou un appareil utilisant le Wifi soit connecté sur le point d'accès que vous voulez tester.


Si aucune station n'apparaît, il vous faudra générer un peu de trafic sur votre réseau en lançant une vidéo YouTube par exemple...

Passons aux choses sérieuses. Nous allons maintenant essayer de capturer dans un fichier des trames et surtout le "WPA Handshake" !
Ouvrez un nouveau terminal et placez vous dans votre répertoire de stockage puis tapez la commande suivante : airodump-ng --ch [channel] --wr [fichier sortie] --bssid [bssid] mon0
Remplacez les valeurs entre crochets par vos propres valeurs, les crochets ne sont pas à écrire.


Ouvrez deux nouveaux terminaux. Dans le premier, tapez la commande suivante : aireplay-ng -0 0 -a [bssid] -c [station] mon0 et dans le second, cette commande : aireplay-ng -0 0 -a [bssid] mon0
Remplacez les valeurs entre crochets par vos propres valeurs, les crochets ne sont pas à écrire.


Cette commande va essayer de déconnecter la station passée en paramètres !.
Le paramètre -0 permet de faire déconnecter la station et le deuxième 0 rend cette fonction infinie.


La commande enverra des requêtes de dés-authentification jusqu'à l'appui de CTRL+C !
Vous pourrez arrêter l'attaque après quelques secondes par l'appui de CTRL+C dans les deux fenêtres !

Airodump-ng vous signalera en haut de l'écran à droite qu'il aura capturé un handshake et vous pourrez arrêter Airodump-ng par CTRL+C.
Si le programme ne trouve pas le handshake, exécutez la commande plusieurs fois jusqu'au résultat voulu.
Cela peut être un peu long suivant la force du signal, du routeur ou d'autres paramètres...


Ouvrez un nouveau terminal et tapez : aircrack-ng -w[dictionnaire] [fichier sortie]

Le chemin des deux dictionnaires fournis par défauts sont situés dans le dossier : /pentest/passwords/wordlists
Vous pouvez bien sur en créer d'autres ou modifier ceux fournis avec Backtrack...


Cela va lancer l'attaque brute force pour trouver le mot de passe parmi ceux du dictionnaire.
Si le mot de passe est dans le dictionnaire, vous aurez un message de succès avec le mot de passe entre crochets.
Il va de soit, que plus le dictionnaire contient de mots, plus vous avez de chance de trouver le mot de passe.

Cela peut être très long et très gourmand en ressources machine comme le montre l'écran suivant :


Même avec un dictionnaire de plusieurs Go de mots, il n'est pas dit que vous ayez le mot de passe car il peut être formé d'une suite illogique de caractères !

Si votre réseau n'est pas suffisamment sécurisé et que vous ayez trouvé votre mot de passe en quelques minutes, il est temps de changer le sésame par quelque chose de plus solide...
Si vous êtes en manque d'inspiration, vous pouvez vous tourner vers des sites qui vous proposent de générer pour vous des clés beaucoup plus sécures !
Par exemple, ce site : Générateur de clés WPA


Ressources
Backtrack
VirtualBox
UNetbootin
Dictionnaires

Bibliographie
Wiki Backtrack
Forum Crack-wifi



Clavier AZERTY sous BT / Kali

azerty

Les liveCD de Kali-linux et BT chargent par défaut un clavier QWERTY.
Pour des raisons évidente de facilité, si vous utiliser un clavier AZERTY vous désirerez certainement changer le mode par défaut, il vous suffit d'exécuter la commande suivante :

$ setxkbmap fr



DarkStat sous Backtrack / Kali-Linux

DarkStat est un outil de monitoring réseau léger ayant un impact minimum sur les ressources de votre machine.
La présentation des résultats se fait via une interface web, par des graphiques simplifiés et statistiques sommaires (min/moy/max).
Un récapitulatif du trafic pour les différentes adresses IP ayant eu une connexion avec la machine surveillée est aussi affiché.

Si vous avez démarré avec le live-cd, la commande à lancer est la suivante :

$ ./darkstat -i eth0

Si vous rencontrez une erreur, il vous faudra peut-être utiliser l'option "-b" (bin server) grace à la commande suivante :

$ ./darkstat -b 0.0.0.0 -i eth0

Si vous avez une installation de Kali en dur, vous pouvez modifier le fichier de config /etc/darkstat/init.cfg comme ceci :

# Activer darkstat
START_DARKSTAT=yes

# Spécifier l'interface d'écoute
INTERFACE="i eth0"

# Spécifier le port d'écoute
PORT="-p 4242"

Vous pouvez dès à présent lancer le service par :

$ sudo service darkstat start

Ouvrez votre navigateur et saisissez l'adresse suivante :

$ http://localhost:4242