Fiddler 抓包教程

Fiddler 抓包教程

一、下载及安装

1.下载

Fiddler 下载地址:https://www.telerik.com/download/fiddler

2.安装

在这里插入图片描述

二、PC 端抓包

1.抓取 HTTP 协议

打开 Fiddler 工具,打开任意一个浏览器,输入想要抓取的网址。如:www.baidu.com

查看会话列表,选择其中一个会话,查看请求信息中 Inspectors,查看详细数据

在这里插入图片描述

2.解析 HTTPS 加密请求

在这里插入图片描述

如上图所示,请求左边是一个锁的样式,右边返回内容中提示了"This is a CONNECT tunnel, through which encrypted HTTPS traffic flows"

需要配置 Fiddle 来解析这些加密的请求,根据第二行那句"enable the Tools > Options > HTTPS > Decrypt HTTPS traffic option."

步骤:

  1. Tools -> Options -> HTTPS -> 勾选 Decrypt HTTPS traffic
  2. 点击 Actions -> Trust Root Certificate -> 选择 Yes

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

三、移动端抓包

Fiddler 配置连接信息

Tools -> Options -> Connections,设置代理端口 8888,勾选 Allow remote computers to connect,点击 ok

在这里插入图片描述

Fiddler 中就可以看到本机的无线网卡 IP 了,也可以 cmd -> ipconfig 查看

在这里插入图片描述

要通过 Fiddler 对手机抓包,需要保证 Fiddler 所在的电脑和手机必须处在同一个局域网内,即连着同一个路由器

步骤

  1. PC 端打开热点
  2. 手机连接 PC 端热点
  3. 配置代理 手动 -> 服务器:<电脑ip> -> 端口:8888
  4. 浏览器访问:<电脑ip>:8888
  5. 下载并安装证书
  6. 证书安装完成后,用手机访问应用时,就可以看到抓取到的数据包了

在这里插入图片描述

在这里插入图片描述

四、其它

1.筛选

点击右侧 Filters -> 勾选 Use Filters

在这里插入图片描述

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:标记下边输入的要过来的主机名的请求,黑色粗体标记

筛选指定主机名:

  1. -No Host Filter- 选择 Show only the following Hosts
  2. 输入框输入要筛选的主机名:如 www.baidu.com,多个 Host 时用分号分隔,输入框为黄色代表未保存
  3. Actions -> Run Filterset now:马上执行过滤

在这里插入图片描述

其他过滤方法

在这里插入图片描述

2.展示接口的响应时间

2.1 直接点击接口查看接口响应时间

在这里插入图片描述

2.2 新增一列展示接口响应时间

Rules -> Customize Rules… -> 搜索:class Handlers

在类里增加以下方法:

// 显示每行请求的服务端耗时时间
public static BindUIColumn("Time Taken", 80)
function CalcTimingCol(oS: Session){
  var sResult = "0";
  if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest)) {
    sResult = (oS.Timers.ServerDoneResponse - oS.Timers.ClientDoneRequest).TotalMilliseconds.ToString("N0");
  }
  return sResult + "ms";
}

在这里插入图片描述

保存,重新打开 fiddler 就能看到每个请求的耗时了。单位毫秒

在这里插入图片描述

更多方法

// 显示每行请求的发起时间:时分秒毫秒
public static BindUIColumn("BeginTime", 80)
function BeginTimingCol(oS: Session) {
  return oS.Timers.ClientDoneRequest.ToString("HH:mm:ss.fff");
}

// 显示每行请求的响应时间:时分秒毫秒
public static BindUIColumn("EndTime", 80)
function EndTimingCol(oS: Session) {
  return oS.Timers.ServerDoneResponse.ToString("HH:mm:ss.fff");
}

// 显示每行请求的服务器IP
public static BindUIColumn("ServerIP", 80)
function xxxdColumn(oS: Session): String {
  return oS["X-HostIP"];
}

3.http 请求的 host 参数值为 Tunnel to

fiddler 做代理转发 https 请求时,就会产生:CONNECT Tunnels,可以不管它。

在这里插入图片描述

4.开启 Fiddler 后 Postman 无法发起请求

关闭 SSL 设置Settings -> General -> 关闭:SSL certificate verification

在这里插入图片描述

5.图标含义

官方文档
在这里插入图片描述

<think>我们正在回答用户关于Fiddler抓包工具的使用问题。用户询问“如何使用Fiddler抓包”或“Fiddler抓包教程”。根据引用内容,我们可以总结出Fiddler抓包的基本步骤,特别是针对HTTPS流量的抓取,因为这是Fiddler配置的关键点。步骤概述:1.安装Fiddler。2.配置Fiddler以解密HTTPS流量(安装证书并设置)。3.配置设备(如手机)的代理,使其通过Fiddler代理进行网络连接。4.开始抓包分析。我们将按照这些步骤详细说明,并注意引用中的关键点。注意:引用[1]提到,Fiddler默认只能抓HTTP包,抓HTTPS包需要额外配置(安装证书并设置DecryptHTTPStraffic)。引用[4]也提到,Fiddler使用自己的根证书来解密HTTPS流量,需要用户安装Fiddler根证书。另外,引用[2]提到了如何配置CustomRules.js文件来模拟低速网络(但用户当前问题可能不需要,但可以提及作为高级功能)。引用[3]则提供了PC端和移动端抓包的步骤。因此,我们将分为PC端抓包和移动端抓包两部分。由于用户没有明确指定设备,我们同时涵盖两者。由于用户要求使用中文,并且按照系统级指令,我们将使用正确的LaTeX格式(但本问题中数学公式较少,可能涉及较少)。回答结构:1.Fiddler的安装2.配置Fiddler抓取HTTPS流量3.PC端抓包步骤4.移动端抓包步骤5.常见问题与高级设置最后,根据指令,我们还需要生成相关问题。开始回答:</think>### Fiddler 抓包操作指南 #### 一、基础环境配置 1. **安装 Fiddler** - 从官网下载安装包,完成基础安装(引用[3]) 2. **启用 HTTPS 抓包**(关键步骤) - 打开菜单:`Tools > Options > HTTPS` - 勾选 **Decrypt HTTPS traffic**(引用[1][4]) - 点击 `Actions > Trust Root Certificate` 安装信任证书 *(首次使用时需手动信任证书,否则无法解析加密内容)* 3. **设置代理端口** - 在 `Connections` 选项卡中: - 设置监听端口(默认 8888) - 勾选 **Allow remote computers to connect**(用于移动端抓包) #### 二、PC 端抓包步骤 1. 启动 Fiddler,浏览器访问目标网站 2. 所有 HTTP/HTTPS 请求将自动显示在会话列表 3. 点击会话可查看: - 请求头/响应头(`Inspectors > Headers`) - 请求内容(`Inspectors > WebForms`) - 响应时间(引用[3]) #### 三、移动端抓包步骤 1. **手机配置代理** - 确保手机与电脑在同一局域网 - 在手机 WiFi 设置中: - 代理选择 **手动** - 服务器:输入电脑 IP 地址(cmd 输入 `ipconfig` 获取) - 端口:8888(或 Fiddler 设置的自定义端口) 2. **安装 Fiddler 证书** - 手机浏览器访问:`http://<电脑IP>:8888` - 下载并安装 **FiddlerRoot certificate** - *注:iOS 需在`设置 > 通用 > 关于 > 证书信任设置`中启用* 3. **抓包分析** - 操作手机 App/网页 - Fiddler 将实时显示所有网络请求 - 使用过滤器(`Filters`)筛选特定域名(引用[3]) #### 四、常见问题解决 - **抓包内容乱码**: 检查是否启用 HTTPS 解密(引用[1]),确保证书已安装 - **Postman 无法连接**: 关闭 Fiddler 或配置 Postman 忽略代理(引用[3]) - **图标含义**: - 锁图标:HTTPS 请求 - 箭头图标:请求/响应方向(引用[3]) - **`Tunnel to` 提示**: 表示 HTTPS 隧道连接,属正常现象(引用[3]) #### 五、高级功能 - **限速测试**: 修改 `CustomRules.js` 中的 `m_SimulateModem` 值(引用[2]) - **断点调试**: 使用 `Rules > Automatic Breakpoints` 拦截请求 - **流量重放**: 右键会话选择 `Replay > Reissue` 重新发送请求 > **操作提示**:首次使用 HTTPS 抓包时,务必完成证书安装(引用[4]),否则无法解析加密内容。Windows 系统可能需重启 Fiddler 使配置生效。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值