Revive Adserver | 报告 #3399218 - 设置中不正确的输入清理可能导致拒绝服务
时间线:已验证黑客lu3ky-13向Revive Adserver提交了一份报告。
2025年10月25日,UTC时间4:42
我发现在account-settings-email.php中存在一个输入清理/编码问题,攻击者控制的、保存在email_fromName和email_fromCompany中的值会被持久化存储,并在后续渲染到页面时没有进行适当的输出编码。由于任意JavaScript可以被持久化并在查看者的浏览器中执行,攻击者可以运行脚本来破坏或替换页面UI——有效地使受害者的网站无法使用(DOM级拒绝服务)。这是一个存储型/脚本注入漏洞,当渲染给管理员或特权用户时,具有高影响。
安全概念验证
- 访问
http://localhost/test2/revive-adserver-6.0.1/www/admin/account-settings-email.php - 在
email_fromName和email_fromCompany字段添加载荷 - 这将禁用整个网站,你将无法使用它。
HTTP请求
|
|
测试URL
http://localhost/test2/revive-adserver-6.0.1/www/admin/account-settings-email.php
影响 当持久化的值被渲染到任何用户查看的页面时,在应用来源中执行任意脚本。 攻击者可能的操作包括:
- 替换页面内容或移除UI控件(使网站对受害者不可用)。
- 阻止与应用的交互(禁用按钮、隐藏表单)——有效地对查看受感染页面的用户实施有针对性的拒绝服务。
- 针对用户的钓鱼覆盖、强制操作或其他客户端攻击(仅在cookie/会话未加固时才可能发生数据窃取)。 如果管理员用户查看受影响的页面,则影响很高(网站中断;可能在管理员上下文下执行特权操作)。 严重性:高——取决于哪些角色能看到持久化的值以及现有的cookie/会话保护措施。
附件
F4931193: image.png
F4931194: image.png
2025年10月25日,UTC时间7:09 Revive Adserver工作人员mbeccati将状态改为“需要更多信息”。 感谢报告。是什么类型的载荷导致了这个问题?
2025年10月25日,UTC时间14:11 黑客lu3ky-13将状态改回“新”。 你好团队, 这是我使用的载荷:
|
|
大多数其他部分也存在相同的问题。
2025年10月25日,UTC时间18:16 Revive Adserver工作人员mbeccati将状态改为“已分类”。 非常有趣,谢谢。我们会研究一下。
2025年10月25日,UTC时间18:20 黑客lu3ky-13发表评论。 你好, 关于CVE我有一个问题。你们是如何提供给我们的? 所有报告都接受CVE吗? 我查看了一些没有分配CVE的旧报告。你能给我更多信息吗? @mbeccati
2025年10月25日,UTC时间18:29 Revive Adserver工作人员mbeccati发表评论。 如果确认,每份报告都会获得一个CVE-ID。它们将在新版本发布时随披露信息一同公开。我们还需要了解您希望在安全公告文本中如何署名。
2025年10月25日,UTC时间18:53 黑客lu3ky-13发表评论。 署名 Ahmed Abdalkhaliq Abdulla (Lu3ky.13) https://github.com/Lu3ky13
2025年10月26日,UTC时间10:54
Revive Adserver工作人员mbeccati发表评论。
随附的h1-3399218.patch (F4933997)文件应该可以修复这个漏洞。
问题发生的原因是代码没有正确转义%字符,该字符在Symfony参数中具有特殊含义。在两个百分号之间使用意外内容可能导致应用程序崩溃,就像你的例子。另一方面,使用类似%env(PWD)%的内容会向symfony容器参数中插入环境变量。
风险较低,因为只有管理员可以更改设置,而且他们已经有很多其他方式来破坏应用程序或访问/操作数据。
此外,设置页面有CSRF攻击防护,所以我不认为这是执行DoS或其他类型攻击的可行方式。
附件
F4933997: h1-3399218.patch
2025年10月26日,UTC时间11:29 Revive Adserver工作人员mbeccati将严重性从高(7.3)更新为低(2.7)。 更改了CVSS评分,使其更合适。攻击者需要拥有管理员权限,并且最终可能破坏管理员UI。
2025年10月26日,UTC时间19:35 黑客lu3ky-13发表评论。 你好亲爱的, 我有个问题,这个修复是否覆盖了整个网站?我在其他几个地方尝试了相同的场景,也有效。如果我再次报告,会算作根本原因吗?@mbeccati
2025年10月27日,UTC时间12:03 Revive Adserver工作人员mbeccati发表评论。 是的,这份报告覆盖了所有设置,因为这是同一个问题。
2025年10月28日,UTC时间11:04 Revive Adserver工作人员mbeccati关闭了报告并将状态改为“已解决”。 我们目前计划在下周三,即11月5日,进行一次安全发布,修复多个漏洞。 我们将请求CVE-ID并准备详细的安全公告。如果您还没有告诉我们,请告知您希望使用的署名名称。 然而,由于某些漏洞的风险级别,我们将在一段时间后再披露详细信息,以便让尽可能多的用户在漏洞利用程序泛滥之前进行升级。希望您理解并同意提议的计划。
2025年10月28日,UTC时间11:57 黑客lu3ky-13发表评论。 署名 Ahmed Abdalkhaliq Abdulla (Lu3ky.13) https://github.com/Lu3ky13
2025年10月31日,UTC时间13:48 Revive Adserver工作人员mbeccati将报告标题从“存储型JavaScript注入 — 保存在email_fromName / email_fromCompany中的脚本可能导致网站禁用”改为“设置中不正确的输入清理可能导致拒绝服务”。
2025年10月31日,UTC时间14:23 Revive Adserver工作人员mbeccati将CVE引用更新为CVE-2025-52666。
2025年11月10日,UTC时间22:21 黑客lu3ky-13请求披露此报告。
2025年11月19日,UTC时间9:32 Revive Adserver工作人员mbeccati同意披露此报告。 此报告已被披露。
报告详情
- 报告时间:2025年10月25日,UTC时间4:42
- 报告人:lu3ky-13
- 报告对象:Revive Adserver
- 参与者:(无)
- 报告ID:#3399218
- 状态:已解决
- 严重性:低 (2.7)
- 披露时间:2025年11月19日,UTC时间9:32
- 弱点:业务逻辑错误
- CVE ID:CVE-2025-52666
- 赏金:隐藏
- 账户详情:无