ICMP
Qu'est-ce que ICMP ?
ICMPProtocole de controle et de diagnostic de la couche reseau (RFC 792 pour IPv4 et RFC 4443 pour IPv6), utilise par les hotes et routeurs pour signaler erreurs et conditions de chemin.
L'Internet Control Message Protocol fait partie integrante d'IP ; il est defini par la RFC 792 pour IPv4 et la RFC 4443 pour IPv6. Routeurs et hotes terminaux l'utilisent pour envoyer des messages d'erreur (destination injoignable, delai depasse, fragmentation requise) et des requetes de diagnostic (echo request/reply, utilisees par ping et traceroute). ICMP est transporte directement sur IP avec le numero de protocole 1 (ou 58 pour ICMPv6) et n'a pas de ports.
Il est essentiel au Path MTU Discovery (RFC 1191) et au Neighbor Discovery IPv6, de sorte que bloquer ICMP de maniere generalisee cree couramment des « trous noirs PMTU » ou les gros paquets disparaissent silencieusement. Les abus historiques sont bien documentes : le Smurf attack (avis CERT CA-1998-01) usurpait l'adresse de la victime comme source d'echo requests envoyees a une adresse de broadcast, amplifiant l'inondation ; le Ping of Death faisait planter les piles TCP/IP de la fin des annees 1990 avec des paquets echo reassembles depassant 65 535 octets ; et l'outil Loki (numeros 49 et 51 de Phrack, 1996-97) a invente le tunneling ICMP, dissimulant un shell furtif dans les charges utiles echo. Les messages ICMP redirect peuvent aussi etre falsifies pour empoisonner la table de routage d'un hote.
Les defenses consistent a limiter le debit d'ICMP plutot qu'a le rejeter, a autoriser les types 3 et 4 ainsi que tous les messages obligatoires de Neighbor Discovery ICMPv6 (recommandations de la RFC 4890), a ignorer les ICMP redirect sur les hotes durcis, et a inspecter les charges utiles echo dans les outils NDR/EDR pour detecter le tunneling.
flowchart LR A[Host: ping] -->|Echo Request type 8| R[Router] R --> B[Target host] B -->|Echo Reply type 0| A R -.->|Time Exceeded type 11| A R -.->|Dest Unreachable type 3| A X[Attacker] -.->|Forged Redirect type 5| A
● Exemples
- 01
ping example.com envoie des echo requests ICMP et mesure le temps de reception des echo replies.
- 02
Un routeur renvoie ICMP type 3 code 4 pour signaler une fragmentation necessaire alors que DF est positionne.
● Questions fréquentes
Qu'est-ce que ICMP ?
Protocole de controle et de diagnostic de la couche reseau (RFC 792 pour IPv4 et RFC 4443 pour IPv6), utilise par les hotes et routeurs pour signaler erreurs et conditions de chemin. Cette notion relève de la catégorie Sécurité réseau en cybersécurité.
Que signifie ICMP ?
Protocole de controle et de diagnostic de la couche reseau (RFC 792 pour IPv4 et RFC 4443 pour IPv6), utilise par les hotes et routeurs pour signaler erreurs et conditions de chemin.
Comment se défendre contre ICMP ?
Les défenses contre ICMP combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de ICMP ?
Noms alternatifs courants : Protocole de messages de controle Internet.