逻辑漏洞
2281 字
11 分钟
逻辑漏洞
一、逻辑漏洞概述
1.1 什么是逻辑漏洞?
逻辑漏洞是指业务逻辑层面的设计缺陷,属于”业务安全”范畴。与 SQL 注入、XSS 等技术型漏洞不同,逻辑漏洞是开发人员对业务规则理解不准确或设计不严谨导致的。
1.2 逻辑漏洞分类
| 类别 | 典型场景 |
|---|---|
| 重装漏洞 | CMS 重装页面可被访问,或结合任意文件删除 |
| 口令漏洞 | 弱口令、密码爆破 |
| 验证码漏洞 | 前端校验、重复使用、空值绕过 |
| 越权漏洞 | 水平越权、垂直越权 |
| 支付逻辑 | 修改金额、数量、顺序绕过 |
| 未授权访问 | 绕过认证直接访问资源 |
| 任意文件读写 | 目录穿越导致文件泄露或写入 |
二、重装漏洞
2.1 原理
安装时填写的配置被存入 PHP 文件中,导致可以注入 PHP 代码实现 RCE。
2.2 利用条件
- 安装页面可被直接访问(未删除
install目录) - 配置参数写入文件时可被注入恶意代码
- 大部分情况需要任意文件删除配合(删除锁文件后重装)
2.3 挖掘方法
1. 直接访问 /install 或 /install.php2. 如被限制,寻找任意文件删除漏洞(删除安装锁文件)3. 重装并注入恶意配置三、任意文件读写及目录穿越
3.1 任意读取文件
可导致: 源代码泄露、配置文件读取、密码/密钥泄露
挖掘方法:
1. 寻找文件读取功能点(预览、下载、包含)2. 文件名参数是否可控,是否存在路径穿越3. 使用 ../../../ 尝试读取敏感文件4. 使用高亮插件/代码审计工具辅助挖掘3.2 任意写入文件
可导致: Webshell 写入、配置文件篡改
挖掘方法:
1. 寻找文件编辑功能点2. 文件名参数是否可控制3. 使用 ../ 进行目录穿越4. 尝试写入 Webshell5. SQLi 也可能导出 Webshell(如 INTO OUTFILE)3.3 知名历史漏洞
| 漏洞 | 编号 | 说明 |
|---|---|---|
| Tomcat PUT 任意写入 | CVE-2017-12615 | 通过 PUT 方法上传 Webshell |
| WebLogic 任意文件上传 | CVE-2018-2894 | 文件上传导致 RCE |
| FlowiseAI 任意文件写入 | CVE-2025-26319 | AI 工具链漏洞 |
四、口令漏洞
| 类型 | 说明 |
|---|---|
| 弱口令 | 123456、admin、password 等常见密码 |
| 密码爆破 | 社工字典构建,使用 Burp Suite 爆破 |
| 默认凭证 | 系统默认账号密码未修改 |
| 空密码 | 密码字段为空可登录 |
五、验证码漏洞
5.1 验证码漏洞统计(乌云 63 个案例)
5.2 验证码漏洞分类
| 编号 | 漏洞类型 | 说明 |
|---|---|---|
| 1 | 前端验证无后端校验 | 验证码只在前端校验,抓包后可直接爆破 |
| 2 | 验证码形同虚设 | 乱输验证码也能成功登录 |
| 3 | 验证码可重复使用 | 登录失败后验证码不变,同一验证码可多次使用 |
| 4 | 验证码空值绕过 | 删除验证码参数名即可绕过 |
| 5 | 验证码干扰过低 | 简单验证码可被脚本识别 |
| 6 | 验证码在 HTML 源码输出 | 验证码在源码中直接暴露 |
| 7 | 验证码可控制 | 验证码是 URL 参数,可被修改 |
| 8 | 验证码有生成规则 | 如时间戳后 N 位、rand() 可预测 |
| 9 | 存在默认验证码 | 如输入 000000 可绕过 |
| 10 | 验证码在 Cookie 中 | Cookie 中存在验证码参数 |
| 11 | 图片类型太少 | 验证码图片数量有限,可制作特征库 |
5.3 挖掘方法
┌─ 判断验证码是否后端校验 ─┐│ │├── 否:直接抓包爆破 ││ │├── 是:尝试以下方式 ││ ├── 1. 删除变量参数对再爆破│ ├── 2. 测试默认验证码(如 000000)│ ├── 3. 找发送验证码包中的凭证│ ├── 4. 响应包(Cookie/响应体)中找验证码│ ├── 5. HTML源码/隐藏表单中找验证码│ ├── 6. 简单验证码工具识别│ ├── 7. 图片集数量少 → 制作特征库│ ├── 8. 猜测验证码生成算法│ │ └── 如时间戳后6位、md5()│ │ └── 生成字典,在字典中查询验证码│ └── 9. 爆破验证码│ └── 绕过请求频繁限制:手机号后加空格等│└─ 任意密码重置 ├── 未授权绕过:直接构造请求跳过中间步骤 ├── 授权错误:替换身份 token 或 UID └── 接收自己验证码,修改他人密码5.4 验证码绕过脑图(核心)
┌─ 验证码功能中的校验点 │ ┌──────────┼──────────┐ │ │ │ 发送验证码 验证验证码 重置密码 │ │ │ 凭证泄露 可预测/ 未授权绕过 劫持 可绕过 授权错误5.5 任意密码重置(账户劫持)
| 方式 | 说明 |
|---|---|
| 未授权绕过 | 先走常规流程,发现规律后直接构造请求跳过中间步骤 |
| 授权错误 | 请求包中身份 token 有规律,替换其他用户 ID 或 token |
六、越权漏洞
6.1 分类
| 类型 | 说明 |
|---|---|
| 水平越权 | 普通用户以其他普通用户身份操作资源 |
| 垂直越权 | 普通用户以管理员身份操作资源 |
6.2 挖掘方法
1. 准备 2 个账号互相测试2. 找认证参数(关键) └── 每次请求服务器凭什么认为你是合法用户?3. 修改关键参数为其他用户 ID 或管理员4. 尝试越权访问核心难点: 认证参数的生成原理 → 需要反复尝试和猜测,生成对应的其他用户信息。
6.3 典型场景
- 查看/修改用户资料
- 查看/取消订单
- 添加/删除用户
- 查看/导出数据
6.4 靶场
- Pikachu: 水平越权(查看其他用户信息)、垂直越权(普通用户添加用户)
七、支付逻辑漏洞
7.1 边界值攻击
| 类型 | 示例 |
|---|---|
| 负数 | 购买数量设为 -1,总额变为负数 |
| 超大数 | 金额设为 999999999 导致溢出 |
| 超小数 | 金额设为 0.001 绕过最低支付 |
7.2 其他参数篡改
商品单价 → 改为 0.01商品数量 → 改为负数总价 → 改为任意值商品编号 → 替换为更贵的商品优惠金额 → 改为最大值优惠券/卡币 → 任意使用积分/货币 → 任意修改结算类别 → 替换折扣 → 改为 0(免费)用户身份信息 → 替换(手机号、邮箱、账号 ID)7.3 顺序执行缺陷
1. 跳过中间逻辑(如审核、验证步骤)2. 直接进入发货流程(省略支付)3. 重放发货请求 → 多次发货4. 获取支付 key → 不支付直接发货示例:
- 正常流程:下单 → 支付 → 发货
- 利用方式:下单后,直接访问发货 URL(跳过支付)
八、未授权漏洞
无需登录即可访问需要认证的资源。
典型场景:
- 后台目录可被直接访问
- API 接口无认证校验
- 通过修改 UID/role 参数绕过
- 通过响应包篡改绕过登录
九、登录页面渗透思路
| 测试点 | 说明 |
|---|---|
| 短信/邮箱轰炸 | 重复发送验证码 |
| 密码爆破 | 字典攻击 |
| 用户名爆破 | 枚举有效用户 |
| 验证码安全 | 前端校验、重复使用、空值绕过 |
| HTML 源码泄露 | 测试账号在注释中 |
| SQL 注入 | 登录框注入 |
| XSS | 用户名/密码字段 |
| 撞库 | 社工机器人 |
| 空密码 | 尝试空密码登录 |
| 认证凭证替换 | 修改返回包中的账号字段 |
| Cookie 仿冒 | 修改 Cookie 中的身份标识 |
十、密码找回功能逻辑漏洞
| 漏洞类型 | 说明 |
|---|---|
| 短信/邮箱轰炸 | 重复发送验证码 |
| 短信/邮箱劫持 | 接收其他用户的验证码 |
| 验证码与用户未绑定 | 用自己验证码修改他人密码 |
| 跳过验证步骤 | 直接访问重置密码页面 |
| 验证码返回到前端 | 在响应包中直接返回验证码 |
| 弱 Token | 重置密码 Token 可预测 |
| Session 覆盖 | 通过 Session 猜测他人身份 |
| 爬虫批量修改 | 自动遍历用户 ID 重置密码 |
📌 快速参考卡片
验证码绕过速查
# 1. 删除验证码参数user=admin&pwd=123 # 删除 &code=xxx
# 2. 默认验证码000000 / 111111 / 888888
# 3. 重复使用验证码不变,多次尝试
# 4. 前端绕过直接抓包重放
# 5. 生成规则预测时间戳后6位 / rand(1000,9999)越权测试流程
1. 用用户A登录 → 抓取请求2. 识别身份标识参数(uid、userid、token)3. 将参数改为用户B的值4. 观察响应是否有变化5. 尝试更改为 admin/1/0 测试垂直越权支付逻辑测试点
1. 修改数量为负数2. 修改单价为小数3. 修改总价为 0.014. 替换商品编号5. 跳过支付步骤6. 重放发货请求文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章智能推荐
1
文件包含漏洞
技术文章本地/远程文件包含的利用方式、PHP 伪协议与敏感文件路径,以及挖掘与防御方法。
2
中间件解析漏洞
技术文章Apache、Nginx、IIS 三大中间件解析漏洞的成因、复现过程与利用条件。
3
文件上传漏洞
技术文章上传绕过方式、图片马、条件竞争,以及 getshell 后的权限问题。
4
弱口令与未授权访问
技术文章Hydra 服务爆破、Tomcat 后台弱口令 getshell,以及未授权访问漏洞清单与挖掘思路。
5
XXE 外部实体注入
技术文章XXE 的成因、文件读取与 SSRF 利用链,以及禁用外部实体的防御方案。
随机文章随机推荐















