Bijour à tous …
En ces temps trouble en matière de sécurité informatique en France, voilà de quoi vous amuser sur votre réseaux local. (à noter que cette technique existe depuis la nuit des temps … c’est juste pour écrire un petit article)
Rapidement, cette technique existe depuis longtemps très longtemps, et repose sur un petit problème du protocole ARP :
Lorsque votre ordi se connecte à un autre ordi, il applique le masque de ss-réseaux sur l’IP, et suivant les cas, envoi le paquet :
- directement à l’ordi en se basant sur l’adresse MAC, si il est dans le même ss-réseaux.
- à la passerelle, qui recommencera le même procédé jusqu’à arriver dans le même ss-réseaux pour transférer les données.
Ce mécanisme repose donc sur un point important … l’adresse MAC, sachant qu’en IPv4 le routage et le transport des données sont deux choses différentes, on peut penser transférer des paquets à la bonne personne, alors que ça n’est pas le cas.
Pourquoi ?? Avant l’envoi des données, il faut connaitre l’adresse MAC d’une IP, et pour cela on envoi un superbe paquet contenant un message du genre : who-has 192.168.1.1, et l’ordi en question est censé répondre 192.168.1.1 is-at 00:11:22:33:44:55 … vous avez bien entendu compris qu’un seul ordi est censé répondre, mais si un autre ordi répondait, il serait apte à récupérer les données destiné à quelqu’un d’autre … horreur!!
Comment profiter de cette « faille » ?
… sous linux, c’est très simple (et sous windows encore plus ^^) :
Sous linux, on peut utiliser le logiciel ettercap ou arpspoof, qui se chargera de balancer des is-at sur le réseaux.
Mais avant ça, il faut mettre en marche l’ip_forwarding (sinon, les paquets vont s’arrêter à notre ordi et la victime sera déconnecté du net … utile pour faire passer les gosses à table, avec ça on deco de wow en 2 secs xD)
Il faut donc faire un echo 1 > /proc/sys/net/ipv4/ip_forward en root puis utiliser une des deux commandes suivante :
- Ettercap : ettercap -Tq -i interface -M arp:remote /ip_victime/ //
- Arpspoof : arpspoof -i interface -t ip_victime ip_a_détourner
Sous windows, il existe cain de oxid.it, qui est un très bon logiciel pour ce genre de chose ^^.
Après quelque secondes, vous devriez être capable de voir le traffic provenant de ip_victime … j’ai bien dit provenant, donc, si ip_victime se connecte à un site web, vous ne verrez que le GET / … de le requête et pas le retour du serveur vers ip_victime.
Ce cas nommé « half-routing » n’est vrai que pour arpspoof, car cain et ettercap s’occupent de faire la manipulation inverse c-à-d envoyer des paquets ARP à la passerelle ou à l’ip par laquelle la victime passe, pour récupérer les données à destination de ip_victime (on parle alors de full-routing).
Où peut-on profiter de cette « faille » ?
A partir du moment où l’on est dans le ss-réseaux des ordi à détourner à savoir :
- Les réseaux wifi
- Les sous-réseaux relié par hubs, routeurs, …
- …
Qu’est-il possible de faire après le détournement des données ??
En faisant tourner un sniffer, il est possible de récupérer toutes les données (mots de passe, certificats, pages web, discussion via msn, détournement de DNS pour du phishing, …)
Des sniffers connu :
- wireshark (peut potentiellement tous récupérer)
- dsniff (spécialisé dans la récupération des mots de passe en tous genre)
- la suite de snarf (mailsnarf, msgsnarf, urlsnarf) (permet de récupérer les données propre aux mails, messageries instantannée, et service web).
Pour détourner des noms de domaines (cf. un de mes autres articles ^^).
Certain logiciels, peuvent même par exemple récupérer les discussions msn et les modifier à la volées (malheureusement, je ne me souvient plus du nom du soft :p).
Comment se protéger ?
Comme je l’ai dit dans mon intro, le problème repose sur le fait que le routage (l’utilisation des mac) et le transport (l’utilisation d’ip) est dissocié, pour remédier à ce problème, on peut faire plusieurs chose :
- Monter un réseaux en IPv6 (comme l’ip est la « description du routage », ça devient plus dur ^^).
- Assigner à chaque MAC une ip fixe en dur.
- Passer en IPSec.
- Utiliser des logiciels du type arpwatch ou ettercap (qui permet aussi de détecter les attaques sur le réseaux), qui peuvent rapporter des changements d’adresse IP/MAC impromptu …
Donc voilà une raison de plus de protéger son réseau wifi … en plus du problème que connait le wpa ^^.