【用途】 本技能用于在获得授权的安全评估中系统性地发现和验证 IDOR(Insecure Direct Object Reference,不安全的直接对象引用)漏洞。适用于漏洞赏金或渗透测试场景,帮助测试者从对象的引用方式、接口设计和权限校验差异入手,判断某个对象资源是否可以被非授权用户访问、修改或删除。
【主要能力】
- 识别高价值目标类型:财务单据/账单接口、私有仓库与源码、用户私信、账号管理端点、组织/企业管理、内容审核管理动作等。
- 攻击面信号:含 id、uuid、order_id、org_id 等参数的 URL 模式,API 版本路径,GraphQL 端点,返回原始 ID 的 JSON 接口,前端 JS 中的 ID 拼接与状态存储等。
- 方法论:梳理对象引用→枚举 ID 类型(顺序整数/UUID/哈希)→建立两个同级账号→以 B 账号重放 A 账号资源 ID→测试所有 HTTP 动词→跨租户/跨组织测试→GraphQL 专项测试→写操作与破坏性操作测试→IDOR 链式组合→记录差异证据。
- 检测载荷:curl 换 Cookie/Token 复放、GraphQL 查询替换文档 ID、ffuf 枚举顺序 ID、Burp Intruder 注入点、JS 打包文件抓取泄漏 ID、源码 grep 常见缺权模式、HTTP 方法篡改循环。
- 绕过思路:UUID 从其它响应或 JS 泄漏中回收、哈希/base64 解码、资源令牌绑定缺陷、API 版本间授权逻辑不一致、参数名变体与嵌套 JSON、HTTP 参数污染等。
- 影响判定门槛:明确攻击者当前能做什么、受害者失去什么(机密性/完整性/可用性)、能否在 10 分钟内从零复现(两个新账号、完整请求、200 响应或状态变更证据)。
- 链式组合:如 IDOR 改邮箱+重置密码→账号接管、GraphQL 全局 ID+关系遍历→跨租户批量数据提取、团队成员 IDOR+批量赋值→角色提升等。
- 常见根因:ORM 查询缺少归属校验、仅路由级鉴权、信任客户端提交的 ID、GraphQL 解析器缺少字段级鉴权、不同 HTTP 动词鉴权不一致、间接引用泄漏、竞态与状态型 IDOR、多租户隔离缺失。
【使用方式】 必须先通过强制确认门槛:用户需说明确切的目标 URL、IP、账号或资源,确认已获得书面授权及允许范围,展示将要执行的确切命令及预期效果,并在当前对话中明确确认。未获确认时保持只读,仅提供防御性指导,建议在沙箱、一次性虚拟机或受控实验环境中操作。测试时使用两个同级账号或两个不同组织账号进行对照,保留请求与响应证据。
【适用场景】 SaaS 与 B2B 多租户平台、金融科技与支付处理器、社交平台私有内容、开发者工具的仓库/组织隔离、移动端 API 等。
【限制】 仅限教育目的或获得明确书面授权的安全评估;滥用违法。不得绕过已约定的速率限制或扩大范围获取真实受害者数据。资料未提供具体收费、价格或平台支持信息。