Vulnerability advisory
CVE-2026-115909
zip: Unbounded Symlink-Target Handling Can Abort Or Exhaust Memory During Extraction
Also known as GHSA-q7v9-x93c-xqv3RUSTSEC-2026-0429
- CVSS 3.x
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/zip-rs/zip2 ↗ | |
| 102e31113daa5e9553db14c985b1db3f519174a8 to before 2b1c4244a6f42906c8b3f21a358bf2321d0baaef | 2b1c4244a6f42906c8b3f21a358bf2321d0baaef |
| Not specified | a543a1fc8f3f3eef36f27bb137230295284cdb98 |
Also listed as affected (54)
| |
Description
zip is a zip library for Rust that supports reading and writing simple ZIP files. From 1.3.0 until 9.0.0, ZipArchive::extract in src/read/mod.rs calls Vec::with_capacity for a symbolic link target using the attacker-controlled ZIP64 uncompressed_size before reading entry data. A small archive can request an impossible capacity, causing the infallible allocation path to abort the process before the entry is validated. The failure cannot be contained with catch_unwind or a worker thread, allowing repeated denial of service in archive-processing applications. This issue is fixed in version 9.0.0.
References
- Webgithub.com/zip-rs/zip2/releases/tag/v9.0.0 ↗
- Advisorygithub.com/CVEProject/cvelistV5/tree/main/cves/2026/115xxx/CVE-2026-115909.json ↗
- Advisorygithub.com/zip-rs/zip2/security/advisories/GHSA-q7v9-x93c-xqv3 ↗
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-115909 ↗
- Fixgithub.com/zip-rs/zip2/commit/a543a1fc8f3f3eef36f27bb137230295284cdb98 ↗
- Fixgithub.com/zip-rs/zip2/pull/984 ↗