通过WireShark抓取iOS联网数据实例分析
2015-08-21 03:32
579 查看
本文转载至http://blog.csdn.net/lixing333/article/details/7782539
iosiphone网络filter工具
我在另外一篇博客里,介绍了一款比Wireshark更轻量、更好用的软件:Charles:/article/1931949.html
今天闲的没事干,想试着分析iOS应用的网络数据传输方式。以前就曾经想过这么做,但是由于无法得到iPhone的联网数据,一直没成功。今天尝试了一下,没想到居然比较顺利。
我的工具:Mac电脑一台(PC也行),Wireshark抓包工具,iPod Touch一台,网线一根。
步骤:首先配置电脑,让iPhone能够通过电脑联网,这样iPhone就通过电脑传输数据,就能抓到数据了。具体方法:/article/4950647.html。只要进行第一种方法的1、3两步就可以了,不需要用paros,我用的是Wireshark。用PC的自己配置。推荐使用ApWifi。
配置好之后,打开Wireshark,准备抓包。这里我要分析的是新浪出的《育儿专家问答》应用。
在开始之前,最好将所有可能联网的应用全部关掉,以免数据被淹没。在Wireshark里选择Capture-Interfaces,然后在网卡列表里选择最活跃的,一般是en0,然后选择start。
这时Wireshark里会出现许许多多的数据,如下图,
![](http://my.csdn.net/uploads/201207/24/1343142598_4325.png)
这时我点击《育儿专家问答》里的一些按钮,使它发送和接收请求。
由上图可以看出,网络连接的数据非常杂乱,这时我们要将不需要的包过滤掉,只留下有用的。
由常识,我们知道一般网络请求和接收的数据包都是http格式的,于是在Filter中输入http,然后点击Apply。 这时再随便点击几下应用里的按钮,让它发出网络请求,可以发现,网络传输包中增加了几条请求:
![](http://my.csdn.net/uploads/201207/24/1343142931_3376.png)
很明显,这几条黑色的包和它们下面的包,就是应用的请求和服务器的回应了。我们点击其中一条请求,看看它的请求格式:
![](http://my.csdn.net/uploads/201207/24/1343143213_5208.png)
看到没有?Full Request URI,就是请求的网址。双击它,在浏览器中打开,可以看到是一条json数据,哈哈,初步成功!
![](http://my.csdn.net/uploads/201207/25/1343179451_7114.png)
下面的工作其实基本上就差不多了,找到各种数据的请求地址,找到它们的规律。下面的细节工作我就不继续做了。如果http数据还是很多,不足以过滤到想要的数据,可以在Filter中增加IP地址过滤:http and ip.dst==202.205.3.**,这样找到的数据就更精准了。至于通信ip到底是什么,就需要仔细发现了。
另外,这里得到的http请求是get请求,所以直接打开就可以了。如果是post请求的话,还需要仔细查看post出去的数据是什么格式的。
总结一下基本方法:让iPhone通过笔记本联网,然后使用Wireshark抓包,通过过滤器过滤抓到的包,找到请求地址,分析请求格式。over!
相关文章推荐
- ios Instruments 内存泄露
- Xcode6下iOS单元测试——XCTest和GHUnit框架简介和比较
- iOS开发小白学习体验-3
- IOS开发札记(2015-08-20)
- 使用CIFilter生成二维码并自定义
- 学习iOS,你能迎娶到白富美吗?
- iOS应用程序生命周期(前后台切换,应用的各种状态)详解
- iOS系统和XCode各版本发布日期
- IOS开发札记
- iOS笔记--百度地图环境配置
- iOS之项目管理---25个Git进阶技巧
- iOS/Mac开发中各种锁的使用
- ios-界面之间传值
- ios系统 越狱系统还原[平刷]
- iOS 代码 AutoLayout
- ios线程-常用方法
- 个人--跳槽--iOS职位要求
- 【读书笔记】iOS-Tagged Pointer对象-注意事项
- 【读书笔记】iOS-Tagged Pointer对象-注意事项
- [iOS]上下文的理解