CVE-2024-21896

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
20/02/2024
Last modified:
02/04/2025

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.<br /> This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 21.<br /> Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Vulnerable products and versions

CPE From Up to
cpe:2.3:a:nodejs:node.js:*:*:*:*:-:*:*:* 20.0.0 (including) 20.11.1 (excluding)
cpe:2.3:a:nodejs:node.js:*:*:*:*:-:*:*:* 21.0.0 (including) 21.6.2 (excluding)