CVE-2025-11946CVE-2025-11946 是 LogicalDOC Community Edition 9.2.1 及之前版本中存在的一个反射型跨站脚本(Reflected XSS)漏洞。该漏洞位于文档管理系统的添加联系人页面(Add Contact Page),具体涉及 /frontend.jsp 文件中的处理逻辑。攻击者可以通过操控多个输入参数(包括 First Name、Last Name、Company、Address、Phone 和 Mobile 等字段)注入恶意的 JavaScript 脚本代码。由于这些参数在服务端处理后未经充分过滤或转义就返回到客户端浏览器中渲染,恶意脚本将在受害者的浏览器上下文中执行。
该漏洞的 CVSS 3.1 评分为 3.5 分,属于低危级别。虽然漏洞利用需要低权限认证(PR:L)和用户交互(UI:R),但其攻击向量为网络(AV:N),意味着远程攻击者可以通过诱骗已登录的用户点击特制链接来触发漏洞利用。漏洞的完整性影响为低(I:L),机密性影响为低(C:L),可用性影响为无(A:N)。
该漏洞已于 2025 年 10 月 19 日公开披露。值得注意的是,安全研究人员在漏洞披露前已联系了 LogicalDOC 厂商,但厂商未做出任何回应。漏洞的利用代码(PoC)已在公共渠道发布,这增加了该漏洞被实际利用的风险。尽管该漏洞被评为低危级别,但在特定场景下(如窃取会话凭证、进行钓鱼攻击或执行未授权操作)仍可能对用户和组织造成实质性安全威胁。
该 XSS 漏洞的根本原因在于 LogicalDOC Community Edition 的添加联系人功能(Add Contact Page)在处理用户提交的表单数据时缺乏充分的输入验证和输出编码。具体而言,当用户通过 /frontend.jsp 端点提交联系人信息时,包括 First Name、Last Name、Company、Address、Phone 和 Mobile 在内的多个字段被直接嵌入到返回的 HTML 响应页面中,而服务端未对这些字段中的 HTML 特殊字符(如 <、>、"、'、& 等)进行适当的转义或过滤。
攻击者可以构造包含恶意 JavaScript 代码的请求参数,例如在 First Name 字段中注入 <script>alert(document.cookie)</script> 或 <img src=x onerror=alert(1)> 等载荷。当受害者在已登录状态下访问包含这些恶意参数的 URL 时,浏览器将解析并执行嵌入的脚本。由于漏洞利用需要低权限认证,攻击者首先需要拥有一个有效的低权限账户,或者通过社会工程学手段诱骗已登录用户点击特制链接。
该漏洞的利用链如下:首先,攻击者注册或获取一个低权限的 LogicalDOC 账户;其次,构造一个包含恶意 XSS 载荷的 URL,指向 /frontend.jsp 的添加联系人功能;然后,通过钓鱼邮件、即时消息或其他方式将链接发送给目标用户;最后,当目标用户点击链接时,恶意脚本在其浏览器中执行,可用于窃取会话 Cookie、劫持用户会话、进行权限提升或发起进一步的攻击活动。