漏洞概述 该漏洞涉及在获取质量报告时,如果父级资源(如组织或个人工作区)不可访问,API 会返回不一致的状态码(200 或 500),而不是预期的 403。这可能导致攻击者通过观察响应状态码来推断某些资源的存在性,从而泄露敏感信息。 影响范围 API 端点: 受影响资源:质量报告及其父级资源(组织或个人工作区) 潜在风险:攻击者可以利用此漏洞进行信息泄露,进一步可能用于更复杂的攻击。 修复方案 1. 明确检查权限:在获取质量报告时,显式检查用户是否有权限查看父级资源。 2. 统一响应状态码:无论父级资源是否可访问,如果用户无权查看质量报告,应始终返回 403 状态码。 3. 代码修改: - 在 中,添加对父级资源权限的检查。 - 在 中,确保权限检查逻辑正确。 POC 代码 以下是修复后的关键代码片段: 这些修改确保了在获取质量报告时,会先检查用户是否有权限查看父级资源,从而避免不一致的响应状态码。