Skip to content
Not rated

CVE-2023-39332 Various `node:fs` functions allow specifying paths as either strings or `Uint8Array` objects

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.

Affected products and versions

Product Affected versions Fixed in
Node 20.0 20.0 → < 20.8.1 20.8.1
Node 19.0 19.0 → latest No fix stated
Node 17.0 17.0 → latest No fix stated
Node 16.0 16.0 → latest No fix stated
Node 15.0 15.0 → latest No fix stated
Node 14.0 14.0 → latest No fix stated
Node 13.0 13.0 → latest No fix stated
Node 12.0 12.0 → latest No fix stated
Node 11.0 11.0 → latest No fix stated
Show the 7 other branches
Product Affected versions Fixed in
Node 10.0 10.0 → latest No fix stated
Node 9.0 9.0 → latest No fix stated
Node 8.0 8.0 → latest No fix stated
Node 7.0 7.0 → latest No fix stated
Node 6.0 6.0 → latest No fix stated
Node 5.0 5.0 → latest No fix stated
Node 4.0 4.0 → latest No fix stated

References

Timeline

  1. Published
  2. Last modified
The 129 CVEs of Node →
Track this CVE