Fiddler抓包工具初级篇-建议学习时间:1 day or 4 hours

一、Fiddler简介

Fiddler是目前最常用的http/https抓包工具之一,是位于客户端和服务器端的http代理,该抓包工具是web调式利器。

常用功能有:
查看分析请求的细节内容;监控浏览器所有的http/https流量;伪造客户端请求、服务器响应;解密https的web会话;测试网站的性能等等。

常见使用场景:
接口调试、接口测试、线上环境调试、web性能测试及分析,更具体而言,查前后端bug、开发环境hosts配置、mock、弱网断网测试。

二、Fiddler的下载及安装

1.进入官网:https://www.telerik.com/fiddler
2.选择“Download now”
在这里插入图片描述
3.根据需求,选择相应内容,再点击“Download for Windows”:
在这里插入图片描述
4.下载完成后,将“FiddlerSetup”保存到自己想要的路径。
在这里插入图片描述
5.双击“FiddlerSetup”该应用程序,选择“I Agree”同意各项条款说明:
在这里插入图片描述
6.将软件保存到自己想要的路径中,例如:C:\Fiddler,再点击“Install”
在这里插入图片描述
7.安装完成后,点击“Close”,则完成了基本的软件下载安装步骤:
在这里插入图片描述
8.打开Fiddler,界面大致如下图所示:
在这里插入图片描述

三、Fiddler常见使用方法

界面大致组成如下图所示:
在这里插入图片描述

1.Fiddler菜单栏

在这里插入图片描述

1.1 端口设置

步骤:
Tools–>Options–>Connections–>Fiddler listens on port–>OK–>重启Fiidler

注意:
(1)修改设置后,重启才会生效;
(2)端口号可在1024~65536范围内任意选取(不与其他端口冲突的前提下)。

1.2 导出会话

作用:
步骤:
File–>Export Sessions–>Select Sessions/All Sessions.

2.Fiddler工具条在这里插入图片描述

2.1添加会话备注

作用:便于测试复查或开发查看、理解会话内容。
步骤:方法一:选中某一/某几条会话–>点击备注图标–>即可添加会话备注;
方法二:

在这里插入图片描述

2.2重放会话

作用:通过Fiddler向服务器多次发送选中的请求。这既是重复会话工具,也可对服务器进行压力测试。

步骤:选中某一条或多条会话–>点击Replay
快捷键:
重复一次:选中某会话后–>按“R”键;
重复N次:选中某会话后–>按“Shift+R”键–>输入想要重复的次数。
在这里插入图片描述
在这里插入图片描述

2.3删除会话

作用:删除会话

步骤:
删除单个会话:选中–>点击移除图标;
快捷键:选中–>Delete;
删除多个会议:选中–>点击移除图标;
快捷键:选中–>Shift+Delete。
在这里插入图片描述

2.4 按键“Go”

作用:继续执行,通常与断点功能配套使用。

步骤:
step1:选中某请求会话
step2:状态栏处单击断点
(单点:请求前断点;双击:响应后断点;三击:取消断点)
step3:观察右侧报文信息,发现请求仅到达Fiddler但未达到服务器
step4:点击“Go”,即继续执行该请求,可见服务器响应“200 OK”。
在这里插入图片描述在这里插入图片描述
以下14个工具条内容不是很常用,故不作详述,有兴趣可至官网自行研究。

2.5Stream:表示一种流模式,缓冲模式。

2.6Decode:解码。

2.7Keep Sessions:保存会话,会占用内存,故依据自己情况而定,一般不去勾选。

2.8Amy Process:选择监听的程序。

2.9Find:查找,查找内容可自行选择。快捷键:Ctrl+F。

2.10Save:保存会话,将选中的会话保存为一个后缀为.saz的归档文件。

2.11截图:会在倒计时后进行Fiddler软件页面的截图。

2.12计时器:emmm,暂且不知道有何用处。

2.13Browser:快捷打开浏览器。

2.14Clear Cache:清除缓存。

2.15TextWizard:编码解码,还有一些简单的加密功能,例如md5。

2.16TearOff:工具条与Fiddler界面分离(个人觉得不咋实用)。

2.17MSDNsearch:微软开发者的搜索框。

2.18Online:查看主机ip(同样,可通过cmd–>ipconfig,进行验证)。

3.Fiddler会话列表

Fiddler抓取到的每一条http请求,称为一个session。
每条session主要包含如下内容:
请求的ID编号、状态码、协议、主机名、URL、内容类型、body大小、进程信息、自定义备注等信息。

3.1添加自定义会话备注列

步骤:
菜单栏中Rules–>Customize Rules–>FiddlerScript–>
Ctrl+F查找“static function Main()”字符串–>添加代码行
“FiddlerObject.UI.lvSession.AddBoundColumn(“ServerIP,120,”X-HostIP”);”–>File–>Save as CustomRules.js或者Save Script–>
重启Fiddler。
结果如下图:

会话列表中自定义列:列表白头第一行-右键-Customize Columns

4.Fiddler命令行和状态栏

在这里插入图片描述

4.1命令行

4.1.1help命令

作用:自动跳转到官方提供的常用命令文档
在这里插入图片描述

4.1.2 bpu命令

作用:针对选中的会话,设置断点
(1)bpu [keywords]
例如,命令行中输入:bpu baidu,则会将带有“baidu”关键词的所有请求都阻塞。若要取消这些阻塞,则再次在命令行中输入bpu。
(2)bpu after

4.1.3 ?[keywords]命令

作用:高亮所有含有keywordst的会话

4.1.4>size命令

作用:高亮所有大于size字节的会话

4.2状态栏

4.2.1代理开启/关闭

在这里插入图片描述
在这里插入图片描述

4.2.2进程选择在这里插入图片描述
4.2.3断点设置(状态栏快捷设置)

点击一次,请求前断点,即请求从客户端到Fiddler,但未发到服务器;
点击两次,响应后断点,即响应从服务器到Fiddler,但未到客户端;
点击第三次,不在显示红色图标,则取消断点。
在这里插入图片描述在这里插入图片描述在这里插入图片描述
状态栏中,断点设置后两项分别为:会话数量和显示附加信息:

5.Fiddler辅助标签和工具在这里插入图片描述

5.1 Statistics

作用:统计。http请求的性能和其他数据分析,如DNS解析的时间,建立TCP/IP连接的时间消耗等信息。
在这里插入图片描述

5.2 Inspectors

作用:检查器。以多种形式展示请求报文和响应报文。用得较多的有:Raw,Cookies,JSON,XML。

5.3 AutoResponder

作用:自动响应器。适合Mock,比如:重定向到本地的资源,使用Fiddler的内置响应,自定义响应。

场景举例:生产环境有问题,可将请求拦截后,重定向到本地或指定/修改响应。

例如:本地保存图片1.png,某网页保存图片2.png的地址,

Rule Edit:修改内置相应或者Find
a file 也可以右键Edit Response
在这里插入图片描述

5.4 Composor设计器

设计请求用的,类似postman,简单的接口测试、发包工具(http请求数据包)。

接口测试可以发现黑盒(功能)测试中不能发现的问题,例如:发送请求时,报文信息中username=123456,请求依然可以发送;但是如果功能测试,在网页登陆时,用户名中输入123456,则请求根本无法到达服务器,一般js会进行控制限制。在这个场景中,则说明后端缺少对手机号码的正确校验。

5.5 Filters过滤器

请求的过滤与设置,它是一个多维度的过滤器。

勾选:Use Filter

主机过滤,进程过滤,请求头过滤,断点过滤,响应状态码过滤,相应类型及大小过滤。

四、Fiddler应用

1.断点应用

全局断点和局部断点

Rules-Automatic Breakpoints-Before Response/After
Request/取消断点,请求前断点/响应后断点/取消断点,这三种模式都可以在Fiddler底部直接单点设置。

截获请求,可做一些极端测试。模拟网络中断。

命令行设置局部断点:请求前断点:Bpu;

使用方法:

设置:bpu login

取消:bpu

响应后断点:Bpafter

使用方法:

设置:bpafter login

取消:bpafter

2.弱网测试应用

Step1:设置延迟时间:Rules-Customize
Rules-Fiddler ScriptEditor-ctrl+F-m_SimulateModem-可看到设置的延迟时间

Step2:生效:Rules-Performance-Simulate
Moderm Speed
在这里插入图片描述

3.HTTPS抓包应用

预备小知识
https是加密的http,带有证书,相当于http+SSL+TLS。

【针对IE/Google浏览器】
step1:确认证书存在:Actions-Windows。。。-查找证书-包含:Fiddler-即可看到相关证书是否存在。其中,重置所有证书:Actions-Reset All Certificates

step2:设置允许抓取https包:Tools->Fiddler Options->HTTPS->勾选Decrypt HTTPS Traffic

【针对firefox浏览器】
自行管理自己的证书。这个不想写了。

4.ios设备中APP抓包应用

step1:手机、本机主机连接到同一局域网;

step2:ios设备设置:无线局域网-配置代理-手动-服务器:192.168.xxx,1,端口:8888;

step3:Fiddler软件设置:Options-Connections-勾选Allow remote caputures to connect;

step4:重启Fiddler后即可进行app抓包。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值