IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 一文学会 - Fiddler抓包快速实战 -> 正文阅读

[网络协议]一文学会 - Fiddler抓包快速实战

该文档写于 2018年下半年好像,工具的一些模块和细节上可能与最新版的Fiddler 有所出入,毕竟已经不用Fiddler页有段日子了…

一、Fiddler介绍与安装

Fiddler介绍

  1. Fiddler是一款HTTP协议调试代理工具,它能够抓取记录本及所有HTTP(S)请求。

    其运行机制其实就是本机127.0.0.1上监听8888端口的HTTP带理。

  2. Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

  3. 更多介绍见百度百科


在这里插入图片描述


Fiddler下载与安装

  1. 官网地址:http://www.telerik.com/fiddler

  2. 先安装FiddlerXXX.exe

  3. 再安装Fiddlercertmaker.exe (类似安全证书)

  4. 然后就可以启动Fiddler了

  5. 启动之后的界面包括:

    工具栏区、请求列表区、请求详情区、响应详情区、命令行区。


在这里插入图片描述


二、WEB端抓包

初次安装是不可以抓HTTPS的包的

开启/关闭抓包

快捷键:F12
左下角的开关


在这里插入图片描述


初次配置

点击工具栏区 Tools ---> Fiddle Options

选择 Fiddle Options 的 Connections

在 Connections 界面 选择 
	Captrue FTP requests、
	Allow remote computers to connect、
	Reuse client connections、
	Reuse server connections

并输入端口号。
点击“OK”

这样我们就可以捕捉到大部分的请求。


在这里插入图片描述


在这里插入图片描述


验证是否可以正常抓包

启动IE浏览器
输入 www.baidu.com
观察左侧 请求列表区 是否有百度的请求
如果有则证明当前配置是成功的,可以正常抓取数据包了。

Fiddle 抓包,默认使用IE浏览器,是不需要做任何配置的,
假如想使用Firefox之类的浏览器抓包的话,不见得能够抓到,需要在Firefox配置代理。

Filter请求过滤_过滤&筛选页签

使用 Filter 可以帮助我们只显示指定的请求、不显示指定的请求(即Filter请求过滤)

启用Filter


在这里插入图片描述


只显示指定的请求


在这里插入图片描述


只显示内网的Hosts [使用频率较少]


在这里插入图片描述


只显示外网的Hosts [使用频率较少]


在这里插入图片描述


隐藏指定的Hosts

隐藏多个相关Hosts 的情况下,使用英文分号隔开,见下图。


在这里插入图片描述


只显示指定的多个Hosts

显示多个相关Hosts的情况下,使用英文分号隔开,见下图。


在这里插入图片描述


标记过滤到的域名


在这里插入图片描述


过滤指定url的css、js等

  • Hide if URL contains 输入 REGEX:\.(js|css|google|favicon\?.*)+
  • 再点击 Actions,选择 Run Filters now

在这里插入图片描述


查看响应

双击想要查看的请求,在 响应详情区 显示该请求的详细响应情况


在这里插入图片描述


如何抓包HTTPS请求

在菜单项 Toos —> Options —> HTTPS


在这里插入图片描述


勾选 CaptureHTTPS CONNECTs 
勾选Decrypt HTTPS traffic
选择 ...from all processes
勾选 Ignore server certificate errors(unsafe)

在这里插入图片描述


需要注意的是,在安装完Fiddle后,一定再安装Fiddlercertmaker.exe(类似安全证书)

在勾选CaptureHTTPS CONNECTs 、
     Decrypt HTTPS traffic、
     Ignore server certificate errors(unsafe) 时,

弹出两个对话框,直接选择是/yes!

重点:配置完成后,一定要重启Fiddle!
一定要重启Fiddle!一定要重启Fiddle!一定要重启Fiddle!

三、移动app端抓包

前置条件

1、手机与电脑在同一局域网
2、完成fiddler的基本配置,参照WEB端抓包

手机配置代理(以小米8手机为例)

设置 —> WLAN —> 选择wifi —> 点击右边的箭头 —> 代理(选择手动)
—> 主机名(输入电脑IP)—> 端口默认为8888 —> 点击右上角确定

完成上述操作后,Fiddler就可以抓取到手机APP的请求了。

用完之后记得关闭手机的代理设置!否则可能无法上网!

抓取移动APP端https

1、打开手机浏览器输入:http://本机IP地址:8888(端口号根据自己实际设置情况进行输入)
2、在打开的页面中找到FiddlereRoot certificate字样的超级链接,点击即可。

四、模拟低速网络(限速)

为什么要模拟网络限速?

日常我们的网络状况都比较好,有时候经常忽略在低速或者网络不好的情况下系统的页 面表现,而Fiddler就可以帮助我们限速进而达到模拟低速网络的状态。

自定义限速

根据自己的需求做一个限速的设置

点开 Rules ---> Customize Rules,在弹出的页面搜索“Delay sends by 300ms per KB uploaded”

将参数修改需要的值。(单位:毫秒)

代码解读:
	发送数据每 KB 延迟 300 毫秒
	接收数据每 KB 延迟 150 毫秒
	
修改完之后一定要保存 【 CTRL + S 】

在这里插入图片描述


启用限速功能

开启方法:

	Rules ---> Performances ---> Simulate Modem Speeds
	
当 Simulate Modem Speeds 前面出现 “√”,即表示已经启用限速。

不用的时候记得关闭 限速的功能!

图片好像被我改变形了[抱歉]
在这里插入图片描述


在这里插入图片描述


五、如何篡改请求数据

什么是篡改请求数据?

可以理解为针对请求数据的修改,修改完成之后发送至服务器端,然后根据修改之后的 请求数据给出一个响应。

此处以登录51cto为例进行讲解,登录地址为 http://home.51cto.com/index

大致步骤如下:

用IE打开上面的登录页面

然后在Fiddler的命令行中输入 
	dpu http://home.51cto.com/index
	bpu + url :当访问url时,对该url 进行一个拦截,bpu 就相当于一个拦截命令(如果想取消该命令,则在命令行中再次输入bpu 即可)

输入错误的用户名和密码,点击登录

Fiddler能中断这次会话,选择被中断的会话,点击Inspectors下的WebForms,然后修改用户名密码都为正确的,然后点击Run to Completion即可。

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


六、利用auto responder替换源资源

  • 关于Fiddler的AutoResponder 其实就是重定向功能,主要是进行会话的拦截,然后替 换原始资源的功能。

  • 举个例子,某网站上有一个logo,这个时候如果想在不替换logo图片文件的前提下换 一个logo看看效果,那怎么办呢?AutoResponder就可以完成。

  • 使用IE浏览器获取图片属性(需要注意的是 刷新是 使用 CTRL+F5 强制刷新),这样 会重新请求资源。


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


七、利用fiddler快速模拟mock

什么是mock?

可以理解为模拟一整套开发人员实现的逻辑接口
举例:
访问某URL,响应返回一个json串

本地新建一个txt文件,写一个json串


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


八、利用Composer发送自定义请求

Composer组件:小型、迷你型的接口测试工具,比较简易。
功能上不如postman


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


如何避免乱码


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-24 10:58:35  更:2021-09-24 10:58:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:38:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码