CVE-2024-37372
Low · 3.6CVSS
3.6
EPSS
0.5%
Published
Jan 9, 2025
CISA due date
—
Cloudanix analysis
A flaw in checking certain file paths could let someone on the same computer reach files they are not supposed to access.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- High
- Impact
- Data Exposure
- Component
- Library
- Class
- Path Traversal
- Remediation
- Patch
- Effort
- Low
- Patch risk
- Low
What it actually does
The Permission Model skips validation on paths beginning with two backslashes by incorrectly assuming a fixed four-character prefix can always be stripped, allowing certain path traversal sequences to bypass intended access controls.
Why it matters to the business
Attackers with local access may read or write files outside intended directories, increasing risk of data exposure or tampering in environments using the affected permission checks.
How an attack unfolds
An attacker supplies a crafted path starting with \\ that does not match the assumed prefix pattern, causing the permission model to skip restrictions and grant unauthorized file system access.
How to fix it
Update to a version containing corrected path-handling logic in the Permission Model; validate all path inputs without relying on prefix-length assumptions.
How to confirm the fix worked
Review source or binary for updated path normalization that correctly handles leading backslashes; test edge-case paths starting with \\ against permission boundaries.
Typical attack path
- Identify an application or component enforcing path-based permissions
- Craft a local file path beginning with two backslashes that evades the four-character prefix assumption
- Submit the path through the affected API or file operation
- Bypass permission checks and access restricted resources
How to detect it
Search application and system logs for file operations involving paths that begin with two backslashes; correlate with unexpected access to protected directories.
What your security team should do
- Prioritize patching any components using the affected Permission Model
- Add runtime path canonicalization and input validation around file operations
- Monitor for unusual local file access patterns until mitigations are applied
The record
The Permission Model assumes that any path starting with two backslashes \ has a four-character prefix that can be ignored, which is not always true. This subtle bug leads to vulnerable edge cases.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Alpine:v3.19 | nodejs | 0 | 0 |
| Alpine:v3.20 | nodejs | 0 | 0 |
| Alpine:v3.21 | nodejs | 0 | 0 |
| Alpine:v3.22 | nodejs | 0 | 0 |
| Bitnami | node | 19.0.0 | 20.15.1 |
| Bitnami | node-min | 19.0.0 | 20.15.1 |
| Bitnami | node-min | 19.0.0 | 20.18.1 |
| Chainguard | nodejs-21 | 0 | 21.7.3-r8 |
| Chainguard | nodejs-21-doc | 0 | 21.7.3-r8 |
| Mageia:9 | nodejs | 0 | 22.6.0-1.mga9 |
| Mageia:9 | yarnpkg | 0 | 1.22.22-0.10.8.2.1.mga9 |
| SUSE:Linux Enterprise Module for Web and Scripting 15 SP5 | nodejs20 | 0 | 20.15.1-150500.11.12.2 |
| SUSE:Linux Enterprise Module for Web and Scripting 15 SP6 | nodejs20 | 0 | 20.15.1-150600.3.3.2 |
| Ubuntu:20.04:LTS | nodejs | 0 | No fix |
| Ubuntu:22.04:LTS | nodejs | 0 | No fix |
| Ubuntu:24.04:LTS | nodejs | 0 | No fix |
| Ubuntu:24.10 | nodejs | 0 | No fix |
| Ubuntu:25.04 | nodejs | 0 | No fix |
| Ubuntu:Pro:14.04:LTS | nodejs | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | nodejs | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | nodejs | 0 | No fix |
| Wolfi | nodejs-21 | 0 | 21.7.3-r8 |
| Wolfi | nodejs-21-doc | 0 | 21.7.3-r8 |
| openSUSE:Leap 15.5 | nodejs20 | 0 | 20.15.1-150500.11.12.2 |
| openSUSE:Leap 15.6 | nodejs20 | 0 | 20.15.1-150600.3.3.2 |
| openSUSE:Tumbleweed | nodejs20 | 0 | 20.15.1-1.1 |
| openSUSE:Tumbleweed | nodejs22 | 0 | 22.10.0-1.1 |
| openSUSE:Tumbleweed | nodejs24 | 0 | 24.11.1-2.1 |
| openSUSE:Tumbleweed | nodejs26 | 0 | 26.3.1-1.1 |
Related vulnerabilities
- CVE-2023-39333 Maliciously crafted export names in an imported WebAssembly module can inject JavaScript… Also affects nodejs
- CVE-2024-36137 A vulnerability has been identified in Node.js, affecting users of the experimental… Also affects nodejs
- CVE-2024-36138 Bypass incomplete fix of CVE-2024-27980, that arises from improper handling of batch… Also affects nodejs
- CVE-2024-22018 A vulnerability has been identified in Node.js, affecting users of the experimental… Also affects nodejs
- CVE-2024-22020 A security flaw in Node.js allows a bypass of network import restrictions. Also affects nodejs
- CVE-2024-27982 The team has identified a critical vulnerability in the http server of the most recent… Also affects nodejs
- CVE-2024-27983 An attacker can make the Node.js HTTP/2 server completely unavailable by sending a small… Also affects nodejs
- CVE-2022-3786 A buffer overrun can be triggered in X.509 certificate verification, specifically in name… Also affects nodejs