Skip to content

TP2 Part 2 : ARP poisoning

ARP. Casser. 🐈

1. Intro

Le clasico-classique hein. On abuse du protocole ARP pour écrire ce qu'on veut dans la table ARP de quelqu'un d'autre sur notre LAN.

Petit point vocabulaire vitefé, pour être précis, parce que sur internet c'est la jungle.

ARP spoofing ou ARP poisoning ou ARP man-in-the-middle (ARP MITM) ça désigne la même attaque, réalisée de la même façon.

Si on devait définir une différence précise entre ces termes :

  • ARP poisoning : écrire ce qu'on veut dans la table ARP de quelqu'un d'autre
  • ARP spoofing : se servir de cette capacité pour se faire passer pour une autre machine du LAN
  • ARP MITM : se servir de cette capacité pour se faire passer pour A auprès de B, et vice-versa, et ainsi être effectivement en MITM

2. Simple poisoning

ARP Poisoning

Depuis votre machine attaquante, effectuez un ARP poisoning

  • vous le faites avec un script Scapy
  • injectez des fausses données dans la table de bowser
Hint

Je recommande fort de mener l'attque avec un tool qui marche bien (genre arpspoof en ligne de commande) et lancer Wireshark pour voir ce qu'il fait concrètement.
Il ne reste plus qu'à imiter son comportement.
La meilleure doc c'est ton cerveau. Et le mimétisme un des meilleurs leviers pédagogiques (comment t'as appris à (mal) parler ?).

📜 arp_poisoning.py

  • un script Python Scapy qui effectue un ARP poisoning
  • il prend en argument :

    • l'adresse IP de la victime
    • l'adresse IP qu'on veut usurper
  • par exemple, on peut l'appeler comme ça :

# python arp_poisoning.py <VICTIM> <FAKE_IP>
python arp_poisoning.py 10.1.10.1 10.1.10.10
Hint

Vous pouvez constater que l'attaque fonctionne en consultant la table ARP de la victime : vous verrez la correspondance IP<>MAC que vous venez d'injecter.

Wireshark this

  • on doit voir les trames ARP malveillantes de l'attaque et les réponses s'il y en a (uniquement ça)
  • au moins une dizaine de trames :)

🦈 p2_poisoning.pcap


3. MITM

Look at me

Une fois qu'on peut écrire un peut ce qu'on veut dans la table ARP de quelqu'un d'autre, on est à deux doigts du MITM.

Ici, on va MITM bowser et sa passerelle r1 : on pourra donc voir tout ce que bowser envoie vers les autres réseaux et internet.

Pour ça, il suffit de :

  • ARP poisoning bowser pour usurper l'adresse IP de r1
  • ARP poisoning r1 pour usurper l'adresse IP de bowser

Effectuer un MITM ARP

  • la victime : bowser

Wireshark this

  • on doit voir les trames ARP malveillantes de l'attaque et les réponses s'il y en a

    • au moins une dizaine de trames :)
  • on doit voir les pings que bowser envoie à r1 ou vers internet, démontrant que le MITM est effectif

🦈 p2_mitm.pcap


Prewt. Un lien vers la dernière section pour aboutir à un truc un peu cool 🐈