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.
Conclusion & alert: CVE-2024-21896 is rated Moderate Risk (61.8/100): CVSS Critical severity, with medium exploitation likelihood (EPSS 1.26%). Mandatory action: Review affected assets and schedule remediation.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 1.64% | 1.26% | -0.38% |
| 2 | 2026-03-10 | 1.19% | 1.64% | +0.45% |
| 3 | 2026-03-04 | — | 1.19% | — |
Full EPSS history (35 records total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 9.8 | 3.1 | CRITICAL |
|
3.9 | 5.9 | [email protected] |
| 7.9 | 3.0 | HIGH |
|
1.5 | 5.8 | [email protected] |
| vendor | priority | summary | link |
|---|---|---|---|
alpine
|
— | CVE-2024-21896: 1 source package rows (nodejs); 7 state rows across 2 repos (3.19-main, edge-main); fixed 0, open 7. | https://security.alpinelinux.org/vuln/CVE-2024-21896 |
debian
|
unimportant | CVE-2024-21896 unimportant priority: Debian including 1 source packages (nodejs), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. | https://security-tracker.debian.org/tracker/CVE-2024-21896 |
gentoo
|
high | CVE-2024-21896: 1 GLSA(s) (202505-11), 1 atom(s) (net-libs/nodejs); latest impact high. | https://bugs.gentoo.org/buglist.cgi?quicksearch=CVE-2024-21896 |
redhat
|
high | — | https://access.redhat.com/security/cve/CVE-2024-21896 |
suse
|
high | CVE-2024-21896 severity important: SUSE including 65 source package names (20-6.12:nodejs20-20.11.1-150500.11.6.1, 20-6.12:npm20-20.11.1-150500.11.6.1, …), 247 product×package rows across 26 product lines (Container bci/nodejs, SUSE CaaS Platform 4.0, … (26 product lines)): Known Not Affected 210, Fixed 37. | https://www.suse.com/security/cve/CVE-2024-21896/ |
ubuntu
|
high | CVE-2024-21896 high priority: Ubuntu including 1 source packages (nodejs), 11 status rows across 11 suites (bionic, focal, jammy, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): not-affected 8, ignored 3. | https://ubuntu.com/security/CVE-2024-21896 |
| URL | Tags |
|---|---|
| http://www.openwall.com/lists/oss-security/2024/03/11/1 | Mailing List Third Party Advisory |
| https://hackerone.com/reports/2218653 | Issue Tracking |
| https://security.netapp.com/advisory/ntap-20240329-0002/ | Third Party Advisory |