如何在Wireshark上捕获移动电话流量?


当前回答

对于iOS设备:

打开终端,简单地写:

rvictl -s udid

它会在Wireshark上打开一个有名字的接口,在我的例子中是rvi0。

udid是iPhone的唯一设备id。

(如何找到我的iOS设备UDID)

其他回答

在你的电脑上安装Fiddler,并在你的Android设备上使用它作为代理。

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

这里没有建议的另一个选项是在Android模拟器中从Android SDK运行你想监控的应用程序。然后,您可以在同一台机器上使用wireshark轻松捕获流量。

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

Wireshark + OSX + iOS:

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

在你的电脑上安装Wireshark 通过USB线连接iOS设备到计算机 将iOS设备和电脑连接到同一个WiFi网络 在OSX终端窗口中执行此命令:rvictl -s x,其中x为iOS设备的UDID。你可以通过iTunes找到iOS设备的UDID(确保你使用的是UDID而不是序列号)。 goto Wireshark Capture->Options,弹出对话框,单击rvi0行,然后按下开始按钮。

现在你将看到iOS设备上的所有网络流量。这可能会让人不知所措。这里有几个提示:

不要使用iOS和VPN,你无法理解加密的流量 使用简单的过滤器来关注有趣的流量 Ip.addr ==204.144.14.134查看源地址或目的地址为204.144.14.134的流量 HTTP只查看HTTP流量

下面是一个描述TCP流量的示例窗口,用于204.144.14.134的pdf下载:

我也遇到过类似的问题,启发我开发了一款应用程序,可以帮助捕捉Android设备的流量。该应用程序具有SSH服务器,允许您在Wireshark中有流量(sshdump Wireshark组件)。由于该应用程序使用名为VPNService的操作系统功能来捕获流量,因此它不需要根访问。

该应用程序处于早期测试阶段。如果你有任何问题/建议,请尽管告诉我。

从播放中下载

教程,你可以在其中阅读更多的细节

对于iOS设备:

打开终端,简单地写:

rvictl -s udid

它会在Wireshark上打开一个有名字的接口,在我的例子中是rvi0。

udid是iPhone的唯一设备id。

(如何找到我的iOS设备UDID)