CVE-2024-21896: nodejs node Path Traversal: 'dir/../../filename'
Vulnerability summary
CVE-2024-21896 is a critical (CVSS 9.8) Path Traversal: 'dir/../../filename' vulnerability in nodejs node. EPSS estimates a 1.26% chance of exploitation in the next 30 days, higher than 69.6% of scored vulnerabilities.
Not severe (CVSS 7.9, local access); no exploitation reported by the 5 checked sources
Source freshness unavailable
How is this decided?Advisory lineage
Upstream 0 · Downstream 5 · Related 3Timeline
- 20-02-2024PublishedVulnerability first disclosed.
- 30-04-2025Last modifiedVulnerability information updated.
Description
The permission model protects itself against path traversal attacks by calling path.resolve() on any paths given by the user. If the path is to be treated as a Buffer, the implementation uses Buffer.from() to obtain a Buffer from the result of path.resolve(). By monkey-patching Buffer internals, namely, Buffer.prototype.utf8Write, the application can modify the result of path.resolve(), which leads to a path traversal vulnerability. This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.
CVSS metrics
5 scores · 3 sources · 2 versions- OSV · UbuntuEcosystem advisory · calculated9.8CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- OSV · UbuntuEcosystem advisory · calculated7.9HighCVSS:3.0/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N
- NVDNIST7.9HighCVSS:3.0/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N
EPSS trend
Probability
1.26%
Chance of exploitation in the next 30 days
Percentile
70%
Versus all other CVEs
30-day change
No change 0.00 pp
From 1.26% on 04-10-2026
Known exploited
Compare KEV catalogsNot in the CISA KEV catalog.
Not in the ENISA CNW catalog.
Not in the CIRCL catalog.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root causeAffected systems
Known conditions: local access, low-privilege account, user interaction (CVSS vector). Other conditions: not stated in public data.
Nodejs2 products
- node≥ 4.0, < 4.* | ≥ 5.0, < 5.* | ≥ 6.0, < 6.* | ≥ 7.0, < 7.* | ≥ 8.0, < 8.* | ≥ 9.0, < 9.* | ≥ 10.0, < 10.* | ≥ 11.0, < 11.* | ≥ 12.0, < 12.* | ≥ 13.0, < 13.* | ≥ 14.0, < 14.* | ≥ 15.0, < 15.* | ≥ 16.0, < 16.* | ≥ 17.0, < 17.* | ≥ 19.0, < 19.* | ≥ 20.0, < 20.11.1 | ≥ 21.0, < 21.6.2
- node.js≥ 20.0.0, < 20.11.1 | ≥ 21.0.0, < 21.6.2
Chainguard1 product
- eco-nodejs-20.9.0All versions (No fix recorded)
Ubuntu1 product
- nodejsAll versions (No fix recorded)
3 vendors · 4 products
References
9 links- hackerone.com/reports/2218653Issue Tracking
- security.netapp.com/advisory/ntap-20240329-0002/Third Party Advisory