🟠 高危 | CVE-2026-17524 — Versions of the package zip-lib before 1.1.0 are v...
🟠 《高危安全漏洞:CVE-2026-17524》
CVSS 评分: 高危(8.7) 状态: Received 发布时间: 2026-07-28
漏洞简介
CVE-2026-17524 是一个存在于 zip-lib 包中的目录遍历(Directory Traversal)漏洞,对应 CWE-22 分类(路径遍历)。该漏洞源于 zip-lib 在解压过程中对路径验证的缓存机制存在缺陷。
具体来说,在 zip-lib 版本 1.1.0 之前,解压过程中用于防止目录遍历的安全函数 isOutsideTargetFolder 存在逻辑漏洞。该函数仅在首次解压创建初始目录符号链接(symlink)时检查和缓存路径状态。攻击者可以利用这一机制,在首次解压时通过精心构造的恶意 ZIP 文件,使路径验证缓存被错误地标记为“安全”,从而绕过后续的安全检查。
由于缓存机制只验证一次,后续解压操作会直接信任已缓存的路径状态,导致攻击者能够将文件写入到目标文件夹之外的任意位置(例如系统敏感目录),实现目录遍历攻击。
影响范围
- 受影响版本:zip-lib 包 1.1.0 之前的所有版本
- 修复版本:zip-lib 1.1.0 版本已修复此漏洞(通过 commit
0c29b1e17050f2611f4f37e6aaa92a60b3cb89d5) - 软件类型:JavaScript 库(npm 包),用于处理 ZIP 文件的解压和压缩
风险分析
- 攻击向量:远程攻击者可以通过诱导用户或服务解压一个特制的恶意 ZIP 文件来触发漏洞。攻击者无需任何身份验证(CVSS 权限要求:PR:N),也无需用户交互(UI:N)。
- 攻击后果:
- 文件覆盖/写入:攻击者可以将恶意文件写入目标系统上的任意路径,例如覆盖系统关键文件、配置文件或可执行文件。
- 权限提升:如果攻击者能够将文件写入到具有更高权限的目录(如
/etc/、/usr/bin/等),可能进一步导致权限提升或远程代码执行。 - 数据泄露:通过写入恶意文件(如 Web Shell)到 Web 服务器目录,攻击者可能获取敏感数据。
- CVSS 评分分析:该漏洞的 CVSS 4.0 向量为
AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N,基础分 8.7(高危)。其中:- 攻击复杂度低(AC:L),无需特殊权限(PR:N),无需用户交互(UI:N)
- 对机密性(VC:H)影响严重(可读取任意文件),但对完整性(VI:N)和可用性(VA:N)无直接影响
- 攻击范围未改变(S:N),但可利用网络远程触发(AV:N)
- 实际场景:任何使用 zip-lib 库解压用户上传 ZIP 文件的应用(如文件管理工具、CI/CD 系统、Web 应用等)均可能受影响。攻击者只需上传一个包含符号链接和恶意路径的 ZIP 文件即可触发漏洞。
🔍 技术细节
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-17524 |
| CVSS 评分 | 8.7 🟠 |
| 严重程度 | 高危 |
| CVSS 向量 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| CWE 分类 | CWE-22 |
| 发布时间 | 2026-07-28 |
| 最后更新 | 2026-07-28 |
| 状态 | Received |
| 数据来源 | report@snyk.io |
🔗 参考链接
💬 评论