根据项目要求需要抓取手机的https请求,手中的手机型号是iphone8 plus 软件版本12.4 。
下面介绍下如何利用fiddler抓取https请求,抓取iOS时直接在Windows PC上进行,不需要非得在MAC
1. 删除Fiddler相关的注册和证书信息
在调试过程中,在网上也试过多种方法来抓取手机https的报文,一直没有成功,也把思路搞得很混乱不清楚问题出在哪里。所以在这里首先初始化环境,把windows上所有与Fiddler相关的注册和证书信息删除
(1)cmd运行certmgr.msc命令打开如下对话框,查找所有关于fiddler的证书 全部删除
(2)打开IE浏览器,打开Internet选项 ->内容->证书,全部删除
(3)打开注册表,删除fiddler2
具体步骤:
1.windows按钮+R
2.输入regedit +回车+是
3.HKEY_CURRENT_USER\Software\Microsoft\Fiddler2
2. 下载fiddler安装包
https://pc.qq.com/detail/10/detail_3330.html
也可以选择在官网下载,下载后一直next安装即可
https://www.telerik.com/download/fiddler
3. 安装后,打开界面
此时只能抓取http的包,还不能抓取https的包
默认绿色框是capturing,意思是抓包功能是开启的,如果哪天发现自己不能抓包,检查下这个状态,设置在在File –> Capture Traffic。
4. 安装CA证书
(1)选择tools-Fildder Options,选择HTTPS选项卡,选中"Decrpt HTTPS traffic",Fiddler就可以截获HTTPS请求
2)选择Connections选项卡,选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来,端口号是:8888
5. 检查证书是否安装成功
参照步骤1进行检查
6. 重启Fiddler
注意:这里使用必须使用管理员权限启动Fiddler
检查能否抓取pc上https的包
7. 手机配置
(1)确认pc端IP,手机要和pc端同网络,假设获取到的pc端的ip是192.168.3.3,设置手机端代理ip与端口,端口是Fiddler的代理端口8888,ios打开设置,找到wifi设置,代理设置为手动
(2)浏览器访问网页输入代理IP和端口,如http://192.168.3.3:8888 ,下载Fiddler的证书,点击下图FiddlerRoot certificate,点击安装即可
(3)打开设置——>通用——>描述文件与设备管理,安装证书
(4)打开设置——>通用——>关于手机——>证书信任设置,启动
最后就可以使用手机抓包了