在Wireshark上捕获手机流量

Xar*_*ara 244 iphone networking android wireshark ios

如何在Wireshark上捕获手机流量?

rup*_*llo 336

以下是一些建议:

  1. 对于Android手机,任何网络:root你的手机,然后在其上安装tcpdump.这个应用程序是一个tcpdump包装器,它将安装tcpdump并使您能够使用GUI启动捕获.提示:您需要确保为捕获提供正确的接口名称,这在不同设备之间有所不同,例如-i eth0-i tiwlan0 - 或者使用-i any来记录所有接口

  2. 对于Android 4.0+手机:Kismet的Android PCAP使用USB OTG接口支持数据包捕获而无需root.我没有试过这个应用程序,并且支持的设备类型有一些限制(参见他们的页面)

  3. 对于Android手机:tPacketCapture使用Android VPN服务拦截数据包并捕获它们.我已成功使用此应用程序,但它似乎也会影响大流量的性能(例如视频流)

  4. 对于IOS 5+设备,任何网络:iOS 5添加了远程虚拟接口(RVI)工具,允许您使用Mac OS X数据包跟踪程序从iOS设备捕获跟踪.有关详细信息,请参见此处

  5. 对于所有手机,仅限Wi-Fi: 将您的PC设置为无线接入点,然后在PC上运行wireshark

  6. 对于所有手机,仅限Wi-Fi:获取可以嗅探Wi-Fi 的捕获设备.这样做的好处是可以为您提供802.11x标头,但您可能会错过一些数据包

  7. 使用VPN服务器捕获:使用OpenVPN 设置自己的VPN服务器相当容易.然后,您可以将移动设备设置为VPN客户端,并在服务器端捕获流量,从而通过服务器路由流量.

  • 关于选项2:这实际上是一个不存在的选项.从他们的页面:"你将需要[...]和基于RTL8187的无线网卡"!!!! (2认同)

min*_*pif 36

除了rupello的优秀答案,一个"脏"但非常有效的技巧:

对于所有手机,任何(本地)网络:将您的PC设置为移动设备中的Man-In-The-Middle.

使用Ettercap在您的移动设备和路由器之间进行ARP欺骗,所有移动设备的流量都将显示在Wireshark中.有关设置详细信息,请参阅本教程

  • 您也可以在Mac OS上使用[Charles proxy](http://charlesproxy.com/)来捕获HTTP流量,它具有非常好的界面和功能。您需要设置计算机的本地IP并在手机上具有代理。它也可以嗅探TLS流量,如果在电话上安装了Charles的证书,它也不会发出警告。 (2认同)

Maz*_*Zer 25

此处未建议的另一个选项是从Android SDK运行您要在Android模拟器中监控的应用.然后,您可以使用wireshark在同一台计算机上轻松捕获流量.

这对我来说是最简单的选择.

  • 这是一个有趣的选择。它可以处理 ssl 数据包吗? (2认同)

drb*_*gan 20

Wireshark + OSX + iOS:

到目前为止的精彩概述,但如果你想要Wireshark + OSX + iOS的细节:

  • 在您的计算机上安装Wireshark
  • 通过USB线将iOS设备连接到计算机
  • 将iOS设备和计算机连接到同一个WiFi网络
  • 在OSX终端窗口中运行此命令: iOS设备的UDID rvictl -s x在哪里x.您可以通过iTunes找到iOS设备的UDID(确保使用的是UDID而不是序列号).
  • 转到Wireshark Capture->Options,出现一个对话框,单击该行rvi0然后按下Start按钮.

Wireshark捕获选项对话框

现在,您将在iOS设备上看到所有网络流量.它可能非常压倒性.几个指针:

  • 不要将iOS与VPN一起使用,您无法理解加密的流量
  • 使用简单的过滤器来关注有趣的流量
  • ip.addr==204.144.14.134 查看源或目标地址为204.144.14.134的流量
  • http 仅查看http流量

这是一个示例窗口,描述了从204.144.14.134下载pdf的TCP流量:

Wireshark TCP流量从204.144.14.134下载pdf


Far*_*jmi 8

对于Android手机,我使用了tPacketCapture:https://play.google.com/store/apps/details? id = jp.co.taosoftware.android.packetcapture &hl = en

这个应用程序是一个救生员我正在调试我的Android应用程序上的SSL/TLS握手失败的问题.试图设置ad hoc网络,所以我可以在笔记本电脑上使用wireshark.它对我不起作用.这个应用程序很快让我捕获网络流量,在我的Google云端硬盘上分享它,这样我就可以在笔记本电脑上下载,我可以用Wireshark查看它!太棒了,不需要root!


Aki*_*oto 7

Packet Capture Android应用程序实现了一个VPN,可记录Android设备上的所有网络流量.您无需在PC上设置任何VPN /代理服务器.不需要root.支持tPacketCapture不支持的SSL解密.它还包括一个很好的日志查看器.


Ato*_*ean 6

先决条件: adb 和wireshark 已安装在您的计算机上,并且您有一个root 的android 设备。

  1. 下载tcpdump到 ~/Downloads
  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 在您捕获足够的数据包之后。
  10. exit
  11. exit
  12. adb pull /sdcard/dump.pcap ~/Downloads/

现在您可以使用 Wireshark 打开 pcap 文件。


Pie*_*rcq 5

在您的 PC 上安装 Fiddler 并将其用作 Android 设备上的代理。

资料来源:http ://www.cantoni.org/2013/11/06/capture-android-web-traffic-fiddler

  • 这仅对 HTTP/HTTPS 流量有用。 (3认同)