Qu’est-ce que l’ICMP ? Fonctionnement et utilisation

L’ICMP est un protocole de couche réseau utilisé pour résoudre les problèmes de réseau. Découvrez ici l’ICMP, son fonctionnement et la manière de sécuriser ses vulnérabilités.

Mar 13, 2023
8 minute read
ICMP Internet Control Message Protocol printed text on a keyboard.
Enterprise Networking Planet Le contenu et les recommandations de produits sont indépendants de la rédaction. Nous pouvons gagner de l'argent lorsque vous cliquez sur des liens vers nos partenaires. En savoir plus

L’Internet Control Message Protocol (ICMP) est un protocole essentiel de la couche réseau, utilisé pour permettre la communication entre les équipements réseau. Il aide à détecter et à signaler les erreurs, à envoyer des messages de requête et à informer les hôtes des congestions du réseau. 

L’ICMP utilise des messages par paquets dans les réseaux IPv4 et IPv6 pour fournir des informations sur l’état du réseau sous-jacent. L’ICMP ne gère pas directement les données, mais informe l’expéditeur lorsque les données n’atteignent pas leur destination prévue ou lorsqu’elles sont reçues dans le désordre. 

Les fonctionnalités de l’ICMP rendent les communications sur les réseaux plus fluides et plus fiables, en garantissant que les informations sont transmises avec précision et efficacité.

ICMPv4 et ICMPv6 sont deux versions différentes du protocole ; bien qu’elles présentent certaines similitudes, elles diffèrent également sur plusieurs points. 

En plus de sa fonction première, qui consiste à assurer la communication entre les équipements réseau, l’ICMP est également devenu une cible pour les acteurs malveillants en raison de sa vulnérabilité à différents types d’attaques. Il est donc important de comprendre son fonctionnement et de savoir le configurer correctement afin de garantir la sécurité de votre réseau.

Comment fonctionne l’ICMP ?

L’ICMP est un protocole sans connexion utilisé à des fins de gestion du réseau, contrairement à l’Internet Protocol (IP), qui nécessite un protocole de la couche transport comme TCP ou UDP. 

L’ICMP n’inclut pas les processus associés à l’établissement et à la fermeture des connexions, comme le fait TCP, et ne permet pas non plus de cibler des ports sur les équipements.

Contrairement à l’approche orientée connexion des autres protocoles, l’ICMP envoie des messages sans nécessiter au préalable de poignée de main, ce qui fournit une structure globale plus simple pour transmettre des informations d’un équipement à un autre.

Composants d’un message ICMP

Un message ICMP se compose d’un en-tête IP qui encapsule une section de données de taille variable. 

Advertisement

Les données ICMP contiennent les champs suivants :

  • Type : ce champ de 8 bits identifie le type de message ICMP ; ses valeurs possibles vont de 0 à 127 pour les messages ICMPv6. Les valeurs comprises entre 128 et 255 correspondent à des notifications informatives.
  • Code : ce champ de 8 bits sert à distinguer les sous-types et détermine le type de message ICMP envoyé.
  • Somme de contrôle : champ de 16 bits permettant de détecter la présence éventuelle d’une erreur dans le message.
  • Pointeur : champ de longueur variable qui identifie le problème dans le message d’origine. Ce champ est facultatif.
  • Datagramme d’origine : autre champ de longueur variable contenant une partie du paquet IP d’origine à l’origine de l’erreur. Ce champ est également facultatif.

2 types de messages ICMP

Il existe deux catégories de messages ICMP : les messages de signalement d’erreur et les requêtes.

Messages de signalement d’erreur

Les messages de signalement d’erreur sont envoyés lorsqu’un nœud ou un routeur rencontre une erreur. 

Voici quelques exemples de messages de signalement d’erreur :

  • Destination inaccessible : envoyé lorsqu’un équipement reçoit un paquet IP et détermine que la destination est inaccessible.
  • Suppression de source : informe les machines émettrices qu’elles doivent réduire le débit auquel elles envoient les données, généralement en raison d’une congestion du réseau ou d’une limitation technique, par exemple lorsqu’un routeur ne peut pas gérer un débit de transfert élevé.
  • Délai dépassé : lorsqu’un routeur constate que le champ Time-to-Live (TTL) d’un paquet a atteint zéro, il envoie ce message à l’expéditeur du paquet.
  • Problème de paramètre : envoyé lorsqu’un en-tête IP ou une longueur de paquet non valide est détecté par un routeur.
  • Redirection : envoyée lorsqu’il existe une meilleure route permettant à l’expéditeur du paquet d’atteindre sa destination.

Messages de requête

Advertisement

Ces messages sont envoyés pour interroger l’équipement de destination sur des informations précises.

Les messages de requête comprennent :

  • Requête/réponse d’écho : utilisé pour vérifier si un équipement est actif sur le réseau en envoyant un message Echo Request et en attendant un message Echo Reply de la destination.
  • Requête/réponse d’horodatage : utilise deux champs d’horodatage, l’un envoyé dans la requête et l’autre dans la réponse.
  • Requête/réponse de masque d’adresse : permet aux équipements d’interroger le masque de sous-réseau de l’équipement de destination.

Comment utiliser l’ICMP

L’ICMP est utilisé de trois manières dans les réseaux : pour signaler des erreurs, comme outil de diagnostic ou pour dégrader les performances du réseau au moyen d’une attaque par déni de service (DoS).

Signalement des erreurs

L’ICMP est principalement connu pour son rôle dans le signalement des erreurs. Il est utilisé entre deux équipements connectés via Internet pour détecter et signaler les échecs de transfert de données, quelle qu’en soit la raison. 

Par exemple, l’ICMP peut être déclenché par un routeur qui abandonne un paquet de données trop volumineux pour être traité. Dans ce cas, le routeur transmet à l’expéditeur un message ICMP contenant des informations sur le problème. L’équipement émetteur peut alors corriger le problème ou renvoyer les données, ce qui garantit une communication efficace sur les connexions Internet.

Advertisement

Comme outil de diagnostic

L’ICMP peut être utilisé comme outil de diagnostic pour vérifier la disponibilité, l’itinéraire et l’état d’un système sur un réseau à l’aide d’ICMP et du Simple Network Management Protocol (SNMP). 

L’un des outils de diagnostic ICMP les plus courants est ping. Il transmet une requête d’écho ICMP à un équipement réseau et attend une réponse d’écho ICMP. Ping peut également servir à vérifier les pertes de paquets et les délais au sein d’un réseau. 

Un autre outil de diagnostic ICMP est traceroute, qui utilise des messages ICMP pour retracer le chemin des paquets d’un hôte à un autre.

Dégradation des performances du réseau

Les cybercriminels peuvent utiliser l’ICMP pour dégrader les performances du réseau en lançant une attaque par déni de service (DoS). 

Les attaques DoS sont menées en saturant les systèmes de requêtes ICMP. Un nombre excessif de messages ICMP peut considérablement ralentir ou interrompre le fonctionnement d’un ordinateur ou d’un réseau, épuisant ainsi les ressources du système ciblé.

L’ICMP peut également être utilisé dans une attaque Smurf ou une attaque ping de la mort, comme indiqué dans la section « Menaces de sécurité liées à l’ICMP » ci-dessous.

L’ICMP dans IPv4 et IPv6

Comme on peut s’y attendre, l’ICMP fonctionne différemment dans IPv4 et IPv6 à plusieurs égards. Dans IPv6, l’ICMP est bien sûr un protocole plus robuste et plus dynamique, qui permet un nombre bien plus important de tâches, un signalement plus étendu des sommes de contrôle et une différenciation des types de messages.

Fonctionnalités plus étendues

L’Internet Control Message Protocol version 6 (ICMPv6) offre une fonctionnalité plus complète dans IPv6 que l’ICMPv4 dans IPv4. Dans IPv6, l’ICMPv6 joue un rôle essentiel dans l’annonce des routeurs, la découverte de la MTU du chemin et la gestion des groupes multicast — des tâches que l’ICMPv4 ne couvre pas.

Advertisement

Formatage des messages

Les formats des messages diffèrent entre ICMPv4 et ICMPv6. Plus précisément, lors du calcul des sommes de contrôle de chaque version de l’ICMP, le résultat varie en fonction des éléments couverts. 

Alors qu’avec ICMPv4, le calcul de la somme de contrôle porte uniquement sur le message lui-même, avec ICMPv6, il porte à la fois sur le message et sur un pseudo-en-tête, qui comprend certains champs de l’en-tête IPv6.

Types de messages

Les messages ICMPv6 utilisent un champ de type correspondant au bit de poids fort pour différencier les erreurs des messages informatifs, contrairement à ICMPv4. Certains codes de message sont également propres à ICMPv4 ou à ICMPv6. 

Valeurs du champ Next Header

ICMPv6 possède une valeur distincte pour le champ Next Header par rapport à ICMPv4, qui utilise une valeur de 1 pour le champ Protocol. Dans IPv6, les messages ICMPv6 peuvent commencer après un ou plusieurs en-têtes d’extension ; le dernier en-tête d’extension contient un champ Next Header de valeur 58 pour indiquer un message ICMPv6. 

De plus, les messages ICMPv6 peuvent être transportés par d’autres protocoles, ce qui n’est pas possible avec ICMPv4.

Menaces de sécurité liées à l’ICMP

Comme tout protocole réseau, l’ICMP est vulnérable à plusieurs menaces de sécurité, notamment le tunneling, la découverte de routeurs, les attaques Smurf et Fraggle, ainsi que les attaques ping de la mort.

Advertisement

Tunneling ICMP

Le tunneling ICMP est une technique qui consiste à encapsuler d’autres protocoles ou données dans des paquets ICMP afin de contourner les pare-feu ou d’échapper à la détection.

Découverte de routeurs ICMP

La découverte de routeurs ICMP est un type de message ICMP qui permet aux hôtes de découvrir les routeurs présents sur leur réseau. Bien qu’elle soit généralement inoffensive, elle peut également être utilisée par des attaquants pour usurper des annonces de routeurs et rediriger le trafic vers des destinations malveillantes.

Attaque Smurf

Les attaques Smurf sont un type d’attaque DoS qui consiste à envoyer un grand nombre de requêtes d’écho ICMP avec une adresse source usurpée vers une adresse de diffusion réseau. Tous les hôtes du réseau répondent alors par des réponses d’écho ICMP à l’adresse usurpée, saturant la bande passante et les ressources de la victime.

Attaque Fraggle

Les attaques Fraggle sont similaires aux attaques Smurf, mais utilisent des paquets UDP au lieu de paquets ICMP. L’attaquant envoie des paquets UDP avec une adresse source usurpée vers une adresse de diffusion réseau sur le port 7 (echo) ou le port 19 (chargen). Tous les hôtes du réseau répondent alors par des paquets UDP à l’adresse usurpée, inondant le réseau de la victime.

Attaque par inondation ICMP

L’inondation ICMP est un type d’attaque DoS qui consiste à envoyer un grand nombre de paquets ICMP, tels que des requêtes Echo ou des messages Destination Unreachable, à un hôte cible. L’objectif est de consommer les cycles processeur et la mémoire de la cible, l’empêchant de traiter le trafic légitime.

Attaque ping de la mort

Le ping de la mort est un ancien type d’attaque qui exploite une vulnérabilité de certains systèmes incapables de gérer des paquets ICMP de plus de 65 536 octets. L’attaquant envoie un paquet ICMP surdimensionné, généralement une requête Echo, afin de provoquer le plantage ou le redémarrage du système cible.

Collecte d’informations

La collecte d’informations est une technique qui consiste à utiliser des messages ICMP, tels que des requêtes Echo, des requêtes d’horodatage, des requêtes de masque d’adresse ou traceroute, pour sonder un réseau cible afin d’en déterminer la topologie, la configuration, le système d’exploitation ou les vulnérabilités.

En résumé : utiliser et sécuriser l’ICMP

L’ICMP est un élément essentiel de la suite de protocoles Internet et joue un rôle critique dans les communications IP. Il sert à échanger des messages de contrôle et d’erreur entre des équipements réseau tels que les routeurs, les hôtes et les passerelles. 

Comme tous les protocoles réseau, l’ICMP présente des vulnérabilités, qu’il est important de comprendre afin de protéger votre réseau et votre organisation contre les attaques.

La compréhension de ces concepts vous aidera à garder une longueur d’avance sur les attaquants et à protéger votre réseau contre les menaces potentielles.

Voici les meilleures entreprises de sécurité des réseaux d’entreprise auxquelles confier la protection des données de votre organisation.

Kihara Kimachia

Kihara Kimachia

Content Writer

Kihara Kimachia is a writer and digital marketing consultant with over a decade of experience covering issues in emerging technology and innovation. In addition to appearing regularly in Enterprise Networking Planet, his work has been published in many leading technology publications, including TechRepublic, eSecurity Planet, Server Watch, Channel Insider, IT Business Edge, and Enterprise Storage Forum.

Enterprise Networking Planet Logo

Enterprise Networking Planet aims to educate and assist IT administrators in building strong network infrastructures for their enterprise companies. Enterprise Networking Planet contributors write about relevant and useful topics on the cutting edge of enterprise networking based on years of personal experience in the field.

Propriété de TechnologyAdvice. © 2026 TechnologyAdvice. Tous droits réservés

Divulgation publicitaire : Certains des produits qui apparaissent sur ce site proviennent d'entreprises dont TechnologyAdvice reçoit une compensation. Cette compensation peut influencer la façon dont les produits apparaissent sur ce site, notamment l'ordre dans lequel ils apparaissent. TechnologyAdvice n'inclut pas toutes les entreprises ou tous les types de produits disponibles sur le marché.