(图片来源网络,侵删)
通常我们主要抓取手机等移动设备的三种数据封包:TCP、HTTP、HTTPS本文我们主要通过图文详细讲解使用wireshark抓取手机的tcp数据包,使用Fiddler抓取手机的HTTP、HTTPS数据包以及android各版本 IOS各版本对于Fiddler证书安装的方法及区别前文我们讲解过wireshark和Fiddler的详细使用方法,需要的可以翻阅前文使用wireshark抓取手机等移动设备的tcp、udp、websocket等协议的数据包:首先你需要准备一台具有无线网卡的台式机或者笔记本使用360免费wifi或者同类工具,创建一个WIFI热点手机连接该热点打开wireshark,选择无线网卡,然后开始抓包使用Fiddler抓取手机设备的http、https的包:首先打开Fiddler,点击:Tools->options->Connections->勾选Allow remote computers to connect 以允许远程设备连接点击Toos->options->https->勾选以下几项,以便开启https抓包,期间会弹出证书安装,一路确定即可然后让手机和抓包电脑位于同一局域网,打开手机的wifi设置,设置代理IP为抓包机器的IP地址,端口为8888.下图为安卓和IOS的设置示例安卓IOS设置好代理后使用自带浏览器访问代理服务器安装证书,以便抓包https数据包打开http://192.168.2.211:8888,然后点击FiddlerRoot certificate点击后android和IOS分别按照提示,输入锁屏密码直到安装完成IOS安卓特别注意:如果您的设备是IOS10以上,需要进行额外设置“打开设置->通用->关于手机->证书信任设置”,手动设置Fiddler证书为完全信任特别提示:Android 7及以上, Android团队已经决定,在默认情况下,HTTPS证书验证应用程序针对API级别24后来将忽略用户装机根证书,这意味着即使你已经信任了Fiddler的证书,但是也完全没有意义app开发人员可以天下如下代码以允许调试,非开发人员只能root设备或者解包apk修改配置后重新打包<network-security-config> <debug-overrides> <trust-anchors> <!-- Trust user added CAs while debuggable only --> <certificates src=\"user\" /> </trust-anchors> </debug-config> </network-security-config>另外由于Fiddler是基于代理模式抓包,IOS基本所有app都会默认使用系统代理,但是安卓有很多app是不走系统代理的,这意味着你无法去抓到他们的包针对这种情况,你可以安装ProxyDroid这个app进行全局代理设置以上设置 完成后,我们就可以通过Fiddler抓取手机的数据包了,我们抓一下搜狐新闻app看下效果打开Fiddler,清空数据列表,然后在苹果手机上打开搜狐新闻返回Fiddler,发现已经抓取到很多数据包
0 评论