
Die digitale Bedrohungslage hat sich in den letzten Jahren stark weiterentwickelt. Die IT-Security Landschaft in Unternehmen hat sich dementsprechend angepasst. Firewalls, Intrusion Detection und Prevention Systeme (IDS & IPS), Security Information and Event Management Systeme (SIEM), User and Entity Behavior Analytics (UEBA) und Stateful Protocol Analysis – Netzwerküberwachung wird immer enger gestrickt und Angreifer sind gezwungen, neue Wege zu finden, um unentdeckt im Netzwerk zu bleiben.
Eine beliebte Möglichkeit ist das ICMP-Tunneling. Hacker nutzen Protokolle der unteren ISO/OSI-Modell Schichten, die üblicherweise nicht so streng überwacht werden, um Ihren Traffic zu verschleiern.
Was ist ICMP?
Das Internet Control Message Protocol (ICMP) ist ein Protokoll der Schicht drei im ISO/OSI Modell und wird in der RCF 792 beschrieben. Grundsätzlich ist ICMP ein Bestandteil von IPv4, wird aber wie ein eigenständiges Protokoll behandelt.
Beim IMCP-Tunneling wird ICMP in Netzwerken für Informations- oder Fehlermeldungen über das IPv4 Protokoll genutzt.
Aufbau einer ICMP Nachricht
Bit 0-7 | Bit 8-15 | Bit 16-23 | Bit 24-31 |
Typ | Code | Prüfsumme | Prüfsumme |
Daten (optional) |
Es gibt beim ICMP-Tunneling unterschiedliche ICMP Pakettypen. Der jeweilige Typ des ICMP Pakets wird als 8-Bit-Zahl am Anfang des ICMP-Headers festgelegt. Das Feld Code spezifiziert die Art der Nachricht genauer.
Typ | Typname | Code | Bedeutung |
0 | Echo Reply | 0 | Echo Reply |
3 | Destination Unreachable | 1 | Host unreachable |
3 | Port unreachable | ||
8 | Echo Request | 0 | Echo Request |
Die Tabelle bildet nur einen kleinen Teil der ICMP-Pakettypen ab
Wie funktioniert das ICMP-Tunneling?
Normalerweise werden im Datenfeld des ICMP Pakets genauere Informationen zur Zuordnung der ICMP-Nachricht hinterlegt. In der RFC 792 gibt es aber keine Regelung dazu, was in dem Datenfeld stehen muss. Diese Design-Entscheidung nutzen Angreifer beim ICMP-Tunneling aus. Anstatt direkt mit dem Ziel über z.B. TCP zu kommunizieren, verpacken Angreifer jedes Paket in ein ICMP-Echo oder Reply Paket. In einem Netzwerkmitschnitt würde man nur eine Reihe von Ping Paketen sehen, anstatt z.B. eine TCP-Verbindung.
Windows und Linux ICMP-Tools versenden Pakete meist mit einem Payload von 64 Byte. Das Protokoll erlaubt aber einen Payload von insgesamt 64 KiloByte.
Um Daten über ICMP zu tunneln, bedarf es einem Client und einem Server. Bei asynchronen Verbindungen ist der Traffic dabei wesentlich höher als bei synchronen Verbindungen.
Um Daten über ICMP zu tunneln, bedarf es einem Client und einem Server. Bei asynchronen Verbindungen ist der Traffic dabei wesentlich höher als bei synchronen Verbindungen.
Problematisch wird es dann aber bei stateful Firewalls oder NAT Geräten. Diese erlauben einen Echo Reply nur, wenn es ein passendes Echo Request Paket gibt. Stateful Firewalls und NAT Geräte würden also viele Echo Reply Pakete verwerfen, da es mehr Replies als Requests geben würde.
Es gibt aber schon einige ICMP-Tunneling Tools, die auch dieses Problem umgehen können. Der Client sendet in kontinuierlichen Abständen leere Echo Request Pakete, auf die der Server mit Echo Reply Paketen antworten kann.
Wie kann ICMP-Tunneling erkannt werden?
Überdurchschnittlicher Traffic
Sollte der ICMP Tunnel genutzt werden, um große Mengen an Daten zu tunneln, steigt die Anzahl der ICMP Pakete im Netzwerk extrem an. Ein normales ICMP Tool würde nur ein „paar“ Pakete pro Sekunde versenden. Sollte man beim ICMP-Tunneling HTTP über ICMP tunneln, bedarf es jedoch einiger tausend Pakete in derselben Zeit.
Paketgröße
Im Normalfall haben ICMP Pakete eine feste Größe. Die Größe mag von Betriebssystem zu Betriebssystem unterschiedlich sein, sollte aber weitestgehend gleichbleiben. Gerade um im Bezug zum ersten Punkt weniger aufzufallen, werden Angreifer beim ICMP-Tunneling mehr Daten in ein einzelnes ICMP Paket verschachteln, um weniger Traffic zu erzeugen.
ICMP ECHO REQUESTS
Um stateful Firewalls und NAT zu umgehen, werden beim ICMP-Tunneling in kontinuierlichen Abständen leere ICMP Echo Requests gesendet. Diese sollten bei genauerer Betrachtung des Netzwerkverkehrs auffallen, sind aber schwer von normalen ICMP Traffic zu unterscheiden.
ICMP ECHO REPLIES
Normalerweise enthalten ICMP Echo Replies denselben Payload wie dazugehörige Echo Requests. Sollte sich der Payload unterscheiden, ist dies ein Zeichen für ICMP-Tunneling.
ICMP-Tunneling mit ProSec aufspüren
Damit die sensiblen Daten Ihres Unternehmens sicher und geschützt bleiben, ist die IT-Sicherheit Ihres Firmennetzwerks von großer Bedeutung. ICMP-Tunneling stellt eine neuartige Bedrohung für Ihre IT-Infrastruktur dar und sollte daher bei der Überprüfung der IT-Sicherheit nicht außer Acht gelassen werden. ProSec ist sich dieser Tatsache bewusst und überprüft mithilfe von Penetration Tests auch diese Möglichkeit des Eindringens in Ihr Firmennetzwerk. Finden Sie heraus, wie hoch die Gefahr durch ICMP-Tunneling für Sie ist und nehmen Sie noch heute Kontakt zu uns auf. Wir helfen Ihnen dabei, sicher und geschützt zu bleiben.