Fiddler改包
Fiddler是十分流行好用的抓包工具,通过Fiddler不仅可以查看数据包,还可以对数据包进行修改,进行各种测试模拟。本文介绍五种常见的修改报文数据包的方法。
一、直接使用Rules菜单,修改请求伪装客户端
单击菜单 Rules -- User-Agents -- iPhone6

请求报文User-Agent信息已被修改

浏览器显示出来的页面变成了手机版的样式

二、下断点,拦截并修改请求报文
全局断点:单击菜单栏中的 Rules -- Automatic Breakpoint -- Before Requests,会拦截全部请求报文

特定网址断点:左下角QuickExec 命令行中输入命令“bpu www.baidu com ”后回车,就只会拦截百度页面。(要取消断点,在命令行输入“bpu”后回车即可)

在浏览器地址栏中访问百度网址,浏览器转圈等待响应

fiddler会闪烁提示

对应的session会显示红色的T图标

转到Inspectors页如下所示

双击Host进行修改,修改成www.qq.com

点击Run to Completion放行

浏览器实际显示了腾讯主页,但地址栏是baidu.com

三、下断点,拦截并修改响应报文
全局断点:单击菜单栏中的 Rules -> Automatic Breakpoint -> After Responses,会拦截全部响应报文

特定网址断点:左下角QuickExec 命令行中输入命令“bpafter www.baidu com ”后回车,就只会拦截百度页面。(要取消断点,在命令行输入“bpafter”后回车即可)
在浏览器地址栏中访问百度网址,浏览器转圈等待响应

fiddler会闪烁提示

对应的session会显示红色的T图标

在响应的TextView中找到<title>标记并修改一下,然后点击Run to Completion放行

浏览器显示了修改后的标题

四、使用AutoResonder,自动替换网页资源
原百度主页gif图标如下:
找到gif图标对应的资源文件
将资源文件拖动到AutoResonder中
在Rule Editor中通过Find a file替换为一个本地的gif图
勾选Enable rules生效规则,勾选Unmatched requests passthrough放行不匹配的请求
刷新页面,百度主页gif图表已被替换
五、使用FiddlerScript,实现自定义修改
Fiddler Script的本质是用JScript.NET编写的一个脚本文件CustomRules.js
通过修改CustomRules.js可以灵活修改请求报文和响应报文,也无需中断程序。同时也可以利用它针对不同的URL做各种特殊处理。
Fiddler安装时已经自带了Fiddler ScriptEditor,可查看包含的各类变量和方法,十分方便。
CustomRules.js中的OnBeforeRequest 函数在每次请求之前调用
示例:在OnBeforeRequest 函数中修改Cookie
if (oSession.uriContains("baidu.com"))
{
//删除原有cookie
oSession.oRequest.headers.Remove("Cookie");
//新建cookie
oSession.oRequest.headers.Add("Cookie","username=testname;testpassword=P@sswordl");
//修改Cookie .不能删除或者编辑单独的 Cookie 需要替换 Cookie 字符串
var oldCookie = oSession.oRequest["Cookie"];
oldCookie = oldCookie.Replace("cookieName=","gnoreme");
oSession.oRequest[" Cookie"] = oldCookie ;
//替换新Cookie
var newCookie = "your cookie String";
oSession.oRequest["Cookie"] = newCookie;
}
CustomRules.js中的OnBeforeResponse 函数在每次响应之前调用
示例:在OnBeforeResponse 函数中修改响应的数据
if (oSession.uriContains("cnblogs.com"))
{
oSession utilReplaceinResponse("csdn","csdn 灰哥");
}
————————————————
版权声明:本文为CSDN博主「灰哥BizData」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/scut_yfli/article/details/106034952