Was sind Gründe, ICMP auf meinem Server nicht zuzulassen?

11

Bei einer EC2-Instanz sind ICMP-Dienste standardmäßig deaktiviert. Obwohl mir nicht ganz klar ist, warum, denke ich, dass dies ein potenzielles Sicherheitsrisiko sein könnte. Im Moment aktiviere ich Echo Responses nur, wenn ich den Server neu starte, damit ich sehen kann, ob er läuft, aber sobald er online ist, deaktiviere ich ihn wieder. Ist es nötig? Was sind Gründe, ICMP generell zu deaktivieren?

3k-
quelle

Antworten:

18

ICMP besteht aus einer großen Sammlung von Befehlen. Wenn Sie all dies nicht zulassen , wird Ihr Netzwerk auf seltsame Weise beschädigt.

Mit ICMP können Dinge wie "Traceroute" und "Ping" (ICMP-Echoanforderung) funktionieren. Daher ist dieser Teil für die normale Diagnose sehr nützlich. Es wird auch für Rückmeldungen verwendet, wenn Sie einen DNS-Server ausführen (Port nicht erreichbar), der in einem modernen DNS-Server möglicherweise dazu beiträgt, einen anderen Computer für eine schnellere Abfrage auszuwählen.

ICMP wird für die Pfad-MTU-Erkennung verwendet. Möglicherweise setzt Ihr Betriebssystem "DF" (nicht fragmentieren) für die von ihm gesendeten TCP-Pakete. Es wird erwartet, dass ein ICMP-Paket "Fragmentierung erforderlich" zurückerhalten wird, wenn etwas entlang des Pfads diese Paketgröße nicht verarbeitet. Wenn Sie alle ICMP blockieren , muss Ihr Computer andere Fallback-Mechanismen verwenden, die im Grunde genommen eine Zeitüberschreitung verwenden, um ein PMTU- "Schwarzes Loch" zu erkennen, und niemals richtig optimieren.

Es gibt wahrscheinlich noch ein paar gute Gründe, den größten Teil des ICMP zu aktivieren.

Nun als Ihre Frage, warum Sie deaktivieren sollten:

Gründe für die Deaktivierung eines Teils des ICMP sind:

  • Schutz vor Würmern alten Stils, die ICMP-Echoanfragen (auch bekannt als Ping) verwendeten, um festzustellen, ob ein Host am Leben war, bevor sie versuchten, ihn anzugreifen. Heutzutage versucht es sowieso ein moderner Wurm, was das nicht mehr effektiv macht.
  • Verstecke deine Infrastruktur. Wenn Sie dies tun möchten, blockieren Sie es bitte am Rand Ihres Netzwerks. Nicht auf jedem einzelnen Computer. Dies führt nur dazu, dass Ihr Administrator frustriert alle Haare aus dem Kopf zieht, wenn etwas schief geht und alle normalen Analysetools ausfallen. (In diesem Fall: Amazon könnte es am Rand der Cloud blockieren).
  • Denial-of-Service-Angriffe basierend auf ICMP. Behandeln Sie diese genauso wie andere DOS-Angriffe: Ratenlimit.
  • Der einzig gültige: Wenn Sie sich in einem unsicheren Netzwerk befinden, möchten Sie möglicherweise den Befehl zum Ändern des Routers blockieren oder deaktivieren. Obfix: Verwenden Sie Ihre Server in einem sicheren Netzwerk.

Beachten Sie, dass es Handbücher zur Serverhärtung gibt, in denen empfohlen wird, ICMP zu blockieren. Sie sind falsch (oder zumindest nicht detailliert genug). Sie fallen in dieselbe Kategorie wie die drahtlose "Sicherheit" durch MAC-Filterung oder Ausblenden der SSID.

Hennes
quelle
1

ICMP-Blöcke werden aus mehreren Gründen ausgeführt, hauptsächlich jedoch, um Informationen vor Tests zu verbergen, die versuchen, Ihr Netzwerk zu identifizieren und zu profilieren. Es gibt auch verschiedene Arten von Angriffen auf Router und öffentlich zugängliche Endsysteme, die ICMP-Verkehr als Teil des Exploits verwenden.

In Ihrem Fall können Sie wahrscheinlich Echoantworten zulassen, obwohl Sie dadurch von mehr Sonden bemerkt werden. Angriffe wie ping-basiertes DDOS und Schlumpfangriffe werden heutzutage weitgehend abgeschwächt.

http://en.wikipedia.org/wiki/Denial-of-service_attack#ICMP_flood

Frank Thomas
quelle
0

Ich würde vorschlagen, das Überfluten von ICMP-Anforderungen zu verhindern, indem Sie sie verwenden, iptablesanstatt sie dauerhaft zu blockieren:

iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/minute --limit-burst 100 -j ACCEPT
linmod77x
quelle
-1

Das größte Risiko von ICMP auf einem mit dem Internet verbundenen Server ist die vergrößerte Oberfläche für Denial-of-Service-Angriffe (DoS).

Deepak Kumar Vasudevan
quelle