采用tcpdump攫Android网络数据包
1 空灵的原理
tcpdump(需Root用户执行)拦截和显示发送或收到过网络连接到该机器的TCP/IP和其它数据包。简单说就监控手机进出网络数据。
2 方法优劣
2.1长处
1.手机数据包无遗漏
2.2缺点
1.不能实时抓包
2.电脑须要安装Android SDK
3.測试手机须要获取root权限
4.測试手机须要安装tcpdump软件
3 安装准备
3.1手机获取root权限
眼下针对android手机的Root工具非常多。网上下载随意刷机工具,比方刷机精灵、一键ROOT等等
3.2电脑安装Android SDK
下载地址 http://developer.android.com/sdk/index.html
解压下载的文件进行安装,再配置环境变量就可以,眼下同事电脑基本均已安装配置此环境。
3.3手机安装tcpdump
tcpdump下载地址: http://www.strazzere.com/android/tcpdump
4 工具安装
1.Android手机USB连接电脑,打开Windows命令提示符窗体;
2.检查手机连接是否正常;
adb devices #检查手机是否已连接
*运行记录*:
注1:已检查到手机连接正常
3.adb shell 进入手机改动/data/local权限
adb shell #登入手机
su #切换Root用户
chmod 777 /data/local/ #改动文件夹权限。改动后Ctrl+C退出adb shell
4.将tcpdump程序copy到android手机
adb push #tcpdump /data/local/ ; #tcpdump文件存放在盘根文件夹。/data/local/为手机目标路径
(有的手机可能copy失败。能够多加一级文件夹就能够了adb push #tcpdump /data/local/tmp/ )
也可通过文件浏览器工具复制文件;
*运行记录*(第3步至第4步)
5.adb进入手机改动tcpdump的权限,改动为可运行权限。
adb shell #登入手机
su #切换Root用户
chmod 777 /data/local/tcpdump #添加可运行权限
5 实例
1.usb连接手机。切换root用户。运行抓包命令
adb shell #登入手机
su #切换Root用户
/data/local/tcpdump -p -vv -s 0 -w /sdcard/Mcart001.pcap #运行抓包命令,结果保存到SD卡Mcart001.pcap文件里
2.操作APP,生成请求数据
3. 按Ctrl+C中断抓包退出
4.导出抓包结果至电脑
adb pull /sdcard/Mcart001.pcap E:/ #前为手机中文件及存放路径,后为电脑E盘根文件夹
5.使用Wireshark等工具分析抓包文件Mcart001.pcap
版权声明:本文博主原创文章,博客,未经同意不得转载。