信息泄露漏洞报告:通过账户管理(用户访问)中的“添加用户”查找功能
报告 ID: #3401464 报告平台: HackerOne 报告状态: 已解决 严重等级: 中 (CVSS 4.3) CVE ID: CVE-2025-52669 弱点类型: 因策略不兼容导致的敏感信息暴露
漏洞概述
当属于“管理账户1”的用户导航至 用户访问 → 添加用户 并输入用户名时,系统会在所有账户中执行全局查找,而不是将搜索范围限制在当前账户内。如果输入的用户名属于另一个账户(例如“管理账户2”)的用户,应用程序会在“添加用户”表单中返回并显示该用户的联系名称和电子邮件地址——尽管当前用户无权访问该账户。
受影响的版本: revive-adserver 6.0.0
复现步骤
前提条件:
- 安装有多个账户(管理员、管理账户1、管理账户2)的 Revive Adserver。
- 攻击者账户 = 管理账户1 下的用户。
- 受害者账户 = 管理账户2 下的用户。
步骤:
- 以属于“管理账户1”的用户身份登录。
- 导航至“管理账户1”的“用户访问”页面。
- 点击“添加用户”(或将焦点置于“待添加用户的用户名”字段)。
- 在用户名字段中输入存在于“管理账户2”中的用户名(例如
yoyomiski)。 - 观察响应:表单返回并显示
yoyomiski的联系名称和电子邮件,尽管您没有访问“管理账户2”的权限。
账户结构示例:
|
|
影响
- 信息泄露: 权限较低的用户可以获取其他账户中用户的个人身份信息(联系名称和电子邮件地址)。
时间线与处理
- 2025年10月27日 15:00 UTC: 报告由安全研究员
yoyomiski提交。 - 2025年10月27日 16:02 UTC: Revive Adserver 团队成员
mbeccati确认收到报告。 - 2025年10月28日 10:28 UTC: 状态更改为 已分类。开发团队确认了该问题,并解释了其历史原因:用户和账户管理系统在设计之初旨在提供极大的灵活性,本意是一个便利功能,但可能被恶意利用。
- 2025年10月28日 10:29 UTC: 开发团队提供了修复补丁 (
h1-3401464.patch)。修复方案决定将“链接现有用户”的权限限制为仅管理员用户可用(因为管理员已拥有所有信息的访问权,不存在泄露)。非管理员用户输入已存在的用户名时,将收到错误提示,从而将信息泄露范围限制在“特定用户名已被使用”这一事实。 - 2025年10月28日 11:05 UTC: 状态更改为 已解决。团队计划于2025年11月5日(周三)发布包含多个漏洞修复的安全版本,并会申请CVE-ID。
- 2025年11月4日 17:27 UTC: 更新CVE引用为 CVE-2025-52669。
- 约13天前(报告披露日): 报告被公开披露(2025年11月19日 09:34 UTC)。