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.mzph.cn/web/61859.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Marvell第四季度营收预计超预期,定制芯片需求激增

芯片制造商Marvell Technology(美满电子科技)(MRVL)在周二发布了强劲的业绩预告,预计第四季度的营收将超过市场预期,得益于企业对其定制人工智能芯片的需求激增。随着人工智能技术的快速发展,特…

915DEBUG-obsidianTemplater使用

Templater使用 tp函数不正常显示相应数据 模板使用方式不正确 <% tp.date.now("YYYY-MM-DD") %> 应该被放置在一个被Templater识别为模板的文件中&#xff0c;或者在你使用Templater的插入模板功能时输入。如果只是在一个普通的Markdown文件中直接输入这段代码…

html+css网页设计马林旅行社移动端4个页面

htmlcss网页设计马林旅行社移动端4个页面 网页作品代码简单&#xff0c;可使用任意HTML辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 1&#…

笔记本电脑usb接口没反应怎么办?原因及解决方法

笔记本电脑的USB接口是我们日常使用中非常频繁的一个功能&#xff0c;无论是数据传输、充电还是外接设备&#xff0c;都离不开它。然而&#xff0c;当USB接口突然没有反应时&#xff0c;这无疑会给我们的工作和学习带来不小的困扰。下面&#xff0c;我们就来探讨一下笔记本USB接…

JAVA |日常开发中Servlet详解

JAVA &#xff5c;日常开发中Servlet详解 前言一、Servlet 概述1.1 定义1.2 历史背景 二、Servlet 的生命周期2.1 加载和实例化2.2 初始化&#xff08;init 方法&#xff09;2.3 服务&#xff08;service 方法&#xff09;2.4 销毁&#xff08;destroy 方法&#xff09; 三、Se…

Python酷库之旅-第三方库Pandas(255)

目录 一、用法精讲 1206、pandas.tseries.offsets.SemiMonthEnd.is_on_offset方法 1206-1、语法 1206-2、参数 1206-3、功能 1206-4、返回值 1206-5、说明 1206-6、用法 1206-6-1、数据准备 1206-6-2、代码示例 1206-6-3、结果输出 1207、pandas.tseries.offsets.S…

MySQL——操作

一.库的操作 1.基本操作 创建数据库 create database 数据库名称; 查看数据库 show databases; 删除数据库 drop database 数据库名称; 执行删除之后的结果: 数据库内部看不到对应的数据库 对应的数据库文件夹被删除&#xff0c;级联删除&#xff0c;里面的数据表全部被删…

JVM优化,Redis,MySQL相关面试题

一、平常对SQL优化的了解 1.索引优化 创建索引&#xff1a;为常用的查询字段创建索引&#xff0c;可以显著提高查询速度。例如&#xff0c;为订单金额的字段创建索引&#xff0c;可以加速按订单金额的排序操作。 优化索引&#xff1a;定期维护索引&#xff0c;避免索引碎片化…

http 与 https 汇总

文章目录 http 与 httpsHTTP&#xff08;超文本传输协议&#xff09;介绍1. 基本概念2. 工作原理3. 特点4. 应用场景 HTTPS&#xff08;超文本传输安全协议&#xff09;介绍1. 基本概念2. 工作原理3. 特点4. 应用场景 HTTP协议的工作原理请求阶段响应阶段客户端解析处理 协议的…

Ubuntu 安装Ansible ansible.cfg配置文件生成

安装后的ansible.cfg后的默认内容如下&#xff1a; rootlocalhost:/etc/ansible# cat ansible.cfg # Since Ansible 2.12 (core): # To generate an example config file (a "disabled" one with all default settings, commented out): # $ ansible-…

Java虚拟机(JVM)中的元空间(Metaspace)一些关键点的总结

• 元空间的引入&#xff1a;在Java 8中&#xff0c;JVM的内存结构经历了变化&#xff0c;其中方法区被替代为元空间&#xff08;Metaspace&#xff09;。元空间用于存储类的元数据信息&#xff0c;包括类的名称、方法、字段等信息。 • 存储位置&#xff1a;与方法区不同&…

R语言机器学习论文(三):特征提取

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据一、数据归一化二、离散型分类变量的编码三、筛选特征四、重要特征五、输出结果六、总结系统信息介绍 在数据分析和机器学习项目中,经常需要对数据进行预…

CSS 动画效果实现:图片展示与交互

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;Css篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来Css篇专栏内容:CSS 动画效果实现&#xff1a;图片展示与交互 前言 在现代网页设计中&#xff0c;动态效果能够显著…

928DEBUG

在vscode上的ubuntu上的wsl&#xff0c;运行一个要求clang编译器的cmake项目 安装必要的工具&#xff1a; bash sudo apt install build-essential cmake ninja-build git 安装Clang编译器&#xff1a; bash复制 sudo apt install clang DEBUG 这是因为用的是windows上的cla…

使用Hutoolx性能优化

代码性能分析与优化方法&#xff1a; 使用Hutool的Benchmark类来测量代码块的执行时间&#xff0c;从而判断代码的性能表现&#xff0c;并根据结果进行优化。 自定义工具类开发&#xff1a; 扩展Hutool中已有的工具类&#xff0c;添加自定义的方法以满足特定需求&#xff0c;提…

etcd-v3.5release-(3)-readIndexRead

笔记1&#xff1a;读操作包括两种&#xff0c;readIndex和serilizable&#xff0c;readIndex指一致性读&#xff0c;一旦a读到了数据x&#xff0c;那么a及a以后的数据都能读到x&#xff0c;readIndex读会先确认本leader是不是有效地leader&#xff0c;如果有效则记录此刻的comm…

统计中间件稳定性指标

目前订单业务域涉及中间件&#xff1a;MySQL、Redis、TiDB、MQ、ES。&#xff08;遗漏项请补充&#xff09; 一、RDS 资源使用率 实例ID实例名称规格maxCPUavgCPUmaxDISKmaxIOPSavgIOPS活跃会话maxTPSavgTPSmaxQPSavgQPS实例风险 慢查询 慢查询会消耗大量的系统资源&#x…

认识自定义协议

经过前面的介绍&#xff0c;我们知道TCP/IP协议有一组五层模型&#xff0c;从上往下为应用层、传输层、网络层、数据链路层和物理层&#xff0c;且在网络中传输的数据都必须经过这几层模型的封装和分用&#xff0c;作为程序员&#xff0c;我们最经常打交道的就是应用层。程序员…

nodejs循环导出多个word表格文档

文章目录 nodejs循环导出多个word表格文档一、文档模板编辑二、安装依赖三、创建导出工具类exportWord.js四、调用五、效果图nodejs循环导出多个word表格文档 结果案例: 一、文档模板编辑 二、安装依赖 // 实现word下载的主要依赖 npm install docxtemplater pizzip --save/…

多级IIR滤波效果(BIQUAD),system verilog验证

MATLAB生成IIR系数 采用率1k&#xff0c;截止频率30hz&#xff0c;Matlab生成6阶对应的biquad3级系数 Verilog测试代码 // fs1khz,fc30hz initial beginreal Sig_Orig, Noise_white, Mix_sig;real fs 1000;Int T 1; //周期int N T*fs; //1s的采样点数// 数组声明…