Netzwerk Sniffer

download netzwerk_sniffer.zip (2,93 MB)

Ein Netzwerk-Sniffer besteht aus einer Reihe von Komponenten. Der so genannte Capture Driver klinkt sich in den Treiber der Netzwerkkarte oder des DFÜ-Adapters ein und sorgt dafür, dass alle gesendeten und empfangenen Pakete in einem Buffer zwischengespeichert werden. Über eine Reihe von Filtern kann der Sniffer sich auf Pakete beschränken, die bestimmten Kriterien wie etwa Netzwerkprotokoll, Zieladresse oder TCP-Port genügen. Da beispielsweise bei einem LAN mit 100 MBit/s bis zu 144.000 Pakete pro Sekunde ankommen können, ist in solchen Netzen ein schneller Rechner zum Sniffen erforderlich.

Eine Analyse-Komponente untersucht je nach Anwendungszweck die Pakete auf Fehler bei der Datenübertragung oder auf das Vorhandensein von Hackern. Mögliche Angriffe werden anhand bestimmter Muster wie beispielsweise Portscans entdeckt. Bei kommerziellen Sniffern erfolgt die Analyse in Echtzeit. Das setzt natürlich ein entsprechend leistungsfähiges System voraus.

Kapselung: Beim Versenden von Netzwerkpaketen fügt jede Schicht ihre Kontrolldaten hinzu. Der Sniffer muss diese Daten wieder aufschlüsseln.

Kapselung: Beim Versenden von Netzwerkpaketen fügt jede Schicht ihre Kontrolldaten hinzu. Der Sniffer muss diese Daten wieder aufschlüsseln.

Der wichtigste Schritt ist die Dekodierung der Netzwerkpakete. Dabei bereitet der Sniffer die Pakete so auf, dass der Administrator die einzelnen Bestandteile unterscheiden kann, ohne genau zu wissen, welche Bytes beispielsweise bei einem TCP/IP-Paket für den Ziel-Port zuständig sind. Komfortablere Systeme suchen auch per DNS-Abfrage den Hostnamen zu IP-Adressen und bauen nötigenfalls mehrere Pakete wieder zu einem Datenstrom zusammen. Das erspart dem Administrator auch das händische Zusammensuchen der Sequenznummern in diesem Datenstrom sowie die Zuordnung der einzelnen Pakete beim Three-way-handshake.

 

Sniffing-Tools

Normalerweise finden Network Sniffer oder Protocol Analyzer in großen Netzen Verwendung. Sie sollen dem Administrator dabei helfen, Schwachstellen aufzudecken oder Fehler zu finden. Dementsprechend sind diese Applikationen auch mit einer Vielzahl von Features und Verwaltungsmöglichkeiten ausgestattet, wie beispielsweise die Aufschlüsselung des Datenverkehrs nach Protokollen und Sender/Empfänger sowie Trendanalysen und Tools zur automatischen Fehlererkennung.

All-in-One: Professionelle Sniffer wie etwa der LANDecoder32 bieten zusätzliche Features wie Trendanalyse, kosten aber auch entsprechend.
All-in-One: Professionelle Sniffer wie etwa der LANDecoder32 bieten zusätzliche Features wie Trendanalyse, kosten aber auch entsprechend.

Diese Funktionsvielfalt hat ihren Preis. Ein leistungsfähiges Programm zur Protokollüberwachung und -analyse mit verteilten Agenten kostet etwa 5000 Euro. Das geht natürlich weit über das hinaus, was man für ein Homeoffice oder ein kleines LAN benötigt.

Um zu untersuchen, ob ein Programm unerlaubt Daten sendet und welche, sind umfangreiche Analyse-Tools jedoch nicht notwendig. Auch die Dekodierung muss nicht unbedingt jedes verfügbare exotische Protokoll wie etwa DecNet unterstützen. Da die großen Hersteller aber keine abgespeckte Version ihrer teuren Management-Suites im Angebot haben, kommen immer mehr Free- und Shareware-Tools auf den Markt, die genau dieses Segment abdecken.

 

Analyzer 3.0alpha

Von der Politechnischen Universität Turin stammen der kostenlose Analyzer und der zugehörige Capture-Treiber WinPCap. Die aktuelle als "stable" bezeichnete Version ist zwar die 2.2, allerdings empfehlen die Entwickler selbst die 3.0alpha. Die neueste Version von WinPCap unterstützt jetzt auch das so genannte Remote-Capture. Damit kann man die Daten von mehreren Stationen einsammeln und somit ein Bild des gesamten Netzwerk-Traffics erhalten. Das ist vor allem in geswitchten Umgebungen notwendig.

Grundfunktionen: Der Freeware-Analyzer dekodiert eingehende Pakete und stellt sie übersichtlich nach Protokoll-Ebenen dar.
Grundfunktionen: Der Freeware-Analyzer dekodiert eingehende Pakete und stellt sie übersichtlich nach Protokoll-Ebenen dar.

Bei den Grundfunktionen Capturing und Dekodierung bietet das Tool immerhin ein Multiple-Document-Interface (MDI), so dass sich mehrere Datenströme parallel betrachten und vergleichen lassen. Außerdem können erfahrene Anwender über die Konfigurationsdateien eigene Protokoll- und Paketformate einstellen. Der Analyzer verwendet dabei einen eigens entwickelten XML-Dialekt: NetPDL.

Bei der Definition von Filtern verlässt sich der Analyzer auf die Syntax von tcpdump, die sich dem Benutzer erst auf den zweiten Blick erschließt. Dafür bieten die Filter auch alle Möglichkeiten, so beispielsweise die Abfrage auf bestimmte Bits im TCP-Header.

Geduldsprobe: Über den Netminer lassen sich Datenströme statistisch analysieren. Allerdings benötigt die Aufbereitung der Daten selbst bei kleinen Datenmengen extrem viel Zeit .
Geduldsprobe: Über den Netminer lassen sich Datenströme statistisch analysieren. Allerdings benötigt die Aufbereitung der Daten selbst bei kleinen Datenmengen extrem viel Zeit .

 

Neu dazugekommen sind zwei Tools. Das "Network Logger Module" protokolliert Netzwerk-Sessions mit und speichert die wichtigsten Informationen darüber in einer Datenbank. Hier kann der Benutzer sich eine Reihe von Statistiken anzeigen lassen, etwa die Netzwerkauslastung oder eine Verteilung nach Protokolltyp.

Mit dem "Network Miner Module" lassen sich klassische Datamining-Verfahren auf die vom Netlogger erstellten Datenbanken anwenden, etwa um Anomalien herauszufinden.

Fazit: Für die einfachen Aufgaben reicht der kostenlose Analyzer vollkommen aus. Wer das Tool jedoch ausreizen will, muss sich sehr intensiv mit den Protokollen beschäftigen.

Quickinfo
Produkt
Analyzer 2.1
Hersteller
Preis
Freeware
Demoversion
Download, unbegrenzt, 5,2 MByte
Voraussetzungen
 
Hardware
Pentium III und 128 MByte RAM
Software
Windows 9x/Me/2000/XP

 

CommView 4.1

Bei CommView 4.1 von Tamosoft handelt sich um einen kostengünstigen Sniffer mit einer ganzen Reihe von hilfreichen Features. So kann das Tool, das für den Privatnutzer 129 Dollar kostet, neben dem Sniffing und der Protokollanalyse auch viele Statistiken über den Netzwerk-Traffic ausgeben und die verfügbare Bandbreite überwachen.

Detailliert: CommView bietet eine ausführliche Aufschlüsselung der gesammelten Pakete.
Detailliert: CommView bietet eine ausführliche Aufschlüsselung der gesammelten Pakete.

Praktisch ist die Fähigkeit, TCP-Sessions wieder zusammenzusetzen, also einen Datenstrom, der in mehrere IP-Pakete aufgeteilt ist, als Gesamtübersicht darzustellen. Dabei gibt CommView die Daten entweder als Text, als HTML oder als Hex aus. Bilder kann der Sniffer dagegen nicht anzeigen.

Reporter: CommView liefert die wichtigsten Reports über den Netzwerkverkehr.
Reporter: CommView liefert die wichtigsten Reports über den Netzwerkverkehr.

Bei der Suche nach Hosts, mit denen Kontakt aufgenommen wird, unterstützt CommView den Anwender durch das IP-Statistik-Fenster. Hier gruppiert das Tool alle Pakete nach Quell- und Zieladresse. Damit erhält man einen ersten Überblick über die geflossenen Datenströme.

 

CommView-Filterdefinition

Die Filterdefinition von CommView ist sehr gut gelungen. Man kann nach IP- und MAC-Adresse filtern, nach Ethernet- und IP-Protokollen sowie nach TCP-Flags und -Ports. Dabei lässt sich jeweils festlegen, ob nur ein- oder ausgehende Pakete berücksichtigt werden oder beide Richtungen. Besonders hervorzuheben ist das Filtern nach frei definierbaren Texten. Das belastet zwar die CPU erheblich, ermöglicht aber eine sehr flexible Auswahl der Pakete.

Filter: CommView bietet eine sehr flexible und dennoch einfach zu handhabende Filterfunktion.
Filter: CommView bietet eine sehr flexible und dennoch einfach zu handhabende Filterfunktion.

Nützlich ist die Integration von SmartWhois, einem weiteren Programm von TamoSoft. Damit lassen sich detaillierte Informationen über die Hosts einholen. Über den CommView Remote Agent, der noch einmal mit 149 Dollar zu Buche schlägt, lassen sich auch die Daten von mehreren Stationen aggregieren. Wer detaillierte Auskünfte über sein WLAN will, muss zur WiFi-Version greifen, die allerdings 499 Dollar kostet. An zusätzlichen Informationen bietet sie jedoch lediglich Daten über gefundene WLANs, Auslastung der einzelnen Channels und Ähnliches. Klassisches Packet-Capturing können Sie auch mit der Standardversion erledigen.

Fazit: Insgesamt ist CommView 4.1 seine 129 Dollar auf jeden Fall wert, bietet es doch Funktionen, die sonst nur teuren Sniffern vorbehalten sind. Wer sein LAN im Auge behalten möchte oder auch nur Sorge hat, dass "Phone Home"-Software heimlich Daten übermittelt, ist mit CommView gut bedient.

Quickinfo
Produkt
CommView 4.1
Hersteller
Preis
Privatlizenz 129 Dollar
Demoversion
Download, 30 Tage, 2,5 MByte
Voraussetzungen
 
Hardware
Pentium III und 128 MByte RAM
Software
Windows 9x/Me/2000/XP/2003

 

Erste Schritte mit Sniffing

Am Beispiel des CommView zeigen wir die ersten Schritte zu einer erfolgreichen Überwachung des lokalen Netzwerkverkehrs, etwa um eine "Phone Home"-Software zu entlarven. Je nachdem, ob der Rechner in einem lokalen Netz hängt oder per DFÜ-Verbindung mit dem Internet verbunden ist, sollten Sie zunächst einige grundlegende Filter definieren, die nur den Internet-Traffic des eigenen Rechners akzeptieren. Ansonsten müssen Sie sich aus einem Wust von Protokollen und Broadcasts die Pakete heraussuchen, die von Ihrem System ins Internet gehen.

Bei CommView ist dafür der Hauptreiter "Rules" zuständig. Unter Protocols & Direction selektieren Sie alle IP-Pakete, die an unseren Rechner gerichtet sind oder von ihm gesendet werden.

Grundlegender Filter: CommView berücksichtigt nur IP-Pakete, die von der zu überwachenden Station kommen oder dediziert an sie gesendet werden.
Grundlegender Filter: CommView berücksichtigt nur IP-Pakete, die von der zu überwachenden Station kommen oder dediziert an sie gesendet werden.

Zusätzlich setzen Sie unter "IP Addresses" die IP-Adresse der lokalen Maschine als Ziel oder Quelle. Bei bestimmten Verdachtsmomenten hinsichtlich verwendeter Ports kann man die Filter weiter eingrenzen, um das Datenaufkommen in Grenzen zu halten. Hier ist das nicht der Fall.

 

Outlook überwacht

Nach der Definition der Filter starten Sie das Capturing und danach die verdächtige Applikation, in diesem Beispiel Outlook 2002.

Erste Auswertung: Die IP Statistik zeigt keine auffälligen Verbindungen.
Erste Auswertung: Die IP Statistik zeigt keine auffälligen Verbindungen.

Outlook 2002 produziert im Beispiel keine verdächtigen Verbindungen. Es nimmt Kontakt auf für einen DNS-Query und dann zu den Mailservern. Dabei nutzt es einmal den Standard POP3-Port und einmal den Port 995 (POP3 mit SSL)

Unsicher: Bei POP3 werden Passwörter im Klartext übertragen.
Unsicher: Bei POP3 werden Passwörter im Klartext übertragen.


Bei der ungesicherten Verbindung über den POP3-Port fällt bei der Paketanalyse gleich auf, dass das Passwort im Klartext übertragen wird: Ein erhebliches Sicherheitsrisiko, da im Netz jeder einen Sniffer benutzen und so die Passwörter sammeln könnte. Sehr sicherheitsbewusste Administratoren setzen deshalb einen Sniffer auf POP3-Verbindungen an, damit sie ihre Benutzer vor diesem Risiko warnen können. Ähnlich sensitive Protokolle sind FTP, Telnet oder HTTP.

 

Sniffing im Netzwerk

Wenn es darum geht, den Datenverkehr des lokalen Rechners zu überwachen, ist das Sniffing noch ziemlich einfach. Der Capture Driver muss sich lediglich in den Treiber der NIC einklinken. Um den Traffic im gesamten Ethernet-Segment zu analysieren, müssen einige zusätzliche Vorkehrungen getroffen werden.

Ethernet ist von der Grundidee her ein Shared Medium. Das heißt unter anderem auch, dass alle Pakete an alle Stationen gesendet werden. Damit nun nicht die einzelnen Rechner ständig damit beschäftigt sind, die für sie bestimmten Pakete herauszusuchen, ist bereits in der Netzwerkkarte ein Filter eingebaut. Dieser leitet nur solche Pakete an den Treiber weiter, die speziell an die MAC-Adresse der NIC gerichtet sind oder bei denen es sich um Broad- oder Multicasts handelt.

Shared Media: Ein Hub sendet alle eingehenden Datenpakete an alle Ports weiter und ermöglicht so eine Überwachung per Sniffer.
Shared Media: Ein Hub sendet alle eingehenden Datenpakete an alle Ports weiter und ermöglicht so eine Überwachung per Sniffer.


Laut den von Intel und Microsoft herausgegebenen PC99-Richtlinien für PC Design, sollten Netzwerkkarten jedoch den so genannten "Promiscuous Mode" unterstützen. Damit kann der Capture Driver die Karte anweisen, alle Netzwerkpakete zu empfangen und an den Treiber weiterzuleiten. Über diesen Weg ist es dann auch möglich, den Datenverkehr in einem Netzwerksegment zu überwachen.

 

Sniffing im geswitchten LAN

Mit der zunehmenden Verbreitung von Switches wird das allerdings immer schwieriger, denn Switches sorgen ja dafür, dass Netzwerkpakete nur noch dediziert an den tatsächlichen Empfänger gesendet werden. Das erreichen diese Geräte, indem sie sich merken, an welchem Port welche MAC-Adresse zu finden ist. Demzufolge "sieht" auch eine Karte im Promiscuous Mode nur noch Broadcasts und an sie gerichtete Pakete. Das verhindert natürlich eine effektive Fehleranalyse per Sniffing.

Zielgerichtet: Ein Switch sendet Datenpakete nur an den eigentlichen Empfänger weiter und verhindert so Sniffing.
Zielgerichtet: Ein Switch sendet Datenpakete nur an den eigentlichen Empfänger weiter und verhindert so Sniffing.


Teure Switches unterstützen deshalb ein Feature namens "Port Mirroring". Dabei wird der Datenverkehr eines Ports auf einen anderen gespiegelt. An diesen Port hängt man dann den Sniffer und überwacht den Traffic. Meistens wird der Uplink-Port gespiegelt, weil man dann fast den gesamten Datenstrom bekommt.

Bei Switches ohne die Port-Spiegelung muss man zu einem etwas unfeinen Mittel greifen, dem "Switch Jamming". Dabei schickt man dem Switch eine Vielzahl von Paketen mit verschiedenen MAC-Adressen, bis sein interner Speicher für die Verwaltung überläuft. Die meisten Switches schalten in diesem Fall um und verhalten sich dann wie ein Hub, senden also alle Pakete an alle Ports. Und genau darin liegt der Nachteil dieses Verfahrens: Währen der Analyse degradiert man den Switch zu einem Hub und verliert damit alle Performance-Vorteile.

 

Sniffing im WLAN

Da die Datenpakete im WLAN per Funk übertragen werden, kann jeder - so ähnlich wie bei einem Hub - die Pakete mitlesen. Dazu muss nur die WLAN-Karte in den Promiscuous Mode geschaltet werden. Somit sind auch für WLANs keine speziellen Sniffer-Programme notwendig; für eine Analyse des reinen Datenverkehrs reichen die Standardmodelle problemlos aus.

WLAN aufgedeckt: Mit Produkten wie Airopeek von WildPackets erhält man eine Reihe WLAN-spezifischer Informationen, die man bei normalen Sniffern nicht bekommt.
WLAN aufgedeckt: Mit Produkten wie Airopeek von WildPackets erhält man eine Reihe WLAN-spezifischer Informationen, die man bei normalen Sniffern nicht bekommt.


Warum also die erheblich teureren Produkte kaufen? Diese können beispielsweise überwachen, ob ungenehmigte Access Points aufgestellt sind, oder irgendwer versucht mitzulauschen. Zudem liefern sie detaillierte Statistiken über Auslastung der Funkkanäle und Fehlermeldungen der Access Points, etwa wenn sie einen Client wegen Überlastung ablehnen. Ein hilfreiches Tool zur Optimierung der WLAN-Konfiguration also.

Mit AirSnare gibt es ein kostenloses Tool, das den Datenverkehr überwacht und auf unerlaubte MAC-Adressen überprüft. Entdeckt das Tool so eine Station, protokolliert es den verursachten Traffic mit und sendet optional eine Warnmeldung an den Benutzer.

 

Lokale Angriffe von Sniffern

Nicht immer haben Sniffer etwas Gutes im Sinn. Oft versuchen Hacker durch das Mitverfolgen des Netzwerkverkehrs, an Passworte oder andere sensitive Informationen zu gelangen. Ziel des Administrators muss es also sein, Sniffing zu verhindern oder zumindest zeitnah zu entdecken, um Gegenmaßnahmen einleiten zu können.

Wendet der Angreifer Switch-Jamming an, um an alle Pakete des Netzwerks zu gelangen, erfahren Sie das bei einem verwaltbaren Switch über die Management-Konsole, denn es wird ein entsprechender Eintrag im Log oder im SNMP gemacht. Dann erfahren Sie auch den Port, von dem plötzlich so viele verschiedene MAC-Adressen kommen, dass der interne Puffer überläuft.

Handelt es sich dagegen um einen "dummen" Switch, können Sie immer noch eine IDS-Station einrichten und den dort eingehenden Netzwerkverkehr analysieren. Kommen plötzlich Netzwerkpakete an dieser Station an, die bei normalem Switch-Betrieb nicht ankommen dürften, muss etwas im Netzwerk faul sein.

Einen etwas eleganteren Weg kann ein Angreifer mittels ARP-Spoofing wählen. Dabei klinkt er sich in die Ethernet-Kommunikation zwischen zwei Stationen ein und agiert dabei parallel als Gateway, damit die beiden Stationen nichts von dem Lauscher mitbekommen. Näheres über ARP-Spoofing für Man-in-the-Middle-Angriffe erfahren Sie demnächst in einem separaten Artikel.

 

Entdecken von Sniffern

Da ein Angreifer sich beim Mitprotokollieren von Netzwerkverkehr meist passiv verhält - er muss ja nur den Datenstrom mitlesen - kann die Entdeckung nur über Umwege erfolgen. Das gilt besonders für Netzwerke, die mit Hubs verbunden sind, denn da muss der Angreifer überhaupt nicht aktiv werden, um die Daten zu Gesicht zu bekommen.

1. Viele Sniffer-Programme lösen IP-Adressen per Reverse DNS-Lookup gleich zu Hostnamen auf, denn dieser gibt möglicherweise auch Aufschluss über die Aufgabe der Station, etwa mail.domain.de. Eine Häufung von DNS-Traffic lässt sich aber auch entdecken. Einen Schritt weiter kann man gehen, indem man von einer Station aus Datenpakete an einen nicht existierenden Host schickt. Tauchen plötzlich Reverse DNS-Lookups für diese IP-Adresse auf, muss wohl irgendwo eine Station sein, die auf nicht für sie bestimmten Datenverkehr lauscht.

2. Normalerweise werden ARP-Requests an die Ethernet-Broadcast-Adresse (FF:FF:FF:FF:FF:FF) geschickt. Schickt man dagegen den Request an die Adresse FF:FF:FF:FF:FF:FE, sollte eine normale Netzwerkkarte dieses Paket ignorieren. Ist sie aber im Promiscuous Mode, reicht sie das Paket an das Betriebssystem weiter. Linux (zumindest im Kernel 2.4) und Windows überprüfen allerdings nicht alle sechs Bytes der Hardware-Adresse, um herauszufinden, ob es sich um einen Broadcast handelt, sondern nur die ersten Bytes - wohl aus Performance-Gründen. So kann man mit einer Whohas-Abfrage eine IP-Adresse überprüfen: Antwortet die Station mit dieser IP-Adresse auf die Anfrage mit einem ARP-Reply, muss sie im Promiscuous Mode sein.

3. Über die Messung von Latenzzeiten kann man ebenfalls ermitteln, ob sich eine Station im Promiscuous Mode befindet. Da eine solche Station keinen Hardware-Filter mehr hat, bekommt sie alle Pakete zu sehen und muss sie verarbeiten. Dementsprechend dauern Antworten länger als normal. Zunächst ermittelt eine Messstation die durchschnittliche Antwortzeit des zu überprüfenden Rechners über ICMP-Echo-Anfragen. Danach flutet sie das Netzwerk mit Ethernet-Paketen an nicht vergebene MAC-Adressen und misst parallel die Verzögerungszeit bei erneuten ICMP-Echo-Anfragen an den Zielrechner. Ist die Latenzzeit erheblich höher, liegt das daran, dass der Zielrechner mit der Verarbeitung von nicht für ihn bestimmten Paketen beschäftigt ist. Die Zeitmessung muss allerdings eine Genauigkeit im Mikrosekunden-Bereich aufweisen.

Sentinel ist beispielsweise ein Linux-Programm, das diese Verfahren anwendet, um Sniffer zu lokalisieren.

 

Fazit

Datenschutz-Experten werden angesichts der Möglichkeiten des Sniffings die Hände über dem Kopf zusammenschlagen. Dennoch macht Sniffing Sinn und ist auch notwendig. Einerseits, um Fehler im LAN aufzuspüren und andererseits, um Hacker oder ""Phone Home"-Software aufzuspüren. Für Letzteres reichen die hier vorgestellten Programme und Verfahren allemal aus. Es muss also nicht immer die Lösung für 5.000 Euro und mehr sein.

Ein weiterer Vorteil der Analyse-Tools: Sie helfen ungemein beim Verständnis der verschiedenen Netzwerkprotokolle. So wird beispielsweise unser Grundlagenbeitrag TCP/IP um einiges einsichtiger, wenn man parallel mit einem Sniffer den Datenfluss verfolgt.

Dennoch sollten alle Möchtegern-Sniffer an dieser Stelle vorgewarnt sein: Sniffing zum Zwecke der Datenausspähung ist strafbar!

http://www.tecchannel.de/netzwerk/grundlagen/401719/

 

[ top ]