CVE-2026-40931
Node-Modules Compressing ≤ 1.10.5
Raw vector
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HCVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.
Summary
CVE-2026-40931 is a high-severity Link Following (CWE-59) vulnerability in Node-Modules Compressing. Its CVSS base score is 8.4 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Path Interception (T1034); ranked at the 18th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
The strongest mitigations our analysis identified map to AC-3 (Access Enforcement) and AC-6 (Least Privilege) — see the control section below for these in your framework.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-40931 is a vulnerability in the Compressing library, a Node.js module for compressing and uncompressing files, affecting versions prior to 2.1.1 and 1.10.5. The issue stems from a flawed patch for the prior CVE-2026-24884, where the isPathWithinParent utility performs only logical string validation to check if a resolved path starts with the destination directory string. This fails to consider the actual filesystem state, creating a "logical vs. physical" divergence that enables bypass via directory poisoning with pre-existing symbolic links. It is classified under CWE-59 (Improper Link Resolution Before File Access) with a CVSS v3.1 base score of 8.4 (AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
A local attacker with no privileges required can exploit this vulnerability by creating pre-existing symbolic links that poison target directories. During compression or uncompression operations, the inadequate path validation allows the attacker to bypass restrictions, enabling arbitrary file access outside the intended destination directory. This results in high-impact confidentiality, integrity, and availability violations, such as overwriting critical files or extracting contents to unauthorized locations.
The GitHub security advisory (GHSA-4c3q-x735-j3r5) confirms the vulnerability is fixed in Compressing versions 2.1.1 and 1.10.5, recommending immediate upgrades to these patched releases as the primary mitigation.
OWASP Top 10 for Web (2025)
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-24488
Vulnerability Data
Compressing is a compressing and uncompressing lib for node. Prior to 2.1.1 and 1.10.5, the patch for CVE-2026-24884 relies on a purely logical string validation within the isPathWithinParent utility. This check verifies if a resolved path string starts with the…
more
destination directory string but fails to account for the actual filesystem state. By exploiting this "Logical vs. Physical" divergence, an attacker can bypass the security check using a Directory Poisoning technique (pre-existing symbolic links). This vulnerability is fixed in 2.1.1 and 1.10.5.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
—
—
—
V15.4.2
Mitigating Controls (NIST 800-53 r5) AI
Proper enforcement of access authorizations on the resolved target resource stops a link from reaching an unintended object.
Least-privilege limits the damage an attacker can cause after following an unintended link.
Validating file-name inputs can reject or canonicalize names that resolve to links before access occurs.
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Secure SDLC practices directly require code to validate paths and avoid unsafe link following.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Secure SDLC practices can mandate link-resolution checks and canonicalization before file access.
Application security requirements can explicitly require safe handling of symbolic links and path traversal.
Secure architecture principles include input validation and safe file-access design patterns.
Secure coding standards directly address canonicalization and symlink attacks during implementation.
Security testing can detect link-following flaws before release.
Access-control rules can limit which files are reachable, reducing exposure to malicious links.