ICMP is enabled by default on red

Speaking as someone who works in information security, yes, dropping ICMP can improve your attack surface. The argument that “if you have any ports open they’ll just find you anyway” is an example of a technically correct but practically wrong observation.

Script kiddies generally aren’t scanning thousands of ports on every IP in whatever subnet they’re targeting. That would take a staggering amount of time spent probing a single /16 (over 65k usable IPs), let alone any significant chunk of the internet. A far more common approach is to ping an IP and then proceed with probing only if the IP responds. This not only saves a monumental amount of time but also reduces the risk of the scanning IP(s) being blacklisted by IDSes.

Blocking ICMP will render that style of scanning useless. It’s been pointed out above that this won’t stop ALL attacks, which is technically correct. So why not let us shut down SOME attacks? Contrary to what’s been suggested above, most users (residential AND enterprise) will not be negatively impacted by blocking ICMP. If the option is presented in the GUI, then those who do have a need can simply turn it back on.

There’s simply no good reason to force ICMP on for everyone, and plenty of good reasons to give us the option to disable it.

2 Likes

There is an option to block ICMP with a firewall rule that any user can create. It is not recommended but it does exist.

I created one (long ago) but I noticed it did cause problems with OpenVPN. So I deleted the rule. I am not sure if there are other issues with an ICMP firewall rule block

2 Likes

Thanks for the insight. I‘m somewhat convinced even though I think it disrupts the underlying control mechanisms for a working net - at least on layer 3 I think. And ping had helped me get started with network related problems. But yes, I‘m probably need to think a bit more about it.

Some thoughts about this ‘problem’.

  • Because of the result ‘unreachable’ for both systems blocking ICMP or non-existent system, a ping has minor information in finding possible targets. So the ping mechanism isn’t really interesting for real attackers.
  • If I see a new device in my network, I try to examine with nmap. Sometimes the first attempt isn’t successful bcause of a ICMP block. But knowing the IP from other informations ( in this case the DHCP leases ), I can easily do a scan without ping. This gives the informations searched. Blocking ICMP only requested a second scan, which could be avoided by doing the scan without ping in the first attempt.
  • Real attacks don’t use the brute-force method, I think. So one should concentrate in hiding information, not in hiding identity ( which is the result of ping ).
3 Likes

Can anyone give an example of how to create an ICMP block using the standard Firewall Rules IPFire? It will always be easy to turn it on or off if someone wants to test if it causes problems with some services.

Of course, I mean the RED interface and ping from the outside (Internet).

Well I have blocked every traffic and only ICMP under restricted conditons for forward and outgoing enabled.
My rules:


.

Unfortunately, I tried your ICMP lock policy but it doesn’t work. The computer with IPCop is still visible to PING from the outside (Internet).

The idea that I have jet now is the blocking policy - reject/dropped.
With dropped a ping should get no answer.

I tried various settings in the firewall settings (from drop of course). Unfortunately PING still gets the answer.

I don’t want to change other IPFire settings like the advice above suggests. I prefer not to change something I don’t know about :wink:

As mentioned near the beginning of this thread you cannot stop the pings with Firewall Rules as the rules for the pings are defined earlier than the firewall rules get activated.
You need to enter the rule into the firewall.local file - see Post 7 and 8 in this thread
https://community.ipfire.org/t/icmp-is-enabled-by-default-on-red/4775/7
and this wiki link for firewall.local
https://wiki.ipfire.org/configuration/firewall/firewall-local

1 Like

A post was split to a new topic: Disable the ping response on the red interface?