【转载】【已复现】npm周下载量6523万+的Vitest存在高危漏洞(CVE-2026-47429)可任意读取文件
Vitest测试框架曝高危漏洞(CVE-2026-47429,CVSS 9.8),存在未授权任意文件读取风险。攻击者通过页面暴露的API Token及路径穿越payload即可读取服务器敏感文件,影响Windows平台下Vitest UI服务版本<4.1.0。360漏洞研究院已成功复现漏洞,建议用户立即升级至4.1.0及以上安全版本。该漏洞无需认证且利用难度低,可导致密钥、配置文件等核心数据泄露。
Vitest 是目前最流行的 JavaScript 测试框架之一,npm 周下载量超过 6523 万。近日 Vitest 曝出未授权任意文件读取漏洞(CVE-2026-47429,CVSS:9.8),攻击者无需任何凭据,仅需获取页面暴露的 API Token,即可通过路径穿越读取服务器上的任意文件,导致敏感数据泄露。 此漏洞影响范围广泛,建议用户立即升级。
利用前置条件:
- 目标服务器运行 Vitest UI 服务
目前 360漏洞挖掘智能体已成功复现该漏洞。本文包含完整影响范围、修复方案、技术原理与复现细节,建议用户立即升级。
| 漏洞概述 | |||
|---|---|---|---|
| 漏洞名称 | Vitest 未授权任意文件读取漏洞 | ||
| 漏洞编号 | CVE-2026-47429 | ||
| 公开时间 | 2026-05-19 | POC状态 | 已公开 |
| 漏洞类型 | 路径穿越 / 任意文件读取 | EXP状态 | 已公开 |
| 利用可能性 | 高 | 技术细节状态 | 已公开 |
| CVSS 3.1 | 9.8 | 在野利用状态 | 未发现 |
01 漏洞影响范围
受影响的软件版本:
vitest 版本 < 4.1.0
02 修复建议
正式防护方案:
受影响用户请立即升级至以下安全版本:
4.1.0 及更高版本
03 漏洞描述
近日,Vitest 曝出未授权任意文件读取漏洞(CVE-2026-47429,CVSS 9.8)。
该漏洞存在于 @vitest/ui 插件的 /_vitest_attachment__文件读取接口中。 Vitest UI 服务启动后会将 API Token 以明文形式写入 HTML 页面,任何可访问该页面的用户均可获取该Token。攻击者利用获取的 Token调用文件读取接口,配合 ?..\ 路径穿越 payload,可绕过isFileServingAllowed 安全检查函数,实现对项目目录外任意文件的读取。漏洞根因在于 /_vitest_attachment__的 API handler 对 isFileServingAllowed 函数的使用方式不正确。该函数期望调用方在完成安全检查后、执行文件系统操作前,对路径执行 cleanUrl 清理。然而攻击者可通过注入 ?..\ 绕过检查。该漏洞仅在 Windows 平台上可利用,因为 Linux 在目录 ? 不存在时会直接报错,无法完成穿越。
该漏洞无需身份验证,利用难度低,可导致数据库凭证、密钥、配置文件等敏感信息泄露。
04 漏洞复现
我们已成功复现该漏洞,通过访问 Vitest UI 页面获取 API Token,配合路径穿越 payload 调用文件读取接口,即可读取服务器上的文件。

05 产品侧支持情况
**360安全智能体:**支持该漏洞攻击的智能分析。
360测绘云 Quake:默认支持该产品的指纹识别。
360高级持续性威胁预警系统:预计 2026年06月07日发布规则更新包,支持该漏洞利用行为的检测。
360资产与漏洞检测管理系统:预计 2026年06月07日发布规则更新包,支持该漏洞利用行为的检测。
本地安全大脑:默认支持该漏洞的PoC检测。
06 时间线
2026年06月05日,360漏洞研究院发布本安全风险通告。
07 参考链接
https://github.com/vitest-dev/vitest/security/advisories/GHSA-5xrq-8626-4rwp
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)