fiddler筛选请求并修改参数

news2024/11/16 3:32:19
一、筛选请求
  1. 使用过滤,需勾选User Filter才会生效,运行当前的过滤规则,需点击Run Filterset now
    在这里插入图片描述
  2. Hosts:主机过滤之局域网过滤
    在这里插入图片描述
  • No Zone Filter:默认选项,不设置区域过滤器
  • show only Intranet Hosts:只显示内网的Hosts,即过滤掉外网的Hosts。此时,只显示URL请求目标服务器在内网的请求
  • show only internet Hosts:与上相对应,只显示外网的Hosts
  1. Hosts:主机过滤之广域网过滤
    在这里插入图片描述
  • No Host Filter:默认选项,不设置过滤主机IP条件
  • Hide the following Hosts:隐藏输入到下面文本框中的Hosts
  • Show only the following Hosts:仅显示输入到下面文本框中的Hosts
  • Flag the following Hosts:标识下边输入的主机名的会话(加粗)
  1. Client process:客户端进程过滤
    在这里插入图片描述
  • Show only traffic from:指定只显示哪个Windows进程中的请求,右侧会列出当前所有的 Windows 进程。
  • Show only Internet Explorer traffic:只显示IE发出的请求。
  • Hide trafficfrom service host:隐藏来自service
  1. Request header:请求头过滤
    在这里插入图片描述
  • Show only if URL contains:仅显示URL中包含指定字符串的请求,字符串可以是URL中的一部分,多个字符串用空格分开,也可以使用EXACT:前缀来限定大小写,或者使用REGEX:前缀正则表达式或完整的URL。
  • Hide if URL contains:仅隐藏URL中包含指定字符串的请求,字符串可以是URL中的一部分,多个用空格分开,可以是正则或完整的URL。
  • Flag requests with headers:标记带有特定header的请求,如果在websession列表中存在该请求,会加粗显示。
  • Delete request headers:删除请求中指定的Header字段
  • Set request Header:在URL请求中添加头字段,与上一条对应。前面输入字段,后面输入值。
  1. Breakpionts:设置断点
    在这里插入图片描述
  • Break request on Post:对所有Post请求设置断点
  • Break request on GET with query string:对所有带参数的 GET 请求设置断点
  • Break on XMLHttpRequest:对所有Ajax请求设置断点
  • Break response on Content-type:对响应报文中header字段中,Content-Type属性匹配成功的请求设置断点
  1. Response Status Code:响应状态码过滤
    在这里插入图片描述
  • Hide success(2xx):隐藏响应状态码为2xx的URL请求
  • Hide non-2xx:隐藏响应状态码不是2xx的URL请求
  • Hide Authentication demands(401,407):隐藏认证(响应状态码为:401 407)的URL请求
  • Hide redirects(300,301,302,303,307):隐藏重定向(响应状态码为:300,301,302,303,07)的URL请求
  • Hide Not Modifield(304):隐藏不是缓存的状态码(304)的URL请求
  1. Response Type and Size :响应类型和报文大小过滤
    在这里插入图片描述
  • 下拉类别选择显示类型
Show all Content-Type:显示所有类型Content-Type的请求,Content-Type即为响应结果header信息中Content-Type字段
Show only IMAGE/*:仅显示响应类型为图片的请求
Show only HTML:仅显示响应类型为HTML的请求
Show only TEXT/CSS:仅显示响应类型为text/css的请求
Show only SCRIPTS:仅显示响应类型为Scripts的请求
Show only XML:仅显示响应类型为XML的请求
Show only JSON:仅显示响应类型为Json的请求
Hide IMAGE/*:隐藏所有响应类型为图片的请求
  1. Response Header:响应头过滤
    在这里插入图片描述
  • Flag responses that set cookies:会话列表的响应中有cookies信息的加上标识(斜体)。
  • Flag responses with headers:会话列表里标记响应中带有特定header的请求(即加粗)。
  • Delete response headers:会话列表里删除响应信息中,有指定的Header字段的会话。
  • Set response header:在响应中添加header字段,第一个输入框是header 的key,第二个输入框是对应value
二、修改请求参数之临时修改参数
  1. 临时修改参数,可通过urlreplace SeekStr ReplaceWithStr命令,做参数替换
  2. 打开Fiddler,再打开百度,搜索csdn,在Fiddler中查看参数,wd是查询参数
    在这里插入图片描述在这里插入图片描述
  3. Fiddler命令行输入urlreplace wd=csdn wd=js回车,回到浏览器点击百度一下,会发现虽然搜索的是csdn,但是查出来的是js相关的信息,这种方法关闭Fiddler之后就会失效
    在这里插入图片描述在这里插入图片描述
三、断点修改请求参数
  1. 在请球之前拦截请求,以刚才的csdn为例
    在这里插入图片描述
  2. 点击百度一下,会发现已经进入Fiddler断点
    在这里插入图片描述
  3. 点击请求,点击Inspectors>WebForms,修改参数中的wd为js,点击Run to Complation,会发现虽然搜索的是csdn,但是查出来的是js相关的信息
    在这里插入图片描述在这里插入图片描述
  4. 这种方法修改参数,如果遇到请求参数中有时间戳的很容易造成请求失败,而且断点会断住所有请求,如果想断某个请求,最好还是做个请求筛选
    在这里插入图片描述
四、通过Composer修改参数
  1. 先通过浏览器百度csdn,Fiddler中查看Inspectors>WebView会看到搜索出来的是csdn,如果是乱码点击Decode解码一下
    在这里插入图片描述
  2. 鼠标左键把请求拖到Composer,在Url中找到wd,修改为js,点击执行,查看Inspectors>WebView会看到搜索出来的是js
    在这里插入图片描述在这里插入图片描述
  3. 这种方法修改参数,如果遇到请求参数中有时间戳的很容易造成请求失败,而且不会在浏览器上体现出来,相当于postman创建了一个请求,好处就是会有历史记录下次使用可以直接在历史记录里找
    在这里插入图片描述
五、修改请求参数之永久修改参数,FiddlerScript修改参数
  1. 找到FiddlerScript编辑脚本,也可以在工具栏Rules > Customize Rules中修改脚本
    在这里插入图片描述
  2. 找到static function OnBeforeRequest,添加oSession.uriContains(“web=csdn”)代码,点击save script保存脚本
    在这里插入图片描述
  3. 打开浏览器搜索csdn,会发现虽然搜索的是csdn,但是查出来的是js相关的信息,这种方法关闭浏览器不会失效、也不用打断点,缺点是需要熟悉.Net,不过需要什么代码,度娘应该会给你答案
    在这里插入图片描述
六、修改请求脚本代码
  1. 拦截post请求,并修改JSON格式参数
if (oSession.HTTPMethodIs("POST") && oSession.uriContains("example.com")) {
    // 获取请求的 Body 数据
    var requestBody = oSession.GetRequestBodyAsString();

    // 解析 JSON
    var json = Fiddler.WebFormats.JSON.JsonDecode(requestBody);


    // 修改 JSON 参数
    json.JSONObject["Body"]["kwy"] = "value";
    // 删除 JSON 参数
    json.JSONObject.Remove('key');
    json.JSONObject["Body"].Remove("key");
    
    // 将修改后的 JSON 转换回字符串
    var modifiedRequestBody = Fiddler.WebFormats.JSON.JsonEncode(json.JSONObject);
    // 更新请求的 Body 数据
    oSession.utilSetRequestBody(modifiedRequestBody);
}
  1. 拦截post请求,并修改普通参数,非JSON格式
if (oSession.HTTPMethodIs("POST") && oSession.uriContains("example.com")) {
    // 获取请求的 Body 数据
    var requestBody = oSession.GetRequestBodyAsString();

    // 修改参数
    requestBody = requestBody.replace("param1=value1", "param1=newValue");

    // 更新请求的 Body 数据
    oSession.utilSetRequestBody(requestBody);
}
  1. 拦截get请求,并修改url参数,如果post请求url中带有参数,可以把GET换成POST
if (oSession.HTTPMethodIs("GET") && oSession.uriContains("example.com")) {
    // 获取请求的 URL
    var url = oSession.fullUrl;

    // 修改参数
    url = url.replace("param1=value1", "param1=newvalue");

    // 更新请求的 URL
    oSession.fullUrl = url;
}
  1. 拦截get请求,并删除url参数,如果post请求url中带有参数,可以把GET换成POST
import System.Web;

if (oSession.HTTPMethodIs("GET") & & oSession.uriContains("example.com")) {
    // 获取请求的 URL
    var url = oSession.fullUrl;
    
    // 解析 URL 中的参数
    var uri = new System.Uri(url);
    var queryString = System.Web.HttpUtility.ParseQueryString(uri.Query);
    
    // 删除指定的参数
    queryString.Remove("dt");
    
    // 构建新的 URL
    var newUrl = uri.GetLeftPart(System.UriPartial.Path) + "?" + queryString.ToString();
    
    // 更新请求的 URL
    oSession.fullUrl = newUrl;
}
  1. 拦截get请求,并修改请求头,如果需要修改POST请求头,可以把GET换成POST
if (oSession.HTTPMethodIs("GET") && oSession.uriContains("example.com")) {
    // 获取请求的头部对象
    var headers = oSession.oRequest.headers;

    // 修改头部的值
    headers["key"] = "value";

    // 删除指定的头部
    headers.Remove("key");
}
  1. 拦截get请求,并修改cookie,如果需要修改POST请求cookie,可以把GET换成POST
if (oSession.HTTPMethodIs("GET") && oSession.uriContains("example.com")) {
    // 获取请求的 Cookie 值
    var cookieValue = oSession.oRequest["Cookie"];
    
    // 添加cookie
    cookieValue+=";key=value";
    
    // 修改cookie
    cookieValue = cookieValue.Replace("key=value", "key=newValue");
    
    // 删除cookie
    cookieValue = cookieValue.Replace("key=value", "");

    oSession.oRequest["Cookie"] = cookieValue
}
  1. 正则替换字符串,以修改cookie为例
if (oSession.HTTPMethodIs("GET") && oSession.uriContains("example.com")) {
    // 获取请求的 Cookie 值
    var cookieValue = oSession.oRequest["Cookie"];
    
    var pattern = "key=([^&]*)";
    var regex = new System.Text.RegularExpressions.Regex(pattern);
    var cookieValue = regex.Replace(cookieValue, "key=newValue");

    oSession.oRequest["Cookie"] = cookieValue
}
  1. 输出cookie到控制台,可通过log查看
FiddlerApplication.Log.LogString("cookie: " + cookieValue);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1377885.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HarmonyOS——ArkUI状态管理

一、状态管理 在声明式UI编程框架中,UI是程序状态的运行结果,用户构建了一个UI模型,其中应用的运行时的状态是参数。当参数改变时,UI作为返回结果,也将进行对应的改变。这些运行时的状态变化所带来的UI的重新渲染&…

大模型在游戏行业的应用分析

文章目录 一、大模型作用1)节省美术成本2)模仿用户肖像,精准投放3)买量流程的自动化4)缩短视频素材制作周期5)例如新营销形式宣传(图生图)5)故事设计6)辅助代…

Linux操作系统----实用工具Git(配实操图)

绪论​ “针对问题 解决问题 针对问题!”,本章主要讲解的是Git是什么以及Git的如何搭建仓库和如何在Linux环境下通过指令的形式提交自己的代码到远程仓库。 话不多说安全带系好,发车啦(建议电脑观看)。 1.Git的来源以…

模拟开关灯

1.  实验任务 如图所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。…

ChatGLM3在windows上部署

1 项目地址 https://github.com/THUDM/ChatGLM3 简介:ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的新一代对话预训练模型。 2 本机配置 台式机: CPU: Intel(R) Core(TM) i7-10700F RAM: 32G GPU: NV…

pytorch学习笔记(七 )

池化类似压缩 最大池化-上采样 例如给一个3的话就会生成一个33的窗口(生成相同的高和宽),给一个tuple就会给出一个相同的池化核。stride默认值就是核的大小 dilation 在卷积dialation设置之后每一个会和另外的差一个,空洞卷积 …

大模型在广告ctr预估中的应用

背景 预训练大模型在ctr预估方面取得了不错的效果,但是应用大模型方面还主要停留在提取离线预训练,然后使用大模型的打分结果或者中间的embedding向量,这种级联的应用方式相对灵活方便。但是这种使用大模型提取特征的方式存在自身的问题&…

使用知行之桥EDI系统的HTTP签名身份验证

本文简要概述了如何在知行之桥EDI系统中使用 HTTP 签名身份验证,并将使用 CyberSource 作为该集成的示例。 API 概述 API 是”应用编程接口”的缩写。这听起来可能很复杂,但它的真正含义是一种允许两个不同实体相互通信的软件。自开发以来,…

x-cmd pkg | tsx - Node.js 的直接替代品

目录 简介首次用户功能特点竞品和相关作品进一步探索 简介 tsx 代表 “TypeScript execute”,由 TypeScript 编写,内部使用由 Go 语言编写的 esbuild 核心二进制实现超快的 TypeScript 编译,旨在增强 Node.js 以无缝运行 TypeScript / ESM /…

利用Wireshark分析IP协议

实验.利用Wireshark分析IP协议 一.实验目的 1.掌握Wireshark软件简单的过滤语法 2.掌握IP数据报的组成格式 3.掌握IP分片的计算方法 4.学会利用Wireshark抓包分析IP协议 二.实验环境 1.Wireshark软件 2.Windows 计算机 三.实验预备知识 1.IP…

便捷好用的iOS文件管理App

便捷好用的iOS文件管理App 摘要 本文介绍了一款功能强大、免费的iOS文件管理App——克魔助手。通过使用克魔助手,用户可以轻松管理手机存储空间,清理垃圾文件,整理文件,并进行文件传输和截图操作。本文将详细介绍克魔助手的各项…

html+css实现子元素完全居中常见方案

详细过程 查看公众号文章 htmlcss实现子元素完全居中常见方案 获取更多内容,请关注微信公众号。搜索“码圈小橙子”,或扫描下方二维码获取关注

轻量化的yolov8部署到安卓Android手机端

一、pytorch环境配置和yolov8源码安装 首先在电脑上需要配置好pytorch环境,和yolov8源码的下载 然后针对yolov8做自己的轻量化改进 二、下载Android Studio和ncnn-android-yolov8 1. Android Studio官网链接: 下载 Android Studio 和应用工具 - And…

预训练中文GPT2(包括重新训练tokenizer)

训练数据 1.json后缀的文件 2.数据是json line格式,一行一条json 3. json结构如下 {"content": "①北京和上海户籍的游客可获得韩国多次签证;②“整容客”可以不经由韩国使领馆、直接在网上申请签证;③中泰免签的实施日期…

屏幕截图编辑工具Snagit中文

Snagit是一款优秀的屏幕、文本和视频捕获与转换程序。它能够捕获屏幕、窗口、客户区窗口、最后一个激活的窗口或用鼠标定义的区域,并支持BMP、PCX、TIF、GIF或JPEG格式的保存。Snagit还具有自动缩放、颜色减少、单色转换、抖动等功能,并能将捕获的图像转…

【Linux】:Linux中的Git分支管理

本章开始介绍 Git 的杀⼿级功能之⼀(注意是之⼀,也就是后⾯还有之⼆,之三……):分⽀。分⽀就是科幻电影⾥⾯的平⾏宇宙,当你正在电脑前努⼒学习 C 的时候,另⼀个你正在另⼀个平⾏宇宙⾥努⼒学习…

x3daudio1_7.dll如何恢复,这6个方法都能修复x3daudio1_7.dll丢失问题

x3daudio1_7.dll文件缺失”。那么,什么是x3daudio17.dll文件?它的作用和影响又是什么呢?本文将详细介绍x3daudio17.dll文件的定义、作用和影响,并提供6个修复方法来解决这个问题。 一、x3daudio1_7.dll是什么? x3dau…

高级分布式系统-第6讲 分布式系统的容错性--可靠的组通信

可靠的组通信 组内通信最好是每个进程之间都建立点到点的通信, 但实际中这样的组织结构不是有效的, 因为会浪费很大的通信带宽。 在平等组中, 多播是主要的组织结构。 但多播是具有同步性质的容错结构, 并不适用拜占庭模型。 多…

OpenGl L6坐标系统

一.标准化设备坐标 我们在L5谈到了对顶点着色器中的点进行变换,而变换的范围必须在 -1.0到1.0 之间,否者将不可见。只有将所有的点转换为标准化设备坐标后,才能全部传入光栅器,再转换为屏幕上的像素。 将坐标变换为标准化设备坐标…

【MySQL】C语言连接MySQL

文章目录 一、引入库下载库文件验证是否引入成功 二、MySQL C API相关接口三、总结 一、引入库 mysql的基础,我们之前已经学过,后面我们只关心使用要 使用C语言连接mysql ,需要使用mysql官网提供的库,大家可以去MySQL官网下载。 …