CVE Catalog

CVE-2026-115907

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.35%

29th percentile - higher than 29% of all known CVEs

Summary

The zip library for Rust, from 5.1.0 until 9.0.0, with the legacy-zip feature enabled, reserves output capacity based on an attacker-controlled ZIP64 uncompressed size before validating the compressed stream. The ShrinkDecoder path in src/legacy/shrink.rs can panic with a capacity overflow during ZipArchive::extract, and the Reduce and Implode decoders contain the same unbounded preallocation pattern. An unhandled panic can terminate an archive-processing service.

Risk Assessment

An attacker can supply a crafted ZIP archive that triggers a panic and crashes the archive-processing service, causing denial of service. The risk affects applications using the legacy-zip feature in versions 5.1.0 through 8.x.

Recommendation

Upgrade the zip library to version 9.0.0 or later, which fixes this issue. If upgrading is not possible, consider disabling the legacy-zip feature or restricting processing of untrusted archives.

Related vulnerabilities

Original NVD description (English source)

zip is a zip library for Rust that supports reading and writing simple ZIP files. From 5.1.0 until 9.0.0, applications built with the legacy-zip feature can reserve output capacity from an attacker-controlled ZIP64 uncompressed size before validating the compressed stream. The ShrinkDecoder path in src/legacy/shrink.rs can panic with a capacity overflow during ZipArchive::extract, and the Reduce and Implode decoders contain the same unbounded preallocation pattern. An unhandled panic can terminate an archive-processing service. This issue is fixed in version 9.0.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS