Sunteți pe pagina 1din 3

ARP spoof

Lundi, 10 Aot 2009 23:04 - Mis jour Samedi, 07 Novembre 2009 23:56

Dans cet article, j'explique le principe d'une attaque trs connues pratique souvent par des personnes malveillantes l'intrieur d'un rseau local pour couper la connexion sur d'autres personnes et s'approprier le maximum du dbit de la connexion internet. Cette attaque est utilise aussi, comme son nom l'indique (spoof pour vol d'identit), pour couter les communications d'autres machines sur le rseau lorsque celui-ci est quip de switch (commutateur) pour multiplexer les communications entre les diffrentes machines. Je vais essayer, dans la suite, de dcrire les deux approches, montrer leurs finalits et donner des astuces pour s'en prmunir.

Je vais commencer, donc, par la coupure de connexion. En fait, le principe est simple, mais il faut avoir une ide sur le modle OSI (Open System Interconnection) et ses diffrentes couches pour comprendre exactement comment a se passe. Bon, moi je vais essayer de survoler les dtails pour ne donner qu'une vue globale sur le principe. Vous avez srement entendu parler du protocole IP (Internet Protocol). Oui, il s'agit du protocole qui dfinit comment les machines sont identifies sur internet ou sur un rseau donn. Il est bas sur des adresses de la forme xxx.xxx.xxx.xxx, o xxx est un entier cod sur un octet, et donc, pouvant prendre des valeurs entre 0 et 255. Il faut savoir aussi que l'adressage IP est un adressage logique trs flexible, mais que ce n'est pas rellement lui qui est utilis pour identifier les machines sur le rseau lorsqu'elles communiquent entre elles. Pour a, on utilise ce qu'on appelle des adresse physique, ou adresse Mac, qui est un identifiant propre l'interface rseau donn par son constructeur, et elle est compose de 6 octets la diffrence des adresses IP (4 octets). Je sais, tout a parat un peu louche surtout quand vous l'entendez de la part de quelqu'un qui ne matrise pas parfaitement le principe, mais pour cela je vous invite vivement dcouvrir la philisophie de l'adressage IP sur internet et la puissance de ce concept. Si je me rappelle bien, sur ce site http://www.frameip.com/ , vous pouvez trouver beaucoup d'information sur le sujet. Bref, je ne vais pas m'attarder sur les notions thoriques. Je vais par contre, vous montrer comment les machines communiquent dans un rseau local, et o se trouve la faille qui permet de monopoliser le dbit.

1/3

ARP spoof

Lundi, 10 Aot 2009 23:04 - Mis jour Samedi, 07 Novembre 2009 23:56

Pour commencer, chaque machine sur notre rseau possde une adresse physique, qui est l'adresse de la carte/interface rseau que vous utilisez pour vous connecter (a peut tre la carte rseau local ou la carte rseau sans fil). De plus, chaque machine possde une adresse logique IP, attribue par un serveur DHCP ou que vous fixez vous-mmes. On suppose que le rseau est constitu d'un serveur (une passerelle connecte internet et qui va partager cette connexion au reste du rseau), et de quelques machines connectes. La connexion entre la machine serveur et les autres machines peut se faire avec un concentrateur (Hub) ou un commutateur (switch). Lorsqu'une machine A veut s'adresser une autre machine B sur le rseau local, elle va s'adresser B avec son adresse IP, IP(B). Mais comme je l'ai dit prcdemment, la communication se fait rellement avec les adresses Mac. Donc, A doit avoir Mac(B) pour communiquer avec elle. Pour cela, A doit commencer par connaitre Mac(B) pour lui adresser la parole. Donc, A commence, d'abord, par envoyer une demande toutes les machines du rseau pour leur dire, Qui a IP(B). Et dans ce cas, la machine concerne B rpond par son adresse Mac(B). En mme temps, B va connatre Mac(A) qui a t envoye dans le paquet de demande. Ainsi, A et B peuvent commencer communiquer. En fait, ce mcanisme est dfini par le protocole ARP (Address Resolution Protocol) ou protocole de rsolution d'adresses. Ce mcanisme de rsolution ne va pas se rpter toute transaction, et pour viter a, on utilise un cache ARP, c'est dire qu'une machine ayant rsolu l'adresse Mac d'une autre, elle va sauvegarder la correspondance IP-Mac de cette machine pour un certain temps qui dure une vingtaine de secondes. Aprs a, elle doit rsoudre de nouveau l'adresse de son interlocuteur.

Le point faible dans le mcanisme de rsolution d'adresse est qu'une machine peut envoyer un paquet ARP de rponse, c'est dire un paquet o elle dit "c'est moi qui a l'IP recherche et voil mon adresse Mac" sans qu'il y ait, au pralable, un paquet de demande qui a t envoy. En fait, ceci permet une machine de se dclarer lorsqu'elle se connecte au rseau et qu'elle a une IP fixe, pour voir s'il y a une autre machine ayant la mme adresse (ceci est derrire le message "il y a un conflit d'adresse IP" qu'on voit parfois sur Windows). D'autre part, cette "faille" (ce n'est pas vraiment une), peut tre utilise par des personnes malveillantes. En effet, lorsqu'une machine communique avec le serveur (la passerelle) pour se connecter internet, un attaquant peut construire lui mme les trames rseau et envoyer des paquets rponses ARP toutes les machines du rseau, dans lesquels il dclare une fausse adresse Mac pour l'adresse IP du serveur. Ca se passe comme si le serveur se dclarait avec une fausse adresse Mac, et dans ce cas les machines victimes vont perdre la connexion. L'attaquant doit envoyer les faux paquets des intervalles de temps rguliers en tenant compte de la frquence du rafraichissement du cache ARP.

Cette mme attaque peut tre utilise pour espionner les communications entre machines. Il s'agit, ici, de l'attaque de l'homme au milieu. L'attaquant se fait passer pour l'une des deux parties. Pour cela, il envoie l'autre des paquets rponse ARP qui disent que l'adresse IP du

2/3

ARP spoof

Lundi, 10 Aot 2009 23:04 - Mis jour Samedi, 07 Novembre 2009 23:56

vrai interlocuteur est associe l'adresse Mac de l'attaquant. Donc, l'attaquant va intercepter les messages du premier et il les transmet au deuxime. Les deux machines victimes vont communiquer sans savoir qu'il y a une tierce partie les espionnant. Chacune des deux machines voit l'autre avec l'adresse Mac de l'attaquant sans se rendre compte et va lui envoyer ses paquets. Et l'attaquant va faire la corresondance entre les deux en faisant les modifications ncessaires (au niveau des adresses Mac transcrites dans les paquets transmis). La puissance de cette attaque rside dans le fait qu'elle permet de contourner l'isolation que font les switchs. En fait, un switch est un boitier sur lequel sont connectes plusieurs machines. Le rle du switch est de diriger les paquets qui sont destins une machine, la machine en question sans l'envoyer aux autres. Les Hubs fonctionnent diffremment. Lorsqu'ils reoivent un paquet, ils le transmettent toutes les machines qui y sont connectes, et dans ce cas, tout le monde peut couter les communication. Avec l'attaque du ARP spoof, un espion pourra toujours couter deux machines parce qu'il va se mettre au milieu.

Enfin, il faut savoir se dfendre contre ce genre d'attaques, et ceci n'est pas trs difficile (sauf peut tre sur Windows Vista). Il suffit de fixer l'entre de correspondance IP-MAC dans le cache ARP avec la vraie adresse MAC de la machine laquelle vous vous intressez. Pour visualiser le cache ARP, il suffit de taper la commande arp -a. Et pour fixer une autre, utilisez la commande arp -s IP MAC. En visualisant de nouveau le cache, vous allez remarquer que l'entre a t marque comme permanante ou statique. Vous pouvez crire un script qui fait a chaque dmarrage de votre machine, ou si vous tes sur Linux, vous pouvez fixer certaines entres lors de la compilation du noyau.

Ici j'ai mis un petit programme en C que vous pouvez compiler sur Linux. Il permet de forger des paquets ARP et les envoyer en direction d'une machine du rseau pour la tromper. Si vous voulez l'envoyer toutes les machines, il faut utiliser l'adresse de Broadcast (normalement l'adresse MAC FF:FF:FF:FF:FF:FF). Faites en bon usage ;)

3/3

S-ar putea să vă placă și