BurpSuite工具-Proxy代理用法(抓包、改包、放包)

一、Burp Suite 项目管理

二、Proxy(代理抓包模块)

1. 简要说明

1.1. Intercept(拦截)

1.2. HTTP History(HTTP 历史)

1.3. WebSockets History(WebSocket 历史)

1.4. Options(选项)

2. Intercept(拦截)

2.1. Burp Suite内置浏览器 (Open Browser)

2.2 Intercept常用操作

3. HTTP History(HTTP 历史)

3.1. 记录历史包

3.2. 筛选历史包

4. WebSockets History(WebSocket 历史)

4.1. WebSocke是什么

4.2. Burp Suite 中 WebSocket History 的作用

5. Options(选项)

结语


burp(4)burp常见用法 以及 漏洞测试理论_哔哩哔哩_bilibiliicon-default.png?t=O83Ahttps://www.bilibili.com/video/BV1uCzpYnEJe/?spm_id_from=333.1391.0.0


Burp Suite 是一款广泛使用的网络安全测试工具,特别在 Web 应用安全领域具有重要地位。它提供了多种功能模块,帮助安全研究人员进行漏洞检测、漏洞验证以及漏洞修复。本文将介绍 Burp Suite 中常用的几个模块及其基本功能,特别是如何利用 Proxy(代理抓包)、HTTP History(HTTP 历史包)、筛选机制等工具提高测试效率。

本专栏用到的Burp Suite v2021.9.1版本请到前面章节自行下载安装汉化,传送门:BurpSuite工具-利用java安装激活-CSDN博客

如果用的是别的版本也没关系,他们的本质是不变的只是多了一些功能,使用上没啥变化。

一、Burp Suite 项目管理

在启动 Burp Suite 后,首先会看到一个项目管理窗口,您可以在这个窗口进行以下操作:

  • 临时工程 (Temporary Project) 选择“临时工程”时,您将创建一个不会保存的项目。它通常适用于短期的测试任务,退出后数据将丢失。

  • 新建工程 (New Project on Disk) 选择“新建工程”时,Burp Suite 会创建一个新的项目并将其保存到磁盘中。您可以为此项目指定一个文件夹路径,方便之后查看和管理。

  • 打开已有工程 (Open Existing Project) 选择“打开已有工程”时,您可以打开先前保存的项目,接着继续上次未完成的测试工作。

  • 暂停自动化任务 (Pause Automated Tasks) 如果您正在执行自动化测试任务(如爬虫、扫描等),可以选择暂停它们,以便进行手动干预或调整配置。


二、Proxy(代理抓包模块)

1. 简要说明

Proxy 模块是用于拦截和修改客户端与服务器之间的 HTTP/HTTPS 请求和响应的核心组件。它充当中间人角色,将浏览器的请求通过代理转发给目标服务器,并将服务器的响应返回给浏览器。在此过程中,我们可以查看请求与响应内容,并进行修改,进而模拟攻击、测试漏洞。例如,通过插入恶意代码(如 XSS、SQL 注入等),验证 Web 应用的安全性。

下面是该模块的功能和选项

1.1. Intercept(拦截)

  • 功能:Intercept 是 Burp Suite Proxy 模块中的一个关键功能,它允许您拦截并查看传输中的 HTTP/HTTPS 请求和响应。通过启用拦截,您可以暂停请求和响应在到达目标服务器或返回给客户端之前,修改它们的内容。

  • 使用方式:在 Burp Suite 中,点击 Proxy 模块下的 Intercept 选项卡,可以查看和操作这些请求和响应。您可以选择 Intercept is onIntercept is off 来控制是否开启拦截功能。

1.2. HTTP History(HTTP 历史)

  • 功能:HTTP History 选项卡会记录所有通过代理的 HTTP 请求和响应的详细信息,包括它们的头部、体积以及与服务器交互的各种信息。这为后期分析和调试提供了有用的历史记录。

  • 使用方式:在 Proxy 模块下的 HTTP History 选项卡,您可以查看每个 HTTP 请求和响应的详细信息,包括请求方法、URL、响应状态、头部信息等。您还可以通过过滤器查找特定的请求。

1.3. WebSockets History(WebSocket 历史)

  • 功能:WebSockets History 是 Burp Suite 中针对 WebSocket 通信的专门功能。它记录通过代理的 WebSocket 数据帧,允许用户查看和修改 WebSocket 通信中的消息内容。

  • 使用方式:在 Proxy 模块下的 WebSockets History 选项卡中,您可以查看 WebSocket 连接的请求和响应,包括每个数据帧的内容。您可以过滤、分析并修改这些通信内容,以帮助您进行 WebSocket 安全测试。

1.4. Options(选项)

  • 功能:Options 选项卡用于配置和定制 Burp Suite Proxy 模块的行为。通过这个选项卡,您可以设置代理端口、拦截行为、请求和响应的修改规则等。还可以设置 Burp Suite 代理的详细配置,例如是否启用 SSL/TLS 代理、是否添加自动重定向规则、是否使用拦截器等。

  • 使用方式:在 Proxy 模块下的Options选项卡中,您可以配置以下内容:

    • Proxy Listeners:设置监听的端口和地址。

    • Intercept Client Requests:设置拦截请求的条件。

    • Request/Response Modifications:定义请求和响应的自动修改规则。

    • SSL/TLS Certificates:管理和配置 SSL 证书,用于 HTTPS 流量拦截。

    • Other Settings:其他代理配置选项,如会话存储、缓存策略等。


2. Intercept(拦截)

2.1. Burp Suite内置浏览器 (Open Browser)

Burp Suite 自带一个浏览器功能,它可以通过设置代理来捕获所有 HTTP 请求。当你使用 Burp 自带的浏览器访问 Web 应用时,所有请求都会经过 Burp 的 Proxy 模块进行转发,这样可以非常方便地监控并分析所有请求和响应。

点击Open Browser或者内置浏览器就会弹出来,看最下方可以看出这个内置浏览器用的是谷歌浏览器的内核。

2.2 Intercept常用操作

在 Proxy 模块中,常见的操作包括:

  • 抓包:抓取传输中的 HTTP 请求包和响应包。

  • 丢弃包(Drop):丢弃某些请求包,这意味着该请求不会到达目标服务器。

  • 转发包(Forward):发送当前捕获的包到目标服务器,继续执行下一步操作。

通过这些操作,你可以灵活地控制数据流,进行不同的安全测试,用前面Burp Suite内置浏览器浏览器访问百度来进行演示

Intercept对于数据包操作分别有三个功能,发送、丢弃、拦截,需要先用到拦截功能,抓取数据包停在我们这一步然后在进行对应发包和改包之类的操作。

我们可以任意修改数据包再进行发送,当然如果他后端需要对应参数,但是被你删除了就会导致发包失败。

这里多了一个行动按钮,在别的版本可能会不存在因为这个功能其实和你右键数据包的效果是一致的,我们在这里可以进行数据包的转发,比如转发到Intruder(爆破模块)、Repeater(重放模块)亦或者可以修改请求方式将GET请求修改成POST请求和拦截请求包等等的操作(一般情况下Intercept不会对请求包进行拦截)。

最后丢弃数据包功能的使用,会在特定的地方会用上,比如你拦截了一个表单的提交,然而你想转发到重放器修改他的值进行测试亦或者注册登录的功能点,这时候你就可能需要将这个数据包丢弃,防止自动提交影响后面已经转发到重放、爆破模块的数据包。


3. HTTP History(HTTP 历史)

3.1. 记录历史包

Burp Suite 通过 HTTP History 模块记录所有通过 Proxy 捕获的 HTTP 请求。你可以查看每个请求的详细信息,包括请求方法(GET、POST 等)、URL 地址、请求参数、IP 地址等。这使得你能够迅速审查应用的行为并识别潜在的安全问题。

PS:HTTP History和Logger的区别在于,它只会记录Proxy 捕获的 HTTP 请求,但是Logger会记录所有经过Burp Suite 的HTTP 请求,比如Intruder(爆破模块)、Repeater(重放模块)。

3.2. 筛选历史包

为了提高效率,Burp Suite 提供了筛选功能,让你能够根据特定的条件查找 HTTP 请求。例如,你可以筛选出包含 script 或 css 等元素的请求,这对于查找 XSS 漏洞尤其有用。此外,你还可以通过筛选请求的方法、URL、响应状态码等进一步精确定位漏洞。

还可以按端口号(如常见的 3306、443、3389 等端口)进行筛选,找出可能存在的敏感端口请求。可以根据请求的内容类型(如 HTML、JSON)进行筛选,集中分析潜在的漏洞。

右键可以呼唤出功能栏删除历史包。

4. WebSockets History(WebSocket 历史)

4.1. WebSocke是什么

WebSocket 是一种在客户端和服务器之间建立的全双工(双向)通信协议,它允许在单一的持久连接上进行实时数据交换。与传统的 HTTP 协议不同,WebSocket 允许客户端和服务器之间进行双向通信,且无需频繁地打开和关闭连接,这使得 WebSocket 特别适用于需要高频实时交互的应用场景,如在线聊天、实时游戏、股票行情、实时通知等。

4.2. Burp Suite 中 WebSocket History 的作用

  • 捕获 WebSocket 消息:Burp Suite 能够捕获 WebSocket 连接中的所有消息,包括客户端向服务器发送的消息以及服务器向客户端发送的响应。

  • 分析实时通信:通过查看 WebSocket 连接的历史记录,测试人员可以分析实时应用程序的行为,找出可能存在的安全问题,例如身份验证绕过、信息泄露或不安全的用户输入。

  • 修改 WebSocket 消息:在 WebSocket History 中,用户可以选择修改 WebSocket 消息并重新发送,这对于进行反向测试(例如检查是否能够篡改数据)非常有用。

  • 调试 WebSocket 通信:Burp Suite 提供了一种简单的界面,允许用户查看 WebSocket 消息的详细内容(包括消息的发送时间、数据大小等),帮助调试和排查问题。


5. Options(选项)

Options 选项卡用于配置和定制 Burp Suite Proxy 模块的行为。通过这个选项卡,您可以设置代理端口、拦截行为、请求和响应的修改规则等。

这里可以看到代理监听器的监听地址和端口还有拦截客户端请求的规则等。下一章浏览器的抓包会讲到部分。


结语

通过对 Burp SuiteProxy(代理抓包模块) 的详细学习与分析,我们可以更好地理解其在渗透测试和安全评估中的重要作用。通过对 Intercept(拦截)HTTP History(HTTP 历史)WebSocket History(WebSocket 历史) 以及 Options(选项) 的深入了解,安全研究人员可以高效地捕获、分析和修改请求与响应,进而发现潜在的安全漏洞。

Burp Suite 不仅为渗透测试提供了强大的抓包和调试功能,还通过内置浏览器和灵活的筛选机制,使得测试过程更加高效与精准。而对于实时通信和 WebSocket 的支持,更是拓展了其应用场景,适用于现代 Web 应用的复杂性和实时性需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/33730.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

前端测试框架 jasmine 的使用

最近的项目在使用AngulaJs,对JS代码的测试问题就摆在了面前。通过对比我们选择了 Karma jasmine ,使用 Jasmine做单元测试 ,Karma 自动化完成,当然了如果使用 Karma jasmine 前提是必须安装 Nodejs。 安装好 Nodejs ,使用 npm 安装好必要…

Blender均匀放缩模型

解决办法: 首先选中模型,按下“s”键,如下图所示,此时模型根据鼠标的移动放缩 或者在按下“s”后输入数值,再按回车键Enter,模型会根据你该数值进行均匀放缩 指定放大2倍结果——

TCP/IP 协议图--计算机网络体系结构分层

计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”

hive 行转列

行转列的常规做法是,group bysum(if())【或count(if())】 建表: CREATE TABLE table2 (year INT,month INT,amount DOUBLE );INSERT INTO table2 (year, month, amount) VALUES(1991, 2, 1.2),(1991, 3, 1.3),(1991, 4, 1.4),(1992, 1, 2.1),(1992, 2, 2.2),(1992…

5G Multicast/Broadcast Services(MBS)相关的Other SI都有哪些?

系统消息分为Minimum SI 和other SI,其中Minimum SI 包括MIB和SIB1,Minimum SI包含初始访问所需的基本信息和获取任何其他 SI 的信息。 而随着3GPP引入的技术越来越多,例如sidelink,NTN,MBS broadcast/multicast以及A…

6. 一分钟读懂“抽象工厂模式”

6.1 模式介绍 书接上文,工厂方法模式只能搞定单一产品族,遇到需要生产多个产品族时就歇菜了。于是,在需求的“花式鞭策”下,程序员们再次绷紧脑细胞,创造出了更强大的抽象工厂模式,让工厂一次性打包多个产品…

Ignis如何将Tokenization解决方案应用于RWA和实体经济

随着区块链技术的发展,代币化(Tokenization)逐渐成为连接数字经济与实体经济的重要桥梁。尤其是RWA(真实世界资产)的概念,近年来成为金融行业的热议话题。Ignis作为Jelurida公司推出的公链平台,…

sql删除冗余数据

工作或面试中经常能遇见一种场景题:删除冗余的数据,以下是举例介绍相应的解决办法。 举例: 表结构: 解法1:子查询 获取相同数据中id更小的数据项,再将id不属于其中的数据删除。-- 注意:mysql中…

mac 安装python3和配置环境变量

mac 安装python3和配置环境变量 前言怎样选择python3的版本python3的安装1、去官网下载安装包2、下载完成后直接解压,检查安装是否成功 前言 在学习python的第一步就是安装它和配置他的环境变量,那么选择哪个版本的python你可曾知道,下面就讲解怎样选择…

Springboot美食分享平台

私信我获取源码和万字论文,制作不易,感谢点赞支持。 Springboot美食分享平台 一、 绪论 1.1 研究意义 当今社会作为一个飞速的发展社会,网络已经完全渗入人们的生活, 网络信息已成为传播的第一大媒介, 可以毫不夸张…

iview upload clearFiles清除回显视图

iview upload 上传完文件之后清除内容&#xff0c;打开会回显视图&#xff0c;清除不掉 关闭弹框时主动清除回显内容即可this.$refs.uploads.clearFiles() <FormItem label"上传附件:" :label-width"formNameWidth"><Upload action"/fms/ap…

并查集的原理及实现

目录 0.引例 1.并查集的原理 2.并查集的存储结构 3.并查集的实现 并查集接口总览 构造函数 查找元素属于哪个集合 判断是否属于同一个集合 合并两个集合 集合的个数 4.并查集完整代码附录 5.并查集在OJ中的应用 省份数量 等式方程的可满足性 0.引例 在我们刚上…

机器学习--绪论

开启这一系列文章的初衷&#xff0c;是希望搭建一座通向机器学习世界的桥梁&#xff0c;为有志于探索这一领域的读者提供系统性指引和实践经验分享。随着人工智能和大数据技术的迅猛发展&#xff0c;机器学习已成为推动技术创新和社会变革的重要驱动力。从智能推荐系统到自然语…

Redis使用场景-缓存-缓存雪崩

前言 之前在针对实习面试的博文中讲到Redis在实际开发中的生产问题&#xff0c;其中缓存穿透、击穿、雪崩在面试中问的最频繁&#xff0c;本文加了图解&#xff0c;希望帮助你更直观的了解缓存雪崩&#x1f600; &#xff08;放出之前写的针对实习面试的关于Redis生产问题的博…

RabbitMQ快速入门

文章目录 一. 引入依赖二. 编写生产者代码1. 创建连接2. 创建channel3. 声明一个队列4. 发送消息5. 释放资源6. 运行代码 三. 编写消费者代码1. 创建连接2. 创建channel3. 声明队列4. 消费消息5. 释放资源6. 运行代码 一. 引入依赖 <!-- https://mvnrepository.com/artifact…

如何设计一套对外开放的API体系

生态建设越来越常见&#xff0c;开放自身API给外部伙伴使用&#xff0c;再正常不过&#xff0c;当然不能仅仅暴露个API出来就算完事了&#xff0c;还需要经过详细的设计及验证。 以下是对设计对外开放 API 的每个要点的进一步展开阐述&#xff1a; 明确目标和需求 深入了解业务…

信号和槽思维脑图+相关练习

将登录框中的取消按钮使用信号和槽的机制&#xff0c;关闭界面。 将登录按钮使用信号和槽连接到自定义的槽函数中&#xff0c;在槽函数中判断ui界面上输入的账号是否为"admin"&#xff0c;密码是否为"123456",如果账号密码匹配成功&#xff0c;当前界面关…

uniapp h5 vue3 m3u8 和 mp4 外链视频播放

m3u8视频播放 使用mui-player 和hls.js。 安装npm install mui-player hls.js我的版本是"hls.js": "^1.5.17"和"mui-player": "^1.8.1"使用 页面标签&#xff1a; 引用&#xff1a; 点击目录播放视频&#xff1a; m3u8视频播放&a…

php项目流水线flow的创建能部署与使用

在云服务器平台上使用 PHP 项目创建、配置、部署和使用流水线&#xff0c;可以通过阿里云 DevOps 服务来自动化 CI/CD&#xff08;持续集成与持续交付&#xff09;流程。以下是详细的步骤和指导&#xff0c;帮助你完成 PHP 项目的流水线设置和部署。 ### 1. 创建流水线 #### …

借助 AI 工具,共享旅游-卡-项目助力年底增收攻略

年底了&#xff0c;大量的商家都在开始筹备搞活动&#xff0c;接下来的双十二、元旦、春节、开门红、寒假&#xff0c;各种活动&#xff0c;目的就是为了拉动新客户。 距离过年还有56 天&#xff0c;如何破局&#xff1f; 1、销售渠道 针对旅游卡项目&#xff0c;主要销售渠道…