如何捕获Android设备中的所有网络数据,如PC中的fiddler?

时间:2014-07-01 06:40:01

标签: android fiddler

有没有办法分析Android设备中的网络流量并将其记录在SD卡中?例如,这个应用程序将作为代理在后台运行,使所有网络通过它并基于一些过滤器(例如:facebook数据,whatsapp数据)检查正在发送和接收的数据并将其记录在文本文件中。

3 个答案:

答案 0 :(得分:1)

我不知道如何将数据保存到SD卡,但您可以通过configuring Fiddler on a PC that's in the same network捕获来自Android设备的所有流量。

在Fiddler的电脑上,转到Tools > Fiddler Options > Connections

检查Allow remote computers to connect

检查Fiddler服务器的IP

在Android设备的WiFi设置中,配置代理。将您的Fiddler服务器的IP和端口分别用作Proxy hostnameProxy port

这应该会使您的Android设备的流量显示在Fiddler中。

查看本答案开头的链接,了解更详细的说明和截图。

答案 1 :(得分:0)

我认为您正在研究TCPDump。但是这不能作为普通用户运行,你需要成为执行它的root。

另请注意,tcpdump二进制文件甚至不会与库存图像一起发布(我的Cyanogenmod甚至不包含此内容)。

以下是一些例子: http://danielmiessler.com/study/tcpdump/

答案 2 :(得分:0)

Google Play 上的某些应用程序允许您在不root 设备的情况下捕获流量。其中之一是 Grey Shirts' Packet Capture

它们通过在设备上作为 VPN 服务运行来工作。强制所有流量通过它,同时记录它。然后,您可以在应用的 UI 上查看日志(可能可以从 SD 卡中提取会话日志以在 Wireshark 上打开它。尚未尝试过)。

该应用程序还允许您安装自己的根 CA 证书,以便您可以查看解密的 SSL 加密数据包(请记住在完成流量捕获后删除证书)。只要应用不使用 customized trusted CAs,此方法就有效。

请注意,您将无法使用作为 VPN 服务运行的应用捕获所有流量。例如,应用程序进行的名称解析不会通过 VPN。