Fiddler4抓包工具使用教程

本文转载自https://www.cnblogs.com/GreenLeaves/p/6971452.html,纯属个人笔记收藏。

1、抓包工具有很多,为什么要使用Fiddler呢?原因如下:

a.Firebug虽然可以抓包,但是对于分析http请求的详细信息,不够强大。模拟http请求的功能也不够,且firebug常常是需要“无刷新修改”,如果刷新了页面,所有的修改都不会保存。

b.Wireshark是通用的抓包工具,但是比较庞大,对于只需要抓取http请求的应用来说,似乎有些大材小用。

c.Httpwatch也是比较常用的http抓包工具,但是只支持IE和firefox浏览器(其他浏览器可能会有相应的插件),对于想要调试chrome浏览器的http请求,似乎稍显无力,而Fiddler2 是一个使用本地 127.0.0.1:8888 的 HTTP 代理,任何能够设置 HTTP 代理为 127.0.0.1:8888 的浏览器和应用程序都可以使用 Fiddler。

2、what is Fiddler?

Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。

既然是代理,也就是说:客户端的所有请求都要先经过Fiddler,然后转发到相应的服务器,反之,服务器端的所有响应,也都会先经过Fiddler然后发送到客户端,基于这个原因,Fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。使用了Fiddler之后,web客户端和服务器的请求如下所示:

Fiddler4主界面

注:通过主界面右上方的按钮打开目标浏览器,这样就能监控到该浏览器所有的HTTP请求了,但是你不是这样操作的,那么你就必须修改浏览器的代理,因为如果你的浏览器在开启fiddler之后没有设置相应的代理,则fiddler是无法捕获到HTTP请求的。如下是启动Fiddler之后,IE浏览器的代理设置:

以Firefox为例,默认情况下,firefox是没有启用代理的(如果你安装了proxy等代理工具或插件,是另外一种情况),在firefox中配置http代理的步骤如下:

工具->选项->高级->网络->设置  。并配置相应的代理如下:

下面开始分析主界面的功能区:

1、Fiddler菜单栏,上图黑色部分,包括捕获http请求,停止捕获请求,保存http请求,载入本地session、设置捕获规则等功能。

2、Fiddler的工具栏,上图黄色部分,包括Fiddler针对当前view的操作(暂停,清除session,decode模式、清除缓存等)。

3、Web Session面板,上图红色部分,主要是Fiddler抓取到的每条http请求(每一条称为一个session),主要包含了请求的url,协议,状态码,body等信息,详细的字段含义如下图所示:

#栏图标说明

另外,注意请求的host字段。可以看到有来自多个www.csdn.net的子域名的响应,说明在大型网站的架构中,大多需要多个子域名,这些子域名可能是单独用于缓存静态资源的,也可能是专门负责媒体资源的,或者是专门负责数据统计的(如pingback)

右键单击其中的一条请求。可以选择的操作有:save(保存请求的报文信息,可以是请求报文,可以是响应报文),将整条会话作为txt保存到桌面,当然你可以保存为zip,可以看到整个回话的内容如下:

4、详情和数据统计板,针对每条http请求的具体统计(例如发送/接受字节数,发送/接收时间,还有粗略统计世界各地访问该服务器所花费的时间)和数据包分析。如inspector面板下,提供headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息:

选择单条回话,右键save->selected Sessions->as Txt,打开相关的文件

如果想要重新发送某些请求,可以选中这些请求,然后点击工具栏中的,然后就可以重新发送选中的这些请求。

5、详情和数据统计板

(1)、inspector面板

提供headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息,分为上下两个部分,上半部分是请求头部分,下半部分是响应头部分。对于每一部分,提供了多种不同格式查看每个请求和响应的内容。

a、ImageView标签

JPG 格式使用 ImageView 就可以看到图片,选择一条Content-Type是image/jpeg的回话,点击TextView

b、TextView 标签

HTML/JS/CSS 使用 TextView 可以看到响应的内容。选择一条Content-Type是text/html的回话,点击TextView

c、Raw标签

Raw标签可以查看响应报文和响应正文,但是不包含请求报文

d、Auth标签

Auth则可以查看授权Proxy-Authorization 和 Authorization的相关信息

e、Cookies标签

Cookies标签可以看到请求的cookie和响应的set-cookie头信息。

(2)、AutoResponder标签

Fiddler比较重要且比较强大的功能之一。可用于拦截某一请求,并重定向到本地的资源,或者使用Fiddler的内置响应。可用于调试服务器端代码而无需修改服务器端的代码和配置,因为拦截和重定向后,实际上访问的是本地的文件或者得到的是Fiddler的内置响应。当勾选allow autoresponser 并设置相应的规则后(本例中的规则是将http://blog.csdn.net/aaa的请求拦截到本地的文件http://localhost:54321/WebForm1.aspx),如下图所示

(2)、Statistics面板

HTTP请求的性能和其他数据分析

我们可以从中看出一些基本性能数据:如DNS解析的时间消耗是8ms,建立TCP/IP连接的时间消耗是8ms等等信息。

(3)、composer面板

可以模拟向相应的服务器发送数据的过程(不错,这就是灌水机器人的基本原理,也可以是部分http flood的一种方式)。

(3)、Filters面板

Filter标签则可以设置Fiddler的过滤规则,来达到过滤http请求的目的。最简单如:过滤内网http请求而只抓取internet的http请求,或则过滤相应域名的http请求。Fiddler的过滤器非常强大,可以过滤特定http状态码的请求,可以过滤特定请求类型的http请求(如css请求,image请求,js请求等),可以过滤请求报文大于或则小于指定大小(byte)的请求

Fiddler4抓包工具使用教程相关推荐

  1. Fiddler4抓包工具的使用

    Fiddler4抓包工具的使用 1.抓包工具的定义及工作原理 2.抓包工具的使用 (1)下载抓包工具 (2)改写浏览器的代理 (3)开始抓包 1.抓包工具的定义及工作原理 抓包工具是拦截查看网络数据包 ...

  2. Wireshark抓包工具使用教程以及常用抓包规则

    Wireshark是一个非常好用的抓包工具,当我们遇到一些和网络相关的问题时,可以通过这个工具进行分析,不过要说明的是,这只是一个工具,用法是非常灵活的,所以今天讲述的内容可能无法直接帮你解决问题,但 ...

  3. Charles网络抓包工具使用教程

    1. 前言: Charles是一款抓包修改工具,相比起burp,charles具有界面简单直观,易于上手,数据请求控制容易,修改简单,抓取数据的开始暂停方便等等优势!作为程序员, 这个工具的使用还是必 ...

  4. Wireshark抓包工具使用教程以及常用抓包规则 ——Powered By 死性不改

    原文地址: http://www.clxp.net.cn/article.asp?id=2288 内容: Wireshark是一个非常好用的抓包工具,当我们遇到一些和网络相关的问题时,可以通过这个工具 ...

  5. Charles抓包工具安装教程

    Charles抓包工具简介 Charles是常用的网络封包截取工具,在做移动开发和测试时常常需要截取网络封包来分析. Charles是通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都 ...

  6. charles抓包(charles抓包工具详细教程)

    charles 为什么能抓https的包?原理是什么 众所周知,http明文传输,https加密就是为了在传输层禁止暴露明文,但是为什么抓包工具又能抓到? 岂不是和https的设计矛盾了?? 简单的说 ...

  7. Fiddler 抓包工具简明教程

    Fiddler是一款windows下的抓包工具,也是Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许监视.设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基 ...

  8. Charles(青花瓷抓包工具)使用教程

    三.主要功能使用 (1)初步认识 Charles 提供两种查看封包的视图, "Structure" 和 "Sequence". 1.Structure 视图将网 ...

  9. Wireshark抓包工具使用教程(会这些就够了)

    首先WireShark是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换. # ...

  10. 网络抓包工具 wireshark教程

    Wireshark(前称Ethereal)是一个网络数据包分析软件.网络数据包分析软件的功能是截取网络数据包,并尽可能显示出最为详细的网络数据包数据.Wireshark使用WinPCAP作为接口,直接 ...

最新文章

  1. 【廖雪峰python入门笔记】tuple_创建
  2. Samba如何配置共享资源
  3. 【Android 内存优化】内存抖动 ( 垃圾回收算法总结 | 分代收集算法补充 | 内存抖动排查 | 内存抖动操作 | 集合选择 )
  4. extjs store 复杂json_extjs 2.3 修复 jsonstore 嵌套多级引用数据NULL的BUG
  5. 【Numpy学习记录】np.transpose讲解
  6. 构建实时数据仓库首选,云原生数据仓库AnalyticDB for MySQL技术解密
  7. Ext.form.field.CheckBox复选框和Ext.form.field.Radio单选框
  8. 给定一个排序后的数组,包含n个整数,但这个数组已被旋转过多次,找出数组中的某个元素...
  9. EMC 电磁兼容测试项目
  10. 【机房收费系统】---组合查询
  11. 管螺纹如何标注_螺纹知识,这一次搞全了!
  12. 关于需求确认的重要性
  13. [堆利用:TCache机制]HITB CTF 2018:gundam
  14. 环洋市场咨询:全球OLED收入预计2028年达到502.4亿美元
  15. 计算机开机最快设置,w7提高开机速度如何操作_win7电脑怎么开机更快
  16. 自动化运维为什么是必须的?
  17. SharePoint加K2,将Portal系统与BPM系统完美整合!
  18. trie树之敏感词过滤算法
  19. catia v5法矢数据软件_CATIA V5完全学习手册
  20. 局域网下两个电脑的文件实时传输--python程序

热门文章

  1. 小程序商城源码(JAVA后台)
  2. 激活golang编辑器
  3. 高质量程序设计指南C++/C试题
  4. java 实现用户登陆代码_Java Web用户登录实例代码
  5. 学生选课管理系统(python)
  6. 宝塔面板部署python项目
  7. Java实验报告(基础练习、选择循环、数组、字符串及类和对象)
  8. python常用运维脚本实例-经典!Python运维中常用的几十个Python运维脚本
  9. 电脑误删文件硬盘U盘内存卡数据修复---EasyRecovery恢复
  10. 谭浩强《C语言程序设计第五版》第一章学习笔记