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.
Published: 2026-10-26
Score: 7.5 High
EPSS: n/a
KEV: No
Impact: Denial of Service via process abort or memory exhaustion from unbounded symlink target handling
Action: Patch immediately
AI Analysis

Impact

Zip2, a Rust ZIP library, contains an unbounded allocation flaw in the extraction routine that processes symbolic link target sizes based on an attacker‑controlled ZIP64 uncompressed_size field. The flaw uses Vec::with_capacity to pre‑allocate storage for a symlink target, and if the size requested is too large, the allocation fails through the infallible path and aborts the process before the entry is validated. This results in a denial of service rather than data corruption. The weakness is represented by CWE‑400 (Uncontrolled Resource Consumption) and CWE‑789 (Memory Allocation).

Affected Systems

The vulnerability affects the zip‑rs zip2 library for Rust, with affected releases spanning from version 1.3.0 through 8.9.x, until the issue is fixed in version 9.0.0. Systems that include any of these versions as a dependency are vulnerable.

Risk and Exploitability

The CVSS score of 7.5 indicates a high risk. EPSS is not available, so exploitation probability is undetermined, and the vulnerability is not listed in the CISA KEV catalog. An attacker can supply a malicious ZIP archive containing an overly large symlink target size, triggering the abort or memory exhaustion during extraction. The failure is not catchable in a different thread or with catch_unwind, allowing repeated denial of service in applications that process ZIP files.

Generated by OpenCVE AI on October 26, 2026 at 17:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the zip2 crate to version 9.0.0 or newer so that the allocation path is corrected.
  • Re‑build the application after removing any older zip2 references from Cargo.lock to ensure the protected version is used.
  • Validate the update by running extraction tests with both normal and malicious ZIP archives to confirm that the process no longer aborts or exhausts memory.

Generated by OpenCVE AI on October 26, 2026 at 17:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 26 Oct 2026 16:45:00 +0000

Type Values Removed Values Added
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.
Title zip: Unbounded Symlink-Target Handling Can Abort Or Exhaust Memory During Extraction
Weaknesses CWE-400
CWE-789
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-26T16:39:00.037Z

Reserved: 2026-10-23T20:21:45.106Z

Link: CVE-2026-115909

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-26T17:17:18.450

Modified: 2026-10-26T17:17:18.450

Link: CVE-2026-115909

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-26T17:30:16Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-789

    Memory Allocation with Excessive Size Value