一、Burp Suite介绍
(一)基本介绍
Burp Suite 是 PortSwigger 公司开发的全球最流行的 Web 应用安全测试工具集,被誉为 Web 渗透测试的"瑞士军刀"。
Burp Suite 以中间人代理模式运行,部署在浏览器与目标 Web 服务器之间,能够拦截、分析、修改所有 HTTP/HTTPS 和 WebSocket 流量。其核心优势在于:
工具无缝集成:各个功能模块之间可以轻松传递请求,实现从信息收集到漏洞利用的全流程覆盖。
高度可扩展:通过 BApp Store 提供超过 300 个第三方插件,支持 Java、Python、Ruby 编写自定义扩展。
持续更新:由 PortSwigger 专业研究团队维护,每次发布前融入最新的研究成果。
(二)核心功能
- Proxy(代理)- 核心入口:Proxy 是所有流量的"中转站",是整个工具链的基础。
功能:
拦截并记录浏览器与服务器之间的所有 HTTP/S 请求和响应
开启 Intercept(拦截) 后,每个请求都可以在发送前被手动检查和修改
提供内置 Chromium 浏览器(Burp Browser),自动配置代理,开箱即用
使用场景:抓包分析、手动测试、理解应用程序的请求/响应结构
- Repeater(重放器):Repeater 允许修改并反复发送同一个 HTTP 请求。
功能:
从 Proxy 历史或拦截请求中直接发送到 Repeater
任意修改请求参数、头部、Cookie 等内容
点击 Send(发送) 即可查看服务器响应,支持多次重放
响应中的选中文本可自动在 Inspector(检查器) 中解码(URL、Base64、HTML 等)
使用场景:手工验证漏洞(SQL注入、XSS)、参数篡改测试、越权测试
- Intruder(爆破器):Intruder 是一个自动化攻击工具,用于对 Web 应用进行定制化攻击。
功能:
在请求中标记需要爆破的参数位置(Add §)
支持多种攻击模式
通过不同的 Payload(有效载荷/字典) 反复发送请求
对响应结果进行排序、筛选、分析
限制:社区版 Intruder 功能受限,Payload 只能手动添加,攻击速度较慢
使用场景:暴力破解密码、用户名枚举、Fuzz 测试、参数值探测
- Scanner(扫描器)- 仅专业版/企业版:Scanner 是自动化的 Web 漏洞扫描器,能够发现 SQL 注入、XSS、文件包含等常见漏洞。
功能:
自动爬取目标应用,绘制站点地图(Site Map)
主动发送构造的攻击请求,分析响应
支持认证扫描,可登录后扫描受保护区域
可自定义扫描范围和审计方式
使用场景:快速发现常见漏洞、上线前安全评估
- Sequencer(序列器):Sequencer 用于分析令牌(Token)的随机性和可预测性。
功能:
捕获大量会话令牌、CSRF Token、密码重置令牌样本
分析有效熵(Effective Entropy)、可靠性等统计指标
提供字符级别和位级别的分析
使用场景:测试会话管理安全性、Token 可预测性评估
- Comparer(比较器):Comparer 用于比较两个数据项之间的差异。
功能:
可比较请求、响应或任意文本
可视化差异对比(类似 diff 工具),标出删除、新增、修改的内容
使用场景:对比不同输入的服务器响应、分析漏洞触发条件
- Decoder(解码器):Decoder 是一个编解码工具。
功能:
支持 URL 编码、Base64、十六进制、HTML 编码等多种格式
可对数据进行编码或解码
在 Repeater 中可快速查看选中文本的解码结果
使用场景:解码捕获的数据、对 Payload 进行编码
- Extender(扩展器):Extender 允许加载第三方插件来扩展 Burp Suite 的功能。
功能:
通过 BApp Store 安装社区开发的扩展
支持 Java、Python、Ruby 编写的自定义插件
可注册自定义命令到命令面板
使用场景:增加专属功能、集成其他工具、自动化特定任务
- 其他重要功能

(三)各版本比较

二、下载安装
从官网 https://portswigger.net/burp/communitydownload 下载对应系统的安装包。
Windows: 直接运行 .exe 文件;macOS: 将 .dmg 拖入 Applications;Linux: 运行 .sh 脚本。
注意:Burp Suite 依赖 Java 运行环境,需提前安装 JDK 8 或更高版本。
启动后选择 Temporary Project(临时项目)即可免费使用基础功能,社区版不支持保存项目文件。启动后界面如下,点击Next-Start Burp:

二、代理配置
Burp Suite 的核心是作为代理拦截浏览器与服务器之间的流量,首先介绍配置代理:
(一)配置浏览器代理
打开 Proxy → Options,确认默认监听地址为 127.0.0.1:8080,配置浏览器代理(以 Chrome 为例):
-
安装 SwitchyOmega 插件;
-
新建情景模式,设置 HTTP 代理为 127.0.0.1,端口 8080;
-
访问 http://burp 测试连通性,能打开说明配置成功。
(二)使用内置浏览器。
直接在 Burp 中点击 Proxy → Intercept → Open Browser,会自动启动一个已配置好代理的 Chromium 浏览器,开箱即用。

(三)HTTPS 证书配置
抓取 HTTPS 流量时需要安装证书:
配置好代理后,浏览器访问 http://burp。
点击右上角 CA Certificate 下载证书。
在浏览器证书管理器中导入该证书并勾选"信任此 CA 来标识网站"。

三、完整暴力破解步骤
(一)抓取登录请求
关闭拦截(Intercept is off),避免干扰
在浏览器中随便输入一个用户名和密码,比如:
用户名:testuser
密码:testuser
点击登录按钮
回到 Burp Suite → Proxy → HTTP history,找到刚才的登录请求,如下图:


(二)发送到 Intruder
在 HTTP history 中右键点击该请求
选择 Send to Intruder(或按 Ctrl + I)
切换到 Intruder 标签页
(三)配置攻击位置(Positions)
-
清除默认标记:点击右侧的 Clear § 按钮
-
标记用户名参数:
选中 username= 后面的值(比如 testuser)
点击 Add § 按钮,变成 username=§testuser§
标记密码参数:
选中 password= 后面的值(比如 testuser)
点击 Add § 按钮,变成 password=§testuser§

- 攻击类型选择:
如果你知道用户名(比如目标就是 admin),选择 Sniper(狙击手)模式
如果用户名和密码都不知道,需要同时枚举,选择 Pitchfork 或 Cluster bomb

(四)准备字典(Payloads)
Cluster bomb 模式(同时枚举用户名和密码)
Pitchfork:需要用户名和密码字典行数相同,一一对应
Cluster bomb:排列组合(用户名数 × 密码数),社区版较慢,我们学习或简单爆破够了。
配置方法:
在 Payloads 页面,Payload set 选择 1(用户名)
添加用户名字典(如 admin, root, user, test)
点击 Add 增加 Payload set,选择 2(密码)
添加密码字典


(五)开始攻击
点击右上角的 Start Attack 按钮
会弹出攻击结果窗口,自动发送所有请求
等待攻击完成(社区版速度较慢,耐心等待)

(六)分析结果
攻击完成后,重点观察以下列:
