CVE-2022-50685CVE-2022-50685是Kentico Xperience CMS平台中的一个存储型跨站脚本(XSS)漏洞。该漏洞允许经过身份验证的低权限用户通过文件上传功能注入恶意脚本。攻击者可以利用页面附件或元文件上传功能,上传包含恶意JavaScript代码的XML文件。当其他用户访问或查看这些被注入的XML文件时,存储在其中的恶意脚本会在受害者浏览器中执行,从而窃取会话Cookie、劫持用户账户或进行其他恶意操作。由于攻击代码持久化存储在服务器上,每次页面加载时都会触发,形成了持久的攻击向量。此漏洞的CVSS评分为5.4,属于中等严重程度,但结合社工攻击可能造成严重危害。
该漏洞源于Kentico Xperience对上传XML文件的内容验证不足。具体问题在于:1) 系统允许用户上传XML文件作为页面附件或元文件;2) 上传过程中未对XML内容进行充分的HTML/脚本转义或内容过滤;3) 恶意XML文件被存储在服务器上后,当其他用户访问包含该文件的页面时,浏览器会解析并执行其中的恶意脚本。攻击者只需拥有低权限账户(如普通用户或内容编辑者),通过正常的文件上传接口上传特制的XML文件即可实现攻击。XML文件中的恶意脚本会在受害者访问相关页面时自动执行,无需受害者点击任何链接。攻击者可利用此漏洞窃取用户会话信息、凭据或执行任意客户端操作。修复方案需要在文件上传和展示环节增加严格的输入验证和输出编码。