一 Fiddler中设置断点修改HTTP请求

方法1:全局断点。Rules-->Automatic BreakPoint-->Before Requests(或快捷键F11),这种方法会拦截所有的会话。

取消全局断点,可以Rules-->Automatic BreakPoint-->Disabled(或快捷键Shift+F11)。

方法2:单个断点。已知某个请求的URL地址,这时候只需要针对这一个请求调试,其他的请求不拦截。在Fiddler左下角QuickExec命令行中输入命令“bpu www.baidu.com”,这种方法只会拦截www.baidu.com。

取消单个断点,可以在命令行中输入命令bpu。

实例1:Fiddler修改Http请求

浏览器想访问https://www.163.com,则通过Fiddler修改HTTP请求,让浏览器去访问https://www.cnblogs.com/zhengna。具体操作步骤如下。

1.启动Fiddler(已配置好可拦截HTTPS请求),在菜单栏单击Rules-->Automatic BreakPoint-->Before Requests。

2.打开浏览器,输入www.163.com,这时候你会发现任务栏的Fiddler图标在闪烁,说明Fiddler拦截住了HTTP请求。

3.回到Fiddler界面,在菜单栏中单击Rules-->Automatic BreakPoint-->Disabled(因为已经拦截住想要的请求了,其他HTTP请求就不需要拦截了)。

4.被拦截的HTTP请求有一个红色的T图标,选中需要修改的HTTP请求-->Inspectors面板-->Raw选项卡(必须在Raw选项卡下才能修改)。

5.如下图所示,把URL修改为www.cnblogs.com/zhengna,同时把Host修改为www.cnblogs.com,然后单击绿色的Run to Completion按钮放行。

6.回到浏览器,此时我们会发现浏览器打开是cnblogs的页面了。

如果单击黄色按钮Break on Response,则会继续拦截这个HTTP请求的响应。

实例2:伪造Referer

HTTP协议头中的Referer主要用来让服务器判断来源页面,即用户是从哪个页面来的。网站通常用其来统计用户来源,看用户是从搜索页面来的,还是从其他网站链接过来的,或是从书签等访问的,以便合理定位网站。

Referer有时也被用作防盗链,即下载时判断来源地址是不是在网站域名之内,否则就不能下载或者显示。很多网站,比如天涯就是通过Referer页面来判断用户是否能够下载图片的。

现在我们来使用Fiddler来伪造一个Referer。具体操作步骤如下。

1.启动Fiddler,在左下角QuickExec命令行中输入命令“bpu http://img3.laibafile.cn/p/m/280148719.png”。

2.打开浏览器,输入http://img3.laibafile.cn/p/m/280148719.png,我们会看到图片上显示“该图片仅供天涯社区用户分享。

3.这时候,Fiddler会拦截到该请求。可以看到HTTP请求中没有Referer,所以被Web服务器认为是盗链。

4.我们修改HTTP请求,在Raw选项卡添加一个“Referer:www.tianya.cn”,单击绿色的Run to Completion按钮放行。

5.我们发现在浏览器中能看到真正的图片。~~~并没有~~~

二 Fiddler中设置断点修改HTTP响应

方法1:全局断点。Rules-->Automatic BreakPoint-->After Response(或快捷键Alt+F11),这种方法会中断所有的会话。

取消全局断点,可以Rules-->Automatic BreakPoint-->Disabled(或快捷键Shift+F11)。

方法2:单个断点。在Fiddler左下角QuickExec命令行中输入命令“bpafter www.baidu.com”,这种方法只会中断www.baidu.com。

取消单个断点,可以在命令行中输入命令bpafter。

实例:Fiddler修改网页的标题

用户访问一个网页,通过Fiddler修改响应的方法修改网页的标题。具体操作步骤如下。

1.启动Fiddler,在左下角QuickExec命令行中输入命令“bpafter https://www.cnblogs.com/zhengna/p/9390336.html”。

2.打开浏览器,输入https://www.cnblogs.com/zhengna/p/9390336.html。

3.在Fiddler选中需要修改的HTTP请求-->Inspectors面板-->Raw选项卡。

4.如下图所示,修改HTML代码为“<title>我修改了这里</title>”,然后单击绿色的Run to Completion按钮放行。

5.在浏览器中查看网页的标题。

参考:肖佳《HTTP抓包实战》

Fiddler2 下断点修改HTTP报文的更多相关文章

  1. 转 Fiddler2 下断点修改HTTP报文

    文章转自:https://www.cnblogs.com/zhengna/p/10861893.html 一 Fiddler中设置断点修改HTTP请求 方法1:全局断点.Rules-->Auto ...

  2. 2- 设置断点修改Request

    以下是借鉴别人的知识分享.我在这里转载,如有冒犯,还请告知. 如何设置断点修改Request呢? fiddler最强大的功能就是可以设置断点了.设置好之后,你可以修改HttpRequest的任何信息, ...

  3. 在Android so文件的.init、.init_array上和JNI_OnLoad处下断点

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/54233552 移动端Android安全的发展,催生了各种Android加固的诞生, ...

  4. Windbg对过滤驱动DriverEntry函数下断点技巧

    方法1: 1> 先用DeviceTree.exe查看指定的过滤驱动的Load Address(加载地址) 2> 再用LordPE.EXE查看指定过滤驱动文件的入口点地址 3> 计算过 ...

  5. windows下如何修改远程登录端口

    windows下如何修改远程登录端口 windows远程桌面默认端口为3389,修改 方法如下:在"开始>运行"中输入"regedit" 点击“确定”,打 ...

  6. Ubuntu(16.04) 下如何修改(安装)arm-linux-gcc编译器

    ubuntu下如何修改(安装)arm-linux-gcc编译器 将gcc解压到根目录 sudo tar xjf arm-linux-gcc-4.3.2.tar.bz2 -C / 查看原来的环境变量 e ...

  7. [Android]Button按下后修改背景图

    Button按下后修改背景图 错误做法:为Button添加OnTouch事件监听,根据ACTION_UP和ACTION_DOWN动作来修改Button的背景图 错误原因:从理论上讲,按钮按下修改背景色 ...

  8. linux下如何修改iptables开启80端口

    linux下如何修改iptables开启80端口   最近在做本地服务器的环境,发现网站localhost能正常访问,用ip访问就访问不了,经常使用CentOS的朋友,可能会遇到和我一样的问题.开启了 ...

  9. 浅谈Linux下如何修改IP

    linux 下命令之浅谈//cd ..  //返回上一级//创建文件夹touch test.txt//Linux不区分大小写//往一个文件中追加内容echo "****" > ...

随机推荐

  1. jprofiler监控tomcat

    jprofiler监控tomcat https://www.cnblogs.com/yjd_hycf_space/p/7727757.html https://www.jianshu.com/p/c3 ...

  2. LG_2051_[AHOI2009]中国象棋

    题目描述 这次小可可想解决的难题和中国象棋有关,在一个N行M列的棋盘上,让你放若干个炮(可以是0个),使得没有一个炮可以攻击到另一个炮,请问有多少种放置方法.大家肯定很清楚,在中国象棋中炮的行走方式是 ...

  3. HashMap底层分析

    以下基于 JDK1.7 分析. 如图所示,HashMap 底层是基于数组和链表实现的.其中有两个重要的参数: 容量 负载因子 容量的默认大小是 16,负载因子是 0.75,当 HashMap 的 si ...

  4. Python实现链表倒序(带头指针)

    class ListNode(object): def __init__(self, x): self.val = x self.next = None def reverseList(self, h ...

  5. Ceph块设备

    Ceph块设备 来自这里. 块是一个字节序列(例如,一个512字节的数据块).基于块的存储接口是最常见的存储数据的方法,它通常基于旋转介质,像硬盘.CD.软盘,甚至传统的9道磁带. 基本的块设备命令 ...

  6. ansible使用指北(二)

    前言在上一篇文章里我们了解了ansible的常用模块,今天我们来了解下ansible-playbook,ansbile-playbook是一系统ansible命令的集合,其利用yaml 语言编写,an ...

  7. 使用mysql创建自己的物化视图

    物化视图,它是用于预先计算并保存表连接或聚集等耗时较多的操作的结果,这样,在执行查询时,就可以避免进行这些耗时的操作,从而快速的得到结果.物化视图有很多方面和索引很相似:使用物化视图的目的是为了提高查 ...

  8. qt creator源码全方面分析(3-2)

    目录 qtcreator.pri 判断重复包含 定义版本信息 VERSION 定义IDE名称 启用C++14 CONFIG 自定义函数 Replace Functions Test Functions ...

  9. mongoose-面向对象操作mongodb的Nodejs框架

    介绍 无论是mysql还是mongodb,传统的与数据库交互的方式都是按照他们提供的API来写代码.它们提供的API往往不是很容易理解,而且难以记忆,如果传错了参数,写错一个符号都要查文档. ORM( ...

  10. 聊聊CAS - 面试官最喜欢问的并发编程专题

    什么是CAS 学习Java并发编程,CAS(Compare And Set)机制都是一个不得不掌握的知识点.除了通过synchronized进行并发控制外,还可以通过CAS的方式控制,大家熟悉的Ree ...