技能 IDOR Vulnerability Testing
🔒

IDOR Vulnerability Testing

低风险 ⚙️ 外部命令

测试 Web 应用程序中的 IDOR 漏洞

也可从以下获取: zebbern

识别允许未经授权访问用户数据的不安全直接对象引用漏洞。学习通过参数操作和枚举技术检测访问控制绕过的系统性方法。

支持: Claude Codex Code(CC)
📊 70 充足
1

下载技能 ZIP

2

在 Claude 中上传

前往 设置 → 功能 → 技能 → 上传技能

3

开启并开始使用

测试它

正在使用“IDOR Vulnerability Testing”。 测试 example.com/api/profile?id=1001 是否存在 IDOR 漏洞

预期结果:

开始 IDOR 漏洞评估...

测试 1:递增/递减 ID
原始:GET /api/profile?id=1001 → 返回 user_1001 数据
修改:GET /api/profile?id=1000 → 返回 user_1000 数据

漏洞已确认:检测到横向权限提升。应用程序在返回数据前未验证所有权即返回其他用户的个人资料数据。

受影响的端点:
- /api/profile?id={id}
- /api/user/{id}

建议修复:在返回数据前实施服务器端所有权检查,比较 request.user.id 与请求的个人资料 id。

正在使用“IDOR Vulnerability Testing”。 配置 Burp Suite Intruder 枚举发票 ID

预期结果:

Burp Suite Intruder 配置:

1. 发送 GET /api/invoice/123 到 Intruder(Ctrl+I)
2. 在 URL 中的 '123' 位置设置 payload 位置
3. 攻击类型:Sniper
4. Payloads:
- 类型:Numbers
- 从:1
- 到:500
- 步长:1
5. 开始攻击

分析指南:
- 过滤 200 OK 状态码
- 检查响应内容是否有不同的发票数据
- 验证任何 200 响应是否属于其他用户
- 查找 403/404 模式以识别有效与无效 ID

风险:如果 200 响应返回其他用户的发票数据,这是暴露敏感财务信息的关键 IDOR 漏洞。

正在使用“IDOR Vulnerability Testing”。 为发现的 IDOR 漏洞生成修复代码

预期结果:

修复:地址更新 IDOR

当前易受攻击的代码:
def update_address(request, address_id):
address = Address.objects.get(id=address_id)
address.update(request.data) # 无所有权检查!

安全实现:

选项 1 - 所有权验证:
```python
def update_address(request, address_id):
address = get_object_or_404(Address, id=address_id)
if address.user_id != request.user.id:
return HttpResponseForbidden('Unauthorized')
address.update(request.data)
return JsonResponse({'status': 'success'})
```

选项 2 - 间接引用模式:
```python
def update_address(request):
# 始终按认证用户过滤
address = get_object_or_404(Address, user=request.user)
address.update(request.data)
return JsonResponse({'status': 'success'})
```

建议:使用选项 2(间接引用),因为它通过设计防止 IDOR,而不是依赖验证检查。

安全审计

低风险
v1 • 2/25/2026

Static analysis detected 80 external command patterns flagged as Ruby/shell backtick execution. After evaluation, all findings are FALSE POSITIVES - the backticks appear exclusively in Markdown code blocks as educational examples demonstrating IDOR vulnerability testing techniques. The skill provides legitimate security testing guidance for authorized penetration testing activities. No actual executable code or command injection risks present.

1
已扫描文件
443
分析行数
2
发现项
1
审计总数
低风险问题 (1)
False Positive: Markdown Code Block Detection
Static analyzer flagged 80 instances of Ruby/shell backtick execution patterns. These all occur within Markdown code blocks (lines 37-442) as educational examples showing URL structures, API requests, and command configurations. No executable code present in the skill file - it is pure documentation for authorized security testing.
审计者: claude

质量评分

38
架构
100
可维护性
87
内容
50
社区
88
安全
74
规范符合性

你能构建什么

Web 应用程序渗透测试

安全专业人员在恶意攻击者发现之前,执行授权渗透测试以识别客户端应用程序中的 IDOR 漏洞

应用程序安全审计

开发团队在安全审查期间或作为安全开发生命周期流程的一部分,验证访问控制实现

漏洞赏金狩猎

独立研究人员通过负责任披露计划,系统性地测试应用程序中的 IDOR 缺陷以获取奖励

试试这些提示

基础 IDOR 测试
测试 example.com 应用程序是否存在 IDOR 漏洞。我有两个用户账户(user1@test.com 和 user2@test.com)。请逐步指导我如何检查在作为 user1 认证时是否可以访问 user2 的数据。
API 端点 IDOR 枚举
帮助我配置 Burp Suite Intruder 来测试 /api/user/{id} 和 /api/order/{orderId} 端点是否存在 IDOR 漏洞。设置使用 1 到 1000 数字 payload 的 Sniper 攻击,并向我展示如何分析结果。
使用 HTTP 方法切换的高级 IDOR 测试
对 /api/admin/users/{id} 的 GET 请求返回 403 Forbidden。请向我展示如何使用 HTTP 方法切换(POST、PUT、PATCH)和参数污染技术来绕过访问控制并测试 IDOR。
文件下载 IDOR 与修复
我在 /download/receipt_{id}.pdf 中发现了一个 IDOR 漏洞,可以访问其他用户的收据。生成一份概念验证报告,并提供 Python 代码示例,展示正确的访问控制实现以修复此问题。

最佳实践

  • 在生产系统上执行 IDOR 测试前,务必获得书面授权。记录所有测试活动和发现以进行适当报告。
  • 为安全评估创建专用测试账户,而非使用真实用户数据。使用可清晰识别的数据(例如 'IDOR_TEST_USER')来验证访问权限,而无需暴露实际个人信息。
  • 结合多种测试技术:参数操作、HTTP 方法切换和自动化枚举。某些 IDOR 漏洞仅通过特定请求模式才会显现。

避免

  • 切勿在未经明确许可的应用程序上测试 IDOR 漏洞。未经授权的访问控制测试是非法的,违反计算机欺诈法。
  • 在 IDOR 测试期间避免修改或删除数据。仅执行读取操作以验证漏洞存在。数据修改可能导致生产问题和法律责任。
  • 不要假设随机标识符(UUID/GUID)可以防止 IDOR。UUID 有时可以通过 API 响应、JavaScript 文件或基于时间的预测算法进行枚举。

常见问题

什么是 IDOR 漏洞?
IDOR(不安全直接对象引用)发生在应用程序暴露对内部对象(如数据库记录或文件)的直接引用时,允许攻击者操作这些引用以在未经适当授权检查的情况下访问其他用户的数据。
此技能仅适用于安全专业人员吗?
虽然专为安全专业人员设计,但开发人员也可以使用此技能来了解 IDOR 攻击向量并编写更安全的代码。此技能提供修复示例,有助于在开发过程中预防这些漏洞。
我需要使用 Burp Suite 才能使用此技能吗?
推荐将 Burp Suite 用于高级测试,但并非严格要求。此技能还涵盖使用浏览器开发者工具、curl 和其他 HTTP 客户端进行手动测试。基本 IDOR 测试可以使用任何允许请求修改的工具执行。
此技能能否检测所有类型的 IDOR 漏洞?
否。此技能专注于最常见的 IDOR 模式(顺序 ID、参数操作)。某些高级 IDOR 变体如基于时间的盲注 IDOR、UUID 预测攻击或链式漏洞可能需要此技能范围之外的其他技术。
测试应用程序是否存在 IDOR 漏洞合法吗?
仅在获得应用程序所有者明确书面授权的情况下可以。未经授权的安全测试在大多数司法管辖区是非法的。此技能仅应用于授权渗透测试、漏洞赏金计划或您拥有的应用程序。
如果我发现了 IDOR 漏洞该怎么办?
使用屏幕截图和复现步骤记录发现。通过负责任披露渠道报告:漏洞赏金计划、security@ 电子邮件或直接联系应用程序所有者。在漏洞修复之前,不要公开披露详细信息。

开发者详情

文件结构

📄 SKILL.md