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;里面的数据表全部被删…

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…

认识自定义协议

经过前面的介绍&#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的采样点数// 数组声明…

江南大学《2024年807自动控制原理真题》 (完整版)

本文内容&#xff0c;全部选自自动化考研联盟的&#xff1a;《江南大学807自控考研资料》的真题篇。后续会持续更新更多学校&#xff0c;更多年份的真题&#xff0c;记得关注哦~ 目录 2024年真题 Part1&#xff1a;2024年完整版真题 2024年真题

Qt 安装Qt Serial Port

最近要用Qt写个串口上位机软件&#xff0c;发现Qt的串口库用不了&#xff0c;上网找了一下资料&#xff0c;找到一种解决办法&#xff0c;具体操作如下&#xff1a; 参考文章&#xff1a;https 目录 一、找到QT安装路径&#xff0c;并运行Qt Maintenance Tool二、选择 添加或移…

matlab finv()函数解释 F分布 和 逆累积分布函数 卡方分布

1.Earths flattening 翻译并解释含义 "Earths flattening" 翻译为中文是“地球的扁率”。 含义解释&#xff1a; 地球的扁率是指地球形状偏离完美球形的程度。地球并非一个完美的球体&#xff0c;而是一个扁球体&#xff0c;即在两极略微扁平&#xff0c;赤道略微…

鸿蒙 Next 可兼容运行 Android App,还支持出海 GMS?

最近 「出境易」和 「卓易通」 应该算是鸿蒙和 Android 开发圈“突如其来”的热门话题&#xff0c;而 「出境易」可能更高频一些&#xff0c;主要也是 Next 5.0 被大家发现刚上架了一个名为「出境易」的应用&#xff0c;通过这个 App 用户可以直接运行不兼容 Next 的 Android A…

Windows实现Jenkins的自动化部署

什么是Jenkins&#xff1f;Jenkins有什么用&#xff1f; 按照我个人的理解&#xff0c;Jenkins就是一个很简单实现自动化工具&#xff0c;按照了Jenkins你就可以拥有一个类似小爱同学一样的管家&#xff0c;你可以通过你的手机步骤一个任务给你的小爱同学&#xff0c;例如打开…

合规性要求对漏洞管理策略的影响

讨论漏洞管理中持续面临的挑战&#xff0c;包括确定漏洞的优先级和解决修补延迟问题。 介绍合规性要求以及自动化如何简化漏洞管理流程。 您认为为什么尽管技术不断进步&#xff0c;但优先考虑漏洞和修补延迟等挑战仍然存在&#xff1f; 企业基础设施日益复杂&#xff0c;攻…

挑战用React封装100个组件【004】

项目地址 https://github.com/hismeyy/react-component-100 组件描述 组件适用于展示图片的地方&#xff0c;提供了small&#xff0c;medium&#xff0c;large三种大小。可以删除图片&#xff0c;也可以全屏预览图片。 样式展示 前置依赖 今天我们的这个挑战需要用用到了…