Fiddler抓包工具

前言

Fiddler是测试过程中常见的抓包工具。


一、什么是Fiddler?

谈到Fiddler之前就不得不了解一下B/S架构以及请求过程的理解,如下图所示

1、编写程序部署到web服务器;

2、web服务器运行在服务器上,绑定ip地址并监听某端口,接受和处理http请求;

ps:tomcat就是一种web服务器,用来部署服务器资源,浏览器、app、小程序等都称为客户端,它们向服务器所请求的,就是资源。

3、客户端通过http协议获取服务器上的网页、文档等。

Fiddler就是位于客户端和服务器端的HTTP代理,是目前最常用的http抓包工具之一,功能非常强大,是web调试的利器

Fiddler的功能

Fiddler的使用场景

二、Fiddler原理

eg:谷歌浏览器会读一个系统代理

Fiddler只要一打开,就会去修改浏览器中的系统代理(代理服务器),从而抓到浏览器的包。

 三、HTTP协议概述

HTTP(超文本传输协议)主要是用来规定客户端和服务端的数据(或者叫资源)的传输格式。

通过抓包工具监听录制到一个登录页面的html格式的请求,客户端到服务端之间通信的过程就是一段文本。

这个请求分为两部分——请求报文/响应报文

请求报文

1、 请求方法

2、URL

 eg:https://blog.youkuaiyun.com/NingMengLvc?spm=1000.2115.3001.5343

3、请求头

响应报文

1、状态码 

用以表示网页服务器HTTP响应状态的3位数字代码

ps:3xx—客户端并没有发生更改

2、响应头

四、Fiddler的使用

工具介绍

工具条

WinConfig不常用。

气泡可以给请求添加备注,也是实际业务中与开发交流的一个场景。

Replay可以进行多次的重放,对服务器进行一个重放攻击(一个小的压力测试),其为顺序执行是串行与jmeter做性能测试(并发)不同。

X移除各种情况的请求。

Go用于断点的后续功能。

ps:点击All Processes右边的空白即可实现一个全局的断点,选中请求点R键即可实现断点;客户端发送请求到达Fiddler时,Fiddler使其暂停了,即为断点。

stream为流模式—服务器返回内容后之间返回给客户端;一般情况下为缓冲模式—服务器把所有的数据都返回之后,Fiddler再一次性转给前端,只有在缓冲模式下才能实现Fiddler的各种功能。

Decode解码,从服务器返回的一些内容(会编码或者进行压缩)需要进行解码才能阅读。

Keep:All sessions保留多少个会话。

Any process选择要监听的程序(浏览器或者各种应用)。

Find查找(Ctrl+F)。

Save保存所有请求。

相机截图。计时器计时。打开浏览器。清除浏览器缓存。

TextWizard编码解码工具。

Tearoff分离工具栏。

online本机的信息。

会话列表

命令行+状态栏

QuickExec输入命令快速执行。

Capturing正在捕获,可以快速设置是否代理。

All Processes筛选请求。

右边空白断点,点击一次请求的断点,点击两次响应的断点(从服务器回来的)。

会话的数量。右边附加的信息。

辅助标签+工具

Statistics统计HTTP请求的性能和其他数据分析,如DNS解析的时间,建立TCP/IP连接的时间消耗等信息。

Inspectors检查器,上面是请求报文,下面是响应报文,以不同形式查看报文信息。

其中:Headers层级展示头部信息可以将请求头进行分类;TextView展示文本;SyntaxView以语法的格式查看请求体;WebForms查看Form参数;HexView十六进制查看;Auth查看鉴权;Cookies;Raw原生;JSON;XML;

AutoResponder自动响应器。场景:不能直接修改生产环境,可以使用自动响应器将请求拦截,然后重定向到指定响应中

  • 重定向到本地的资源
  • 使用Fiddler的内置响应
  • 自定义响应

Composer设计者,简单的接口测试工具,也可以说是一个发包工具。场景:简单的功能测试比如,账号的格式不对,登录的请求就不会发送(JS在控制页面),而接口测试可以直接通过修改参数发送请求,所以说接口测试是非常有必要的(通常接口需要进行格式校验)。

Fiddler Orchestra Beta,测试版本不常用。

FiddlerScript对Fiddler进行编程调整。log日志。Timeline。

Filters过滤器,主机的过滤,进程的过滤,请求头的过滤,断点的过滤,响应状态码的过滤,响应的类型和大小的过滤。

功能使用场景

断点

全局断点(所有请求都进行断点)

请求前断点

响应后断点

场景:

  • 把响应的一些数据删除,然后观察界面的展示情况(极端测试)。
  • 模拟网络中断。

局部断点

请求前断点bpu XXX,再次输入bpu结束断点。

请求后断点bpafter。

弱网测试

Rules>Performance>Simulate Modem Speeds

捕获HTTPS流量

https=http+ssl+TLS

设置捕获https流量的操作:

ps:firefox默认是不使用系统代理的,如果想捕获firebox的包(选项>高级>网络>设置>使用系统代理)。另外在firefox上捕获https包需要将fidller的证书导入到浏览器中。

安卓设备抓包(Fiddler设置)

  • 首先本机和手机要在同一个网络下
  • 将安卓代理设置为fiddler,网络>代理>主机名:电脑的ip地址;端口:fiddler监听端口。

抓https的包

  • 在手机浏览器上输入电脑ip地址.端口访问fiddler服务页面下载fiddler根证书
  • 打开设置>更多设置>系统安全>加密与凭据>从存储设备安装

ios设备抓包(Fiddler设置)

  • 确保防火墙允许fiddler进程可以远程连接
  • iso设备和本机在同一个局域网下(确保可以访问Fiddler echo servic 页面)
  • 配置代理

抓https 的包

  • 在手机浏览器上输入电脑ip地址.端口访问fiddler服务页面下载fiddler根证书
  • 安装成功后,在设置里信任该证书

Fiddler插件安装

Add Ons for Telerik Fiddler Web Debugging Proxy fiddler插件网站

willow插件

AutoResponder和hosts功能的加强版

可以以项目的方式管理rules


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值