decompress before 4.2.2 contains an improper path containment check that enables…
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Partial Red Hat: 1 fixed, 1 without a fix
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA and Red Hat.
Summary
decompress before 4.2.2 contains an improper path containment check that enables directory traversal and arbitrary file write. The safeMakeDir function (index.js line 29) and the extraction path validation (index.js line 106) use String.indexOf() to verify the resolved path is within the output directory: realDestinationDir.indexOf(realOutputPath) !== 0. This check is flawed because it does not enforce a path separator boundary. For example, "/tmp/app_config".indexOf("/tmp/app") returns 0, incorrectly passing the check even though /tmp/app_config is outside /tmp/app. Combined with the unvalidated symlink creation in the same package, an attacker can write arbitrary files to directories adjacent to the extraction target. This is a bypass of the fix for CVE-2020-12265. The correct check requires appending a path separator: realParentPath.indexOf(realOutputPath + path.sep) !== 0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | — | all versions | — | No fix listed | CNA |
- — Vendor— Affected all versions Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:decompress_project:decompress:*:*:*:*:*:node.js:*:* | up to 4.2.1 | Vulnerable | Decompress Project |
- cpe:2.3:a:decompress_project:decompress:*:*:*:*:*:node.js:*:* Versions up to 4.2.1 Vulnerable ·Decompress Project
Remediation
Red Hat 1 advisory
- RHSA-2026:37577 Released 2026-07-10 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images aspnetcore-runtime-8.0-8.0.28-1.1.hum1@aarch64, aspnetcore-runtime-8.0-8.0.28-1.1.hum1@x86_64, aspnetcore-runtime-dbg-8.0-8.0.28-1.1.hum1@aarch64 +22
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Build of Keycloak | Affected | No fix yet: Fix deferred |
| Red Hat Hardened Images | Fixed | RHSA-2026:37577 |
Not affected: 1 product
- Red Hat Advanced Cluster Management for Kubernetes 2
Timeline
- 2026-10-02 Threatist record created from CVE-2026-39245
- 2026-10-03 Alias added: GHSA-qcj4-cj8p-fhf4
References
More Decompress Project Decompress vulnerabilities
- TI-2026-28286 decompress before 4.2.2 allows arbitrary symlink creation during archive extraction. CVSS 3.1HIGH 7.5
- TI-2026-28283 decompress before 4.2.2 allows arbitrary hardlink creation during archive extraction… CVSS 3.1MEDIUM 5.5
- TI-2020-09798 The decompress package before 4.2.1 for Node.js is vulnerable to Arbitrary File Write via… CVSS 3.1CRITICAL 9.8
Sources
- CVE-2026-39245 · CVE Program
- CVE-2026-39245 · NVD
- FIRST EPSS
- GHSA-qcj4-cj8p-fhf4 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-39245 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences