Fiddler抓取HTTPS设置
注意以下操作的前提是,手机已经能够连上Fiddler,这部分的配置过程简单就不赘述了,可参考:手机如何连接Fiddler 。
如何继续配置让Fiddler抓取到HTTPS协议呢?
(一)给fiddler安装certmaker插件
由于默认的证书不符合Android和iOS的证书要求,所以,需要下载 certmaker 插件,双击安装后,重启fiddler。注意这一步很重要,必须使用certmaker插件,不要使用默认的证书生成器,否则抓不到包。

(备注:经验证,android 和 ios ,如果不安装此插件,也是可以抓到包的,官方的文档上也是用了一个很模棱两可的说明,may ,可能,都不是那么的绝对。如果是抓不到包,此步骤可以作为一个解决方案)

 

fiddler ios app抓不到数据 fiddler抓不到app包_iOS

 

(二)首先对Fiddler进行设置:打开工具栏->Tools->Fiddler Options->HTTPS

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_02

对Fiddler进行设置

选中Capture HTTPS CONNECTs,因为我们要用Fiddler获取手机客户端发出的HTTPS请求,所以中间的下拉菜单中选中from remote clients only。选中下方Ignore server certificate errors.

Actions-> Trust Root Certificate。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_03

点击Yes。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_04

点击是,留意一下红框里面的内容,DO_NOT_TRUST_FiddlerRoot ,这个就是证书的名称。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_05

点击是。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_06

 

点击确定,这样Fiddler证书就已经添加成功了。

fiddler ios app抓不到数据 fiddler抓不到app包_iOS_07

查看一下证书,Actions—>open windows certificate Manager

fiddler ios app抓不到数据 fiddler抓不到app包_iOS_08

可以证书已经添加进去了,证书名称就是之前提醒大家留意的,【DO_NOT_TRUST_FiddlerRoot】,但是我很搞不懂为什么是两条记录,有待深究啊。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_09

 

(三)然后,就是手机安装Fiddler证书。
这一步,也就是我们上面分析的抓取HTTPS请求的关键。
操作步骤很简单,打开手机浏览器,在浏览器地址输入代理服务器IP和端口,会看到一个Fiddler提供的页面。

fiddler ios app抓不到数据 fiddler抓不到app包_HTTPS_10

接着点击最下方的FiddlerRoot certificate,这时候点击确定安装就可以下载Fiddler的证书了。

查看手机上的安装证书,设置->系统->安全->信任的证书-用户(位置可能有因为手机的不同多少有些区别):

fiddler ios app抓不到数据 fiddler抓不到app包_客户端_11

 

下载安装完成好后,我们用手机客户端或者浏览器发出HTTPS请求,Fiddler就可以截获到了,就跟截获普通的HTTP请求一样。
如下下图所示,绿色标志的接口都是HTTPS协议:

-

fiddler ios app抓不到数据 fiddler抓不到app包_客户端_12