原文出自【听云技术博客】:http://blog.tingyun.com/web/article/detail/480
做为一个测试人员,工作中经常会用到数据抓包工具来进行数据分析和验证,下面就简单介绍一下工作中常用的抓包工具。
TcpDump抓包
Tcpdump是一个用于截取网络分组,并输出分组内容的工具。它凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具。 可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息,只有具备root权限的用户才可以直接执行它来获取网络上的信息。
1、配置抓包环境
1)下载TcpDump
下载地址:http://www.strazzere.com/android/tcpdump
2)配置ADB命令
a)使用Terminal在当前用户目录下新建一个.bash_profile文件用以配置环境变量
$ touch .bash_profile
$ open .bash_profile
b)修改.bash_profile文件添加adb路径
export PATH=${PATH}:/Users/Pa
th/Android/sdk/platform-tools
export PATH=${PATH}:/Users/ Path/Android/sdk/tools
c)验证ADB命令
$ adb version
d)将下载后的TcpDump push 到/system/etc目录下,该目录保存的都是系统的配置文件
$ adb push /Users/Path/tcpdump /system/etc
注:如果遇到个别机型无法push可以使用mount命令挂起system目录
3)Android设备获取Root权限
这里可以使用市面上常见的一些一键Root工具对手机解锁Root权限。
如:Root大师、Root精灵等等
4)配置Wireshark
a)Mac上使用Wireshark运行需要安装X11
http://www.xquartz.org/
下载完成以后打开XQuartz-2.7.8.dmg选择XQuartz.pkg,继续安装即可
b)安装Wireshark
https://1.na.dl.wireshark.org/os
x/Wireshark%202.0.2%20Intel%2064.dmg
下载完成以后安装Wireshark打开Wireshark 2.0.2 Intel 64.pkg继续安装即可
2、使用TcpDump抓包
抓包步骤
1)连接Android设备
$ adb shell
2)TcpDump 抓包命令
$ tcpdump -p -vv -s 0 -w /sdcard/tcp/tcpdump.pcap
命令参数
# -p 不将网络接口设置成混杂模式
# -vv 输出详细的报文信息
# -s 0捕获整个包
# -w 直接将分组写入文件中,而不是不分析并打印出来
3)抓包结束后将生成的.pcap文件拷贝到PC上
$ adb pull /sdcard/tcp/tcpdump.pcap
3、使用Wireshark 进行数据分析
使用Wireshark打开.pcap文件即可