Burp Suite 抓包工具实战指南:渗透测试到开发联调的流程、技巧与真机补充方案

190 阅读5分钟

Burp Suite 是安全测试与请求篡改领域的常用利器,但它不仅限于安全人员,开发与运维在排查接口签名、鉴权、重定向或前后端联调时也能从中受益。本文从实战角度说明如何把 Burp 当作日常抓包与调试工具来使用:基础配置、常用模块(Proxy、Repeater、Intruder、Sequencer)、结合其他抓包工具的分工,以及在移动真机或 SSL Pinning 场景下的补救流程(如使用 抓包大师(Sniffmaster))。全文着眼于工程化流程与可复用步骤,便于团队直接应用。

一、为什么在工程场景选择 Burp

Burp 的长处在于请求拦截、修改、链路回放与自动化攻击模块,适合用于:

  • 快速观察并修改 HTTP/HTTPS 请求与响应(Proxy + Intercept)。
  • 手动调试接口逻辑与签名(Repeater)。
  • 模拟异常输入或并发攻击场景(Intruder)。
  • 统计随机性的熵弱点(Sequencer)。 对于开发者,Burp 可作为“带有可视化篡改与脚本化能力的代理”,在接口联调、回放问题请求、或验证修复后回归测试时非常方便。

二、常用配置与实战技巧

  1. 代理与证书:在 Burp Proxy 启用监听端口(默认 127.0.0.1:8080),在测试客户端/浏览器上配置 HTTP(S) 代理并安装 Burp 的 CA 证书以完成 HTTPS 解密。
  2. Target 与 scope 管理:把要调试的域名加入 Scope,避免抓到无关站点流量。
  3. Intercept + Repeater 工作流:用 Intercept 捕获有问题的请求,先在 Repeater 中验证修改逻辑,再用 Sequencer 或 Intruder 做批量或熵分析。
  4. 使用 Extensions:Burp 支持 BApp Store 插件,例如参数发现、自动化签名脚本(可编写与导入)等,能把重复步骤脚本化。
  5. 日志与流量导出:导出请求会话(.burp 或 HAR),便于与后端日志对照或共享给同事。

三、与其他工具的分工与组合

  • Burp + Wireshark:当怀疑底层网络问题(TCP 重传、TLS 握手失败)时,在 Burp 无法看到明文或请求无法到达服务器时,使用 tcpdump/Wireshark 做低层抓包对比,定位到底是网络层还是应用层导致故障。
  • Burp + mitmproxy/Charles:在做自动化脚本或 CI 场景,mitmproxy 的脚本化优势明显;在日常联调中 Charles 的 UI 更轻量。Burp 则擅长安全测试与复杂篡改。三者组合可以覆盖绝大多数场景。
  • Burp + Replayer/CI:重放关键请求到 CI 环境做回归,验证修复;可把 Burp 导出的请求转成 curl 或 Python 脚本。

四、遇到 SSL Pinning / 移动真机问题的补救策略

很多 iOS/Android 应用会启用证书 Pinning 或在网络层有双向认证,导致即便在本地配置代理也无法解密或截取到明文请求。建议按顺序排查与取证:

  1. 验证浏览器与 App 差异:先在移动浏览器访问同一接口,确认证书链与响应;若浏览器可正常代理而 App 不行,说明 App 做了 Pinning 或使用独立 TLS 栈。
  2. 测试构建与日志:在可改构建中临时禁用 Pinning 或启用调试日志,快速验证问题是否由 Pinning 导致。
  3. 设备侧底层抓包作为证据:当无法修改 App 或禁用 Pinning 时,桌面代理无法获得明文,此时需要设备端的原始包证据以查明握手细节。把设备侧的 pcap 与服务器端抓包进行对比,是判断问题是否为证书链、SNI、不匹配的最直接方法。抓包大师(Sniffmaster) 可在这类场景中通过 USB 直连 iOS/Android 设备,按 App 精准抓取流量并导出 pcap,无需越狱或安装代理 CA。团队在合规授权下把设备侧 pcap 与 Burp 的会话记录、服务端日志综合分析,通常能迅速定位是 Pinning、证书链不完整、还是网络中间人替换证书。

五、实战排查示例(接口鉴权异常)

场景:某 App 在生产出现 401 签名错误,但桌面复现正常。排查流程:

  1. 在桌面用 Burp 捕获并保存正常请求(headers、body、signature)。
  2. 尝试在 Burp 的 Repeater 中重放该请求到生产,确认服务端接收并返回 200。
  3. 在设备上复现并用设备侧抓包(Sniffmaster)导出 pcap,查设备发出的 ClientHello、SNI 与请求序列。
  4. 对比设备侧请求与桌面请求的差异(时间、nonce、签名或 header 顺序),若签名字段不同,回溯客户端签名逻辑;若 TLS 握手被中断或证书不同,和运维核对证书链与边缘节点配置。
  5. 修复后在 Burp 重放并在设备上回归验证。

六、合规与安全注意事项

Burp 可以查看并修改敏感请求(含 token、密码、个人信息)。在生产环境抓包、导出会话或在设备上采集 pcap 前,必须遵循公司的合规流程:最小授权、脱敏存储、审计日志与访问控制。设备侧抓包尤其涉及用户数据,务必事先取得用户或产品方授权。

七、团队落地建议(工程化)

  • 建议把 Burp 的常用工作流(Proxy→Repeater→Intruder)写成团队手册,并为常见接口制作模板(预置 headers、常用 payload)。
  • 在 CI 中用 mitmproxy 或脚本化 Burp API 做回归测试,把关键请求自动化重放并比对返回。
  • 把设备侧抓包(如用 Sniffmaster 导出的 pcap)纳入“最后确认”工具链,作为无法通过代理解密时的证据来源。
  • 所有抓包文件与 pcap 都应按项目归档并限制访问,以满足合规要求。