Erfassen des Mobiltelefonverkehrs auf Wireshark

Antworten:

350

Hier sind ein paar Vorschläge:

  1. Für Android-Telefone jedes Netzwerk : Rooten Sie Ihr Telefon und installieren Sie tcpdump darauf. Diese App ist ein tcpdump-Wrapper, der tcpdump installiert und es Ihnen ermöglicht, Captures über eine GUI zu starten. Tipp: Sie müssen sicherstellen, dass Sie den richtigen Schnittstellennamen für die Erfassung angeben. Dieser Name variiert von Gerät zu Gerät, z. B. -i eth0 oder -i tiwlan0 - oder verwenden Sie -i any , um alle Schnittstellen zu protokollieren

  2. Für Android 4.0+ Telefone : Android PCAP von Kismet verwendet die USB-OTG-Schnittstelle, um die Paketerfassung zu unterstützen, ohne dass Root erforderlich ist. Ich habe diese App nicht ausprobiert und es gibt einige Einschränkungen hinsichtlich der Art der unterstützten Geräte (siehe deren Seite).

  3. Für Android-Telefone : tPacketCapture verwendet den Android-VPN-Dienst, um Pakete abzufangen und zu erfassen. Ich habe diese App erfolgreich verwendet, aber es scheint auch die Leistung bei großem Verkehrsaufkommen (z. B. Video-Streaming) zu beeinträchtigen.

  4. Für IOS 5+ -Geräte hat jedes Netzwerk : iOS 5 eine Remote Virtual Interface (RVI) -Funktion hinzugefügt , mit der Sie Mac OS X-Paketverfolgungsprogramme verwenden können, um Verfolgungen von einem iOS-Gerät zu erfassen. Sehen Sie hier , um weitere Informationen

  5. Nur für alle Telefone Wi-Fi: Richten Sie Ihren PC als drahtlosen Zugangspunkt ein und führen Sie dann Wireshark auf dem PC aus

  6. Für alle Telefone nur Wi-Fi: Besorgen Sie sich ein Aufnahmegerät, das Wi-Fi schnüffeln kann. Dies hat den Vorteil, dass Sie auch 802.11x-Header erhalten, aber möglicherweise verpassen Sie einige der Pakete

  7. Erfassung mit einem VPN-Server : Es ist ziemlich einfach, einen eigenen VPN-Server mit OpenVPN einzurichten . Sie können Ihren Datenverkehr dann über Ihren Server weiterleiten, indem Sie das mobile Gerät als VPN-Client einrichten und den Datenverkehr auf der Serverseite erfassen.

Rupello
quelle
1
Wenn Sie unter Windows 7 und höher einen Rogue Access Point einrichten und Pakete mit Wireshark erfassen möchten, lesen Sie die Schritte, die ich unter mohit.io/blog/ zusammengestellt habe. Dies funktioniert für alle Geräte, die WiFi (Android) unterstützen , iOS, Wii, XBox usw.)
Mohit
2
Zu Option 2: Dies ist praktisch keine Option. Von ihrer Seite: "Sie benötigen [...] und eine RTL8187-basierte drahtlose Netzwerkkarte" !!!!
Matto
1
Für mich ist die Option 3 die einfachste Aufgabe, um einfache Aufgaben zu erledigen, z. B. zu überprüfen, welche Anrufe eine bestimmte App ausführt.
Nighto
1
Die meisten davon funktionieren nicht für Pakete, die das Gerät nie verlassen oder wenn Sie bereits ein VPN verwenden. Diese sind also für die Lösung von MTU- / Fragmentierungsproblemen unbrauchbar.
Evi1M4chine
1
Was ist, wenn ich das Gegenteil tun möchte? Verwenden Sie mein mit dem USB verbundenes Smartphone, um die Pakete meines PCs zu erfassen? Führen Sie im Grunde eine Wireshark-ähnliche Software auf meinem Android-Handy aus
dominicbri7
40

Neben Rupellos hervorragender Antwort ein "schmutziger", aber sehr effektiver Trick:

Für alle Telefone, jedes (lokale) Netzwerk : Richten Sie Ihren PC so ein, dass Man-In-The-Middle Ihr Mobilgerät ist.

Verwenden Sie Ettercap , um ARP-Spoofing zwischen Ihrem Mobilgerät und Ihrem Router durchzuführen, und der gesamte Datenverkehr Ihres Mobiltelefons wird in Wireshark angezeigt. In diesem Tutorial finden Sie Einzelheiten zur Einrichtung

Minipif
quelle
3
Sie können Charles Proxy auch unter Mac OS verwenden, um den HTTP-Verkehr zu erfassen. Er verfügt über eine sehr schöne Benutzeroberfläche und Funktionen. Sie müssen einrichten, dass die lokale IP Ihres Computers über einen Proxy auf Ihrem Telefon verfügt. Es kann auch TLS-Verkehr abhören und dies ohne Vorwarnung tun, wenn Sie das Charles-Zertifikat auf dem Telefon installieren.
Minipif
28

Eine andere Option, die hier nicht vorgeschlagen wurde, besteht darin, die App, die Sie überwachen möchten, im Android-Emulator über das Android SDK auszuführen. Sie können dann problemlos den Datenverkehr mit Wireshark auf demselben Computer erfassen.

Dies war die einfachste Option für mich.

MazeChaZer
quelle
1
Das ist eine interessante Option. Kann es SSL-Pakete verarbeiten?
Ransh
22

Wireshark + OSX + iOS:

Bisher eine gute Übersicht, aber wenn Sie Einzelheiten zu Wireshark + OSX + iOS wünschen:

  • Installieren Sie Wireshark auf Ihrem Computer
  • Verbinden Sie das iOS-Gerät über ein USB-Kabel mit dem Computer
  • Verbinden Sie iOS-Gerät und Computer mit demselben WiFi-Netzwerk
  • Führen Sie diesen Befehl in einem OSX-Terminalfenster aus: rvictl -s xWo xbefindet sich die UDID Ihres iOS-Geräts? Sie können die UDID Ihres iOS-Geräts über iTunes finden (stellen Sie sicher, dass Sie die UDID und nicht die Seriennummer verwenden).
  • Wenn Sie zu Wireshark gehen Capture->Options, wird ein Dialogfeld angezeigt. Klicken Sie auf die Zeile rvi0und drücken Sie die StartTaste.

Dialogfeld "Wireshark Capture-Optionen"

Jetzt sehen Sie den gesamten Netzwerkverkehr auf dem iOS-Gerät. Es kann ziemlich überwältigend sein. Ein paar Hinweise:

  • Verwenden Sie iOS nicht mit einem VPN. Sie können den verschlüsselten Datenverkehr nicht verstehen
  • Verwenden Sie einfache Filter, um sich auf interessanten Verkehr zu konzentrieren
  • ip.addr==204.144.14.134 Zeigt den Verkehr mit einer Quell- oder Zieladresse von 204.144.14.134 an
  • http zeigt nur http-Verkehr an

Hier ist ein Beispielfenster mit dem TCP-Verkehr für den PDF-Download von 204.144.14.134:

Wireshark TCP-Verkehr zum PDF-Download von 204.144.14.134

drbobdugan
quelle
9

Für Android-Handys habe ich tPacketCapture verwendet: https://play.google.com/store/apps/details?id=jp.co.taosoftware.android.packetcapture&hl=de

Diese App war ein Lebensretter. Ich habe ein Problem mit einem Fehler beim SSL / TLS-Handshake auf meiner Android-App behoben. Es wurde versucht, ein Ad-hoc-Netzwerk einzurichten, damit wir Wireshark auf meinem Laptop verwenden können. Bei mir hat es nicht funktioniert. Mit dieser App konnte ich schnell den Netzwerkverkehr erfassen und auf meinem Google Drive freigeben, damit ich ihn auf meinen Laptop herunterladen und mit Wireshark untersuchen konnte! Super und keine Wurzel erforderlich!

Farrukh Najmi
quelle
Funktioniert nicht, wenn Ihre Probleme nur bei Verwendung eines VPN auftreten (und auch nie auf dem Hub / Router landen).
Evi1M4chine
8

Die Android-App "Packet Capture" implementiert ein VPN, das den gesamten Netzwerkverkehr auf dem Android-Gerät protokolliert. Sie müssen keinen VPN / Proxy-Server auf Ihrem PC einrichten. Benötigt keine Wurzel. Unterstützt die SSL-Entschlüsselung, die tPacketCapture nicht unterstützt. Es enthält auch einen guten Protokoll-Viewer.

Akira Yamamoto
quelle
Das VPN funktioniert nicht ... keine Seite wird geöffnet oder Daten werden abgerufen ... dieses VPN zu haben ist wie keine Internetverbindung zu haben ...
Himanshu Bansal
4

Ähnlich wie Sie Ihren PC zu einem drahtlosen Zugangspunkt machen, aber viel einfacher sein können, wird Reverse Tethering verwendet. Wenn Sie zufällig ein HTC-Telefon haben, haben diese eine nette Reverse-Tethering-Option namens "Internet Pass-Through" unter den Einstellungen für die Netzwerk- / Mobilfunkfreigabe. Es leitet den gesamten Datenverkehr über Ihren PC und Sie können dort einfach Wireshark ausführen.

Peter Jeffe
quelle
2

Machen Sie Ihren Laptop zu einem WLAN-Hotspot für Ihr Telefon (beliebig) und verbinden Sie ihn mit dem Internet. Sniff Traffic auf Ihrer WLAN-Schnittstelle mit Wireshark.

Sie werden eine Menge Anti-Datenschutz-Sachen kennenlernen!

FireCruZ
quelle
6
Können Sie genauer festlegen, wie dies auf mindestens einer Plattform (Windows, Linux oder Mac OS X) durchgeführt werden soll?
Alexandre Marcondes
2

Voraussetzungen: adb und wireshark sind auf Ihrem Computer installiert und Sie haben ein gerootetes Android-Gerät.

  1. Laden Sie tcpdump auf ~ / Downloads herunter
  2. adb push ~/Downloads/tcpdump /sdcard/
  3. adb shell
  4. su root
  5. mv /sdcard/tcpdump /data/local/
  6. cd /data/local/
  7. chmod +x tcpdump
  8. ./tcpdump -vv -i any -s 0 -w /sdcard/dump.pcap
  9. CTRL+C nachdem Sie genug Pakete erfasst haben.
  10. exit
  11. exit
  12. adb pull /sdcard/dump.pcap ~/Downloads/

Jetzt können Sie die pcap-Datei mit Wireshark öffnen.

AtomicBoolean
quelle
1

Für Android habe ich zuvor tPacketCapture verwendet, aber es funktionierte nicht gut für eine App, die ein Video streamt. Ich benutze jetzt Shark . Sie müssen root sein , um es zu verwenden.

Es verwendet TCPDump (überprüfen Sie die Argumente, die Sie übergeben können ) und erstellt eine pcap-Datei , die von Wireshark gelesen werden kann. Die Standardargumente sind normalerweise gut genug für mich.

user276648
quelle
1
Shark ist bei Google Play nicht mehr verfügbar.
not2qubit
In der Tat scheint es entfernt worden zu sein. Die Seite swapper.n3o.lv scheint auch die apks nicht mehr zu halten.
user276648
0

Ich hatte ein ähnliches Problem, das mich dazu inspirierte, eine App zu entwickeln, mit der der Datenverkehr von einem Android-Gerät erfasst werden kann. Die App verfügt über einen SSH-Server, mit dem Sie Datenverkehr in Wireshark im laufenden Betrieb haben können ( sshdump-Wireshark-Komponente ). Da die App eine Betriebssystemfunktion namens VPNService verwendet, um den Datenverkehr zu erfassen, ist kein Root-Zugriff erforderlich.

Die App befindet sich in der frühen Beta. Wenn Sie irgendwelche Probleme / Vorschläge haben, zögern Sie nicht, mich zu informieren.

Aus dem Spiel herunterladen

Tutorial, in dem Sie zusätzliche Details lesen können

Andrey Egorov
quelle