CyberSecBulletin

Node.js vulnerabilities

We track 67 vulnerabilities in Node.js products across 4 products. 67 are rated high or critical, and 1 has been exploited in real attacks. The most recent was published on November 11, 2026.

67vulnerabilities
9critical
58high
1exploited
8.0average CVSS score

Latest Node.js vulnerabilities

  • 7.3 High severity

    Node: Execution with Unnecessary Privileges

    CVE-2024-22017Node.js

    setuid() does not affect libuv's internal io_uring operations if initialized before the call to setuid(). This allows the process to perform privileged operations despite presumably having dropped such privileges through a call to setuid(). This vulnerability

  • 7.5 High severity

    Node: Improper Resource Shutdown or Release

    CVE-2024-22019Node.jsEPSS 3.17%

    A vulnerability in Node.js HTTP servers allows an attacker to send a specially crafted HTTP request with chunked encoding, leading to resource exhaustion and denial of service (DoS). The server reads an unbounded number of bytes from a single connection, explo

  • 9.8 Critical severity

    Node: Path Traversal: 'dir/../../filename'

    CVE-2024-21896Node.jsEPSS 1.26%

    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().

  • 7.8 High severity

    Node: Improper Control of Generation of Code

    CVE-2024-21892Node.js

    On Linux, Node.js ignores certain environment variables if those may have been set by an unprivileged user while the process is running with elevated privileges with the only exception of CAP_NET_BIND_SERVICE. Due to a bug in the implementation of this excepti

  • 8.8 High severity

    Node: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2024-21891Node.jsEPSS 1.24%

    Node.js depends on multiple built-in utility functions to normalize paths provided to node:fs functions, which can be overwitten with user-defined implementations leading to filesystem permission model bypass through path traversal attack. This vulnerability a

  • 7.5 High severity

    Node: Missing Authorization

    CVE-2023-30581Node.jsEPSS 1.05%

    The use of __proto__ in process.mainModule.__proto__.require() can bypass the policy mechanism and require modules outside of the policy.json definition. This vulnerability affects all users using the experimental policy mechanism in all active release lines:

  • 9.8 Critical severity

    Node: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2023-39332Node.jsEPSS 2.19%

    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

  • 7.5 High severity

    Node: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2023-39331Node.jsEPSS 1.51%

    A previously disclosed vulnerability (CVE-2023-30584) was patched insufficiently in commit 205f1e6. The new path traversal vulnerability arises because the implementation does not protect itself against the application overwriting built-in utility functions wi

  • 7.5 High severity

    Node: Insufficient Verification of Data Authenticity

    CVE-2023-38552Node.jsEPSS 1.24%

    When the Node.js policy feature checks the integrity of a resource against a trusted manifest, the application can intercept the operation and return a forged checksum to the node's policy implementation, thus effectively disabling the integrity check. Impacts

  • 7.5 High severity

    HTTP/2 Rapid Reset Attack Exploited

    CVE-2023-44487IETFEPSS 100%

    The HTTP/2 protocol allows a denial of service (server resource consumption) because request cancellation can reset many streams quickly, as exploited in the wild in August through October 2023.

  • 7.5 High severity

    Node: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2023-32558Node.jsEPSS 1.74%

    The use of the deprecated API `process.binding()` can bypass the permission model through path traversal. This vulnerability affects all users using the experimental permission model in Node.js 20.x. Please note that at the time this CVE was issued, the permis

  • 7.5 High severity

    Node: Improper Privilege Management

    CVE-2023-32559Node.jsEPSS 1.8%

    A privilege escalation vulnerability exists in the experimental policy mechanism in all active release lines: 16.x, 18.x and, 20.x. The use of the deprecated API `process.binding()` can bypass the policy mechanism by requiring internal modules and eventually t

  • 9.8 Critical severity

    Node: Authentication Bypass Using an Alternate Path or Channel

    CVE-2023-32002Node.jsEPSS 1.61%

    The use of `Module._load()` can bypass the policy mechanism and require modules outside of the policy.json definition for a given module. This vulnerability affects all users using the experimental policy mechanism in all active release lines: 16.x, 18.x and,

  • 8.8 High severity

    Node: Protection Mechanism Failure

    CVE-2023-32006Node.jsEPSS 1.54%

    The use of `module.constructor.createRequire()` can bypass the policy mechanism and require modules outside of the policy.json definition for a given module. This vulnerability affects all users using the experimental policy mechanism in all active release lin

  • 8.8 High severity

    Node: Improper Limitation of a Pathname to a Restricted Directory

    CVE-2023-32004Node.jsEPSS 2.13%

    A vulnerability has been discovered in Node.js version 20, specifically within the experimental permission model. This flaw relates to improper handling of Buffers in file system APIs causing a traversal path to bypass when verifying file permissions. This vul

  • 7.5 High severity

    Node: Missing Authorization

    CVE-2023-30586Node.jsEPSS 1.35%

    A privilege escalation vulnerability exists in Node.js 20 that allowed loading arbitrary OpenSSL engines when the experimental permission model is enabled, which can bypass and/or disable the permission model. The attack complexity is high. However, the crypto

  • 7.5 High severity

    A cryptographic vulnerability exists in Node.js <19.2.0, <18.14.1, <16.19.1, <14.21.3 that in…

    CVE-2023-23919Node.jsEPSS 2.21%

    A cryptographic vulnerability exists in Node.js <19.2.0, <18.14.1, <16.19.1, <14.21.3 that in some cases did does not clear the OpenSSL error stack after operations that may set it. This may lead to false positive errors during subsequent cryptographic operati

  • 7.5 High severity

    Node: Incorrect Authorization

    CVE-2023-23918Node.jsEPSS 2.02%

    A privilege escalation vulnerability exists in Node.js <19.6.1, <18.14.1, <16.19.1 and <14.21.3 that made it possible to bypass the experimental Permissions (https://nodejs.org/api/permissions.html) feature in Node.js and access non authorized modules by using

  • 7.5 High severity

    undici: Inefficient Regular Expression Complexity

    CVE-2023-24807Node.jsEPSS 1.31%

    Undici is an HTTP/1.1 client for Node.js. Prior to version 5.19.1, the `Headers.set()` and `Headers.append()` methods are vulnerable to Regular Expression Denial of Service (ReDoS) attacks when untrusted values are passed into the functions. This is due to the

  • 8.1 High severity

    Node: Improper Neutralization of Special Elements used in an OS Command

    CVE-2022-43548Node.jsEPSS 14.9%

    A OS Command Injection vulnerability exists in Node.js versions <14.21.1, <16.18.1, <18.12.1, <19.0.1 due to an insufficient IsAllowedHost check that can easily be bypassed because IsIPAddress does not properly check if an IP address is invalid before making D

  • 9.1 Critical severity

    Node: Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)

    CVE-2022-35255Node.jsEPSS 2.13%

    A weak randomness in WebCrypto keygen vulnerability exists in Node.js 18 due to a change with EntropySource() in SecretKeyGenTraits::DoKeyGen() in src/crypto/crypto_keygen.cc. There are two problems with this: 1) It does not check the return value, it assumes

  • 7.5 High severity

    OpenSSL: Buffer Copy without Checking Size of Input

    CVE-2022-3786OpenSSLEPSS 92.5%

    A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed a malicious certificate or for an applic

  • 7.5 High severity

    OpenSSL: Out-of-bounds Write

    CVE-2022-3602OpenSSLEPSS 90.8%

    A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed the malicious certificate or for the app

  • 9.8 Critical severity

    undici: Server-Side Request Forgery

    CVE-2022-35949Node.jsEPSS 1.93%

    undici is an HTTP/1.1 client, written from scratch for Node.js.`undici` is vulnerable to SSRF (Server-side Request Forgery) when an application takes in **user input** into the `path/pathname` option of `undici.request`. If a user specifies a URL such as `http

  • 7.3 High severity

    Node: Uncontrolled Search Path Element

    CVE-2022-32223Node.jsEPSS 1.75%

    Node.js is vulnerable to Hijack Execution Flow: DLL Hijacking under certain conditions on Windows platforms.This vulnerability can be exploited if the victim has the following dependencies on a Windows machine:* OpenSSL has been installed and “C:\Program Files

  • 8.1 High severity

    Node: Improper Neutralization of Special Elements used in an OS Command

    CVE-2022-32212Node.jsEPSS 6.43%

    A OS Command Injection vulnerability exists in Node.js versions <14.20.0, <16.20.0, <18.5.0 due to an insufficient IsAllowedHost check that can easily be bypassed because IsIPAddress does not properly check if an IP address is invalid before making DBS request

  • 8.2 High severity

    Node: Improperly Controlled Modification of Object Prototype Attributes

    CVE-2022-21824Node.jsEPSS 21.5%

    Due to the formatting logic of the "console.table()" function it was not safe to allow user controlled input to be passed to the "properties" parameter while simultaneously passing a plain object with at least one property as the first parameter, which could b