挖洞经验 | 用BurpSuite实现越权漏洞(IDOR)的自动发现识别
字数 1146 2025-08-18 11:39:15

BurpSuite自动化发现IDOR(越权)漏洞指南

一、IDOR漏洞概述

IDOR(Insecure Direct Object Reference,不安全的直接对象引用)漏洞发生在以下场景:

  • 当用户对内部资源的访问请求
  • 或基于用户提供的输入对象进行访问时
  • 服务端未进行合理的权限验证
  • 导致当前用户可以未经授权访问不属于自己账户权限的资源或数据

二、自动化探测工具准备

1. 插件安装

在BurpSuite的插件库(Bapp)中安装以下两个插件:

  • Autorize
  • Autorepeater

2. 测试用户准备

建议准备两个不同权限级别的用户账户:

  • 用户A:管理员权限
  • 用户B:普通用户权限

三、使用Autorize探测IDOR漏洞

1. 配置步骤

  1. 使用管理员(用户A)账户正常访问Web应用
  2. 在Autorize的请求配置中添加用户B的会话Cookie
  3. 设置作用域过滤器,优化结果显示

2. 工作原理

  • 表面访问客户端是用户A
  • 实际请求中使用的是用户B的会话Cookie
  • 比较原始请求和修改后请求的响应差异

3. 结果分析

  • 存在漏洞:原始长度(Original length)和修正长度(Modified length)无差异,且状态码均为200
  • 无漏洞:收到403 Forbidden状态码

四、使用Autorepeater探测IDOR漏洞

1. 高级功能

Autorepeater是更复杂的版本,可以:

  • 针对特定参数进行精确测试(如uuid、suid、uid等用户参数)
  • 实现更灵活的请求修改

2. 配置方法

  1. 手动设置参数替换规则(如uuid替换测试)
  2. 可添加多种替换变量实现请求主体变化
  3. 支持其他参数或请求修改:
    • User = Admin
    • False = True
    • JSON = XML

3. 应用场景

  • 云应用中针对内部租户的测试
  • 跨域租户的安全功能审计

五、工具资源

  1. Autorize:

  2. AutoRepeater:

  3. 参考视频教程:

六、最佳实践建议

  1. 测试前明确测试范围和授权
  2. 使用多个不同权限级别的测试账户
  3. 重点关注以下参数:
    • 用户ID相关参数(uid, userid, id等)
    • 资源标识符(uuid, suid等)
    • 权限相关参数(role, level等)
  4. 结合BurpSuite的其他功能(如Scanner)进行综合测试
  5. 注意测试过程中的业务影响,避免生产环境数据污染
BurpSuite自动化发现IDOR(越权)漏洞指南 一、IDOR漏洞概述 IDOR(Insecure Direct Object Reference,不安全的直接对象引用)漏洞发生在以下场景: 当用户对内部资源的访问请求 或基于用户提供的输入对象进行访问时 服务端未进行合理的权限验证 导致当前用户可以未经授权访问不属于自己账户权限的资源或数据 二、自动化探测工具准备 1. 插件安装 在BurpSuite的插件库(Bapp)中安装以下两个插件: Autorize Autorepeater 2. 测试用户准备 建议准备两个不同权限级别的用户账户: 用户A:管理员权限 用户B:普通用户权限 三、使用Autorize探测IDOR漏洞 1. 配置步骤 使用管理员(用户A)账户正常访问Web应用 在Autorize的请求配置中添加用户B的会话Cookie 设置作用域过滤器,优化结果显示 2. 工作原理 表面访问客户端是用户A 实际请求中使用的是用户B的会话Cookie 比较原始请求和修改后请求的响应差异 3. 结果分析 存在漏洞 :原始长度(Original length)和修正长度(Modified length)无差异,且状态码均为200 无漏洞 :收到403 Forbidden状态码 四、使用Autorepeater探测IDOR漏洞 1. 高级功能 Autorepeater是更复杂的版本,可以: 针对特定参数进行精确测试(如uuid、suid、uid等用户参数) 实现更灵活的请求修改 2. 配置方法 手动设置参数替换规则(如uuid替换测试) 可添加多种替换变量实现请求主体变化 支持其他参数或请求修改: User = Admin False = True JSON = XML 3. 应用场景 云应用中针对内部租户的测试 跨域租户的安全功能审计 五、工具资源 Autorize : GitHub主页: https://github.com/Quitten/Autorize AutoRepeater : GitHub主页: https://github.com/nccgroup/AutoRepeater 参考视频教程: https://www.youtube.com/watch?v=3K1-a7dnA60&t=357s 六、最佳实践建议 测试前明确测试范围和授权 使用多个不同权限级别的测试账户 重点关注以下参数: 用户ID相关参数(uid, userid, id等) 资源标识符(uuid, suid等) 权限相关参数(role, level等) 结合BurpSuite的其他功能(如Scanner)进行综合测试 注意测试过程中的业务影响,避免生产环境数据污染