CVE-2026-115908 json
zip: Arbitrary file write outside the extraction directory, because ZipArchive::extract validates symlink targets lexically. (The defense against CVE-2025-29787 was broken in v7.2.0)
published 14d ago modified 11d ago also GHSA-hjqx-j4rw-g7xv , EUVD-2026-109985
- cvss
- 7.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 37%
- public exploits
- 0
- none known
Summary
zip is a zip library for Rust that supports reading and writing simple ZIP files. From 7.2.0 until 9.0.0, ZipArchive::extract and ZipArchive::extract_unwrapped_root_dir use safe_prepare_path in src/read/zipfile.rs and simplified_components in src/path.rs to validate symbolic link targets with a lexical prefix comparison rather than resolving each intermediate link. An attacker who knows or can guess the absolute extraction destination can create a chain whose apparent target remains under the destination while an intermediate symlink resolves outside it, allowing attacker-controlled files to be created or overwritten with the extracting process's privileges. On Windows, discarded drive and UNC prefixes can permit a single-link escape when the process has SeCreateSymbolicLinkPrivilege, such as through administrator rights or Developer Mode. This regression is distinct from CVE-2025-29787. This issue is fixed in version 9.0.0.
Patch / fix
- crates.io zip 9.0.0
- rust-keylime SLE Micro 5.5 0.2.10+12-150500.3.22.1
- rust-keylime SLE Micro 5.4 0.2.10+12-150400.3.22.1
suse advisories SUSE-SU-2026:4931-1SUSE-SU-2026:4930-1
- gleam openSUSE Tumbleweed 1.19.2-1.1
- rust-keylime openSUSE Tumbleweed 0.2.10+12-1.1
- python-uv openSUSE Tumbleweed 0.13.6-1.1
opensuse advisories openSUSE-SU-2026:12454-1openSUSE-SU-2026:12333-1openSUSE-SU-2026:12307-1
Is CVE-2026-115908 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-115908 updated cvss 7.4
zip: zip: Arbitrary file overwrite via improper symbolic link validation during extraction
-
Red Hat Ansible Automation Orchestrator 2026 ansible-automation-platform/automation-orchestrator-backend-rhel9 Red Hat Confidential Cluster Operator confidential-clusters-beta/compute-pcrs-rhel9, confidential-clusters-beta/registration-server-rhel9, confidential-clusters-beta/attestation-key-register-rhel9, confidential-clusters-beta/confidential-cluster-rhel9-operator, confidential-clusters-beta/confidential-cluster-operator-bundle Red Hat Confidential Compute Attestation agent-sandbox/agent-sandbox-router, openshift-sandboxed-containers/osc-podvm-builder-rhel9affected: workaround, no fix available
-
Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-to-dataverse-exporter-rhel9affected: workaround, no fix planned “Will not fix”
-
Red Hat Ansible Automation Platform 2 ansible-automation-platform-26/hub-rhel9, ansible-automation-platform-27/hub-rhel9, ansible-automation-platform-24/lightspeed-rhel8, ansible-automation-platform-25/lightspeed-rhel8, ansible-automation-platform-26/controller-rhel9, ansible-automation-platform-26/de-minimal-rhel9, +11 moreaffected: workaround, no fix available “Fix deferred”
-
Red Hat Discovery 2 discovery/discovery-server-rhel9 Red Hat Enterprise Linux 9 rust, cargo, clippy, rustfmt, rust-gdb, rust-src, +9 more Red Hat Enterprise Linux 10 rust 1.92.0-2.el10_2, keylime-agent-rust 0.2.10-2.el10 Red Hat Enterprise Linux AI (RHEL AI) 3 rust 1.92.0-2.el10_2 Red Hat Lightspeed Services for OCP lightspeed-services-ocp/ocp-rules-rhel9 Red Hat OpenShift AI (RHOAI) rhoai/odh-feature-server-rhel9, rhoai/odh-ml-pipelines-runtime-generic-rhel9, rhoai/odh-model-registry-job-async-upload-rhel9affected: workaround, no fix available
+1 more productsfewer
Red Hat Satellite 6 satellite/iop-vmaas-rhel9, satellite/iop-advisor-engine-rhel9, satellite/iop-host-inventory-rhel9, satellite/iop-advisor-backend-rhel9, satellite/iop-vulnerability-engine-rhel9 -
Red Hat Trusted Profile Analyzer rhtpa/rhtpa-rhel10, rhtpa/rhtpa-trustification-service-rhel9affected: workaround, no fix available, no fix planned “Will not fix”
-
Red Hat Pen Drive Powered by Red Hat Lightspeed pen-drive/pen-drive-scanner-rhel9not affected: component not present
-
Red Hat Ansible Automation Platform 2 ansible-automation-platform-26/gateway-rhel9, ansible-automation-platform-27/gateway-rhel9, ansible-automation-platform-26/mcp-tools-rhel9, ansible-automation-platform-27/mcp-tools-rhel9, ansible-automation-platform-26/ee-minimal-rhel9, ansible-automation-platform-26/lightspeed-rhel9, +7 morenot affected: vulnerable code not in execute path
-
Red Hat Ansible Automation Platform Ansible Core 2 ansible-automation-platform/ee-minimal-rhel8, ansible-automation-platform/ee-minimal-rhel9, ansible-automation-platform-tech-preview/ee-minimal-rhel8, ansible-automation-platform-tech-preview/ee-minimal-rhel9 Red Hat Enterprise Linux 8 rls, rust, cargo, clippy, firefox, rustfmt, +12 morenot affected: vulnerable code not present
show 3 moreshow fewer
-
Red Hat Enterprise Linux 9 goose, firefox, firefox-x11, thunderbird, keylime-agent-rust, goose 1.45.0-1.el10_2, +3 more Red Hat Enterprise Linux 10 goose 1.45.0-1.el10_2, firefox 153.5.0-1.el10_2, thunderbird 140.17.0-1.el10_2 Red Hat Enterprise Linux command line assistant rhel-cla/rhel-knowledge-bridge-rhel10not affected: vulnerable code not in execute path
-
Red Hat Hardened Images rust 1.92.0-2.el10_2, ruff 0.15.11-1.1.hum1, openshell 0.1.4-0.1.hum1, rust-add-determinism 0.7.3-3.1.hum1not affected: component not present
-
Red Hat Quay 3 quay/quay-rhel8, quay/quay-rhel9not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 14d ago
Exploit prediction
0.43% chance of exploitation in the next 30 days, higher than 37% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H |
| GitHub | 3.1 | 7.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | zip | >=7.2.0, <9.0.0 |
9.0.0 |
Affected products
- zip-rs zip2
Classification
References
Sources
- CVE List CVE-2026-115908
- GitHub Advisory GHSA-hjqx-j4rw-g7xv
- NVD CVE-2026-115908
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.