CVE-2023-39332

Critical

Description

Various `node:fs` functions allow specifying paths as either strings or `Uint8Array` objects. In Node.js environments, the `Buffer` class extends the `Uint8Array` class. Node.js prevents path traversal through strings (see CVE-2023-30584) and `Buffer` objects (see CVE-2023-32004), but not through non-`Buffer` `Uint8Array` objects. This is distinct from CVE-2023-32004 which only referred to `Buffer` objects. However, the vulnerability follows the same pattern using `Uint8Array` instead of `Buffer`. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

SeverityCritical
CVSS9.8
Exploit probability82. percentile2.2%
ProductNodejs Node.js
PublishedOct 18, 2023
First seenOct 18, 2023

How to fix

Update
  • nodejs node.js20.8.0 or later

Affected products

ProductAffected versionsFixed in
nodejs node.js20.0.0 ≤ v < 20.8.020.8.0
fedoraproject fedora39—

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.