Ein ICMP-Tunnel[1] benutzt ICMP-Pakete (Echo Request and Reply), um einen verdeckten Kanal zwischen zwei Computern (Client und Proxy) aufzubauen. Dadurch kann beispielsweise mittels Ping-Nachrichten ein Tunnel für TCP-Pakete eingerichtet werden.

Technische Einzelheiten

Bearbeiten

Ein ICMP-Tunnel beruht darauf, dass beliebige Daten an ein Echo-Paket angefügt werden und an einen anderen Computer geschickt werden. Dieser antwortet auf die gleiche Weise, indem er seine Antwort einem anderen ICMP-Paket hinzufügt und zurückschickt. Der Client verwendet ICMP-Echo-Request-Pakete, während der Proxy Echo-Reply-Pakete nutzt. Theoretisch wäre es einfacher, wenn der Proxy ebenfalls Echo-Request-Pakete nutzen würde, wodurch die Implementierung wesentlich einfacher würde. Doch diese Pakete werden nicht unbedingt an den Client weitergeleitet, da der Client hinter einem Router liegen könnte, der Pings von außerhalb des eigenen Netzes filtert, wie beispielsweise im Falle eines NAT-Routers.

Anwendungen

Bearbeiten

Ein ICMP-Tunnel wird oft benutzt, um Firewalls zu umgehen, die ICMP-Pakete durchlassen, oder um einen verschlüsselten Kommunikationskanal zwischen zwei Computern aufzubauen, der schwer aufspürbar ist.

Verhinderungsmöglichkeiten

Bearbeiten

Durch das Blockieren von ICMP-Nachrichten (Echo Request and Reply) an den Netz-Außengrenzen können ICMP-Tunnel-Verbindungen unterbunden werden. Ist die Erreichbarkeitsprüfung von Systemen mittels ICMP jedoch gewünscht, kann auch die Limitierung der Bandbreite („Rate Limit“) z. B. durch Firewall- oder Einbruchsverhinderungssysteme (IPS) von ICMP-Echo-Nachrichten einen Tunnel unattraktiv machen.

Siehe auch

Bearbeiten
Bearbeiten
  • sourceforge.net – einfache ICMP-Tunnel
  • Ping Tunnel. cs.uit.no
  • icmpshell.sourceforge.net – ein Telnet-ähnliches Protokoll, jedoch über ICMP
  • Jon Postel: RFC 792 – Internet Control Message Protocol (ICMP). September 1981 (englisch).
  • Using the ICMP tunneling tool Ping Tunnel. neverfear.org/blog
  • Project Loki. In: Phrack; über ICMP-Tunnel.

Einzelnachweise

Bearbeiten
  1. Daniel Stødle: Ping Tunnel: For those times when everything else is blocked. Abgerufen am 16. Dezember 2011 (englisch).