不安全的直接对象引用 (IDOR) 漏洞通过可预测的访问控制暴露敏感用户数据。本技能提供系统化的检测方法和技术手段,用于在授权安全评估期间识别和记录 IDOR 缺陷。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“IDOR Vulnerability Testing”。 如何在地址更新端点测试 IDOR?
预期结果:
这是系统化的方法:首先,捕获一个更新自己地址的请求。注意 userId 参数。然后,将 userId 修改为目标其他用户的 ID,同时保持自己的会话令牌。如果更新成功,则发现了 IDOR 漏洞。通过登录受害者账户并检查地址是否更改来验证。
正在使用“IDOR Vulnerability Testing”。 展示如何使用 Burp Suite 进行 IDOR 测试
预期结果:
配置 Burp Suite:将目标请求发送到 Intruder。将攻击类型设置为 Sniper,并选择 ID 参数作为 payload 位置。使用从 1 到 1000 的数值 payload,步长为 1。开始攻击并分析响应。任何返回不同用户数据的 200 状态码都表明存在 IDOR 漏洞。
安全审计
安全Static analysis detected 87 potential security patterns including external command execution references and cryptographic weak algorithms. All findings are FALSE POSITIVES - they represent documentation examples in markdown code blocks (curl commands, HTTP requests, shell examples) rather than executable code. The skill provides legitimate security testing guidance for authorized penetration testing with proper legal disclaimers and authorization requirements. No malicious intent or executable threats identified.
风险因素
质量评分
你能构建什么
渗透测试项目
安全顾问在授权的 Web 应用程序评估期间使用系统化的 IDOR 检测方法,识别客户应用程序中的访问控制绕过漏洞。
应用程序安全审计
内部安全团队在部署前通过测试参数操作用户上下文隔离,评估自己的应用程序是否存在 IDOR 漏洞。
漏洞赏金狩猎
独立研究人员在公开暴露的应用程序中发现 IDOR 缺陷,并通过负责任的披露计划报告发现结果。
试试这些提示
我需要测试端点 /api/user/profile?id={USER_ID} 是否存在 IDOR 漏洞。我有两个账户:attacker(ID 1001)和 victim(ID 1000)。请逐步指导我完成测试过程。展示如何配置 Burp Suite Intruder 在 PUT /api/addresses/{id}/update 端点上枚举从 1 到 1000 的用户 ID。包括 payload 配置和攻击类型选择。应用程序在 /download/receipt_{id}.pdf 提供 PDF 收据。我可以下载自己的收据(ID 205),但想测试是否可以访问其他用户的收据。请提供测试方法。所有直接 IDOR 测试都返回 403 Forbidden。端点使用 UUID 而非顺序 ID。我应该尝试哪些替代技术来绕过访问控制,包括 HTTP 方法切换和参数污染?
最佳实践
- 在对不属于您的任何应用程序进行安全测试之前,务必获得书面授权
- 创建专用测试账户,使用易于识别的数据,以便轻松验证跨用户访问
- 记录每个测试请求,包括修改的参数、响应代码和观察到的行为,确保报告可复现
- 谨慎使用自动化枚举工具,避免中断生产系统或触发严格的速率限制
避免
- 测试期间切勿修改或导出真实用户数据——创建独特的测试数据,无需访问生产信息即可识别
- 在不了解应用程序的速率限制和账户锁定策略之前,不要执行枚举攻击
- 避免在高峰时段在生产系统上测试,因为流量增加可能影响合法用户或触发异常检测
- 切勿在遵循负责任披露程序并给予供应商修补时间之前公开披露漏洞