IPBUF安全漏洞报告
English
CVE-2023-42345 CVSS 6.1 中危

CVE-2023-42345 OpenCms跨站脚本漏洞

披露日期: 2026-05-08

漏洞信息

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

相关标签

XSSCross Site ScriptingOpenCmsCVE-2023-42345Web安全中危

漏洞概述

Alkacon OpenCms 16之前的版本中存在一个跨站脚本(XSS)漏洞,该漏洞位于`updateModelGroups.jsp`组件中。由于应用程序未能对用户提交的输入数据进行充分的过滤和转义,攻击者可以构造包含恶意JavaScript代码的特制请求。当未经身份认证的受害者被诱骗访问该恶意链接时,攻击者注入的脚本将在受害者浏览器中执行。此漏洞的成功利用可能导致攻击者窃取用户的会话Cookie、重定向用户至恶意网站,或者在受害者的浏览器上下文中执行任意操作,从而对系统的机密性和完整性造成低程度的影响。

技术细节

该漏洞的技术根源在于Alkacon OpenCms的`updateModelGroups.jsp`页面缺乏对HTTP请求参数的安全处理。在Web应用开发中,将未经验证的用户输入直接反射到HTTP响应中是导致XSS的典型原因。在本例中,攻击者可以通过URL参数(如模型ID或其他表单字段)注入恶意载荷。例如,通过在参数中插入`<script>alert(document.cookie)</script>`等代码,服务器端JSP引擎在解析请求并生成HTML响应时,会将该恶意代码原样包含在响应页面中。由于CVSS向量显示UI:R(需要用户交互),这表明攻击通常需要诱导目标用户点击特定的恶意链接。尽管CVSS评分显示无需认证(PR:N),但实际危害往往针对已登录的管理员或用户,以便利用其身份权限。利用该漏洞不需要复杂的网络攻击技能,只需基本的HTTP请求构造能力即可实现。

攻击链分析

STEP 1
侦察
攻击者识别出目标系统使用的是Alkacon OpenCms,且版本低于16。
STEP 2
构造载荷
攻击者利用`updateModelGroups.jsp`页面的参数缺陷,构造包含恶意JavaScript代码的URL。
STEP 3
传递载荷
攻击者通过网络钓鱼或其他社会工程学手段,诱导受害者(最好是管理员)点击包含恶意代码的链接。
STEP 4
执行攻击
受害者的浏览器请求该链接,服务器返回未经过滤的恶意脚本,导致脚本在受害者浏览器上下文中执行。
STEP 5
达成目标
攻击者利用执行的脚本窃取Session ID或执行未经授权的操作。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # Target URL (replace with actual target) target_url = "http://localhost:8080/opencms/system/workplace/admin/accounts/updateModelGroups.jsp" # Malicious payload to test XSS # Attempting to inject a script tag that triggers an alert payload = { "modelid": "test"><script>alert('CVE-2023-42345-XSS')</script><" } try: # Send GET request with the malicious payload response = requests.get(target_url, params=payload) # Check if the payload is reflected in the response unescaped if "alert('CVE-2023-42345-XSS')" in response.text: print("[+] Vulnerability confirmed: XSS payload reflected in response.") else: print("[-] Vulnerability not detected or payload filtered.") except Exception as e: print(f"Error: {e}")

影响范围

Alkacon OpenCms < 16.0

防御指南

临时缓解措施
如果无法立即升级,建议限制对`updateModelGroups.jsp`路径的外部访问,仅允许受信任的内网IP访问。同时,管理员应提高警惕,不轻易点击来源不明的链接,并定期检查系统日志中是否存在异常的请求参数。

参考链接