CVE-2023-39332
CVE-2023-39332
This page contains facts from public vulnerability sources. Check the original advisory before updating.
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.
EPSS 2.2% · Fix available
- Published
- Updated
Stack: node
Affected products and versions
node.js
- Versions
- ≥ 4.0, < 4.*: Affected (semver)
- ≥ 5.0, < 5.*: Affected (semver)
- ≥ 6.0, < 6.*: Affected (semver)
- ≥ 7.0, < 7.*: Affected (semver)
- ≥ 8.0, < 8.*: Affected (semver)
- ≥ 9.0, < 9.*: Affected (semver)
- ≥ 10.0, < 10.*: Affected (semver)
- ≥ 11.0, < 11.*: Affected (semver)
- ≥ 12.0, < 12.*: Affected (semver)
- ≥ 13.0, < 13.*: Affected (semver)
- ≥ 14.0, < 14.*: Affected (semver)
- ≥ 15.0, < 15.*: Affected (semver)
- ≥ 16.0, < 16.*: Affected (semver)
- ≥ 17.0, < 17.*: Affected (semver)
- ≥ 19.0, < 19.*: Affected (semver)
- ≥ 20.0, < 20.8.1: Affected (semver)
Update to 20.8.1
Original sources
- https://hackerone.com/reports/2199818
- https://lists.fedoraproject.org/archives/list/[email protected]/message/3N4NJ7FR4X4FPZUGNTQAPSTVB2HB2Y4A/
- https://security.netapp.com/advisory/ntap-20231116-0009/
- https://security.netapp.com/advisory/ntap-20241108-0002/
- https://nvd.nist.gov/vuln/detail/CVE-2023-39332