Fiddler抓包工具-全网最全教程,没有之一

初识Fiddler

fiddler,译为骗子
是位于客户端、服务器端的HTTP代理,是Web调试的利器。
是c#编写的程序

Fiddler主要功能:

  • 监控http、https流量
  • 查看、分析请求内容细节
  • 伪造客户端请求和服务器响应
  • 简单测试网站的性能
  • 解密https的web会话
  • 全局、局部断点功能
  • 可使用第三方插件

Fiddler使用场景:

  • 接口调试
  • 接口测试
  • 线上环境调试
  • web性能分析
  • 判断前后端bug
  • 开发环境hosts配置
  • mock
  • 弱网、断网测试

要使用好Fiddler,需要熟悉http协议相关知识,Fiddler与http是相辅相成的关系。

BS架构

HTTP协议

请求报文

请求行
请求方法

统一资源定位符url,用于描述网上的资源

http协议版本,一般是1.1

请求头
可以是任意内容,又开发自定义,了解常见的请求头

空一行

请求体
不一定会有,get请求是没有请求体

响应报文

响应行

响应头
可由开发自定义

空一行

响应体
文本、xml、html

fiddler菜单栏

File

导入导出会话

Edit

编辑

Rules

过滤会话

Tools

View

视图

Help

帮助

fiddler工具条

备注

重放replay

r
shift+r

删除会话

delete

移除请求

ctrl+x

go 断点

让请求在某个地方停下来
全局断点
请求前断点,在发送到服务器前暂停

流模式

相对于缓冲模式而言,缓冲模式是全部数据回来后,fiddler再返回给客户端,流模式是回来多少返回多少
默认是缓冲模式

解码decode

对所有请求解码

保持会话数量 keep session

会话是会占用内存

选择监听程序 any process

选择监听应用

查找 find

ctrl+f
如快速查找会话中出现的字段,快速定位请求

保存 save

保存所有会话

截图

计时器

browse

快捷打开浏览器

清除缓存 clear cache

文本编码、解码 textwizard

tearoff

分离面板

MSDN

微软开发者网站搜索

online

展示本机的一些信息

fiddler会话列表(监控面版)

展示http的每一条会话
result,响应状态码
protocal
host
url
body,请求体大小
caching
content-type
process,进程
comments
custom

添加列
如fiddler添加ip列
修改配置文件,之后重启

排序

fiddler命令行、状态栏

quickexec

通过命令实现一些功能
如bpu
输入help,可以跳转:https://docs.telerik.com/fiddler/knowledgebase/quickexec

快速停止捕获

快速选择进程

快速断点

fiddler辅助标签、工具

统计性能信息 statistics

前端人员可以看这些数据分析

检查器 inspectors

以不同形式展示请求报文、响应报文,分类展示请求报文、响应报文

自动响应器 autoresponder


选中或者直接拖动
可用于拦截某一请求,进行如下操作:

  • 重定向到本地资源

  • 使用fiddler内置响应

  • 自定义响应

如生产环境除了问题,不能够直接在生产环境进行调试,重定向到本地
进行钓鱼操作
可以做mock,如测试的接口还没有完全开发好,可以模拟返回响应

可以进行极端测试,如查询接口没有数据返回,看页面怎么展示,或者返回大量数据
可以做接口调试

composer 设计请求报文


抓包后,直接拖动过来
可以用来发包,如可以绕过前端控制测试后端接口,如前端控制手机号码不能输入格式不对的号码,直接修改请求报文发包测试,看后端是不是校验了

log

日志

过滤器 fiters

多维度组合过滤,过滤出我想要的内容

  • hosts主机的过滤
    如指定抓取网站

  • client process过滤 客户端进程、

  • request headers过滤

  • breakpoint过滤

  • 根据响应码过滤

  • 根据响应报文内容的类型、大小过滤

  • 根据响应报文头进行过滤

断点

全局断点

对所有的请求都有用
请求前断点,修改请求报文后发给服务器
响应后断点,修改响应报文后返回给客户端。可以不用修改数据库的中的数据,做一些极端测试,如数据库有数据,你先模拟返回没有一条数据。可以模拟网络中断的情形,测试客户端的超时机制

局部断点

通过命令实现
bpu 请求前断点

bpafter 响应后断点

弱网测试


可以在配置文件中修改时间,修改后重启fiddler,再启用弱网

https抓包

安装证书

这是提示了自动响应设置没有设置好

重启浏览器

chrome、ie是读取系统代理

firefox浏览器

firefox浏览器是自己管理代理,需要人工设置

firefox浏览器手工导入证书,才能抓取https的包

导入证书,之后重启浏览器

app抓包

抓取ios设备app的包

手机抓取http包,需要安装证书。但是即使按照了证书,不一定能抓到包,因为手机系统和app的各种限制,可能也抓不到包。

抓取android设备app的包

手机抓取http包,需要安装证书。但是即使按照了证书,不一定能抓到包,因为手机系统和app的各种限制,可能也抓不到包。

fiddler插件

willow插件
以项目方式管理host规则

练习环境:http://test.lemonban.com/ningmengban/app/login/login.html

posted @ 2020-11-08 21:54  捷后愚生  阅读(1127)  评论(0编辑  收藏  举报