Android实时网络抓取分析方法
来源:互联网 发布:梦幻西游手游抓鬼源码 编辑:程序博客网 时间:2024/06/06 00:10
前几天一直在找在Android平台下,可以直接解析tcpdump的jar,可惜一直没有找到,不过我们一使用另一种方式来实现相同的功能。
对网络中的数据包进行抓取为稍后的分析是很有用的,但如果我们在抓取数据包的同时就能够开展这种分析那将获得更好的效果。这样做的话,开发者能很清晰了解到对每一个测试用例中的请求和应答的数据是哪些。在本文中,将展示如何实时地抓取Android应用联网程序中的数据包,并且将使用著名的网络数据分析利器Wireshark进行分析。
使用步骤:
1.下载tcpdump并将部署到手机中,
用adb 命令将tcpdump push到 手机的/data/loca/目录下
修改文件的权限 cmd中输入 adb shell出现“#”输入su 切换用户出现“$”符号
此时输入chmod 777 /data/local/tcpdump
2.捕获指定端口的数据:
第一步中将tcpdump push到/data/local/tcpdump,并且已经具有相应的读写执行的权限。
我们要将tcpdump捕获的数据指定到特定的端口中,为下一步使用netcap工具去过滤数据,在adb shell下输入如下命令:
/data/local/tcpdump-n -s 0 -w - | nc -l -p 11112,这样就可以是所有网络流量数据包都经过11112端口。
3.Pc上下载安装netcat
首先在http://www.securityfocus.com/tools/139这个地址下载windows版本的netcat进行安装,这个工具的原理是:从网络的一端读入数据,然后输出到网络的另一端,它可以使用tcp和udp协议。
如果安装netcap后,在cmd中输入”nc”时找不到该命令时,可以将netcap复制到C:\Windows\System32目录下,重新打开cmd输入“nc”如果出现如下的结果
表明netcat命令在cmd中可以使用了。
4.使用Wireshark分析网络数据包
使用adb的forward指令,将数据包从手机设备的端11112口重定向到PC电脑的11112端口,然后再通过netstat工具捕获进入11112端口的数据,最后再通过管道操作交给wireshark进行分析,命令如下:
adb forward tcp:11112 tcp:11112&& nc 127.0.0.1 11112 | wireshark -k -S -i –
运行后进去下图所示,Wireshark就可以实施获取手机端的网络数据了。
扩展内容 :每次操作手机端都非常麻烦,我们可以直接将手机的东西写一个应用程序,执行相应的adb shell命令就可以啦
参考网络资料:www.phonesdevelopers
- Android实时网络抓取分析方法
- 网络抓取图片方法
- Android使用tcpdump和wireshark抓取并分析网络数据包
- wireshark网络抓取数据包分析
- 网络数据包分析与抓取
- Android实时抓取日志,生成文件
- PHP网络数据抓取方法
- Android抓取log方法
- android抓取网络数据包工具
- 抓取Android & Linux网络包
- 抓取Android & Linux网络包
- Tcpdump抓取 Android 网络包
- 经典抓取网络数据方法效率分析(fsockopen/curl/file_get_contents)
- 如何抓取网页中的实时监测数据进行分析
- android网络HttpURLConnection抓取网络图片
- Python网络页面抓取和页面分析
- Android网络通信实时更新
- Android实时监控网络状态
- 安装JDK的环境变量设置javac不是内部命令或外部命令
- 固定长度的内存池
- while练习题
- spring学习4-生命周期 init 和的destory顺序
- ORTP 使用
- Android实时网络抓取分析方法
- Android 显示系统
- 专业广州仓储物流/广州仓储物流公司
- 第10周上机实践项目6——贪财的富翁
- oracle的分页查询的实现
- IOS开发错误
- 广州仓库出租/广州专业仓库出租-龙森物流
- cocoaPods
- java常用设计模式