top of page

ARP spoofing :

Dernière mise à jour : 4 sept. 2020

Présentation de la situation professionnelle :


Le but est ici de montrer l'importance de sécuriser le protocole ARP au sein de son réseau local d'entreprise, car une modification de cache ARP est très facile et rapide à mettre en place et l'ARP spoofing n'est pas réellement détectable pour des personnes ne connaissant pas l'informatique


Introduction :


Le protocole ARP ( address resolution protocol) est nécessaire au fonctionnement des réseaux locaux, cependant il est vraiment très peu sécurisé.



But : Il est utilisé par une machine pour récupérer l'adresse MAC d'une autre machine grâce à son adresse IP


Fonctionnement :

La machine, souvent le routeur envoie un ARP request "who is x.x.x.x et le destinataire répond " x.x.x.x is at @MAC" c'est un ARP reply


La cache ARP d'une machine contient les couples @IP/@MAC on peut l'obtenir avec : arp -a






On comprend qu'il est vraiment facile de falsifier le cache arp d'une machine en répondant à son ARP request ou alors tout simplement en la spamant de ARP reply.


Nous allons voir comment empoisonner le cache ARP d'une machine et de son routeur afin d'intercepter les communications qu'il pourraient avoir.


Pour cela j'aurais besoin de :


-Un routeur (votre box ou autre) : 172.23.0.254

-Une machine victime (Windows 10) : 172.23.0.60

-Une machine attaquante (Kali-Linux) avec dsniff d'installé (contient arpspoof) : 172.23.0.65




La première chose à faire est d'activer le routage sur ma machine Linux :

root@kaliLaZ:/# echo 1 > /proc/sys/net/ipv4/ip_forward


Cette modification n'est pas prise en compte lors du redémarrage. De base ip_forward = 0

(routage désactivé)


Une fois le routage sur kali activé il faut connaître l'adresse IP de la passerelle par défaut (le routeur ), dans mon cas c'est 172.23.0.254 et l'adresse IP de ma machine Windows est 172.23.0.60


Une fois que je connais ces informations je vais pouvoir me placer tranquillement entre les deux machines et voir leurs conversations :

La commande est :

Dans cette commande : je dis que la passerelle par défaut de 172.23.0.60 (machine Windows) se trouve à l'adresse MAC 8:0:27:7c:18:be (machine Kali-Linux)


J'effectue la même commande mais en inversant les 2 adresses IP pour faire croire au routeur que je suis 172.23.0.60 :

Nos 2 machines pensent donc envoyer du trafic à une machine qui n'est pas la bonne mais comme le routage est activé sur ma machine Linux, ce n'est pas détectable, en tout cas pas directement mais un simple tracert vers google me montre que ma connexion passe par une autre machine que le routeur avant de le traverser :












J'ai bien mis en évidence le tracert sans avoir corrompu la table ARP de windows puis le tracert après avoir corrompu la table, et dans ce cas, on voit bien que ma machine 172.23.0.60 envoie ces paquets à 172.23.0.65 (Machine Linux)


Si je lance un ping depuis Windows vers google (8.8.8.8) :








Mon ping arrive bien vers le serveur de google.


En lançant cette commande sur ma machine kali linux je peux voir les pings de ma machine Windows :

On arrive bien à intercepter les ping.


Il existe certaines solutions comme arpwatch (détecte les modifications de cache ARP)

DAI ( Dynamic ARP Inspection ) : repère les incohérences de cache, peut bloquer les attaquants et limite le nombre d'attaques par secondes.


Rappel : dans l'en-tête ARP le champ operation désigne ce que l'on fait :

01 = ARP request

02 = ARP reply

Comentários


Post: Blog2_Post
bottom of page