当前位置: 首页 > news >正文

3-4〔OSCP ◈ 研记〕❘ WEB应用攻击▸Burp Suite工具

    郑重声明: 本文所有安全知识与技术,仅用于探讨、研究及学习,严禁用于违反国家法律法规的非法活动。对于因不当使用相关内容造成的任何损失或法律责任,本人不承担任何责任。 如需转载,请注明出处且不得用于商业盈利。 

    💥👉点赞❤️ 关注🔔 收藏⭐️ 评论💬💥
    更多文章戳👉
Whoami!-CSDN博客🚀


𖤐 嘿,经过前面的预热,我们正式打开这扇门,来吧 ! 

𖤐 𝓗𝓮𝔂, 𝓪𝓯𝓽𝓮𝓻 𝔀𝓪𝓻𝓶-𝓾𝓹,𝔀𝓮'𝓻𝓮 𝓷𝓸𝔀 𝓸𝓯𝓯𝓲𝓬𝓲𝓪𝓵𝓵𝔂 𝓸𝓹𝓮𝓷𝓲𝓷𝓰 𝓽𝓱𝓲𝓼 𝓭𝓸𝓸𝓻,𝓒𝓸𝓶𝓮 𝓸𝓷 ! 


→ 信息收集

→ 漏洞检测

→ 初始立足点▸WEB应用攻击▸Burp Suite工具-----我们在这儿~ 🔥🔥🔥

→ 权限提升 

→ 横向移动

→ 报告/分析

→ 教训/修复  

目录

1.Web应用安全评估工具

1.1 使用Burp Suite测试

1.1.1 Burp Suite启动流程

1.Kali系统启动方式

2.首次启动警告处理

3.项目创建

4.界面布局介绍

1.1.2 Proxy代理功能

1.设置“proxy 监听器”

 2.设置“拦截(Intercept)”

3.使用Proxy功能拦截并修改http请求

4.使用重放器(Repeater)修改http请求(示例)

1.1.3 Repeater重放器功能

1.进入Repeater面板

2.执行重放

3. 实战操作指南(示例)

①发送请求到Repeater

②请求修改示例

③响应分析

4.典型测试场景

5.高效使用技巧

①标签管理

②协作功能

③快捷键操作

1.1.4 Intruder攻击器功能

1. 环境配置前置步骤

①Hosts文件配置

②目标访问流程

2.请求定位与参数标记

3.创建密码字典

4.攻击执行与监控

💥创作不易💥求一波暴击👉点赞❤️ 关注🔔 收藏⭐️ 评论💬


1.Web应用安全评估工具

1.1 使用Burp Suite测试

技术定位:行业标准级Web应用渗透测试平台
核心价值:集成代理/扫描/重放等20+工具链 → 完整测试生命周期管理

💼 版本功能对比

功能模块社区版(免费)专业版(收费)
拦截代理✅ 完整支持✅ 增强功能
漏洞扫描器❌ 受限✅ 自动化扫描
Intruder爆破✅ 基础✅ 高级模式
Repeater重放✅ 完整✅ 历史对比
序列器❌ 不可用✅ Token分析
协作平台❌ 不可用✅ 团队协作

💡 推荐场景:社区版满足手动测试 → 专业版适合企业级自动化审计


1.1.1 Burp Suite启动流程

1.Kali系统启动方式

2.首次启动警告处理
! Java运行时环境警告 → 可以忽略
+ 解决方案:更新Java至最新版可消除警告

3.项目创建
- [x] 选择`Temporary project`(临时项目)  
- [x] 点击`Next` → 选择`Use Burp defaults`  
- [x] 点击`Start Burp`  

4.界面布局介绍

几秒后,界面将加载。

界面布局解析

区域功能重要性
Dashboard扫描摘要专业版专属
Target站点地图★★★★
Proxy流量拦截★★★★★
Intruder暴力破解★★★★
Repeater请求重放★★★★
Decoder编码转换★★★

🔥 优先掌握Proxy(代理) > Repeater(重放器) > Intruder(入侵者)


1.1.2 Proxy代理功能

技术本质:中间人(MITM)代理 → 拦截/修改HTTP(S)流量

  • 核心功能:Burp Proxy 工具可在浏览器发送的请求传递给服务器前进行拦截。
  • 主要操作:拦截后可对请求内容进行多种篡改,包括修改参数名称、表单值,以及添加新头部等。
  • 应用场景:通过上述操作,能测试应用程序对意外任意输入的处理情况。
  • 实例说明:例如对于有 20 个字符大小限制的输入字段,可利用 Burp Suite 修改请求以提交 30 个字符,进而查看服务器的响应效果。

🌐 代理工作原理图

⚙️ 核心功能

功能模块操作路径关键作用
拦截开关Proxy > Intercept实时流量捕获
监听器设置Proxy > Options > Proxy Listeners定义代理端口
历史记录Proxy > HTTP History完整流量审计
HTTPS解密Proxy > Options > Import/export CA certificateTLS流量解析

⚙️代理配置流程

1.设置“proxy 监听器”

步骤1:Burp监听器设置

1. 进入 `Proxy` > `Options`  
2. 确认默认监听器:  - **绑定地址**:127.0.0.1  - **端口**:8080  
3. (可选) 添加新监听器:  - 外部访问 → 设置Kali IP  - 多协议支持 → 勾选所有协议  

步骤2:浏览器代理配置(Firefox示例)

设置后,浏览器的请求发送到本地(127.0.0.1)的8080端口(BP代理)上。

步骤3:HTTPS解密(关键步骤)

如果是HTTPS请求,则需要多这一步。即,下载BP的证书cacert.der文件导入到浏览器。

# 安装CA证书流程
1. 访问 http://burp
2. 下载cacert.der
3. Firefox → 隐私与安全 → 证书 → 导入
 2.设置“拦截(Intercept)”

🛑 拦截(Intercept)控制面板

按钮功能快捷键使用场景
Intercept is on启用拦截Ctrl+I深度测试阶段
Intercept is off关闭拦截Ctrl+I正常浏览阶段
Forward放行请求Ctrl+F完成修改后
Drop丢弃请求Ctrl+D阻止敏感操作
Action高级操作-发送至其他工具

💡 智能技巧
使用 Ctrl+Shift+F 自动转发无修改请求

3.使用Proxy功能拦截并修改http请求

        使用Firefox浏览器访问MegaCorp One - Nanotechnology Is the Future后,在Burp Suite的中Proxy >HTTP History下找到拦截的流量,可以查看浏览器对目标网站执行的各种请求。

HTTP History关键列说明

列名作用安全分析价值
#请求ID追踪特定操作
Host目标域名识别越权访问
MethodHTTP方法检测危险操作(PUT/DELETE)
URL请求路径发现未授权端点
Params参数数量定位注入点
Status响应代码识别异常响应(500)
Length响应长度探测信息泄露

        点击其中一个请求,整个客户端请求和服务器响应的转储将显示在Burp UI的下半部分。
        在左侧窗格中:查看客户端请求的详细信息;
        在右侧窗格中:查看服务器响应。

4.使用重放器(Repeater)修改http请求(示例)

本部分内容在将在后续内容详细展示,此处仅做简略说明。

原始请求

POST /login HTTP/1.1
Host: megacorpone.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 28username=user&password=123

篡改后攻击请求:修改输入框的输入长度至38字节,并在username加入SQL注入语句,绕过密码验证。

POST /login HTTP/1.1
Host: megacorpone.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 38username=admin' OR 1=1-- 
password=anyvalue

1.1.3 Repeater重放器功能

核心定位:精准请求重放与手动测试引擎
核心价值:无需重复拦截 → 深度参数测试与漏洞验证

🔄 Repeater工作流程

1.进入Repeater面板

右键单击Proxy > HTTP History中的一个请求,然后选择Send to Repeater

来到Repeater界面:可以将多个请求发送到Repeater,并使用单独的选项卡显示它们。

🛠️ Repeater界面布局解析

区域功能操作说明
请求面板(左侧)编辑HTTP请求修改参数/头部/方法
发送按钮(Send)执行请求发送当前请求到服务器
响应面板(右侧)显示服务器返回原始数据/渲染视图
标签管理多请求并行测试右键标签可重命名/关闭
2.执行重放

修改请求后,通过点击Send,将请求发送到服务器,这个就是重放的过程。

👁️ 响应视图模式对比

视图模式功能特点适用场景
Raw原始响应数据分析HTTP头部
Hex十六进制格式二进制文件分析
Render渲染后页面可视化效果验证
Headers仅显示头部快速查看状态码
3. 实战操作指南(示例)
①发送请求到Repeater
1. 进入 `Proxy` > `HTTP history`
2. 右键目标请求 → `Send to Repeater`
3. 切换到 `Repeater` 标签页
②请求修改示例

原始请求

GET /product?id=123 HTTP/1.1
Host: megacorpone.com

修改后测试SQL注入

GET /product?id=123' OR 1=1-- HTTP/1.1
Host: megacorpone.com
③响应分析
- ✅ 状态码变化:200 → 500(可能存在注入)
- ✅ 响应长度差异:明显增加(可能返回额外数据)
- ✅ 错误信息:SQL语法错误(确认注入点)
- ✅ 渲染页面:查看实际效果
4.典型测试场景
测试类型请求修改位置预期结果风险等级
SQL注入URL参数/Body数据库错误/数据泄露🔴 高危
XSS测试所有输入点脚本执行🔴 高危
路径遍历文件路径参数系统文件访问🔴 高危
IDOR测试身份标识参数越权数据访问🟡 中危
缓冲区溢出长字符串输入服务崩溃/异常🔴 高危
5.高效使用技巧
①标签管理
- **重命名标签**:右键标签 → `Rename tab` 
- **整理测试流程**:按漏洞类型分类标签
- **并行测试**:多个标签同时操作
②协作功能
- **添加注释**:右键请求 → `Add comment`
- **高亮标记**:右键响应 → `Highlight`
- **比较响应**:`Comparer` 工具集成
③快捷键操作
功能快捷键效率提升
发送请求Ctrl+R⚡⚡⚡
切换标签Ctrl+Tab⚡⚡
清空请求Ctrl+X
复制URLCtrl+U⚡⚡

1.1.4 Intruder攻击器功能

核心定位:自动化Web应用攻击平台
核心价值:批量请求攻击 → 暴力破解/模糊测试/参数枚举

🎯 Intruder四步攻击流程

📋 Intruder实战检查清单

- [ ] 配置hosts解析
- [ ] 拦截登录请求
- [ ] 标记攻击参数
- [ ] 准备字典文件
- [ ] 设置攻击模式
- [ ] 分析异常响应
- [ ] 验证成功结果
- [ ] 清理测试痕迹

🛠️ Intruder攻击类型对比

攻击类型标记点数量适用场景
Sniper(狙击)单个参数密码爆破/单参数模糊测试
Battering ram(冲撞)多个参数相同值同时测试多个点
Pitchfork(叉子)多参数对应多字段字典组合攻击
Cluster bomb(集束炸弹)多参数组合完全交叉组合测试

🔥 本例使用Sniper模式针对密码字段进行爆破

1. 环境配置前置步骤
①Hosts文件配置
# 编辑Kali hosts文件
sudo nano /etc/hosts# 添加解析记录
192.168.50.16   offsecwp
②目标访问流程

       从Firefox浏览到http://offsecwp/wp-login.php(根据host会到达192.168.50.16这台主机)。
然后,分别输入“admin”和“test”作为用户名和密码,并点击登录。
       这么做的目的是到BP中获取到http请求包,并进行重放攻击。

2.请求定位与参数标记
1. **Proxy > HTTP history** 找到登录POST请求
2. 右键 → `Send to Intruder` 
3. 进入 `Positions` 子标签
4. 点击 `Clear` 清除默认标记
5. 选择密码参数值 → 点击 `Add` 标记- 原始: `pwd=test§`- 标记后: `pwd=§test§`

        在右侧栏上按 Clear按钮,清除所有字段。然后,选择pwd键的值,并按右侧的Add按钮。现在,已经指示Intruder仅在每个新请求中修改密码值。

3.创建密码字典
1. 进入 `Payloads` 子标签
2. 选择载荷类型: `Simple list`
3. 加载rockyou字典前10个密码:12345612345123456789password      # 实际上的正确密码,但此时不知道。一会观察与其他密码的结果有什么不同iloveyouprincess1234567rockyou12345678abc123

4.攻击执行与监控
- 点击右上角 `Start attack` 
- 观察新窗口中的实时结果
- 关注**状态码**和**长度**变化

📊 攻击结果分析矩阵

请求#测试密码状态码响应长度结果分析
1rockyou200默认失败
2123456200默认失败
312345678200默认失败
4password302不同✅ 成功
512345200默认失败
...............

🚩 关键指标:状态码302表示重定向 → 认证成功跳转

跳转的页面(登录成功后的页面):

🚨 注意事项与防护

! 法律风险: 仅对授权目标使用,确保拥有书面授权协议

! 业务影响: 暴力破解可能锁定账户,使用低频率测试避免业务中断

! 日志记录: 攻击会产生大量日志,使用匿名代理保护测试源IP


💥创作不易💥求一波暴击👉点赞❤️ 关注🔔 收藏⭐️ 评论💬

您的支持是我创作最大的动力!

http://www.dtcms.com/a/354284.html

相关文章:

  • MySQL中的InnoDB
  • pikachu-xss通关(1-8)
  • qt5+mingw64+opencv4.5.2搭建调试环境
  • FOC算法第二节 克拉克变换
  • mybatis-plus实现苍穹外卖项目-分类操作,不定期更新-day2
  • Hadoop(五)
  • AI、人工智能基础: 模型剪枝的概念与实践(PyTorch版)
  • uvloop深度实践:从原理到高性能异步应用实战
  • 死锁产生的条件是什么? 如何进行死锁诊断?
  • 本地部署DeepSeek大模型的基本方法
  • 自定义命令行补全机制的核心工具之compgen
  • web服务组件
  • MII的原理
  • 软件设计师备考-(三)操作系统基本原理
  • leetcode28. 找出字符串中第一个匹配项的下标
  • VR党建工作站-红色教育基地
  • 路由基础(三):静态路由、动态路由、默认路由
  • Linux系统 -- 线程(pthread)核心知识整理
  • 【golang长途旅行第33站】常量------补充知识点
  • 学习游戏制作记录(数据加密以及主菜单和画面优化)8.27
  • 运算电源抑制比(PSRR)测量及设计注意事项
  • 去哪里学AI?2025年AI培训机构推荐!
  • 部署k8s-efk日志收集服务(小白的“升级打怪”成长之路)
  • 数据库:缓冲池和磁盘I/O
  • 让组件“活”起来:使用 `useState` Hook 管理组件状态
  • 【苍穹外卖项目】Day12
  • Android中的SELinux
  • vue3 字符 居中显示
  • HyperMesh许可证过期?
  • 北京国标:专业高效的数据采集和分析服务