Faut-il bloquer ICMP : Pour et contre

malekalmorte

Date création :

4 décembre 2022

Dernière modification :

De nombreux administrateurs réseau pensent que le protocole ICMP présente un risque pour la sécurité et qu’il faut bloquer ce protocole dans le pare-feu.
Mais est-ce une bonne idée ou une mauvaise idée ?

Dans ce tutoriel, je vous donne les pour et les contre du blocage ICMP.

Faut-il bloquer ICMP : Pour et contre

Qu’est-ce ICMP

ICMP est un protocole de message qui permet de notifier d’un problème de connexion, de transmissions de données ou encore la nécessité d’utiliser tel ou tel chemin pour se connecter à un équipement réseau.
À la base, ICMP a été conçu comme un mécanisme de débogage, de dépannage et de signalement des erreurs pour le protocole IP.

Ainsi, ICMP est intégré dans les communications réseau et a toute son utilité.

Pourquoi bloquer ICMP et pourquoi ne pas bloquer ICMP

Les contre

ICMP est utile dans beaucoup de cas, ainsi, il n’est pas recommandé de bloquer totalement ce protocole réseau.
Voici quelques exemples :

  • Path MTU Discovery – Nous utilisons une combinaison de l’indicateur Don’t Fragment et du code 4 de type 3 (Destination Unreachable – Fragmentation requise et indicateur DF activé) pour déterminer le plus petit MTU sur le chemin entre les hôtes. De cette façon, nous évitons la fragmentation de paquets IP pendant la transmission
  • Monitoring et supervision de machines : le ping peut être utilisé pour savoir si une machine est active sur un réseau. Les systèmes de monitoring ou de supervision peuvent donc l’utiliser
  • Active Directory demande aux clients d’envoyer un ping aux contrôleurs de domaine afin d’extraire les GPO. Ils utilisent le ping pour déterminer le contrôleur le plus « proche » et si aucun ne répond, on suppose qu’aucun n’est assez proche. La mise à jour de la stratégie n’a donc pas lieu
  • En IPV6, les protocoles Neighbor Discovery Protocol (NDP) et Stateless Address Auto-configuration (SLAAC) utilisent le protocole ICMP

Les protocoles de découverte du réseau, monitoring ou d’auto-configuration du réseau s’appuient sur les messages ICMP.
Pour ses raisons, bloquer l’intégralité du protocole n’est pas recommandé.

Les pour

Le protocole d’écho ICMP est généralement inoffensif. Ses principaux problèmes de sécurité sont les suivants : En présence de requêtes avec une fausse adresse source (« spoofing »), elles peuvent amener une machine cible à envoyer des paquets relativement importants à un autre hôte.
D’autres formes d’attaques basées sur ce protocoles existent comme Smurf attack ou Twinge Attack

Dans tous les cas, l’envoie ou la réception d’un grande nombre de requêtes ICMP va consommer des ressources systèmes.

Conclusion

Bloquer ICMP dans son intégralité n’est probablement pas la meilleure idée, puisqu’il est utile.
Mais comme tout protocole, il convient de choisir ce que vous bloquez la réception et l’envoie.
Vous pouvez par exemple bloquer les ping en choisissant le type de messages ICMP.
Enfin le plus simple est de tout simple mettre en place une limitation de requêtes ICMP par IP.

Comment bloquer ou limiter ICMP avec iptables

Voici un exemple de règles iptables pour bloquer les requêtes ICMP par IP (IPv4) :

iptables -A INPUT -p icmp -j DROP

en IPv6 :

ip6tables -A INPUT -p icmpv6 -j DROP

Mais la plupart du temps, lorsqu’on parle de bloquer ICMP, ils parlent en fait de ping ou traceroute. Cela se traduit par 3 types

  • 0 – Echo Reply (réponse ping)
  • 8 – Echo Request (demande ping)
  • 11 – Dépassement de temps

Dans ce cas suivez ce tutoriel :

A propros de malekalmorte

malekal-site-logo-150

Passionné par l'informatique depuis très jeune, j'aide les internautes sur les forums depuis 2005 pour résoudre leurs tracas informatiques.
Je vous propose par la même occasion ce site avec de nombreux tutoriels pour vous aider aussi à résoudre de manière autonome les problèmes informatiques du quotidien.