您的位置:首页 > 理论基础 > 计算机网络

详解使用tcpdump、wireshark对Android应用程序进行抓包并分析

2014-02-10 17:54 1056 查看
本文主要介绍如何使用tcpdump和wireshark对Android应用程序进行抓包并分析,需要说明的是在抓包之前,你的Android设备必须root过了,另外你的电脑必须有Android SDK环境。


下载并安装tcpdump

tcpdump链接:http://www.tcpdump.org/

选择一个版本下载并解压提取出其中呃tcpdump文件,然后push到你的手机上去:

1
adb push c:\tcpdump /data/local/tcpdump

进一步操作:

1
2
3
adb shell
su
chmod +x /data/local/tcpdump

然后就可以开始抓包了:

1
/data/local/tcpdump -p -vv -s 0 -w /sdcard/capture.pcap

这时你可以操作应用程序相应的操作了,抓包完毕后ctrl+c停止抓包。

然后将抓到pcap文件传输本地开始进行分析了,这里假设你pull到c盘目录下。

1
adb pull /sdcard/capture.pcap c:/


使用wireshark分析抓包数据

pc上安装wireshark

wireshark下载:http://www.wireshark.org/download.html

如果安装完毕,就可以直接打刚才的pcap文件了。



使用过滤器filter

如果抓到的东西过多,可以使用上方的过滤器,比如我只看http协议,并且是由我设备发出的



右键记录查看tcp stream

这个功能我比较喜欢,可以查看此次http,client端请求和server端返回的数据



还有我觉得更厉害的功能

可以把请求的内容和结果存储下来,比如可以查看post的内容

这是在面板看到的具体的tcp/ip各层的内容



但是这种编码之后,并且以字节流发出去的东西很让人讨厌,利用存储可能,你就可以看到具体的结果了:

选择File->Export Objects->HTTP,导出这条记录就可以啦。




最后总结下

这是我最近在工作中实际用得到的,但在实际操作tcpdump和wireshark的时候,有更多功能、技巧可以挖掘出来,这篇文章算是对从来没有用过这两个工具的人的一个入门介绍吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: