本文目录导读:

Burp Suite 是Web安全测试领域最常用的集成平台之一,主要用于拦截、修改、重放、自动化测试HTTP/HTTPS请求和响应,如果你是初学者,可以按以下步骤从零开始上手:
第一步:准备工作
- 下载与安装
- 社区版:免费,功能已足够入门(下载地址:portswigger.net)。
- 专业版:付费,增加扫描器、节省时间(学习阶段通常用社区版即可)。
- 配置Java环境:Burp Suite基于Java,需要确保系统安装了JRE或JDK(建议Java 11以上)。
- 启动:双击运行,创建一个临时项目(点击
Next,Start Burp)。
第二步:配置浏览器代理(最关键的一步)
Burp通过代理拦截你的浏览器流量,你需要将浏览器的数据先发给Burp,Burp处理后再转发给服务器。
推荐使用:专门为测试准备的浏览器(如Firefox Developer Edition)或chrome,配合插件(FoxyProxy) 快速切换代理。
- 设置Burp代理监听:
- 点击
Proxy标签 ->Settings(齿轮图标)。 - 确保
0.0.1:8080处于监听状态(默认已开启)。
- 点击
- 设置浏览器代理:
- 手动设置:浏览器设置 -> 搜索“代理” -> 手动设置代理,HTTP代理设为
0.0.1,端口8080。 - 使用插件(推荐):安装 FoxyProxy(如Firefox/Chrome扩展),新建一个配置,填入
0.0.1:8080,设置一个图标颜色,使用时点击切换即可开启/关闭代理。
- 手动设置:浏览器设置 -> 搜索“代理” -> 手动设置代理,HTTP代理设为
- 安装CA证书(抓取HTTPS流量的关键):
- 浏览器通过代理访问
http://burp。 - 点击页面上的
CA Certificate下载证书文件。 - 在浏览器设置中导入该证书(通常导入到“受信任的根证书颁发机构”)。这一步不做,只能抓HTTP,抓不到HTTPS(显示乱码或无法连接)。
- 浏览器通过代理访问
第三步:核心模块使用流程
Burp工作流通常是:拦截 -> 查看/修改 -> 放行 -> 重放/扫描 -> 对比分析。
以下是几个最常用的标签页:
Proxy (代理)
这是最常用的模块,用于查看和修改数据。
- Intercept (拦截开关):默认开启,开启后,浏览器发出的每个请求都会卡在Burp这里,你可以修改请求头、Cookie、参数等。
- Action (右键操作):在拦截到的请求上右键,可以发送到其他模块(如Repeater、Intruder)。
- Forward / Drop:
Forward放行当前请求;Drop丢弃请求。 - HTTP History:你所有请求的历史记录,可以过滤查看JS、图片、API等。
Repeater (重放器)
用于手动修改并反复发送请求,观察服务器返回的变化(常用于测试逻辑漏洞、权限绕过)。
- 用法:从Proxy History中右键一个请求 ->
Send to Repeater。 - 操作:在Repeater标签页中,修改参数(比如ID、金额),点击
Send。 - 对比:多次发送后,可以选中两个响应,右键选
Send to Comparer对比差异。
Intruder (暴力破解/模糊测试)
用于自动化批量发送不同参数(如密码字典、遍历ID)。
- 用法:右键请求 ->
Send to Intruder。 - 步骤:
- Positions:标记要测试的参数位置(例如在
password=§123§处添加§符号)。 - Payloads:加载字典(如密码列表文件)。
- 启动:点击右上角
Start attack。
- 注意:社区版速度较慢(有延迟限制),但功能完整。
- Positions:标记要测试的参数位置(例如在
Target (目标)
用于站点地图,当你浏览网站时,Burp会自动构建一个树状站点结构,你可以在这里查看哪些目录、参数被访问过。
Decoder (编码解码)
快速进行URL解码、Base64、Hex转换,当遇到乱码参数时,直接复制到这里解码。
一个完整的小练习(Webgoat / DVWA 本地靶机)
建议你找一个本地靶机网站(如 DVWA 或 WebGoat 中SQL注入关卡)。
步骤演示(SQL注入):
- 开启Burp代理。
- 浏览器访问靶机,在登录框输入
' OR 1=1 --等测试数据。 - 打开Burp的
Proxy -> Intercept,你会看到请求卡住了。 - 查看请求参数(如
username=admin&password=123)。 - 尝试修改参数值(比如改成
username=admin'--),然后点击Forward放行。 - 查看浏览器返回结果是否绕过登录。
- 如果没成功,将此请求
右键 -> Send to Repeater,在Repeater里慢慢调整参数并观察响应内容。
常见问题与注意事项
- 打开Burp后网页打不开?
- 检查浏览器的代理是否是
0.0.1:8080。 - 检查Burp左下角是否有报错(如端口被占用)。
- 最快捷的办法:安装FoxyProxy,平时保持关闭,调试时一键开启。
- 检查浏览器的代理是否是
- 抓到了但全是乱码(HTTPS证书没装)?
- 重新安装Burp证书(参考第二步)。
- 某些浏览器(如Chrome最新版)对本地代理证书限制严格,可以考虑用Firefox做测试浏览器。
- 不要在实际未知网站或法律禁止的网站上进行测试,仅用于自己搭建的靶机、CTF、或得到授权的渗透测试。
- 速查快捷键:
Ctrl+R:快速发送到Repeater。Ctrl+I:快速发送到Intruder。Ctrl+F:在History/Repeater中搜索关键字。
进阶学习路径
- 学习扩展(BApp Store):Burp支持插件,比如常见的
Logger++(查看请求细节)或JSON Beautifier。 - 学习Extender:学会如何用Python/Java写自定义插件。
- 配合自动化:学习使用
Burp Collaborator配合盲打漏洞(如SSRF),以及如何用Burp APIs对接curl或其他工具链。
总结一句话:代理抓包(Proxy)+ 重放测试(Repeater)+ 批量测试(Intruder)是日常使用最顺手的三个功能,先把这三个练熟,就能搞定大多数web测试和除了一些带验证码/动态token的复杂场景。