Fiddler 抓取 https 设置详解(图文)

现在window 系统很多使用 fiddler 抓包,对于 http 来说不需太多纠结,随便设置下就能用,但是抓取 https 就死活抓不了,出现诸如以下问题:

creation of the root certificate was not successful;

Failed to find the root certificate in User Root List;

The Root certificate could not be found;

The root certificate could not be located;

Fiddler 抓取https 显示 Tunnel to ... 443;

等等...

主要原因就是 https 有一个安全证书问题。

第一次安装:

1.下载最新版fiddler ,强烈建议在官网下载:https://www.telerik.com/download/fiddler

2. 正常傻瓜式安装,下一步,下一步,安装完毕后,先不用急于打开软件。

3.下载并安装Fiddler证书生成器:http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker.exe?sfvrsn=2

4.打开Fiddler,点击工具栏中的Tools—>Options

5.点击https设置选项,勾选选择项

6.点击Actions,点击第二项:Export Root Certificate to Desktop,这时候桌面上会出现证书FiddlerRoot.cer文件,点击OK设置成功,关闭fiddler

7.PC端,在浏览器中导入证书FiddlerRoot.cer,以谷歌浏览器为例说明,在浏览器上输入: chrome://settings/,然后进入高级设置,点击管理证书

8.在受信任的根证书颁发机构,对证书进行导入

9.重新打开fiddler,就可以在电脑上进行https抓包了。

如果不是第一次安装,那么需要重新设置,步骤如下:

1.清除C:UsersAdministratorAppDataRoamingMicrosoftCryptoRSA 目录下所有文件

2.清除电脑上的根证书,WIN+R快捷键,输入:certmgr.msc, 然后回车,查找所有fiddler证书,然后删除。

3.清除浏览器上的证书文件,此处需要仔细查找带有FiddlerRoot的字样,并删除,一般在设置中。以谷歌浏览器为例说明,在浏览器上输入: chrome://settings/

4.打开fiddler,点击工具栏中的Tools—>Options,点击Actions,选择最后一项,Reset All certificates,然后关闭

5.点击 Options 对话框的 Connections 选项,设置端口号以及箭头标记选项。默认是8899,可以自行修改设置

设置手机(ios)

1. 配置代理

步骤: 设置 >> 无线局域网 >> 选择和PC端一样的网络连接,点击进入 

           >> 翻到最下面,找到HTTP代理(默认:关闭) >>点击“手动”选项  

           >> 服务器:pc机的 ip(cmd 进入命令行窗口,ipconfig或ipconfig/all可获取)  端口:8888(你在fiddler 中如何设置的,这里就填什么)

           >>点击存储

比如 ip:127.0.0.1,port:8080。也可以使用指令 ipconfig 查看电脑 ip,或者在 fiddler 右上角 online 如图直接查看

2.下载&安装证书

步骤:

    1)在默认浏览器"Safari"的地址栏中输入 ip:port  (ip是pc机的ip,port是fiddler设置的端口)如:192.168.0.10:8888

    2)点击“FiddlerRoot certificate”  >> 选择【允许】  >> 点击【安装】即可

    3)安装后检查证书是否打开

 步骤: 设置  >> 通用   >> 关于本机  >>证书信任设置  >> 启用你安装的证书的信任 >>  选择继续

    如下图所示,到此完成了fiddler配置手机代理

设置手机(安卓)

1. 配置代理

步骤如 ios 一样

2.下载证书

1)手机浏览器(最好使用自带浏览器 不容易出问题)进入 http://主机名IP:8888,

2)点击“FiddlerRoot certificate”进行下载(通过更改目录,可以查看一下下载到那个目录了)

一般在下载目录:内部存储设置 > download

3.安装证书

步骤:

    1)设置 >> 更多设置  >> 系统安全  >> 从存储设置安装  >> 进入下载证书的目录(如下图是下载目录:内部存储设置 > download)即可看到你下载的证书

注意:有的手机是通过usb设备安装的

    2)选中证书,点击【确定】,即可开始安装

    说明:

    证书名称:可以随便起;

    凭据用途:默认选择"VPN和应用”,建议选择“WLAN”选项,部分手机需要选择"VPN和应用”,否则https请求好像抓不到。大家可以自己测试下,我的模拟机选择的“WLAN”。

    3)点击上图的【确定】按钮,即可完成安装。

这时候理论上就可以抓到手机app的数据包了。

抓包问题:

抓包过程中,发现 Fiddler 抓取的所有的请求数据都是关于 image 的,找了半天才发现是设置了过滤器。。。.

如果手机设置代理后,还无法访问,则进行如下操作:
①关闭防火墙
②打开注册表(window+R,然后输入regedit),在HKEY_CURRENT_USERSoftwareMicrosoftFiddler2下创建一个DWORD,值置为80(十进制)
在这里插入图片描述
记得选十进制
在这里插入图片描述
③打开fiddler,点击Rules—Customize Rules,用Ctrl+F查找OnBeforeRequest方法添加一行代码
if (oSession.host.toLowerCase() == “webserver:8888”)
{
oSession.host = “webserver:80”;

}
在这里插入图片描述

重启fiddler,在手机重新安装证书

FIDD

原文地址:https://www.cnblogs.com/joe235/p/14393412.html