Fiddler Classic抓包工具的使用

一、是什么?

Fiddler 相当于一个 “代理”,浏览器访问浏览器页面时,就会把HTTP请求先发给Fiddler,Fiddler 再把请求转发给浏览器的服务器,当浏览器服务器返回数据时,Fiddler拿到返回数据,再把数据交给浏览器。
在这里插入图片描述

二、为什么用

线上接口请求转发到本地Debug调试

三、一些配置

HTTPS
刚下载安装好后,是默认不支持抓取HTTPS协议的,要想抓取HTTPS要添加以下配置。(仅使用HTTP则无需配置)
先点击左上角的Tools-Options-HTTPS
在这里插入图片描述

然后再选中这三个选项,
在这里插入图片描述

接着点击Actions-Export Root Certificate to Desktop,此时桌面上会出现这个文件:
在这里插入图片描述
在这里插入图片描述

我们关闭Fiddler,接着我们需要在浏览器上导入证书(上面这个文件),以谷歌浏览器为例:点击设置-安全和隐私设置-安全-管理证书:
在这里插入图片描述

在受信任的根证书颁发机构里导入桌面上生成的证书即可,最后我们重新打开Fiddler,就可以抓取HTTPS协议了
在这里插入图片描述

HTTP:
依次打开Tools>Options>Connections,勾选Allow remote computers to connect,同时记住fiddler listen on port的端口号,默认8888,如下图
在这里插入图片描述

四、如何用?

以Debug 一个线上系统为例子,我想知道用户登陆时的流程:
1.确定源地址和端口号
首先,已知线上运行的前端项目请求的不是本地服务,代理的作用就是把请求拦截了,将地址和端口号改为本地运行的服务,线上的前端项目: http://172.16.2.245:18080/ ,系统向后端服务的请求地址是/sys/api/v1.0开头

2.确定后端地址和端口号、编写脚本
我的本地服务是 localhost:18181
那么在fiddler classic中,找到脚本FiddlerScript—OnBeforeRequest,在向后端发送请求前,将ip和端口号改为我们的本地地址和本地端口:
在这里插入图片描述

脚本内容就在static function OnBeforeRequest(oSession: Session)最下面再添加一个if条件:
if (oSession.fullUrl.ToLower().Contains(“/sys/api/v1.0”)) {
oSession.host = “localhost”;
oSession.port = 18181;
}
3.最后保存脚本
在这里插入图片描述

4.开启代理和关闭代理
左下角的capturing为开启状态,开启或关闭点击此处即可。
在这里插入图片描述

5,实际效果
这样就把线上的请求,拦截到本地运行的服务,进行debug。

五、其他功能

fiddler过滤功能
fiddler抓包时会把所有的请求都抓取,这时就需要进行过滤。fiddler右边有个Filters,打开该页面后,勾选use Filters,然后根据需要设置过滤规则,例如我选中show only Internet host ,然后在输入框中输入需要显示的网址,再点击actions>run filterset now即可实现过滤,如图所示
在这里插入图片描述

fiddler设置断点方法
第一种:打开Fiddler 点击Rules-> Automatic Breakpoints ->Before Requests(这种方法会中断所有的会话)消除命令 点击Rules-> Automatic Breakpoints ->Disabled
第二种: 在命令行中输入命令: bpu www.baidu.com (这种方法只会中断www.baidu.com)

FAQ

Q1 为什么有的浏览器可以直接使用Fidder抓取请求?
Fiddler打开之后默认是可以抓取到Chrome/IE浏览器的请求的,这是因为Fiddler默认会勾选“Act as system proxy on startup”,此选项会在Fiddler启动的时候作为系统代理:
在这里插入图片描述

我们会发现系统代理设置已经被Fiddler篡改,端口和Fiddler中保持一致:
在这里插入图片描述

这也就是为什么Fiddler启动之后默认可以抓取到Chrome/IE的请求,而Firefox浏览器使用的是单独的一套代理系统,如果Firefox也想默认抓取到,打开火狐浏览器的连接设置,选择使用系统代理即可。
在这里插入图片描述

Q2 为什么代理会自动掉线?报错:
在这里插入图片描述

原因:有其他软件抢占、修改了系统的默认代理

如安装了深信服VPN等软件,后台程序会定时的尝试抢占系统的默认代理,所有FidderClassic会在使用中不时掉线。
解决方案:
通过安全工具-高级工具的火绒剑监控代理变化,点击:系统-过滤-路径,添加包含关键词:ProxyOverride
在这里插入图片描述

当Fiddler代理再次被改动时,查看记录的进程信息:
在这里插入图片描述

找到该进程并关闭

<think>嗯,用户想了解Fiddler抓包工具组合器的使用方法。首先,我需要确认用户所说的“组合器”具体指的是什么。在Fiddler中,可能是指Composer功能,也就是用来构造和发送HTTP请求的工具。也有可能是其他插件或功能的组合使用,但根据常见问题,应该是Composer。 接下来,我需要回忆Fiddler的基本操作步骤,确保信息准确。比如如何启动Fiddler、设置捕获流量、使用Composer发送请求等。然后要考虑用户可能的应用场景,比如测试API、调试网页请求、修改请求参数等,这些都需要在步骤中涵盖。 还要注意用户可能遇到的常见问题,比如HTTPS捕获设置、过滤会话、断点调试等。需要将这些高级功能也包含进去,但分步骤说明,避免信息过载。同时,按照系统指令,数学公式要用正确的LaTeX格式,但这个问题可能不需要公式,主要关注操作步骤。 需要检查每个步骤是否清晰,结构是否合理,是否符合中文表达习惯。确保术语准确,比如“Composer”翻译为“构造器”还是保留英文,可能需要统一使用中文译名,或者在括号中注明英文,方便用户查找。 另外,用户可能对某些步骤不熟悉,比如安装根证书,需要详细说明操作路径和注意事项。同时,强调安全性,提醒用户谨慎处理捕获的数据,尤其是敏感信息。 最后,确保回答结构层次分明,分点说明,每个部分有简短的标题,帮助用户快速找到所需信息。可能还需要加入示例,比如构造GET和POST请求的具体例子,让用户更容易理解。 总结下来,回答需要包括安装配置、基本抓包步骤、Composer的使用方法、高级功能以及注意事项,每个部分详细但简洁,避免遗漏关键点。</think>Fiddler抓包工具组合器使用方法分步说明: 一、环境配置 1. 下载安装 - 官网下载Fiddler Classic版本(https://www.telerik.com/fiddler) - 安装时勾选所有组件(包括.NET环境) 2. HTTPS设置 - 菜单栏:Tools > Options > HTTPS - 勾选"Decrypt HTTPS traffic" - 安装根证书(首次使用会提示) 二、基础抓包步骤 1. 启动捕获 - 点击左下角"Capturing"按钮(默认已开启) - 清除旧会话:快捷键Ctrl+X 2. 过滤会话 $$ \text{Filters} \rightarrow \text{Use Filters} \rightarrow \text{设置Hosts过滤条件} $$ - 示例:只显示*.example.com的请求 3. 分析请求 - 右键会话 → Inspect → 查看Headers/Raw/JSON等标签 - 使用Timeline分析请求时序 三、Composer(构造器)使用 1. 打开构造器 - 菜单栏:Rules > Customize Rules - 快捷键Ctrl+R打开Fiddler Script编辑器 - 或者直接使用右侧Composer标签 2. 构造请求 ```http GET https://api.example.com/data HTTP/1.1 User-Agent: Fiddler Host: api.example.com ``` - 支持GET/POST/PUT/DELETE方法 - 可自定义Header和Body 3. 执行与调试 - 点击"Execute"发送请求 - 查看响应结果和服务器返回状态码 - 使用"Compare"对比不同请求结果 四、高级功能组合 1. 断点调试 - 全局断点:Rules > Automatic Breakpoints - 条件断点:bpu www.example.com(拦截指定域名请求) 2. 自动响应 - 拖动会话到AutoResponder - 设置本地文件映射或自定义响应 3. 流量重放 - 右键会话 → Replay → Reissue Requests - 支持并发重放(Shift+R) 五、注意事项 1. 移动端抓包 - 确保PC和手机在同一网络 - 设置手机代理:$$ \text{PC\_IP}:8888 $$ - 安装Fiddler根证书到手机 2. 性能优化 - 关闭不需要的解密功能 - 定期清理缓存(Ctrl+Shift+C) 3. 安全建议 - 敏感数据用"Remove"功能及时清除 - 非调试时关闭捕获功能 示例组合应用场景: 1. 修改请求参数测试边界值 2. 模拟慢速网络(Rules > Performance) 3. 批量修改请求头测试CSRF防护 提示:使用快捷键Alt+Q快速定位请求,结合TextWizard(Ctrl+T)进行编解码转换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值