CVE-2024-21896

Published Feb 20, 2024

Last updated 3 months ago

Overview

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.
Source
support@hackerone.com
NVD status
Awaiting Analysis

Social media

Hype score
Not currently trending

Risk scores

CVSS 3.0

Type
Secondary
Base score
7.9
Impact score
5.8
Exploitability score
1.5
Vector string
CVSS:3.0/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N
Severity
HIGH

Weaknesses

134c704f-9b21-4f2e-91b3-4a467353bcc0
CWE-27