CVE-2026-32731
严重已发布
ApostropheCMS 在导入导出 Gzip 解压中存在任意文件写入(Zip Slip / 路径遍历)漏洞
- 已发布
- 2026年3月18日
- 已更新
- 2026年3月19日
- 分配 CNA
- GitHub_M
- 观察到的证据
- 2026年8月25日
初级CVSS
9.9/ 10严重
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H0.4%
低 · 未来 30 天
- 百分位
- 36.9%
- 型号日期
- 2026年9月21日
EPSS 是统计估计,而不是确定性或影响衡量标准。将其与 CVSS、KEV 状态、暴露程度和您的环境相结合。
总结
ApostropheCMS 是一个开源内容管理框架。在 `@apostrophecms/import-export` 的 3.5.3 版本之前,`gzip.js` 中的 `extract()` 函数使用 `fs.createWriteStream(path.join(exportPath, header.name))` 构造文件写入路径。`path.join()` 不会解析或清理 `../` 等遍历段,而是将其原样拼接,这意味着名为 `../../evil.js` 的 tar 条目会解析到预期解压目录之外的路径。在打开写入流之前,没有执行规范路径检查。这是一个典型的 Zip Slip 漏洞。任何被授予全局内容修改权限的用户——该角色通常分配给内容编辑和站点管理员——都可以通过标准 CMS 导入界面上传精心构造的 `.tar.gz` 文件,并将攻击者控制的内容写入 Node.js 进程在主机文件系统上可访问的任何路径。`@apostrophecms/import-export` 的 3.5.3 版本修复了此问题。
来源
1CVE-2026-32731 的概念验证漏洞利用,演示该漏洞并提供可用于安全测试和验证的有效利用代码。
负责任的使用
仅在您拥有或有权测试的系统上使用漏洞信息。 Kitploit 链接到公共研究元数据,并且不存储漏洞代码或恶意负载。