Skip to content
Fencer Vulns
critical 9.8

CVE-2023-39332 in the critical feed json

Various `node:fs` functions allow specifying paths as either strings or `Uint8Array` objects.

published 2023-10-18 3 y ago modified 2026-09-08 2 mo ago also BIT-node-2023-39332 , BIT-node-min-2023-39332 , EUVD-2023-43063

cvss
9.8
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
2.2%
EPSS 2.2% chance of exploitation in 30 days, percentile 82%
public exploits
0
none known

Summary

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.

Patch / fix

  • bitnami node 20.8.0
  • bitnami node-min 20.8.0
  • NodeJS Node 20.8.1
  • npm RHEL 8 1:10.1.0-1.20.8.1.1.module+el8.9.0+20473+c4e3d824
  • nodejs RHEL 8 1:20.8.1-1.module+el8.9.0+20473+c4e3d824
  • nodejs-nodemon RHEL 8 3.0.1-1.module+el8.9.0+20473+c4e3d824
  • nodejs-full-i18n RHEL 8 1:20.8.1-1.module+el8.9.0+20473+c4e3d824
  • nodejs-packaging RHEL 8 2021.06-4.module+el8.9.0+19519+e25b965a
  • nodejs-packaging-bundler RHEL 8 2021.06-4.module+el8.9.0+19519+e25b965a

red hat advisories RHSA-2023:7205

  • nodejs20 openSUSE Tumbleweed 20.8.1-1.1

opensuse advisories openSUSE-SU-2024:13337-1

  • npm AlmaLinux 8 1:10.1.0-1.20.8.1.1.module_el8.9.0+3675+0258a6d9
  • nodejs AlmaLinux 8 1:20.8.1-1.module_el8.9.0+3675+0258a6d9
  • nodejs-nodemon AlmaLinux 8 3.0.1-1.module_el8.9.0+3675+0258a6d9
  • nodejs-full-i18n AlmaLinux 8 1:20.8.1-1.module_el8.9.0+3675+0258a6d9
  • nodejs-packaging AlmaLinux 8 2021.06-4.module_el8.9.0+3684+11b9e959
  • nodejs-packaging-bundler AlmaLinux 8 2021.06-4.module_el8.9.0+3684+11b9e959

almalinux advisories ALSA-2023:7205

  • nodejs-nodemon Rocky Linux 8 3.0.1-1.module+el8.8.0+1459+02651ab6
  • nodejs-packaging Rocky Linux 8 2021.06-4.module+el8.7.0+1072+5b168780

rocky linux advisories RLSA-2023:7205

  • nodejs-current Alpine 3.24, Alpine 3.23, Alpine 3.22 +4 more 20.8.1-r0

alpine advisories ALPINE-CVE-2023-39332

Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2023-39332 updated cvss 9.8

nodejs: path traversal through path stored in Uint8Array

  • Red Hat Enterprise Linux AppStream (v. 8) nodejs 20.8.1-1.module+el8.9.0+20473+c4e3d824, npm 10.1.0-1.20.8.1.1.module+el8.9.0+20473+c4e3d824, nodejs-nodemon 3.0.1-1.module+el8.9.0+20473+c4e3d824, nodejs-full-i18n 20.8.1-1.module+el8.9.0+20473+c4e3d824, nodejs-packaging 2021.06-4.module+el8.9.0+19519+e25b965a, nodejs-packaging-bundler 2021.06-4.module+el8.9.0+19519+e25b965a
    fixed: vendor fix RHSA-2023:7205
  • Red Hat Enterprise Linux 8 npm, nodejs, nodejs-libs, nodejs-nodemon, nodejs-full-i18n, nodejs-packaging, +1 more Red Hat Enterprise Linux 9 npm, nodejs, nodejs-libs, nodejs-full-i18n Red Hat Software Collections rh-nodejs14-npm, rh-nodejs14-nodejs, rh-nodejs14-nodejs-full-i18n
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
yes
Technical impact
total
Assessed
2 y ago

Exploit prediction

2.19% chance of exploitation in the next 30 days, higher than 82% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
OSV 3.1 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Affected packages

ecosystem package affected fixed in
bitnami node
>=20.0.0, <20.8.0
20.8.0
bitnami node-min
>=20.0.0, <20.8.0
20.8.0

Affected products

  • NodeJS Node

Classification

Weakness
  • CWE-22 Improper Limitation of a Pathname to a Restricted Directory
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.