Skip to main content

decompress CVE-2026-10732

| EUVDEUVD-2026-34785 MEDIUM
Path Traversal: '\\..\\filename' (CWE-29)
2026-06-05 snyk GHSA-h39j-r5qq-r9mm
5.6
CVSS 4.0 · Vendor: snyk
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Craft ZIP with symlink entry + same-path regular file
  2. Delivery
    Deliver archive to target using decompress
  3. Exploit
    Application triggers extraction
  4. Install
    Microtask order causes readlink check before symlink resolves
  5. C2
    Containment check bypassed, file written through symlink
  6. Execute
    Arbitrary file planted outside output directory
  7. Impact
    RCE via planted cron job or web shell

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path traversal prevention
Exploitation Conditions

Exploitation requires that the target application uses the decompress npm package (any version) to extract ZIP archives that are supplied or influenced by an attacker. The UI:R CVSS rating reflects that a user or automated process must actively initiate archive extraction - applications processing untrusted archives in unattended pipelines (CI/CD, file ingestion services, upload handlers) are effectively equivalent to having no user interaction barrier. The AC:H rating reflects the need to construct a precisely crafted two-entry ZIP with a specific structure: a symlink entry followed by a same-named regular file in a controlled sequence. No attacker-side authentication is required (PR:N). Exploitation impact is bounded by the filesystem permissions of the Node.js process running decompress - containerized deployments with strict volume mounts and least-privilege process identity significantly reduce the attacker's reachable write surface. The bypass specifically defeats the preventWritingThroughSymlink protection introduced for CVE-2020-12265; deployments that applied that prior patch and consider themselves protected are not.

Impact

The CVSS 3.1 base score of 6.4 encodes AV:N (network-reachable trigger), AC:H (high complexity: requires a precisely crafted two-entry archive), PR:N (no attacker-side authentication), UI:R (a user or process must initiate extraction), and S:U/C:L/I:H/A:L. The I:High rating is the dominant risk signal - arbitrary file write outside the extraction root directly enables RCE in most server deployments. The E:P temporal modifier confirms publicly available proof-of-concept code, lowering the skill bar for exploitation. No EPSS score was included in the provided data, and this CVE is not in the CISA KEV catalog, meaning no confirmed active exploitation at time of analysis. The AC:H and UI:R ratings are meaningful mitigations for interactive deployments, but automated pipelines processing untrusted archives without human review are functionally equivalent to AC:L/UI:N in practice. Critically, operators who applied the CVE-2020-12265 patch believing their deployments were protected remain vulnerable - this CVE explicitly bypasses that prior fix, which is an important risk amplifier beyond raw CVSS.

Exploit ScenarioDerived

An attacker delivers a specially crafted ZIP archive to a web application or CI/CD pipeline using decompress for archive processing. The ZIP contains two entries sharing the same relative path: the first is a symlink pointing to a sensitive server-side location such as /etc/cron.d or a web application root, and the second is a regular file containing malicious content such as a cron job or web shell. When the application triggers extraction, the microtask ordering flaw allows the regular file's content to be written through the unresolved symlink to the attacker-chosen target path outside the output directory, achieving arbitrary file plant and likely remote code execution. A proof-of-concept demonstrating this technique is publicly available at https://gist.github.com/Alemmi/409c3cc148c39522c6d6a8538b0e1f9e.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 05, 2026

Arbitrary file write in the npm decompress package (all versions) exploits a second-generation Zip Slip bypass that circumvents protections introduced in the CVE-2020-12265 fix. By crafting a ZIP archive where a symlink entry and a same-named regular file share an identical path, an attacker leverages microtask scheduling order to write file contents through the unresolved symlink to arbitrary locations outside the extraction output directory, creating a realistic path to remote code execution. Publicly available exploit code exists per the E:P temporal modifier and a published PoC Gist, elevating real-world concern especially for applications processing untrusted archives in automated pipelines.

RemediationAI

Monitor GitHub PR #112 (https://github.com/kevva/decompress/pull/112) and the decompress npm registry page for a patched tagged release; upgrade to that version immediately upon publication. The fix replaces flawed indexOf-based containment checks with stricter startsWith(outputPath + path.sep) comparisons, closing both the prefix confusion and the symlink ordering bypass. Do not rely on the preventWritingThroughSymlink configuration option from the CVE-2020-12265 fix - this CVE explicitly circumvents it. Until a patched release is available, consider migrating to a maintained alternative such as adm-zip or unzipper that has independently verified Zip Slip defenses. As a compensating control, validate all archive entry paths before extraction, reject archives containing symlink entries, or run the extraction process inside a container or chroot environment with write access restricted to the intended output directory only - note that process isolation adds deployment complexity and does not fix the underlying library flaw. Restricting the Node.js process to least-privilege filesystem permissions limits the blast radius if exploitation occurs.

Affected VersionsENISA

decompress 0 <*

Affected Packages

npm decompress no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The decompress npm package (CPE: cpe:2.3:a:n/a:decompress:*:*:*:*:*:*:*:*) provides archive extraction for Node.js. CWE-29 (Path Traversal using '../../filename') describes the root cause class: the extractor fails to confine extracted content to the intended output directory. The specific mechanism is a microtask ordering flaw in the async extraction pipeline - when a ZIP contains a symlink entry and a same-path regular file, the readlink check for the second entry executes before the symlink from the first entry is resolved, bypassing the preventWritingThroughSymlink guard added to address CVE-2020-12265. A secondary code-level flaw exposed in GitHub PR #112 is an indexOf prefix confusion bug: the original guard checked realParentPath.indexOf(realOutputPath) !== 0, which incorrectly passes for sibling paths such as 'dist-evil' when the output path is 'dist' (indexOf returns 0 on any shared string prefix). The fix in PR #112 replaces this with a startsWith(outputPath + path.sep) comparison, which correctly rejects paths that merely share a string prefix with the output directory.

Know when Decompress gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (snyk) PRIMARY 5.6 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N/E:P
Red Hat 7.5 HIGH

Primary rating from Vendor (snyk).

CVSS VectorVendor: snyk

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
High
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
CVSS changed
Jun 05, 2026 - 07:22 NVD
6.4 (MEDIUM) 5.6 (MEDIUM)

DescriptionCVE.org

All versions of the package decompress are vulnerable to Arbitrary File Write via Archive Extraction (Zip Slip) when extracting a ZIP archive containing two entries with the same path - the first being a symlink to an arbitrary target and the second being a regular file - the file content is written through the symlink to the target location outside the output directory. This is due to the microtask processing order that checks readlink for the second file before resolving symlink for the first file. An attacker can write arbitrary file on the host filesystem potentially leading to remote code execution by providing a specially crafted ZIP archive. Note: This bypasses all existing path traversal protections including preventWritingThroughSymlink, added as a part of the fix for CVE-2020-12265.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 26,670 npm packages depend on decompress (1,218 direct, 25,542 indirect)

Ecosystem-wide dependent count for version 4.2.1.

Threat Intelligence Overview

EPSS Score
0.1%
Top 82% exploitable
Social Media
2
Sightings
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy