Fiddler抓取https史上最强教程

Posted 鱼鱼说测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fiddler抓取https史上最强教程相关的知识,希望对你有一定的参考价值。

有任何疑问建议观看下面视频

2023最新Fiddler抓包工具实战,2小时精通十年技术!!!

对于想抓取HTTPS的测试初学者来说,常用的工具就是fiddler。

但是初学时,大家对于fiddler如何抓取HTTPS难免走歪路,也许你一步步按着网上的帖子成功了,这自然是极好的。

但也有可能没那么幸运,这时候你就会很抓狂。

为此我把一些我自己的安装经验和网络上的教程进行了整合(其中注意事项及10、11步骤)。

下面为大家演示如何用fiddler抓取HTTPS的详细教程。如若失败,请先仔细检查,避免错过细节!然后重新重试!

01、已安装fiddler用户

1、清除C:

\\Users\\Administrator\\AppData\\Roaming\\Microsoft\\Crypto\\RSA

目录下所有文件(首次安装fiddler请忽略)

2、清除电脑上的根证书。

WIN+R快捷键,输入:certmgr.msc。

然后回车,查找所有fiddler证书,然后删除。(首次安装fiddler请忽略)


3、清除浏览器上的证书文件 ,此处需要仔细查找带有FiddlerRoot的字样,并删除。

以谷歌浏览器为例说明,在浏览器上输入: chrome://settings/,(首次安装fiddler请忽略)

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

注意:以上步骤假设是已经安装fiddler的情况下需要做的处理 ,若已安装,建议执行上述步骤,然后进行重新安装。

02、首次安装fiddler用户

首次安装fiddler用户及完成上述步骤已安装用户:请先退出杀毒软件!!!

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

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

③ 下载并安装Fiddler证书生成器:

http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker.exe?sfvrsn=2

④ 打开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抓包了。
如果不成功请看11步骤。

10、如果抓取的包都是错误的,需要注意把下面这几个反勾选掉。

Autoresponder—enable rules

03、配置浏览器

◆ firefox安全链接提示


出现这个「您的连接并不安全」那么很多的使用者说可以通过配置Firefox浏览器配置即可,但是根据测试发现这个方法行不通!

  • 通过配置Firefox浏览器

  • 进入firefox配置

  • 可以通过在firefox浏览器地址栏中输入 「about:config」进入

04、修改配置项

在搜索栏输入

「security.enterprise_roots.enabled」

找到对应的配置项


通过双击或右键选择菜单项「切换」即可将 「值」对应的字段值设置为 「true 」


再次访问网络以验证是否可行

咦!还是不行哦!不过通过以上配置这次访问网络时它比没有配置之前多了一个提示!看到没有?

「此网站采用了 HTTP 严格传输安全(HSTS)机制,要求 Firefox 只能与其建立安全连接。正因如此,您也不能将此证书加入例外列表。」

也就是说当前访问的站点是使用 「HTTP严格传输安全协议」也就是「https传输协议」, 那既然是这样, 当访问 「http传输协议」的站点也就没有问题喽!

对就是这样, 那不防找一个「http传输协议」的站点试试!


可以看到当访问 「菜鸟教程」这个站点时一点问题没有!

那既然访问传输协议为 「https」的站点时会有这样的提示:此网站采用了 HTTP 严格传输安全(HSTS)机制,要求 Firefox 只能与其建立安全连接。正因如此,您也不能将此证书加入例外列表。

那访问时就必须通过这个协议进行访问,并且firefox也不允许添加站点例外的方式进行访问, 那问题的关键就在于「fiddler」这个代理在访问以 「https传输协议」的站点时不被信任。

那么想办法让 「Firefox」浏览器在访问以传输协议为 「https」被信任这个问题也就可以彻底解决啦!(先打开fiddler,浏览器才能访问网络!)

注意事项:

  1. 浏览器、fiddler配置好需要重新启动,先启动fiddler,再启动浏览器;

  2. 在配置浏览器代理及端口时注意勾选“为所有协议使用相同代理服务器(s)”。


今天的分享就到这里啦~~赶紧去实战吧

全网最强Fiddler抓包实战教程(Android+IOS超级全面图文) 越来越刑

Fiddler Android 数据抓包

Fiddler不仅可以抓web页面的HTTP/HTTPS的数据报文, 也可以抓取我们手机移动端数据报文

这里我主要说明的是本地抓取Android 安卓手机数据报文

前提条件

手机必须处于同一个网络当中, 并且手机网络代理必须设置为fiddler,当我们的手机经过Fiddler这一层服务!

那么接下来具体步骤如下:

1.确保手机和PC在同一网络环境下

手机和电脑必须在同一局域网,手机最好也关闭4G/5G网络流量, 并且使用wifi,让手机和fiddler在同一局域网下!

查看本机ip地址

android手机的网络进出口指向局域网中fiddler服务地址, 那么我们这里就必须要知道Fiddlerip地址端口号(port)

这里Fiddlerip地址就是我们当前电脑中的本机ip地址

那么查看我们电脑的 ip地址方法 如下:

win+R 调出运行然后输入 cmd打开命令行终端窗口,输入ipconfig, 找到其中的IPv4地址即为本机ip

如图

可以对照一下当前所安装的Fiddler中的ip地址是否一致,你可以直接在fiddler上 将鼠标放置于 Online 工具上就会显示本机ip地址,如果一样那么久可以确保一会设置手机和电脑在同一个局域网内!

 

Fiddler设置端口与允许远程连接

Fiddler中我们还要设置远程连接权限端口号

找到Fiddler菜单栏中的Tools ----> Options---->Connections

勾选Allow remote computers to connect(允许远程计算机连接) 然后设置一个端口,也可以默认为8888

如图

 以上所有Fiddler设置之后最好是重启一下Fiddler,才可以让配置生效!

2.android手机设置网络代理

在确定了手机fiddler在同一局域网下之后, 那么我们来到android手机的设置选项下,找到WLAN

例如:

 

然后点击你当前所在的wifi网络环境下的名称

例如

 

然后选择代理

如图

把其中的改为手动

 

然后返回到上一步,输入Fiddler本地ip和设置Fiddler端口号

如图

那么到此android手机的网络代理设置 就到此为止, 其他不同型号的android手机设置大同小异,以此类推!

3.android手机配置证书

在抓取android手机数据包的时候 跟 web端也是一样,都需要配置证书,否则是无法正常进行抓包的!

之前已经在我们的android手机上配置好了Fiddler的代理服务了,那么现在就可以通过ip+port的方式来访问Fiddler 从而下载对应的证书!

方法如下:

android手机上打开(自带)的浏览器,输入刚刚配置的ip+port来下载证书,

例如:192.168.0.109:8888,  如果不出意外的话就会出现如下界面:

我们点击FiddlerRoot certificate(根证书)下载到android手机上!

如图

继续点击下载

 

温馨提示

这个时候可能有些android手机会出现以下问题,会出现 无法安装证书 因为无法读取证书文件的字样

解决方案

在下载之前,你可以手动修改证书的后缀名,修改为.crt 就可以了!

 

当我们下载的时候,就可以点击编辑按钮,进行文件名的编辑, 最后保存!

如图

 

然后再手机的下载管理中 找到刚刚下载好的证书 并且打开它

如图

最后点击保存即为 安装

完成android手机证书的安装!

 

那么如果你要查看安装的证书, 那么可以在手机中 打开设置-->其他设置-->设备与隐私-->信任的证书然后点击用户,就可以查看到刚刚所安装好的Fiddler证书

如图

 

其他手机可以在设置中搜索信任进行查找,大同小异!

注意(Notice)😞

每连一台电脑所安装的fiddler提供的证书都是不一样的,要记住这个道理  那么测试完一台电脑之后,如果要在另外一台电脑上测试,记得在证书管理里删除之前的fiddler证书,因为这个之前的fiddler证书只对应之前那台电脑里面所安装的fiddler,没法用于连其他的fiddler, 因此换一台电脑,测试必须重新配置一下手机证书

我们通过上面的android基本配置就全部结束了,现在可以愉快的android手机抓包测试了😃

4.开始android抓包

在正式抓包之前,我们还设置一下Fiddler中的请求过滤

我们通过Fiddler菜单栏中的Tools--->Options-->HTTPS修改..from all processes这一项

把它设置为from remote clients only  只抓远程客户端请求, 方便我们查看手机抓包数据!

如图

那么现在打开你的android手机并且运行手机中的一些app就可以被fiddler所截取到数据包了:

如图

 

注意:

如果还是无法正常抓取数据包,并且手机也无法加载数据的情况下,那么可能还是跟证书不正确有关系

解决方案

删除所有证书再执行下面的操作!

那么我们可能需要安装一个插件 CertMaker for iOS and Android

插件介绍

iOS devices and Android devices may not work with the default HTTPS interception certificates used by Fiddler. To resolve this incompatibility, you may install a Certificate Generating plugin that generates interception certificates compatible with those platforms.
译为:
iOS 设备和 Android 设备可能无法使用 Fiddler 使用的默认 HTTPS 拦截证书。要解决此不兼容问题,您可以安装生成与这些平台兼容的拦截证书的证书生成插件

插件下载:https://telerik-fiddler.s3.amazonaws.com/fiddler/addons/fiddlercertmaker.exe

下载之后直接点击安装就可以了,但是要关闭Fiddler否则无法安装,  然后重启Fiddler,然后在Fiddler中重置一下所有证书,点击Fiddler菜单选择Tools-> Options -> HTTPS -> Actions -> Reset All Certificates进行重置证书 ,并且手机也要重新再一次的下载并配置证书!

 

如果还是不行可以尝试 关闭系统防火墙

如图

 

Fiddler 苹果IOS 数据抓包

Fiddler既然可以抓取android的数据包, 那么就一定可以抓取到ios的数据包!

1.确保手机和PC在同一网络环境下

其实还有一个简单的办法来判断当前手机和PC是否在同一网络环境下!

在你的ios手机上找到连接的wifi,查看一下ip地址

如图

 

然后在电脑上打开命令行,输入ping 手机ip,看看能不能ping通!

如图

如果有以上返回说明 当前手机和PC 就是在同一网络环境下

其他关于Fiddler的设置步骤跟之前的android操作是一样的 这里就不再过多赘述了, 还没有明白的朋友返回到android部分去看看!

2.ios手机设置网络代理

在确定了ios手机fiddler在同一局域网下之后, 那么我们来到ios手机的设置选项下,找到WLAN,查看连接的wifi

如图

进入HTTP代理

 

 

设置为手动,然后填写服务器, 这里就跟android是一样的, 也是输入fiddler在电脑本地的ip地址端口

如图

 

最后点击存储即可!

3.ios手机下载安装与配置证书

android一样,我们使用Fiddler来抓取ios手机HTTPS数据包也是需要安装根证书从而来解码我们的HTTPS数据报文,

下载证书

那么其实下载证书步骤其实也 跟android手机是差不多的!

使用ios手机中自带的的safari浏览器,输入配置好的ip+端口跳转到 Fiddler Echo Service 证书下载页!

如图

点击FiddlerRoot certificate弹出此网址尝试下载一个配置描述文件,您要允许吗?,点击允许按钮

 

下载完成,弹出提示已下载描述文件

安装证书

根据提示,回到手机的设置中,找到已下载描述文件,可以看到下载的证书在那里了!

如图

 

根据提示,回到手机的设置-->通用中,找到描述文件,可以看到下载的证书在那里了!

然后开始安装证书

继续点击安装

 

 

完成证书的安装!

设置信任证书

安装好证书之后,还要在ios系统中设置信任刚刚下载好的证书

我们回到ios系统中的设置--->通用--->关于本机中,对证书进行信任设置,选择证书信任设置选项

如图

 

开启信任

如图

点击继续

必须要开启证书信任,否则会出现无法抓到HTTPS包的情况。

4.开始ios抓包

配置好PC端的Fiddler、手机也安装了证书、代理也设置之后,我们就可以在手机上操作app捕获数据包了,然后在Fiddler中查看发送的请求和响应报文了!

如图

 

温馨提示

如果还是抓不到包,需查看一下防火墙是否关闭,是否没有允许Fiddler程序通过防火墙,或者检查一下证书是否出现问题,或者 删除所有的证书之后 ,重新安装Fiddler与手机证书重置后再次尝试抓包!

最后是小编自己整理的一些学习资料笔记和上述全部抓包教程

想要小编学习资料笔记文档

【私信我关键词“999”免费获取】高薪简历模板(面试宝典免费领)

如果这篇文章对你有帮助,请给小编点个赞!这样我才有动力继续更新下去!

今天的小知识学会了么

欢迎在留言区跟我们互动噢~

高薪简历模板(面试宝典免费领)

以上是关于Fiddler抓取https史上最强教程的主要内容,如果未能解决你的问题,请参考以下文章

史上最强Charles抓包

最强抓包神器 Fiddler 手机抓包详解

史上最强 Charles 抓包!

抓包工具Fiddler的使用教程下:Fiddler抓取HTTPS

fiddler2在抓包的过程中如何抓取https网络包的呢

fiddler 怎么抓取scoket