SuperAPI AI 工具集

idor-broken-object-authorization

测试与质量

查看项目

更新于 10-15 21:53

技能介绍

用途:面向 API 越权漏洞的测试手册,聚焦 IDOR(不安全直接对象引用)、BOLA(对象级授权失效)与 BFLA(功能级授权失效)。核心区分是 BOLA 指访问不属于自己的对象数据,BFLA 指低权限用户调用高权限功能(如管理端点)。

主要能力:

  1. 对象 ID 位置枚举:URL 路径、查询参数、请求体、JSON 字段、请求头(X-User-ID 等)、Cookie、GraphQL 参数、表单字段、WebSocket 消息。
  2. A-B 测试法:创建 UserA 与 UserB 两个账号,以 A 执行全部操作并记录对象 ID,再用 B 的会话重放 A 的请求,若 B 能读改 A 的数据即确认 BOLA。
  3. ID 类型分析:顺序整数、UUID v4、时间可预测的 UUID v1、哈希 ID、base64 编码 ID、复合 ID。
  4. 横向与纵向越权:同权限访问他人数据,或低权限调用管理端点、修改角色字段。
  5. HTTP 方法升级:GET 受限时测试 POST/PUT/DELETE/PATCH,因授权逻辑常按方法分别实现。
  6. 参数污染与类型混淆:数组、重复参数、字符串与整数、多 ID 字段。
  7. 间接 IDOR:父对象校验通过但子资源(附件、评论)未校验归属。
  8. 批量赋值:注册或更新时注入 role、isAdmin、verified、creditBalance 等隐藏字段。
  9. 状态机滥用:跳过订单状态或修改他人订单状态。
  10. ORM 过滤链泄露:Django filter 注入(password__startswith)、Prisma 嵌套 include/select 泄露字段、Rails Ransack 查询谓词逐字符提取。

使用方式:按清单执行——建两个账号、用 Burp 等抓取含对象 ID 的请求、对每个端点测试所有 HTTP 动词与 ID 位置、尝试相邻 ID 与自有账号收集的 UUID、测试子资源与管理端点、检查请求体多余字段、对比响应字段数与文档字段、测试状态字段修改。

适用场景:API 安全测试、漏洞赏金、渗透测试中的授权缺陷排查。

限制:资料未提供具体工具安装命令、收费信息或平台支持范围;实际测试须在获得授权的目标上进行。