首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >自学渗透测试01:使用 Burp Suite Proxy 模块进行 HTTP 流量拦截与分析

自学渗透测试01:使用 Burp Suite Proxy 模块进行 HTTP 流量拦截与分析

原创
作者头像
叫我阿柒啊
发布2025-07-01 16:46:28
发布2025-07-01 16:46:28
1.5K0
举报

前言

前几天去找朋友玩,正好碰到他们在做攻防演练,看到他们在渗透测试找弱口令的时候,使用了几款工具,于是我就偷偷记了下来。其中有一个叫做Burp Suite的工具,我觉得功能还挺强大的,所以今天就一边学习,一边用这篇博客记录。

burp

portswigger官网下载Burp Suite,可以选择社区版(community),也可以选择专业版(professional)。我安装的是Burp Suite Professional,安装成功之后,创建一个Project。

然后点击Next,选择使用默认配置会后,就进入到Burp首页。

首页左上的第一个卡片 Getting started with Burp Suite,点击 Start here 就可以进入教程网站。

本文将以 Burp Suite Professional 版本为例,重点介绍 Proxy 模块的使用方法、常见按钮功能。

Proxy

教程中Intercepting HTTP traffic对应的就是 Proxy 模块,其主要作用包括:

  • 拦截客户端请求(浏览器、App)
  • 修改请求/响应内容
  • 记录历史流量
  • 搭配其他模块分析漏洞(如 Repeater、Intruder)

Proxy 页面主要由以下几个子模块构成:

  • Intercept
  • HTTP History
  • WebSockets History
  • Options

我们首先查看Intercept的功能。

1. Intercept

我们点击 Intercept is on, 打开拦截所有浏览器请求。

proxy 中使用的 8080 作为代理端口,如果端口占用可以在 Proxy settings 中进行修改。

点击 Open browser 打开内置的chromium浏览器引擎。

我们在打开的浏览器中,输入腾讯云开发者社区的链接,这时候我们发现浏览器就会一直转圈,就类似于在前端debugger的时候遇到的断点一样,其实这就是请求被拦截了。

而在burp的页面,我们就看到被拦截的请求,在这个页面,我们主要关注下面这几个功能。

按钮

功能描述

Forward

将当前请求发送至目标服务器,常用于“放行”操作。

Drop

丢弃当前请求,不再继续发出。

Action

右键弹出,提供发送到 Repeater、Intruder、保存等操作。

Raw / Hex / Headers / Params / JSON

多种视图切换方式,便于观察和修改请求。

我们选中被拦截的腾讯云开发者社区请求,点击 Forward,请求就被放行了。

如上图所示,在请求被放行之后,整个页面调用的一些异步接口也执行并展示了出来。

2. HTTP History

HTTP History 模块记录了所有经过 Burp 的 HTTP 请求和响应,无论是否拦截、修改,都会保留下来。就像一个 HTTP 流量黑匣子,可以回溯查看任意请求,快速复现问题、定位漏洞、筛选测试对象。

在这个页面,我们可以看到请求常见的信息:

字段名

含义

Host

请求的目标主机

Method

请求方式(GET/POST/PUT 等)

URL

请求路径

Status

响应状态码(200/403/500 等)

Length

响应体大小

MIME type

响应类型(HTML、JSON、JS 等)

IP

请求所连接的服务器 IP

在,我们可以通过状态码筛选非 200 请求、查看是否出现敏感信息(如 JWT、Token),以及右键 → Send to Comparer 来对比漏洞触发前后的差异等。

3. WebSockets History

WebSockets History 模块是为 WebSocket 协议而设计的,WebSocket 用于实现实时聊天、股票推送、多人协作等功能,WebSockets 不走传统 HTTP,Proxy 的 Intercept 无法捕获,必须在此模块分析。

其核心能力:

  • 捕获 WebSocket 握手
  • 显示通信消息内容(JSON、二进制等)
  • 区分客户端和服务器的数据
  • 支持消息重发、修改

这个在这里就不演示了,有兴趣的小伙伴可以自己尝试一下。

4. Match and Replace

Match and Replace 模块通过可以定义规则,让 Burp 在请求/响应经过它时,自动对内容进行查找替换,无需手动修改每一条数据,特别适合批量替换 Cookie、Token、Header 等内容。

如图,我们可以对规则进行添加、编辑、删除以及优先级调整,通过选中 Enabled 来激活规则,每个规则主要四个字段。

  1. Type:是修改 Request 还是 Response
  2. Match:要查找的字符串或正则
  3. Replace:替换成的目标内容
  4. Comment: 可选注释,方便管理多个规则

这里我们激活一个Replace规则。

并重新在burp browser中刷新页面进行拦截。

查看User-Agent,与之前的请求User-Agent对比,从之前的macos chrome替换成了规则中的Mozilla。

Match and Replace 主要有以下应用场景:

场景

示例

修改 Authorization

将所有 Authorization: Bearer xxx 替换为自己的 Token

替换 Cookie

替换掉别人的 Session ID,注入自己的会话

绕过验证码

把请求中固定参数自动改为测试值

添加调试参数

自动在 URL 或请求体里加 debug=true

强制修改返回内容

比如把响应中的 "isAdmin": false 改为 "isAdmin": true(测试逻辑漏洞)

结语

在本篇文章中,我们初步解锁了Burp Suite 的 Proxy 能力。通过它,我们可以拦截、修改、转发、重放任何一个 HTTP 请求,极大地提升了渗透测试的灵活性和效率。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • burp
  • Proxy
    • 1. Intercept
    • 2. HTTP History
    • 3. WebSockets History
    • 4. Match and Replace
  • 结语
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档