首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >2026 抓包测试前,先把 Burp 代理这几步配对

2026 抓包测试前,先把 Burp 代理这几步配对

原创
作者头像
LeoCrawls
发布2026-08-10 16:49:11
发布2026-08-10 16:49:11
250
举报

做接口排查或者 Web 安全测试,很多人第一步就卡在 Burp 代理设置上。

Burp Suite 本身不复杂,真正容易出问题的地方,是浏览器、系统代理、证书、HTTPS 拦截这几块没有串起来。

我这几年帮同事排过不少“Burp 抓不到包”的问题,最后大多不是工具坏了,而是代理路径没走对。

这篇就按我自己平时的配置顺序,把 Burp 代理设置从 0 到可抓 HTTPS 包梳理一遍。只讲授权测试环境,不涉及未授权站点。


先看清 Burp 抓包的基本路径

Burp 抓包不是浏览器“自动把请求送过来”,而是要让浏览器的请求先经过 Burp,再由 Burp 转发到目标网站。

可以先记住这条路径:

代码语言:javascript
复制
浏览器请求
   ↓
本机代理 127.0.0.1:8080
   ↓
Burp Proxy
   ↓
目标网站 / 接口服务器

所以配置的关键点只有三个:

  • Burp 要开一个监听端口;
  • 浏览器要把 HTTP / HTTPS 请求转到这个端口;
  • HTTPS 抓包时,浏览器要信任 Burp 的 CA 证书。

少任何一步,都可能出现“网页打不开”“只抓到 HTTP 抓不到 HTTPS”“Burp 里完全没请求”的情况。


准备工作:确认 Burp 代理监听端口

打开 Burp Suite 后,进入:

代码语言:javascript
复制
Proxy → Proxy settings → Proxy listeners

新版本 Burp 的菜单位置可能和老版本略有不同,但核心入口都是 Proxy 相关设置。

默认情况下,Burp 会有一个监听项:

代码语言:javascript
复制
127.0.0.1:8080

这里可以理解成:Burp 在本机 8080 端口等着浏览器把请求转过来。

如果列表里没有监听项,就手动新增:

代码语言:javascript
复制
Bind to address:127.0.0.1
Bind to port:8080

一般本机浏览器测试,用 127.0.0.1:8080 就够了。 如果你要抓手机、虚拟机或者局域网其他设备的流量,监听地址才需要改成网卡 IP 或 0.0.0.0,这个后面单独说。


图解一:本机浏览器抓包配置关系

代码语言:javascript
复制
┌──────────────┐
│   Chrome     │
│ Firefox      │
│ Edge         │
└──────┬───────┘
       │ 浏览器代理设置为
       │ HTTP/HTTPS:127.0.0.1:8080
       ↓
┌──────────────┐
│  Burp Proxy  │
│  Listener    │
│ 127.0.0.1:8080│
└──────┬───────┘
       │ 转发请求
       ↓
┌──────────────┐
│  目标网站/API │
└──────────────┘

我建议新手第一次配置时,不要同时开系统代理、插件代理、VPN、公司网关代理。 先把路径做简单,确认 Burp 能抓到,再逐个叠加其他网络环境。


Chrome / Edge 浏览器代理设置

Chrome 和 Edge 默认走系统代理。以 Windows 为例,可以这样设置:

代码语言:javascript
复制
设置 → 网络和 Internet → 代理 → 手动设置代理

打开“使用代理服务器”,填:

代码语言:javascript
复制
地址:127.0.0.1
端口:8080

保存后,再回到浏览器访问任意测试站点,比如:

代码语言:javascript
复制
http://example.com

这时 Burp 的 Proxy 里如果打开了拦截,应该能看到请求停在 Intercept 页面。

如果你不想改系统代理,也可以装浏览器代理插件,例如 SwitchyOmega、Proxy SwitchySharp 这类工具,单独给浏览器配置一个代理情景:

代码语言:javascript
复制
代理协议:HTTP
代理服务器:127.0.0.1
代理端口:8080

插件方式的好处是切换快,不容易影响微信、钉钉、下载器这些其他软件。


Firefox 单独代理设置

Firefox 可以不走系统代理,单独配置。路径是:

代码语言:javascript
复制
设置 → 常规 → 网络设置 → 设置

选择“手动配置代理”,填:

代码语言:javascript
复制
HTTP 代理:127.0.0.1
端口:8080
HTTPS 代理:127.0.0.1
端口:8080

下面几个选项要注意:

代码语言:javascript
复制
对所有协议使用此代理服务器:可勾选
不使用代理:localhost, 127.0.0.1

如果你要测试本机服务,比如 http://localhost:3000,而这个地址被“不使用代理”排除了,Burp 可能抓不到。 这时候可以临时清空“不使用代理”列表,或者把测试服务改用本机 IP 访问。


打开 Burp 拦截开关

代理配好后,进入:

代码语言:javascript
复制
Proxy → Intercept

确认按钮是:

代码语言:javascript
复制
Intercept is on

然后浏览器访问一个 HTTP 页面。 如果请求卡住,并且 Burp 里出现了请求内容,说明基本代理路径已经通了。

常见请求长这样:

代码语言:javascript
复制
GET / HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 ...
Accept: text/html,...

如果你只是想观察流量,不想每个请求都手动放行,可以把它切成:

代码语言:javascript
复制
Intercept is off

这样请求会自动通过,但仍然可以在:

代码语言:javascript
复制
Proxy → HTTP history

里看到记录。

我平时排接口问题,大多是先关拦截,看 HTTP history; 只有需要改参数、改 Header、重放请求时,才打开 Intercept。


HTTPS 抓包为什么需要证书

很多人第一次能抓 HTTP,却抓不到 HTTPS,浏览器还报类似错误:

代码语言:javascript
复制
您的连接不是私密连接
NET::ERR_CERT_AUTHORITY_INVALID

这不是 Burp 配错了,而是 HTTPS 本来就会校验证书。 Burp 要看 HTTPS 明文,就需要在浏览器和目标网站之间做一次本地解密。浏览器必须信任 Burp 的 CA 证书,才能继续访问。

简单说就是:

代码语言:javascript
复制
浏览器信任 Burp CA
↓
Burp 才能正常解密 HTTPS 请求
↓
你才能在 Burp 里看到参数、Cookie、Header、响应内容

安装 Burp CA 证书

先确认浏览器代理已经指向 Burp,然后在浏览器访问:

代码语言:javascript
复制
http://burp

如果代理路径正常,会打开 Burp 的证书下载页面。

点击下载 CA 证书,一般文件名类似:

代码语言:javascript
复制
cacert.der

不同系统安装方式不一样。


Windows 安装证书步骤

双击 cacert.der,选择:

代码语言:javascript
复制
安装证书

证书存储位置建议选:

代码语言:javascript
复制
当前用户

接着选择:

代码语言:javascript
复制
将所有的证书都放入下列存储

点“浏览”,选择:

代码语言:javascript
复制
受信任的根证书颁发机构

一路下一步,完成导入。

导入后建议重启浏览器,再访问 HTTPS 测试页面。 如果还是证书报错,先检查是不是浏览器没有走 Burp 代理,或者证书没有导入到“受信任的根证书颁发机构”。


macOS 安装证书步骤

下载证书后,双击打开,会进入“钥匙串访问”。

找到刚导入的 Burp 证书,通常名称和 PortSwigger / Burp 相关。 双击证书,展开“信任”,把:

代码语言:javascript
复制
使用此证书时

改成:

代码语言:javascript
复制
始终信任

保存时系统会要求输入开机密码。

这一步做完后,也建议重启浏览器。 macOS 上我见过最多的问题,是证书导入了,但没有改成“始终信任”,结果 HTTPS 仍然报错。


Firefox 证书要单独导入

Firefox 有自己的证书管理,不一定完全跟系统证书走。

进入:

代码语言:javascript
复制
设置 → 隐私与安全 → 证书 → 查看证书

选择:

代码语言:javascript
复制
证书颁发机构 → 导入

选择刚才下载的 Burp CA 证书,然后勾选:

代码语言:javascript
复制
信任由此证书颁发机构来标识网站

导入完成后,再访问 HTTPS 页面,看 Burp 的 HTTP history 里是否能看到明文请求。


图解二:HTTPS 抓包时证书的作用

代码语言:javascript
复制
没有安装 Burp CA:
​
浏览器 ── HTTPS ──> 目标网站
  │
  └─ 发现中间证书不可信 → 报错
​
安装并信任 Burp CA 后:
​
浏览器
  ↓ 信任 Burp 本地证书
Burp Proxy
  ↓ 与目标网站建立 HTTPS
目标网站

这一步不是“跳过安全校验”,而是在授权测试环境里让浏览器信任你本机的测试代理。 测试结束后,如果不再使用 Burp,可以把证书从系统或浏览器里删除。


手机抓包时怎么配

如果要抓手机 App 或手机浏览器流量,本机 127.0.0.1 就不能用了。

原因很简单: 手机上的 127.0.0.1 指的是手机自己,不是你的电脑。

手机抓包要改成电脑局域网 IP,例如:

代码语言:javascript
复制
电脑 IP:192.168.1.23
Burp 端口:8080

Burp 监听地址也要调整。

进入:

代码语言:javascript
复制
Proxy → Proxy settings → Proxy listeners

把监听地址改成:

代码语言:javascript
复制
All interfaces

或者指定电脑的局域网 IP:

代码语言:javascript
复制
192.168.1.23:8080

手机和电脑要连同一个 Wi-Fi,然后在手机 Wi-Fi 代理里填:

代码语言:javascript
复制
服务器:192.168.1.23
端口:8080

手机浏览器再访问:

代码语言:javascript
复制
http://burp

下载并安装证书。

这里有两个坑:

  • Windows 防火墙可能拦截 8080 端口;
  • Android 高版本 App 不一定信任用户安装证书。

所以手机 App 抓包不如浏览器抓包稳定。 如果只是调试 Web 页面,优先用手机浏览器测;如果是 App,需要结合系统版本、证书策略和 App 自身网络配置判断。


Burp 抓不到包时,先按这张清单排

我自己排问题一般不从 Burp 日志开始,而是先查这几个点。

浏览器代理有没有真的打开

访问:

代码语言:javascript
复制
http://burp

能打开 Burp 页面,说明浏览器请求已经经过 Burp。 打不开,优先查代理设置。

Burp 监听端口是不是 8080

有些人本地 8080 被别的软件占了,就把 Burp 改成了 8081。 但浏览器代理还填 8080,这样肯定抓不到。

Burp 和浏览器必须一致:

代码语言:javascript
复制
Burp:127.0.0.1:8080
浏览器:127.0.0.1:8080

Intercept 是不是拦住了请求

如果网页一直转圈,Burp 里有请求停着,说明不是网络坏了,是拦截开着。 点:

代码语言:javascript
复制
Forward

或者直接切到:

代码语言:javascript
复制
Intercept is off

HTTPS 证书有没有信任

只要 HTTPS 报证书不可信,就回到证书这一步检查。 尤其是 Firefox,要确认是否导入到 Firefox 自己的证书库。

目标地址是否被排除代理

浏览器或系统代理里常见排除项:

代码语言:javascript
复制
localhost
127.0.0.1
*.local

如果你测试的是本地服务,可能刚好被排除。 这时 Burp 没记录,不代表 Burp 配错了。

是否还有 VPN 或其他代理

VPN、公司代理、浏览器插件代理叠在一起时,请求路径会变复杂。 第一次配置 Burp,我建议先关掉其他代理,只保留 Burp。 等 Burp 能稳定抓包,再慢慢加回去。


一个比较稳的测试顺序

如果你是第一次配置,可以按这个顺序走:

代码语言:javascript
复制
1. 打开 Burp,确认 127.0.0.1:8080 正在监听
2. 浏览器代理设置为 127.0.0.1:8080
3. 访问 http://burp,确认能打开
4. 下载 Burp CA 证书
5. 安装并信任证书
6. 打开 HTTPS 测试页面
7. 在 Proxy → HTTP history 里查看请求
8. 需要修改请求时,再打开 Intercept

不要一开始就抓 App、抓小程序、抓复杂登录站。 先用普通网页把代理路径跑通,后面排问题会快很多。


常见问题简表

问题

可能原因

处理方式

Burp 完全没请求

浏览器没走代理

检查浏览器或系统代理

访问网页一直转圈

Intercept 拦住请求

点 Forward 或关闭 Intercept

HTTP 能抓,HTTPS 报错

CA 证书未信任

安装 Burp CA 证书

Firefox 抓不到 HTTPS

Firefox 证书库没导入

在 Firefox 内单独导入证书

手机无法连接 Burp

监听地址只绑了 127.0.0.1

改成 All interfaces 或电脑局域网 IP

手机能连但 App 抓不到

App 不信任用户证书

需要看 Android 版本和 App 配置

本地服务抓不到

localhost 被排除代理

清理“不使用代理”列表


最后说一句

Burp 代理设置看起来是工具问题,实际更像网络路径问题。

我一般不急着改 Burp 里的高级选项,而是先确认三件事:

代码语言:javascript
复制
Burp 有没有监听?
浏览器有没有走代理?
证书有没有被信任?

这三步通了,Web 抓包基本就能跑起来。 后面再谈改包、重放、扫描、鉴权接口测试,才不会在最基础的代理配置上反复绕圈。

测试工具本身没有灰色不灰色,关键是使用边界。 只在自己有授权的系统、接口、环境里做抓包和测试,这是底线。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • 先看清 Burp 抓包的基本路径
  • 准备工作:确认 Burp 代理监听端口
  • 图解一:本机浏览器抓包配置关系
  • Chrome / Edge 浏览器代理设置
  • Firefox 单独代理设置
  • 打开 Burp 拦截开关
  • HTTPS 抓包为什么需要证书
  • 安装 Burp CA 证书
  • Windows 安装证书步骤
  • macOS 安装证书步骤
  • Firefox 证书要单独导入
  • 图解二:HTTPS 抓包时证书的作用
  • 手机抓包时怎么配
  • Burp 抓不到包时,先按这张清单排
    • 浏览器代理有没有真的打开
    • Burp 监听端口是不是 8080
    • Intercept 是不是拦住了请求
    • HTTPS 证书有没有信任
    • 目标地址是否被排除代理
    • 是否还有 VPN 或其他代理
  • 一个比较稳的测试顺序
  • 常见问题简表
  • 最后说一句
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档