Android Smartphones WLan-Sniffing leicht gemacht

Android Smartphones Wlan-sniffing
Es gibt ja so einige Apps, bei denen man gerne einmal hinter die Kulissen schauen würde und gerne nachprüfen möchte, was im Hintergrund so alles über das Netz geht und vor allem, wie es über das Netz geht. (verschlüsselt oder unverschlüsselt) Mein letzter Artikel über das Verhalten der N24-App ist ein typisches Beispiel für so ein Szenario. Hier möchte ich anhand von 2 Beispielen zeigen, wie man so etwas mit einfachen Mitteln selber realisieren kann.

Vorweg, ein klein wenig sollte man sich schon mit den Grundlagen der Datenübertragung auseinandergesetzt haben, aber prinzipiell ist es nicht wirklich problematisch. Insbesondere die Möglichkeit Nr. 2 ist im Grunde relativ einfach. Es kommt in letzter Instanz immer darauf an, welche Ansprüche man stellt. Die Software Wireshark ist allerdings eher etwas für Fortgeschrittene und man sollte sich darüber im klaren sein, dass es dabei wirklich ans Eingemachte geht. TCP/IP Verständnis ist dabei wirklich vorausgesetzt und Pflicht um die Ausgaben zu verstehen. Fiddler ist hier eher auf einem etwas niedrigeren Niveau angesiedelt und macht es dem Anwender einfacher.

Möglichkeit Nr.1 (Mit etwas Hardware) 

Um die Sache verständlicher zu machen, hier zunächst eine Grafik, die verdeutlicht, wie das ganze grundsätzlich aufgebaut ist.
Möglichkeit 1 mit zusätzlicher Hardware

Diese Methode beruht darauf, dass man keine Möglichkeit hat, auf direktem Weg an die Wlan-Pakete des Smartphones zu gelangen. Das kann zwei Gründe haben: 1. Das Smartphone bietet aufgrund des Betriebsystems oder der Betriebssystem-Version, keine Möglichkeit einen ProxyServer für die WLan-Umgebung einzustellen. 2. Die Netzwerkkarte des monitorenden Systems unterstützt den sogenannten „Promicious-Mode“ nicht in dem auch Pakete die nicht für das überwachende Device gedacht sind, an die darüber liegende Treiber-Schicht zum Betriebssystem weitergeleitet werden.

Jedenfalls benötigt man für diese Methode einen sogenannten HUB. Eine nicht intelligente Netzwerk-Komponente, die Netzwerkpakete einfach von einem auf mehrere Geräte verteilt, ohne die Geräte dabei voneinander zu trennen. Jedes Paket wird dabei physikalisch auch an jedes angeschlossene Gerät ausgeliefert. Der Hub wird also mit seinem Eingang unter zu Hilfenahme eines CAT5 Kabels, an den Ausgang des Wireless-Routers (Access Point) angeschlossen. Dann wird der Eingang des DSL-Modems ebenfalls unter zu Hilfenahme eines CAT5 Kabels an einen der Ausgänge des Hubs angeschlossen, ebenso wie der Laptop mit dessen Hilfe wir dann später den Netzwerkverkehr analysieren wollen.

Als nächstes muss die Netzwerkkarte des Laptop nun an die geänderten Netzwerk-Parameter angepasst werden. In unserem Fall bedeutet das, dass die zumindest die Gateway-Adresse auf die Eingangs-IP-Adresse des DSL Modems eingestellt werden muss und entsprechend auch die Adresse des DHCP Servers. (In der Regel sind diese Ident) Jetzt installiert man sich die Software „Wireshark“ auf dem Laptop und kann beginnen die vom Smartphone ins Internet gesendeten TCP/IP Pakete (und umgekehrt) abzufangen und zu analysieren. (Ich gehe hier jetzt ganz bewusst nicht auf die Bedienung von Wireshark ein)

Möglichkeit Nr. 2 (ohne zusätzliche Hardware)

Auch hier wieder zunächst eine Grafik welche das Setup verdeutlicht:
Möglichkeit 2 ohne Zusatz Hardware
Dieses Setup unterscheidet sich vom ersten vor allem dadurch, dass auf dem Smartphone eine Einstellung vorgenommen werden muss, welche nicht jedes Smartphone bietet. Auf dem Smartphone muss die Möglichkeit exisitieren, einen WLan-Proxy einzustellen. Im Falle des in der Grafik gezeigten Setups muss also der Rechner mit der IP-Adresse „192.168.0.3“ und der Portadresse „8888“ (Standard-Einstellung Fiddler2) als Proxy-Server eingestellt werden. Unter Android ist das bspw. in den erweiterten Wlan-Einstellungen möglich. (Dies allerdings erst in den neueren Versionen von Android, ab Ice Cream Sandwich aufwärts.)

Als nächstes installiert man sich die Freie Software Fiddler 2 auf dem Laptop. Hat man diese gestartet muss man als erstes einmal das Menü „Tools – Fiddler Options“ aufrufen und im Folge-Dialog den Karteireiter „Connections“. Hier muss man den Haken bei der Option: „Allow remote Computers to connect“ setzen!

Nun kann es im Prinzip losgehen, Fiddler2 zeigt nun sämtliche Verbindungen, die das Smartphone (und natürlich auch der lokale PC) macht auf und zeigt diese in zeitlicher Reihenfolge an. Im rechten Bereich des Fiddler Fensters sind dann die im linken Bereich angeklickten Requests/Responses zu sehen. Hier kann man je nach Bedarf zwischen den verschiedensten Darstellungsformen wählen. Ich würde für eine Analyse immer die sogenannte RAW-Darstellung empfehlen. Das mag allerdings vom Einsatzzweck abhängen. Natürlich besteht auch hier die Möglichkeit Wireshark zum Einsatz zu bringen, wenn man wirklich auf TCP/IP Ebene herunter tracen möchte und sich auf dieser Ebene wohler fühlt.

Resümee

Beide Wege haben ihr jeweiliges Für und Wieder. Wo Möglichkeit Nr.1 möglich ist und Nr.2 nicht in Frage kommt, hat man bei Möglichkeit Nr.1 den Nachteil, dass die TCP/IP Pakete nicht so einfach dem Smartphone zugeordnet werden können, weil die Source IP-Adresse immer der Ausgang des Routers ist. Man muss also in etwa wissen wonach man sucht. Das kann bei der Vielzahl von Paketen die da an einem vorbeirauschen schon mal recht verwirrend sein. Allerdings ist das auch bei Möglichkeit Nr.2 nicht viel anders. Fiddler sortiert die HTTP/HTTPS Pakete lediglich zeitlich und bietet keine Möglichkeit hier nach IP-Adressen zu filtern. Interessant wird Möglichkeit Nr.2 dann wenn man Wireshark zum Einsatz bringt. Hier kann dann auch nach IP-Source Adressen gefiltert werden.

Schlussbemerkung

Ich möchte es nicht versäumen hier anzumerken, dass alles was ich hier beschrieben habe nur solange legal ist, sofern man sich in den eigenen WLans und LANs bewegt. Fremde Netzwerke mit derlei Mitteln zu monitoren ist natürlich juristisch ein Strafbestand und somit illegal. Also Finger weg von fremden Netzen! Ihr seid die Guten!

In diesem Sinne .. Happy Sniffing ..

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.