一、Fiddler简介
??Fiddler官方版是一个强大的HTTP调试抓包工具。Fiddler官方版可以用其检测网页和服务器的交互情况,Fiddler能够记录所有客户端和服务器间的http请求,支持监视、设置断点、甚至修改输入输出数据等功能。Fiddler对开发人员或者测试人员来说,都是非常有用的工具! ??Fiddler 包含一个简单却功能强大的基于JScript .NET事件脚本子系统,他非常灵活性非常棒,可以支持众多的http调试任务。Fiddler是用C#写出来的。程序将会把自己作为一个微软互联网服务的系统代理中去。你可以通过检查代理设置对话框来验证Fiddler是被正确地截取了web请求。操作是这样的:点击IE设置,工具,局域网设置,最后点击高级。作为系统代理,所有的来自微软互联网服务(WinInet)的http请求再到达目标Web服务器的之前都会经过Fiddle,同样的,所有的Http响应都会在返回客户端之前流经Fiddler。
二、安装步骤
1、官网下载fiddler最新版本
打开官网下载链接finddler下载地址,下载最新版的fiddler软件。
2、双机exe程序开始安装
3、选择安装目录
4、安装完成
安装结束后有如下弹窗。
三、使用说明
1、启动fiddler
2、查看浏览器代理设置
点击IE设置,工具,局域网设置,最后点击高级。 8888端口为fiddler默认配置端口,如果本地8888端口已占用,修改方式如下:
3、启动或者关闭抓包
可以按快捷键F12或者点击勾选Capture Traffic。
4、查看数据包
点击任意一条抓取到的包,右键菜单选择Inspect in New Windows。 Request表示数请求数据包,Repose查看响应数据包,http协议明文传输,通过抓包我们可以清楚的看到登录时使用的用户和密码。
5、查看数据包的性能分析数据
选择指定数据包,然后按F7就可以看到Statistics关于HTTP请求的性能以及数据分析了
6、自定义请求数据包
7、AutoResponder允许拦截指定规则的请求
AutoResponder允许你拦截指定规则的求情,并返回本地资源或Fiddler资源,从而代替服务器响应。 查看效果,访问百度域名自动跳转展示了本地图片。
8、Filters 请求过滤规则配置
Fiters 是过滤请求用的,左边的窗口不断的更新,默认是全部流量展示,请求多的时候我们很难快速的找到我们需要的数据包,通过配置过滤规则我们可以仅展示过滤后的包,还支持域名过滤,非常的方便。 Zone 指定只显示内网(Intranet)或互联网(Internet)的内容: Host 指定显示某个域名下的会话:
修改hosts列表后需要点击下图2所示使配置生效。
9、查看https加密数据
Fiddler可以通过伪造CA证书来欺骗浏览器和服务器。大概原理就是在浏览器面前Fiddler伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前Fiddler又装成浏览器,从而实现解密HTTPS数据包的目的。 配置开启解密https数据包选项 安装https证书 首次访问的非受信任https站点会弹窗,选择Yes继续。 启用https解密和未启用https的抓包区别: 下图为启用https解密抓取到的包: 下图为未启用https解密抓取到的包:
四、报文展示字段和图标说明
1、字段说明
名称 | 含义 |
---|
# | 抓取HTTP Request的顺序,从1开始,以此递增 | Result | HTTP状态码 | Protocol | 请求使用的协议,如HTTP/HTTPS/FTP等 | Host | 请求地址的主机名 | URL | 请求资源的位置 | Body | 该请求的大小 | Caching | 请求的缓存过期时间或者缓存控制值 | Content-Type | 请求响应的类型 | Process | 发送此请求的进程:进程ID | Comments | 允许用户为此回话添加备注 | Custom | 允许用户设置自定义值 |
2、图标说明
图标 | 含义 |
---|
| 请求已经发往服务器 | | 已从服务器下载响应结果 | | 请求从断点处暂停 | | 响应从断点处暂停 | | 请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body) | | 请求使用 HTTP 的 POST 方法 | | 请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道 | | 响应是 HTML 格式 | | 响应是一张图片 | | 响应是脚本格式 | | 响应是 CSS 格式 | | 响应是 XML 格式 | | 响应是 JSON 格式 | | 响应是一个音频文件 | | 响应是一个视频文件 | | 响应是一个 SilverLight | | 响应是一个 FLASH | | 响应是一个字体 | | 普通响应成功 | | 响应是 HTTP/300、301、302、303 或 307 重定向 | | 响应是 HTTP/304(无变更):使用缓存文件 | | 响应需要客户端证书验证 | | 服务端错误 | | 会话被客户端、Fiddler 或者服务端终止 |
|