iPhone-Verbindungen überwachen & Traffic mitschneiden

16. Februar 2014 · Kategorien: Internet, Offtopic

iPhone mitmproxy

Dieser Artikel wird Dir erklären, wie Du iPhone-Verbindungen überwachen und den Traffic mitschneiden kannst.
Das ist sinnvoll, wenn Du wissen möchtest, welche Apps welche Internetseiten kontaktieren und wie viel Megabyte sie herunterladen.
So erhältst Du ein besseres Verständnis der Funktionsweise diverser Apps und findest verschwenderische Apps (die dafür sorgen, dass Du schneller gedrosselt wirst).

Ebenso ist es möglich, den Traffic, der von Deinem iPhone ausgeht, zu verändern. So könntest Du zum Beispiel Game Center Highscores faken. Das soll aber nicht Teil dieses Tutorials sein.

Funktionsweise

Es ist wichtig, dass Du die Funktionsweise verstehst:
Normalerweise kommuniziert Dein iPhone direkt mit dem Internet. Wenn Du beispielsweise im App Store etwas suchst, wird eine Anfrage an iTunes durchgeführt. Wenn Du die Wikipedia-App nutzt, baut Dein iPhone eine direkte Verbindung mit den Servern zu Wikipedia auf.
Um Deine iPhone-Verbindungen überwachen und den Traffic mitschneiden zu können, musst Du nun aber ein Gerät dazwischen schalten – Proxy genannt. Dieser Proxy wird Dein Mac oder ein Linux-PC sein.
Dein iPhone verbindet sich dann nicht mehr direkt mit dem Internet, sondern mit deinem Proxy. Der Proxy zeichnet alle Verbindungen auf und gibt diese dann weiter ins Internet.

iPhone-Verbindungen überwachen: Installation

Nimm deinen Mac zur Hand: Zuerst einmal solltest Du überprüfen, ob das Programm pip bereits installiert ist. Öffne dazu das Terminal (Mac: cmd + Leertaste + “Terminal” eingeben + ENTER) und gib dort

pip

ein.
Erscheint jetzt eine Liste mit diversen Commands, ist pip bereits installiert. Taucht jedoch eine Fehlermeldung (“command not found”) auf, ist das Programm noch nicht installiert.

pip installieren unter Mac OS X

Um pip zu installieren, musst Du eine Datei herunterladen, die die notwendigen Installationsschritte durchführt und diese dann mit Python ausführen:

cd ;
cd Downloads
wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py
python get-pip.py

Das war auch schon alles, pip ist nun installiert.

pip installieren unter Linux

Die Installation von pip unter Linux erfolgt über den Packagex-Manager. Das Beispiel bezieht sich auf Ubuntu:

sudo apt-get install python-pip

Proxy installieren

Das eigentliche Programm, welches Deine iPhone-Verbindungen überwachen wird, nennt sich mitmproxy.
Der Name steht für Man-in-the-middle-Proxy. Dein Mac oder Linux PC wird sozusagen zu dem “Mann”, der in der Mitte zwischen zwei Verbindungen (iPhone <> Internet) mit horcht.

Da die Installation über pip erfolgt, erfolgt sie unter Linux und Mac auf die gleiche Weise:

sudo pip install mitmproxy

Zertifikat installieren

Nachdem mitmproxy installiert wurde, könntest Du theoretisch bereits eine Verbindung von deinem iPhone zu deinem Mac oder Linux PC aufbauen. Es würde allerdings keine Verbindung zu Stande kommen (Fehlermeldung in Safari zum Beispiel). Das liegt daran, dass Du auf deinem iPhone dein Gerät noch als vertraulich einstufen musst.

Das machst Du, indem Du das von mitmproxy erstellte Zertifikat per E-Mail an dein iPhone sendest. Kopiere dazu zunächst die Zertifikatsdatei in Dein User-Verzeichnis, sodass Du es über den Finder auffinden kannst:

cd ;
cd .mitmproxy
cp mitmproxy-ca-cert.pem ../

Erstelle nun eine neue E-Mail und hänge ihr die Datei .mitmproxy an. Sende diese E-Mail an eine der E-Mail-Adressen, die Du auf deinem iPhone eingerichtet hast.
Sobald Die E-Mail empfangen wurde, öffne Sie mit deinem iPhone und lade die Zertifikatsdatei herunter. iOS wird Dich automatisch fragen, ob Du das Zertifikat installieren möchtest.

Proxy für Trafficmitschnitt einrichten

Ein letzter Schritt ist notwendig, damit Du den iPhone Traffic mitschneiden und Verbindungen überwachen lassen kannst.
Stelle sicher, dass Dein Mac oder Linux PC im gleichen WLAN ist wie dein iPhone.
Finde nun die IP-Adresse Deines Macs oder PCs heraus. Das geht in Mac über das Netzwerk-Icon > Systemeinstellung “Netzwerk” öffnen:
Mac IP-Adresse herausfinden

In Ubuntu findest Du die IP-Adresse in den Connection Informations im Netzwerk Manager:
Ubuntu IP-Adresse herausfinden.

Gehe nun in die Einstellungen deines iPhones, dort auf WLAN. Tappe nun auf den Namen deiner WLAN-Verbindung, und scroll ganz nach unten. Dort findest Du die Einstellung HTTP PROXY. Wähle dort Manual. Gib nun folgende Daten ein:

Server: IP-Adresse deines Macs oder Linux PCs
Port: 8080
Authentication: aus

Das könnte dann zum Beispiel so aussehen:
iPhone IP-Adresse einrichten

Traffic mitschneiden und iPhone-Verbindungen überwachen

Nun, da alles eingerichtet ist, musst Du auf deinem Linux PC oder Mac nur noch mitmproxy starten, damit es die Anfragen vom iPhone entgegennehmen und mitschneiden kann.
Öffne dazu wieder das Terminal und gib

mitmproxy

ein. Starte nun auf deinem iPhone ein paar Apps oder surfe im Safari. Nach kurzer Zeit werden viele Einträge sichtbar sein. Im Beispiel habe ich die Webseite dieses Blogs aufgerufen:

iPhone-Verbindungen überwachen

Jeder dieser Einträge ist eine überwachte Verbindung deines iPhones. In der zweiten Zeile eines Eintags kannst Du sehen, wie viel und wie schnell heruntergeladen wurde.

Mit den Pfeiltasten kannst einen einzelnen Eintrag auswählen (siehe gelbe Pfeile links). Mit ENTER kannst Du detaillierte Informationen über den Verbindungsaufbau einsehen. Wenn Du aus der detaillierten Ansicht zurück in die Übersicht wechseln möchtest, drücke q.

Autor: | Kategorien: Internet, Offtopic

3 Kommentare zu iPhone-Verbindungen überwachen & Traffic mitschneiden

  1. Stefan sagt:

    Hallo Christian,

    ich habe versucht, deine Schritte oben nachzuvollziehen. Leider bekomme ich bei der Installation von mitmproxy folgende Fehlermeldung:

    creating build/temp.macosx-10.10-intel-2.7/c

    cc -fno-strict-aliasing -fno-common -dynamic -arch x86_64 -arch i386 -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch x86_64 -arch i386 -pipe -DUSE__THREAD -I/usr/include/ffi -I/usr/include/libffi -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c c/_cffi_backend.c -o build/temp.macosx-10.10-intel-2.7/c/_cffi_backend.o

    c/_cffi_backend.c:13:10: fatal error: ‘ffi.h’ file not found

    #include

    ^

    1 error generated.

    error: command ‘cc’ failed with exit status 1

    —————————————-
    Command “/usr/bin/python -c “import setuptools, tokenize;__file__=’/tmp/pip-build-Ik67mL/cffi/setup.py’;exec(compile(getattr(tokenize, ‘open’, open)(__file__).read().replace(‘\r\n’, ‘\n’), __file__, ‘exec’))” install –record /tmp/pip-DP1MfK-record/install-record.txt –single-version-externally-managed –compile” failed with error code 1 in /tmp/pip-build-Ik67mL/cffi

    Damit kann ich leider wenig anfangen – könntest du mir vielleicht sagen, was das Problem ist?

    Vielen Dank im Voraus!

    Grüße
    Stefan

  2. Stefan sagt:

    PS: Ein Fortfahren mit der Erstellung des Zertifikats ist natürlich nicht möglich:
    cd: .mitmproxy: No such file or directory

  3. Matthias sagt:

    Ein alter Artikel aber doch sehr Interessant, so könnte man prüfen ob das Iphone mit Viren / Trojaner / Keylogger verseucht ist?

Hinterlasse eine Antwort

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