当前位置: 首页 > news >正文

fiddler基础

伪目录
┌─ 1. 基础抓包
│ ├─ HTTP/HTTPS 流量捕获
│ ├─ 过滤规则设置
│ └─ 会话分析
├─ 2. 断点调试
│ ├─ 请求前断点
│ ├─ 响应后断点
│ └─ 自动断点规则
├─ 3. 数据修改
│ ├─ 修改请求头/参数
│ ├─ 修改响应内容
│ └─ 重定向请求
├─ 4. FiddlerScript
│ ├─ 脚本结构
│ ├─ 事件处理函数
│ └─ 自定义功能
└─ 5. 辅助功能
├─ Composer(构造请求)
├─ 性能测试
└─ 扩展插件
二、分模块复习指南
模块1:基础抓包(占20%)
核心问题:
如何开启/关闭抓包?
File(文件) > Capture Traffic(捕获请求)或F12
左下角状态栏显示 "Capturing"
image
image

如何设置HTTPS抓包?
oTools (工具)> Options(选项) > HTTPS
o信任Fiddler根证书
o导出证书安装到浏览器/设备
image
image
image
image
image

HTTPS抓包 = Fiddler开启解密 + 导出证书 + 安装到系统受信任存储区
过滤规则如何设置?
Hosts过滤器:*.example.com
进程过滤器:Show only from browser(
Show only from browser // 只显示浏览器
Show only Internet Explorer // 只显示IE
Show only from Chrome // 只显示Chrome

状态码过滤:Hide 304
右侧面板 → Filters 标签 → 勾选 "Use Filters"
image
image

// 基本格式:通配符匹配.example.com // 所有子域名
www.baidu.
// 所有顶级域名
test..com // 中间通配符
exact.domain.com // 精确匹配
// 多个规则用分号分隔
.example.com;*.test.com;api.server.com
image

模块2:断点调试(占25%)
核心问题:
断点的三种方式?
javascript
1.手动断点
Rules (规则)> Automatic Breakpoints(自动断点) > Before Requests(在请求前)
2.命令断点
bpu www.example.com// 请求前断点
bpafter /api/data// 响应后断点
image

3.脚本断点
oSession["x-breakrequest"] = "true";
断点后可以做什么?
o①修改请求参数
o②修改请求头
o③修改响应内容
o④模拟延迟
断点标识颜色?
o红色向上箭头:请求被暂停
o红色向下箭头:响应被暂停
模块3:数据修改(占25%)
规则——自定义规则(快捷键:ctrl+r)
核心问题:
如何修改请求?
// 修改GET参数
(// 假设原始URL: http://example.com?page=1&size=10
oSession.fullUrl = oSession.fullUrl.Replace("page=1", "page=999");
 )
// 修改POST数据
username=admin&password=123456
var body = oSession.GetRequestBodyAsString(); // 1. 获取请求体
body = body.Replace("password=123456", "password=888888"); // 2. 修改
oSession.utilSetRequestBody(body); // 3. 设置回请求
 结果:密码从 123456 改为 888888
// 修改请求头
// 修改User-Agent头
oSession.oRequest["User-Agent"] = "MyBrowser";
// 其他常用头修改:
oSession.oRequest["Cookie"] = "sessionid=new_value";
oSession.oRequest["Referer"] = "https://new-referer.com";
oSession.oRequest["Accept-Language"] = "zh-CN";

如何修改响应?
// 替换文本
oSession.utilReplaceInResponse("Copyright 2020", "Copyright 2024");
// 修改JSON响应
var json = oSession.GetResponseBodyAsString();
// 解析并修改JSON对象
如何重定向请求?
oSession.redirect("https://new-url.com");
oSession.oRequest.FailSession(404, "Blocked");
模块4:FiddlerScript(占30%)
核心问题:
主要事件函数?
// 执行顺序:1 → 2 → 3
static function OnBeforeRequest(oSession) {} // 请求前
static function OnBeforeResponse(oSession) {} // 响应前
static function OnDone(oSession) {} // 完成后
如何添加自定义列?
static function Main() {
// 添加列:标题、宽度、数据来源
FiddlerObject.UI.lvSessions.AddBoundColumn("状态", 80, "ui-status");
}
// 设置列数据
static function OnBeforeRequest(oSession) {
oSession["ui-status"] = "Processing";
}
常用工具方法?
获取/设置请求体
oSession.GetRequestBodyAsString()
oSession.utilSetRequestBody()
字符串操作
oSession.utilDecodeURL()
oSession.utilReplaceInRequest()
延迟控制
oSession["response-trickle-delay"] = "1000"
o如何调试脚本?
FiddlerObject.log("消息")输出到日志
FiddlerObject.alert("提示")弹窗提示
查看日志:View > Show Log > Script

http://www.jsqmd.com/news/159165/

相关文章:

  • 代码规范生态革命:从技术债务到团队竞争力的系统化升级
  • PyTorch 2.7新特性抢先体验:包含在最新CUDA镜像中
  • 5大AI推理加速技术终极对决:从模型量化到调度器优化的3倍性能提升
  • 如何在NVIDIA显卡上运行PyTorch-CUDA-v2.7?超详细图文指南
  • KVM虚拟化性能优化终极指南:快速降低VM Exit频率
  • 3分钟学习大模型(LLM)基础 - 3 | 大模型的幻觉
  • 场馆预订系统源码,提升运营效率与用户粘性的数字化利器
  • 场馆运营一站式解决方案源码,多场馆管理/在线预订/分时收费/会员营销
  • 如何在 A/B 测试不可用时使用因果推断
  • 终极指南:10分钟精通StreamVision智能资源聚合神器
  • Canvas动画库国际化支持:打造全球用户喜爱的iOS动画体验
  • 终极Magisk模块管理器:Fox让安卓定制如此简单![特殊字符]
  • AI大模型Agent实战指南:从零开始构建智能体(建议收藏学习)
  • Scrypted智能监控平台:轻松构建全屋安防系统
  • PyTorch-CUDA镜像为何成为AI开发者的首选?原因揭秘
  • JmalCloud 私有云盘:重新定义个人数据安全与管理
  • 如何使用弹性网回归
  • 如何用pyLDAvis实现文本主题模型的可视化分析终极指南
  • 灯具店进销存软件选购技巧:避坑指南与象过河软件的突围之道
  • Linux系统管理终极指南:从零基础到服务器专家实战路径
  • PPTX2MD:从PPT到Markdown的终极转换指南
  • 2000-2023年地级市年度注册企业、个体工商户数量数据
  • sagacity-sqltoy:企业级智慧ORM框架终极指南
  • cookiecutter-django终极指南:从零构建企业级Django应用
  • Restreamer数据保护策略完整指南:确保流媒体服务安全无忧
  • Anaconda配置PyTorch环境太麻烦?用这个镜像省时又省力
  • 从开题到定稿:本科与硕士论文写作中的“智能同行者”如何悄然重塑学术初体验
  • Realm全文搜索架构重构:移动端高性能检索的实战指南
  • 戴森球计划FactoryBluePrints完全攻略:从零构建高效星际工厂的完整方法论
  • Mora如何重塑工业设计流程:从静态原型到动态展示的革命性转变