high7.5
CVE-2026-115909
zip: Unbounded Symlink-Target Handling Can Abort Or Exhaust Memory During Extraction
Impact
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.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| rust | zip | >= 1.3.0, < 9.0.0 | 9.0.0 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Zip-Rs | Zip2 | from 1.3.0, before 9.0.0 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-q7v9-x93c-xqv3
- https://github.com/zip-rs/zip2/security/advisories/GHSA-q7v9-x93c-xqv3
- https://nvd.nist.gov/vuln/detail/CVE-2026-115909
- https://github.com/zip-rs/zip2/pull/984
- https://github.com/zip-rs/zip2/commit/a543a1fc8f3f3eef36f27bb137230295284cdb98
- https://github.com/zip-rs/zip2/releases/tag/v9.0.0