1.简介

Fiddler充当第三者,主要是通过AutoResponder标签在客户端和服务端之间,Fiddler抓包,然后改包,最后发送。AutoResponder这个功能可以算的上是Fiddler最实用的功能,可以让我们修改服务器端返回的数据,例如:让返回都是HTTP404或者读取本地文件作为返回内容。宏哥将在实例中介绍利用AutoResponse功能。

2.应用场景

简单介绍几个应用场景:

场景一:生产环境的请求重定向到本地文件,验证结果。这个在实际工作中经常会遇到。

例如:某网站或者系统、APP修改了问题,但尚未更新到生产环境,而且有些客户停机停服务的申请特别的啰嗦麻烦(如:国企各种流程审批)还有些客户惹不起都不敢轻易停机停服务,停机发一次版本是相当不容易的,。此时我们就可以重定向到本地修改后的文件进行验证,这样能够避免更新到生产环境后才发现问题。

场景二:修改响应结果,模拟接口测试。也可以绕过前端页面的JS验证,测试接口是否存在问题。

例如:当我们进行登陆操作的时候,如果手机好输入的不规范,前端的校验就进行拦截了。

场景三:连接某些不安全的wifi时,钓鱼者可能会利用篡改某些访问的JS文件弹出窗口或链接,重定向到不安全的网站。温馨提醒:尽量不要使用不安全的wifi上网。

3.实战应用

3.1实战-本地调试文件

本地调试的文件很多,例如:html文css文件、js文件、图片文件等各种类型的文件,其处理和操作步骤一致,宏哥这里就以js文件为例讲解和分享一下供大家参考。

1.启动Fiddler,访问简书首页,任意选中一个js文件会话,然后点击“AutoResponder”,然后点击“Add Rule”添加一个新规则。如下图所示:

2.修改新增规则的拦截地址(编辑规则,让该请求访问本地的test.js文件)。如下图所示:

3.把选中会话的js文件,点击“Inspectors”,然后点击“解码”,复制到本地的test.js文件中。如下图所示:

4.在最前边(顶部)加上一行“alert("我被'北京-宏哥'劫持修改了!!!");”。如下图所示:

5.再次进行简书首页访问,查看结果。结果页面弹出了alert窗口,说明请求最终访问了本地的test.js文件。如下图所示:

6.选中那条js会话请求,点击“Inspectors”查看js文件,结果开头看到宏哥加的哪一行代码“alert("我被'北京-宏哥'劫持修改了!!!");”。如下图所示:

3.2实战-修改返回的图片(图片重定向)

以 https://www.baidu.com 主页面为例,将主页百度logo图片重定向到宏哥博客园中公众号二维码图片。

宏哥这里以度娘为例按照前边在基础理论知识的操作步骤实践一下。如当我们请求百度页面的时候, 会抓取到其中一个百度logo图片会话,最后把这个图片会话响应给替换成其他资源图片。

1.宏哥首先在Fiddler中的Inspectors结合会话列表找到百度logo这个图片的连接资源URL地址: 可能有多个。如下图所示:

2.切换到AutoResponder选项卡, 在Rule Editor规则编辑中填入要请求的资源地址(度娘logo的图片地址)和替换成的响应地址(宏哥二维码的地址,这个地址可以是网上的,也可以是本地图片的绝对路径),最后点击save保存一下, 就可以了。宏哥这里将其替换成宏哥公众号的二维码。如下图所示:

3.保存以后,刷新浏览器,再次重新访问度娘后,查看到logo被替换成了宏哥的公众号二维码,这是因为你再次请求百度页面的时候,如果再次遇见到这个百度logo图片的资源地址,那么请求就会被中间层的Fiddler所劫持并篡改成为我们设置的某个响应资源,并返回给客户端, 明白了吧, 这个响应不是从服务器回来的,而是宏哥人为篡改的。若发现没有替换,可能是浏览器缓存问题,可以去缓存刷新或者清空缓存后再次访问即可。如下图所示:

3.3实战-修改访问的URL(URL重定向)

1.启动Fiddler,然后点击“AutoResponder”,然后点击“Add Rule”添加一个新规则。如下图所示:

2.修改新增规则的拦截地址和重定向地址。如下图所示:

3.添加EXACT:后,完全匹配的请求地址才会触发重定向。记得要点击后边的“Save”按钮,如下图所示:

4.访问百度首页链接,进行了地址的重定向。输入的是百度首页地址,返回来的是宏哥博客的首页。如下图所示:

3.4实战-修改返回的背景色(模拟Mock)

Edit Response也就是自定义编辑响应。我们可以直接编辑服务器返回响应信息的详细内容,然后再返回给客户端。可能小伙伴或者童鞋们在宏哥之前的文章或者截图中,看到宏哥百度的背景色是绿色的,就是因为宏哥在这里修改了的原因。具体步骤如下:

1.将服务器的响应直接拖拽到AutoResponder-自动响应器的规则列表中,如下图所示:

2.选中响应,右键选择编辑响应信息,如下图所示:

3.自定义响应内容,将响应的背景色修改成绿色后,点击“保存”,如下图所示:

4.刷新浏览器,再次重新访问度娘后,可以看到度娘页面的背景色变成绿色了,如下图所示:

4.小结

Fiddler强大之处就是:响应都可以随便篡改。通过这种中间截获的手段并篡改响应资源的手法就可以实现很多资源响应的修改,如:html、css、js等资源都是可以的。

关于Fiddler的AutoResponder重定向功能,主要是时进行会话的拦截,然后替换原始资源的功能。它与手动修改Reponse是一样的,只是更加方便了,可以创建相应的rules,适合批处理的重定向功能。

《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(16)-Fiddler如何充当第三者,再识AutoResponder标签-上篇的更多相关文章

  1. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(34)-Fiddler如何抓取微信小程序的包-上篇

    1.简介 有些小伙伴或者是童鞋们说小程序抓不到包,该怎么办了???其实苹果手机如果按照宏哥前边的抓取APP包的设置方式设置好了,应该可以轻松就抓到包了.那么安卓手机小程序就比较困难,不是那么友好了.所 ...

  2. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(9)-Fiddler如何设置捕获Https会话

    1.简介 由于近几年来各大网站越来越注重安全性都改成了https协议,不像前十几年前直接是http协议直接裸奔在互联网.还有的小伙伴或者童鞋们按照上一篇宏哥的配置都配置好了,想大展身手抓一下百度的包, ...

  3. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(10)-Fiddler如何设置捕获Firefox浏览器的Https会话

    1.简介 经过上一篇对Fiddler的配置后,绝大多数的Https的会话,我们可以成功捕获抓取到,但是有些版本的Firefox浏览器仍然是捕获不到其的Https会话,需要我们更进一步的配置才能捕获到会 ...

  4. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(11)-Fiddler设置安卓手机抓包,不会可是万万不行的!

    1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler能截获 Android 和 Windows Phone 等 ...

  5. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(12)-Fiddler设置IOS手机抓包,你知多少???

    1.简介 Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求. Fiddler 能捕获Android 和 Windows Phone 等 ...

  6. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(23)-Fiddler如何优雅地在正式和测试环境之间来回切换-上篇

    1.简介 在开发或者测试的过程中,由于项目环境比较多,往往需要来来回回地反复切换,那么如何优雅地切换呢?宏哥今天介绍几种方法供小伙伴或者童鞋们进行参考. 2.实际工作场景 2.1问题场景 (1)已发布 ...

  7. 《吐血整理》高级系列教程-吃透Fiddler抓包教程(31)-Fiddler如何抓取Android系统中Flutter应用程序的包

    1.简介 Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面.Flutter应用程序是用Dart编写的,这是一种由Google在7年多前创建的语言.Flut ...

  8. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(15)-Fiddler弱网测试,知否知否,应是必知必会

    1.简介 现在这个时代已经属于流量时代,用户对于App或者小程序之类的操作界面的数据和交互的要求也越来越高.对于测试人员弱网测试也是需要考验自己专业技术能力的一种技能.一个合格的测试人员,需要额外关注 ...

  9. 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(14)-Fiddler断点(breakpoints)实战,篡改或伪造数据

    1.简介 上一篇主要就讲解和分享Fiddler断点的理论和操作,今天宏哥就用具体例子,将上一篇中的理论知识实践一下.而且在实际测试过程中,有时候需要修改请求或响应数据,或者直接模拟服务器响应,此时可以 ...

随机推荐

  1. git stash 的一次惊心动魄的误删操作

    git stash 的一次惊心动魄的误删操作 简介:行走在互联网最低端的小熊 问题--源起: 小熊和所有混迹在互联网中的开发一样,公司里面用git来管理项目,由于可能经常有几个问题要开发,要频繁在多分 ...

  2. rhel修改系统语言

    修改系统语言的三种方式  1.yum install system-config-language //挂载本地源,然后安装         system-config-language     2. ...

  3. mybatis转义反斜杠_MyBatis Plus like模糊查询特殊字符_、\、%

    在MyBatis Plus中,使用like查询特殊字符_,\,%时会出现以下情况: 1.查询下划线_,sql语句会变为"%_%",会导致返回所有结果.在MySQL中下划线" ...

  4. 10分钟实现dotnet程序在linux下的自动部署

    背景 一直以来,程序署都是非常麻烦且无聊的事情,在公司一般都会有 devops 方案,整个 cicd 过程涉及的工具还是挺多的,搭建起来比较麻烦.那么对于一些自己的小型项目,又不想搭建一套这样的环境, ...

  5. string的底层实现

    String底层实现 string在C++也是一个重要的知识,但是想要用好它,就要知道它的底层是如何写的,才能更好的用好这个string,那么这次就来实现string的底层,但是string的接口功能 ...

  6. C# 11 的新特性和改进前瞻

    前言 .NET 7 的开发还剩下一个多月就要进入 RC,C# 11 的新特性和改进也即将敲定.在这个时间点上,不少新特性都已经实现完毕并合并入主分支 C# 11 包含的新特性和改进非常多,类型系统相比 ...

  7. 07 MySQL_SQL数据类型

    数据类型 整数类型: int(m) 对应java中的int bigint(m) 对应java中的long m代表显示长度,需要结合 zerofill使用 create table t_int(id i ...

  8. hive SQL 初学者题目,实战题目 字符串函数,日期拼接,开窗函数。。。。

    sql:Hive实现按照指定格式输出每七天的消费平均数输出格式:2018-06-01~2018-06-07 12.29...2018-08-10~2018-08-16 80.67 答案:-- 1.先将 ...

  9. CF Round #805 (Div. 3) 题解

    A 直接模拟即可,注意 \(10^k\) 的情况(罚时!罚时!罚时!). A Code using namespace std; typedef long long ll; typedef pair& ...

  10. 关于奇妙的 Fibonacci 的一些说明

    奇妙的 Fibonacci,多次模拟赛中出现 同时也是 BZOJ 2813 一 Fibonacci 的 GCD 如果 \(F\) 是 Fibonacci 数列,那么众所周知的有 \(\gcd(F_i, ...