Usurper des adresses ARP avec Ettercap

NmapNmapBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à effectuer des attaques de spoofing ARP (usurpation d'adresse ARP) à l'aide d'Ettercap, une suite complète pour les attaques de type homme du milieu (man-in-the-middle). Vous explorerez la découverte des appareils réseau avec arp-scan et nmap, puis vous pratiquerez l'interception du trafic entre les cibles grâce à l'empoisonnement ARP.

Cet exercice offre une expérience pratique dans l'exécution et la surveillance d'attaques de spoofing ARP dans un environnement contrôlé. Vous apprendrez les commandes essentielles pour chaque phase de l'attaque tout en comprenant les implications en matière de sécurité dans le monde réel et les techniques d'atténuation.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) hydra(("Hydra")) -.-> hydra/HydraGroup(["Hydra"]) nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/installation("Installation and Setup") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") wireshark/WiresharkGroup -.-> wireshark/installation("Installation and Setup") wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture") wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") hydra/HydraGroup -.-> hydra/installation("Installation and Setup") subgraph Lab Skills nmap/installation -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} nmap/host_discovery -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} nmap/service_detection -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} wireshark/installation -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} wireshark/packet_capture -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} wireshark/packet_analysis -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} hydra/installation -.-> lab-549950{{"Usurper des adresses ARP avec Ettercap"}} end

Installer Ettercap

Dans cette étape, vous allez installer Ettercap, un puissant outil de sécurité réseau utilisé pour les attaques de type homme du milieu (man-in-the-middle) sur les réseaux locaux (LAN). Avant de commencer, comprenons ce que fait Ettercap : il vous permet d'intercepter, d'analyser et de modifier le trafic réseau entre les appareils sur le même réseau. Cela inclut des fonctionnalités telles que l'empoisonnement ARP (que nous utiliserons dans ce laboratoire), la capture de connexions en direct et diverses capacités d'analyse réseau.

Tout d'abord, nous devons mettre à jour la liste des paquets sur votre système Linux. Cela garantit que vous installerez la version la plus récente d'Ettercap disponible :

sudo apt update

La commande sudo vous donne des privilèges d'administrateur, tandis que apt update met à jour la liste des logiciels disponibles sur votre système.

Ensuite, nous installerons Ettercap avec cette commande :

sudo apt install -y ettercap-text

Voici ce qui se passe dans cette commande :

  • sudo apt install est la méthode standard pour installer des logiciels sur les systèmes Debian/Ubuntu
  • Le paramètre -y répond automatiquement "oui" à toutes les invitations pendant l'installation
  • Nous installons spécifiquement ettercap-text (la version texte seulement) car :
    1. Elle est plus stable pour notre environnement en ligne de commande
    2. Elle utilise moins de ressources système que la version graphique
    3. Elle est mieux adaptée aux connexions à distance et aux tâches automatisées

Une fois l'installation terminée, vérifions que tout a fonctionné correctement en vérifiant la version installée :

ettercap --version

Vous devriez voir un résultat affichant le numéro de version et les informations de compilation, similaire à :

Ettercap 0.8.3.1 (built on ...)

Cela confirme qu'Ettercap est correctement installé et prêt à être utilisé. Tout au long de ce laboratoire, nous utiliserons l'interface texte d'Ettercap car :

  • Elle est plus fiable dans l'environnement de machine virtuelle LabEx
  • Elle offre toutes les fonctionnalités dont nous avons besoin pour le spoofing ARP
  • Elle vous aide à vous familiariser avec les outils de réseau en ligne de commande

Identifier les appareils cibles

Avant de lancer une attaque de spoofing ARP (usurpation d'adresse ARP), nous devons d'abord identifier les cibles potentielles sur notre réseau local. Le spoofing ARP fonctionne en trompant les appareils pour qu'ils pensent que nous sommes quelqu'un d'autre sur le réseau, donc nous devons savoir quels appareils sont réellement présents. Nous utiliserons deux outils essentiels de scan réseau : arp-scan pour une découverte rapide des appareils et nmap pour des informations plus détaillées.

Tout d'abord, assurons-nous que nous avons les outils nécessaires installés. Exécutez cette commande pour installer les deux utilitaires :

sudo apt install -y arp-scan nmap

Ensuite, nous devons déterminer quelle interface réseau nous connecte au réseau local. Dans la plupart des cas, notamment dans la machine virtuelle LabEx, il s'agira de eth0. Pour vérifier vos interfaces disponibles et trouver la bonne :

ip a

Recherchez l'interface qui a une adresse IP effectivement attribuée (ce ne sera pas l'adresse de bouclage 127.0.0.1). C'est l'interface que nous utiliserons pour le scan. Maintenant, nous pouvons scanner notre réseau local pour découvrir tous les appareils connectés :

sudo arp-scan --interface=eth0 --localnet

Cette commande envoie des requêtes ARP à toutes les adresses IP possibles sur votre sous-réseau et écoute les réponses. Vous verrez un résultat listant tous les appareils actifs, leurs adresses IP, leurs adresses MAC et parfois des informations sur le fabricant :

192.168.1.1   00:11:22:33:44:55   Fabricant de routeur
192.168.1.2   aa:bb:cc:dd:ee:ff   Appareil cible

Pour un examen plus détaillé d'une cible spécifique, nous pouvons utiliser nmap. Cela est particulièrement utile pour comprendre quels services sont exécutés sur l'appareil cible :

sudo nmap -sV 192.168.1.2

Le paramètre -sV indique à nmap de scanner les ports ouverts et de déterminer les informations sur le service/la version. Choisissez un appareil parmi les résultats de votre scan comme cible pour l'attaque de spoofing ARP (il est recommandé d'éviter de cibler l'infrastructure réseau comme les routeurs ou les passerelles lors d'exercices d'apprentissage).

Lancer le spoofing ARP

Dans cette étape, vous utiliserez Ettercap pour effectuer un spoofing ARP (usurpation d'adresse ARP) entre l'appareil cible et le routeur. Le spoofing ARP est une technique où un attaquant envoie de faux messages ARP pour associer son adresse MAC à l'adresse IP d'un autre appareil. Cette attaque vous permettra d'intercepter le trafic réseau entre la cible et le routeur en les faisant communiquer via votre machine.

Avant de commencer, vous devez identifier trois informations clés :

  1. Le nom de votre interface réseau (généralement eth0 dans la machine virtuelle LabEx)
  2. L'adresse IP du routeur/passerelle (par exemple, 192.168.1.1)
  3. L'adresse IP de l'appareil cible (par exemple, 192.168.1.2)

Pour lancer l'attaque, ouvrez votre terminal et exécutez Ettercap en mode texte avec cette commande :

sudo ettercap -T -i eth0 -M arp:remote /192.168.1.1// /192.168.1.2//

Décortiquons ce que chaque partie de cette commande fait :

  • sudo : Exécute la commande avec des privilèges root (nécessaires pour les opérations réseau)
  • -T : Active l'interface en mode texte (au lieu de la version graphique)
  • -i eth0 : Spécifie quelle interface réseau utiliser
  • -M arp:remote : Active le module d'empoisonnement ARP
  • Les deux derniers arguments spécifient les adresses IP du routeur et de la cible au format /IP// (remplacez-les par vos adresses IP réelles)

Lorsque l'attaque démarre avec succès, Ettercap affichera un résultat montrant les appareils empoisonnés et leurs adresses MAC :

ARP poisoning victims:
 GROUP 1 : 192.168.1.1 00:11:22:33:44:55
 GROUP 2 : 192.168.1.2 AA:BB:CC:DD:EE:FF

Pour confirmer que l'attaque fonctionne, vous pouvez vérifier la table ARP de votre machine avec :

arp -a

Si l'attaque réussit, vous verrez que tant le routeur que l'appareil cible affichent maintenant l'adresse MAC de votre machine au lieu de leurs adresses MAC réelles. Cela signifie que tout le trafic entre eux est acheminé via votre système.

Capturer le trafic usurpé

Dans cette étape, vous allez capturer et analyser le trafic réseau circulant entre l'appareil cible et le routeur en utilisant Wireshark et tcpdump. Cela démontrera l'efficacité de votre attaque de spoofing ARP (usurpation d'adresse ARP). Lorsque le spoofing ARP réussit, tout le trafic entre la cible et le routeur passera par votre machine, vous permettant de l'inspecter.

Tout d'abord, installons Wireshark en mode ligne de commande. Wireshark est un puissant analyseur de protocoles réseau, et tshark est sa version en ligne de commande :

sudo apt install -y wireshark-common tshark

Avant de capturer le trafic, il est recommandé de créer un répertoire dédié pour vos fichiers de capture. Cela organise votre projet et facilite la recherche des fichiers plus tard :

mkdir -p ~/project/captures

Maintenant, nous allons utiliser tcpdump pour capturer le trafic réseau réel. Ouvrez une nouvelle fenêtre de terminal pour cette commande, car elle s'exécutera en continu jusqu'à ce qu'elle soit arrêtée. Le paramètre -i eth0 spécifie l'interface réseau, et -w enregistre la sortie dans un fichier :

sudo tcpdump -i eth0 -w ~/project/captures/spoofed_traffic.pcap

Laissez cette commande s'exécuter quelques minutes pour capturer un trafic significatif. Pendant ce temps, les activités réseau normales entre la cible et le routeur seront enregistrées. Lorsque vous êtes prêt, appuyez sur Ctrl+C pour arrêter la capture.

Pour analyser le trafic capturé, nous allons utiliser tshark. Cette commande lit le fichier de capture et affiche un résumé de tous les paquets capturés :

tshark -r ~/project/captures/spoofed_traffic.pcap

Pour une analyse plus ciblée, nous pouvons filtrer spécifiquement le trafic HTTP. Cela est utile pour examiner les requêtes et les réponses web :

tshark -r ~/project/captures/spoofed_traffic.pcap -Y "http"

Il est particulièrement important d'examiner les requêtes POST, car celles-ci contiennent souvent des données sensibles telles que les identifiants de connexion. Cette commande filtre uniquement ces requêtes :

tshark -r ~/project/captures/spoofed_traffic.pcap -Y "http.request.method == POST"

Mettre fin à l'attaque

Dans cette étape, vous allez terminer correctement l'attaque de spoofing ARP (usurpation d'adresse ARP) et restaurer le fonctionnement normal du réseau. Il s'agit d'une étape essentielle pour garantir l'intégrité du réseau après vos tests de sécurité. Le spoofing ARP laisse le réseau dans un état modifié, il faut donc annuler soigneusement ces modifications.

Tout d'abord, arrêtez le processus Ettercap. Si vous êtes toujours dans la fenêtre de terminal d'Ettercap, appuyez sur q pour quitter proprement. Cela envoie un signal de terminaison approprié à Ettercap. Si vous avez fermé le terminal, vous devez trouver et tuer manuellement le processus :

sudo pkill -f ettercap

Ensuite, vous devez vider le cache ARP de votre machine pour supprimer toutes les entrées empoisonnées. Le cache ARP stocke les correspondances entre les adresses IP et les adresses MAC, et ces correspondances ont été modifiées pendant l'attaque. La commande suivante nettoie complètement toutes les entrées de voisinage/ARP :

sudo ip -s -s neigh flush all

Vérifions que le cache ARP a été correctement vidé. Cette commande affiche les entrées actuelles de la table ARP :

arp -a

La sortie devrait maintenant afficher les adresses MAC correctes pour les appareils de votre réseau, correspondant à leurs adresses matérielles réelles. Pour garantir un nettoyage complet, nous allons redémarrer l'interface réseau. Cela réinitialise toutes les configurations réseau :

sudo ifconfig eth0 down && sudo ifconfig eth0 up

Enfin, vérifiez que la connectivité réseau est pleinement restaurée en envoyant des paquets ICMP (ping) à votre passerelle. Cela confirme que le fonctionnement normal du réseau a repris :

ping -c 4 192.168.1.1

Vous devriez voir des réponses de ping normales sans perte de paquets, ce qui indique que le réseau fonctionne à nouveau correctement. Si vous rencontrez des problèmes, vous devrez peut-être redémarrer les services réseau ou redémarrer les appareils concernés.

Résumé

Dans ce laboratoire, vous avez appris à exécuter des attaques de spoofing ARP (usurpation d'adresse ARP) en utilisant l'interface en ligne de commande d'Ettercap. L'exercice vous a guidé à travers l'installation d'Ettercap-text, l'identification des cibles réseau avec arp-scan et nmap, et le lancement d'attaques MITM (Man-in-the-Middle) en empoisonnant les caches ARP.

Vous avez pratiqué l'interception du trafic réseau entre les appareils usurpés et la terminaison appropriée des attaques pour restaurer le fonctionnement normal. Ce laboratoire a démontré des techniques essentielles d'empoisonnement ARP tout en mettant en évidence l'importance de la reconnaissance réseau dans les évaluations de cybersécurité.