3.1.3 Fiddler工具详细教程
Fiddler是什么
Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。
Fiddler作用---对测试人员而言
1、能够监听http/https的数据包,可以截获从浏览器或者客户端软件向服务器发送的http/https请求;
2、对截获之后的请求,我们还能够查看请求中的详细报文信息;
3、伪造请求。不仅可以伪造客户端的请求,还能够伪造服务器的响应。
4、测试网站的性能;
5、模拟弱网测试
6、提供第三方扩展插件,满足更多需求。
工作原理
界面及使用介绍
工具栏
(1)气泡:备注。添加之后在会话栏的Comment列中显示备注内容。
(2)Replay:回放【常用】。重播一个会话。快捷键:”选中会话+R”
(3)清除会话面板:过滤请求、清除请求。
(4)Go:断点调式。配合状态栏上的断点工具。功能类似Debug。
(5)Stream:代理模式。默认:缓冲模式。点击进行切换。
(6)Decode:解压请求。解压http请求里面的东西,帮助查看。传输数据获取的响应如果是乱码可以使用decode进行解压操作;
(7)Keep:指示fiddler的保持会话数目。
(8)Any Process:捕获请求,只看需要的请求。将“靶心”投向需要的请求。
(9)Find:查找请求。用颜色标注查找的请求。
(10)Save:保存会话。
(11)截图:默认5秒后截图。
(12)计时器:第一次点击-开始计时;第二次点击–返回计时结果;第三次点击-清零,重新计时。右键点击—不计时。
(13)Browse:启动浏览器;
(14)Clear Cache:清空缓存;
(15)TextWizard:【常用】编码、解码文本内容;
(16)Tearoff:浮窗。
Fiddler过滤功能
1.Actions:意思是动作的意思,也就是要做什么操作,里边包含有几个选项:
Run Filterset now :马上执行过滤
Load Filterset:加载本地过滤设置文件
Save Filterset :保存过滤条件到文件
2、Use Filters :是否使用过滤,只有在选择了这个选项以后才能修改下边的过滤条件,下边的过滤条件可以相互独立,也可以相互组合。
3、Hosts:
通过主机名来进行过滤。
No Zone Filter :不通过空间进行过滤,这个是分内网跟外网的
show only Intranet Hosts: 内网
show only internet Hosts:外网
No Host Filter :不通过主机名进行过滤
Hide the following Hosts:隐藏下边输入的主机名的请求
show only the following Hosts:显示下边输入的主机名的请求
flag the following Hosts:标志下边输入的要过来的主机名的请求;
例如下图输入www.baidu.com
蓝色加粗的就是过滤出来的包
4、Client Process
根据客户端进程来进行过滤,选中 show only traffic from ,然后就可以选择要过来哪个进程的会话
5、Request Headers:
Show only if URL contains 和 Hide if URL contains 使用方法类似功能相反。都是url中包含某些字符过滤,多种情况空格分隔。Hide if URL contains 可以简单理解为隐藏所有js请求,如下例子Show only if URL contains,是展示所有js请求:
6、Breakpoints:
(断点添加可以在工具栏中Rules中进行设置)
断点调试的步骤:
(1)当我们在这个里边设置了断点过滤,那么就会在相应的会话请求中插入断点。
例如下边我在get 请求中插入断点。那么可以发现在执行get 请求的会话是红色的图标。
这个时候如果你要对其中某一条进行断点调试的话,那么就双击,然后就会显示这样一个界面:
点击Break on Response 以后,你切换到下边的TextView选项卡里边,可以发现返回的数据,然后就可以进行修改了
7、Response Status Code:
响应码过滤,就是隐藏相应状态码的请求
过滤后如图:
8、Response Type and Size:
这部分是根据响应类型和大小的过滤:
Block script files:阻止脚本文件,显示为404;
Block image files:阻止图片文件;
Block SWF files:阻止SWF文件;
Block CSS files:阻止CSS文件;
Block的过滤是挺有意思,如果你选中了block css那么浏览器就加载不到css了。
结果如下图:
9、Response Headers:
是对response header的标志和修改。
Flag response that set cookies:标记会设置cookie的响应;
Flag response with headers:标记带有特定header的响应;
Delete response headers:删除响应header;
Set response header:设置响应的header;
Fiddler的弱网测试
fiddler设置弱网的文件是(rules-->customize rules):修改以下模拟网速的上传和下载速率
注意:如果使用fiddler模拟网速测试完毕后,一定要记得将其模拟网速的设置进行去掉,否则只要启动了fiddler,则网络一直弱网运行
Fiddler的数据篡改
在fiddler中的rules选择automatic breakpoints进行设置
在实际测试过程中,为了跳过前端页面的数据校验,可以使用fiddler进行设置断点从而实现数据的篡改操作;直接校验后端是否有进行数据的校验;
设置断点可以有两种方式:在请求前设置(before request)、在响应后设置(after response)
before request:在请求前设定断点,此时请求没有发送到服务器,所以可以实现数据的篡改,然后将篡改后的数据发送到服务器
after response:在响应后添加断点,一个响应可能是由多个http资源所构成,多个资源之间会有相应的联系,在设定断点,发送一个请求其多个响应实现的单步单个资源响应获取;
Fiddler的https包的数据抓取
因为https实际就是基于http协议上进行封装了一层SSL(实现传递数据过程中的部分加密处理)
1.选择fiddler中的options,选择https将下图的选项进行勾选
2.将fiddler的根证书进行导入到需要访问抓包的浏览器,当然如果当前可以抓取到相关https数据包,说明浏览器中已经存在证书,不需要导入;
3.如果需要将tunnel to相关的数据包请求信息进行隐藏的话则可以通过rules中设置hide connets(因为该部分数据包不需要进行分析)
AutoResponder
可用于拦截某一请求,进行如下操作:
1:重定向到本地的资源
2:使用fiddler的内置响应
3:自定义响应
注意:修改完内置响应后,需要对浏览器的缓存进行清除。
使用内置响应:
对CRM访问的地址进行跳转到百度地址:
3.1.3 Fiddler工具详细教程相关推荐
- 十五、Fiddler抓包工具详细教程 — Fiddler抓包HTTPS请求(二)
###文章内容有配套的学习视频和笔记都放在了文章末尾### 5.查看证书是否安装成功 方式一: 点击Tools菜单 -> Options... -> HTTPS -> Actions ...
- Eclipse插件TPTP-程序Profile与分析工具详细教程
TPTP简介 Eclipse Test & Performance Tools Platform 是Eclipse的一个顶级工程(Top-Level Project),TPTP项目封装了一大堆 ...
- Hadoop Dynamometer工具详细教程,填坑日记
Dynamometer工具使用步骤 Dynamometer 介绍 准备"材料" 原理 注意事项 流程 1.fsimage 2.hadoop binary 3.Configurati ...
- 全网最详细charles抓包工具详细教程,实战教程(细致)
目录:导读 一.前言 二.在PC端抓https包 三.在PC端抓https包 四.在移动端抓http包 五.在移动端抓https包 一.前言 charles相当于一个插在服务器和客户端之间的" ...
- charles抓包(charles抓包工具详细教程)
charles 为什么能抓https的包?原理是什么 众所周知,http明文传输,https加密就是为了在传输层禁止暴露明文,但是为什么抓包工具又能抓到? 岂不是和https的设计矛盾了?? 简单的说 ...
- 搭建Bitbucket项目管理工具详细教程
目录 1.安装前准备 2.jdk安装 2.1.rpm安装方式: 3.创建bitbucket数据库 4.安装Git 5.安装bitbucket 5.1下载完成上传至服务器的 /usr/atlassian ...
- HbuliderX项目运行至微信开发者工具详细教程
- 蓝湖界面移动端工具详细教程
1.默认进来页面,默认全部选中 2.点击清除按钮,面板将会被清空 3.点击全选后,全部选中 4.单击左边的某个控件,面板上会选中该控件,再次单击,取消选中 5.长按左边的某个父控件,右边将会将父子控件 ...
- charles抓包工具详细教程
由于个人记性不好,所以决定写篇博客记录下来具体步骤. 我们都知道,charles相当于一个插在服务器和客户端之间的"过滤器".当客户端向服务器发起请求的时候,先到charles进行 ...
最新文章
- UISeatchBar
- 技术上根本不思进取的金山词霸2007
- 华数联手海信升级互联网电视平台
- TensorFlow 基本问题思考
- 定时器的实现原理 不消耗cpu_brpc定时器实现原理
- Elasticsearch 读时分词、写时分词
- 使用3dmax渲染出二维画面的方法
- 相对开音节java_相对开音节是什么
- 用特征根判别法判断AR模型的平稳性,再用随机模拟的方法来验证以及做自相关分析
- python快速处理excel表格-python 处理 Excel 表格
- Bruce Schneier 和他的密码学以及网络安全经典著作推荐
- greedy算法计算金字塔分数问题
- 浏览器显示网页的原理 多种情况方式
- Android中设置自己应用为默认打开
- CSS3教程:Responsive框架常见的Media Queries片段
- Java 判断字符是否是汉字
- 测测你的金钱观爱情观事业观
- FFmpeg被声明为已否决情况整理
- 网管软件使用的必要性
- android 展开菜单,Android之可收缩展开列表ExpandableList
热门文章
- 计算机二级msoffice高级应用教程,二级MSOFFICE高级应用_二级MSOFFICE高级应用教程_二级MSOFFICE高级应用视频教程 _课课家...
- TF卡class的大致意思
- python3 判断偶数/奇数
- javascript anchor()方法
- ubuntu18.04安装mongoDB 4.0
- bochs上网镜像怎么上网_bochs core镜像可上网版
- BUUCTF-Basic
- 学校招生幽默软文范文-第一互联传媒分享
- 直流电动机在matlab,基于MATLAB直流电动机控制系统的建模与仿真
- 计算机毕业设计springboot棉花