Plan du site  
pixel
pixel

Articles - Étudiants SUPINFO

Le protocole ARP

Par Maël REY Publié le 06/10/2016 à 16:31:25 Noter cet article:
(0 votes)
Avis favorable du comité de lecture

Le protocole de résolution d'adresse ou address resolution protocol en anglais fait partie de la couche réseau (Troisième couche du modèle OSI). Il tient son nom du fait qu'il permet de connaître l'adresse physique d'une carte réseau correspondant à une adresse IP.

Le but du protocole ARP

Chaque machine connectée à un réseau possède une adresse MAC. Pour les jeunes néophytes, c'est un numéro d'identification de 48 bits. Ce numéro unique à chaque machine est fixé dès la fabrication de la carte réseau en usine.

Toutefois, la communication sur internet ne se fait pas directement à partir de ce numéro ! Car cela nous obligerait à changer l'adresse d'un ordinateur, chaque fois que l'on change sa carte réseau. Nous utilisons donc une adresse logique, appelée adresse IP, qui sera attribuée à notre machine par la suite.

Pour pouvoir faire correspondre les adresse physiques et les adresses logiques, nous utilisons donc le protocole ARP. Ce dernier va intérroger les machines de notre réseau, pour connaître leur adresse physique. Il créera ensuite une table de correspondance, qui reliera les adresses physiques et les adresses logiques et les gardera en mémoire.

Quand une machine devra communiquer avec une autre machine, elle consultera la table de correspondance qui aura été créée au préalable. Si l'adresse recherchée ne se trouve pas dans notre table de correspondance, le protocole ARP émettra une requête sur notre réseau. L'ensemble des machines connectées au réseau vont alors comparer la requête à leur propre adresse logique et si elles trouvent une correspondance, la machine répondra au protocole ARP qui stockera le couple d'adresse dans notre table de correspondance ! La communication pourra ensuite avoir lieu entre les deux machines.

Le protocole RARP

Le protocole ARP inversé ou Reverse Address Resolution Protocol est beaucoup moins utilisé que son original. Comme le laisse entendre son nom, il s'agit d'une table de correspondance inversé des adresses logiques et physiques. Il est principalement utilisé pour des stations de travail qui n'utilise pas de disques durs et qui souhaitent connaître leur adresse physique.

Le protocole RARP permet à une station de travail de connaître son adresse IP à partir de la table de correspondance entre les adresses MAC et les adresses IP hébergées par une passerelle située sur le même réseau local.

Il faut qu'un administrateur paramètre notre routeur avec la table de correspondance adéquate, pour permettre à notre station de connaître son adresse IP. Contrairement au protocole ARP qui peut éventuellement se mettre à jour, le protocole RARP est lui statique ! Ce qui signifie qu'à chaque nouvelles cartes réseaux, il faudra mettre la table de correspondance à jour !

Malgré tout, RARP souffre de nombreuses limitations... Le temps d'administration pour maintenir des tables sur des serveurs sera proportionnel à la taille de votre réseau. Plus il est grand, plus vous passerez de temps dessus ! Ce qui le rend difficilement applicable de nos jours dans les grosses sociétés et pose des problèmes de ressources humaines. La mise à jour des tables de correspondance et les capacités des matériels hébergeant la partie serveur du protocole RARP vous demanderont beaucoup de travail ! Car RARP permet à plusieurs serveurs de répondre à des requêtes, bien qu'il ne prévoit pas de mécanismes garantissant que tous les serveurs puissent répondre. Ni même qu'ils ne répondent de manière identique ! Dans ce type d'architecture, on ne peut donc pas avoir confiance en un serveur RARP pour savoir si une adresse MAC peut-être liée à une adresse IP, parce que d'autres serveurs ARP pourront avoir une réponse différente. De plus, un serveur utilisant le protocole RARP ne peut servir qu'un LAN (local area network)...

C'est pourquoi, afin de résoudre ces deux problèmes d'administration, le protocole RARP peut-être remplacé par le protocole DRARP (Un protocole RARP dynamique). Mais il est aussi possible d'utiliser un serveur DHCP, pour permettre une résolution dynamique des adresses. DHCP étant également compatible avec le protocole BOOTP (BOOTP est routable), cela lui permet de servir plusieurs LAN.

Sécurité du protocole ARP

Le protocole ARP présente plusieurs problèmes de sécurités. Il est d'ailleurs particulièrement vulnérable aux attaques locals, qui consistent à envoyer de faux messages ARP à un ou plusieurs ordinateurs. On appel cela la Pollution de cache ARP et la vulnérabilité d'un ordinateur à ces attaques dépendra de l'implémentation du protocole ARP par son système d'exploitation.

Ce genre d'attaque consiste donc à envoyer un paquet "ARP who-has" à une machine A, pour prendre la place d'une machine B. Le paquet contiendra en adresse IP source (L'adresse IP qui indique d'où vient le message), l'adresse IP de la machine B, à la place de notre propre adresse IP.

Le paquet contiendra également l'adresse MAC de notre machine, laissant ainsi croire à la machine A que notre adresse MAC correspond à l'adresse IP de la machine B dont nous souhaitons usurper l'identité.

La machine destinataire de notre paquet ARP who-has (Machine A), créera donc une nouvelle entrée dans la table de correspondance ! Sauf qu'elle utilisera notre paquet pour créer cette nouvelle entrée dans sa table. Si jamais la machine A souhaite communiquer avec la machine B au niveau IP, c'est notre propre machine qui recevra les trames, puisque notre adresse MAC est enregistré dans le cache de la machine A comme équivalence pour l'IP de la machine B.

Une image valant mille mots, je vous laisse mieux comprendre le problème...

C'est une faiblesse connue de l'implémentation d'ARP et qui permet de corrompre facilement un cache ARP distant. Comme vous l'aurez compris, il ne suffit que d'un seul et unique paquet pour corrompre la table de correspondance... Ces attaques sont donc d'une simplicité déconcertante !

Elles peuvent amener à une écoute des communications en se plaçant entre deux machines (Man in the middle), au vol de connexion, à un déni de service (En refusant tous les paquets une fois installé entre les deux ordinateurs), etc...

Les seuls moyens de lutter contre ce type d'attaques sont :

  • De mettre en place des entrées statiques dans le cache ARP de chaque machine réseau. Mais encore une fois, ceci n'est possible que pour un faible nombre de machines et risque de coûter en ressources humaines.

  • De limiter les adresses MAC sur chaque port des commutateurs (renseignement statique).

  • De surveiller les messages ARP circulant sur le réseau informatique, à l'aide d'outils de surveillance (Il en existe des dizaines différents).

Malgré tout, chaque entrée à une durée de vie ! Certains systèmes d'exploitation vous permettront de modifier la valeur du temps d'expiration. Ce qui obligera l'attaquant à corrompre régulièrement le cache de ses victimes et vous serrez en mesure de vous en rendre compte plus facilement.

A propos de SUPINFO | Contacts & adresses | Enseigner à SUPINFO | Presse | Conditions d'utilisation & Copyright | Respect de la vie privée | Investir
Logo de la société Cisco, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société IBM, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sun-Oracle, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Apple, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Sybase, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Novell, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Intel, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Accenture, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société SAP, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Prometric, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo de la société Toeic, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management Logo du IT Academy Program par Microsoft, partenaire pédagogique de SUPINFO, la Grande École de l'informatique, du numérique et du management

SUPINFO International University
Ecole d'Informatique - IT School
École Supérieure d'Informatique de Paris, leader en France
La Grande Ecole de l'informatique, du numérique et du management
Fondée en 1965, reconnue par l'État. Titre Bac+5 certifié au niveau I.
SUPINFO International University is globally operated by EDUCINVEST Belgium - Avenue Louise, 534 - 1050 Brussels