Search vulnerabilities

Results 296

Export CSV
CVE-2024-21896

nodejs: path traversal by monkey-patching buffer internals

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(). By monkey-patching Buffer internals, namely, Buffer.prototype.utf8Write, the application can modify the result of path.resolve(), which leads to a path traversal vulnerability. This vulnerability affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

CVSS 3.1 · 9.8 Critical EPSS 1.3% KEV · Not listed
Vendors
CVE-2024-21892

nodejs: code injection and privilege escalation through Linux capabilities

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 exception, Node.js incorrectly applies this exception even when certain other capabilities have been set. This allows unprivileged users to inject code that inherits the process's elevated privileges.

CVSS 3.1 · 7.8 High EPSS < 1% KEV · Not listed
Vendors
Products
CVE-2024-21890

nodejs: improper handling of wildcards in --allow-fs-read and --allow-fs-write

The Node.js Permission Model does not clarify in the documentation that wildcards should be only used as the last character of a file path. For example: ``` --allow-fs-read=/home/node/.ssh/*.pub ``` will ignore `pub` and give access to everything after `.ssh/`. This misleading documentation affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Vendors
CVE-2024-21891

nodejs: multiple permission model bypasses due to improper path traversal sequence sanitization

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 affects all users using the experimental permission model in Node.js 20 and Node.js 21. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

CVSS 3.1 · 8.8 High EPSS 1.2% KEV · Not listed
Vendors
CVE-2022-35256

nodejs: HTTP Request Smuggling due to incorrect parsing of header fields

The llhttp parser in the http module in Node v18.7.0 does not correctly handle header fields that are not terminated with CLRF. This may result in HTTP Request Smuggling.

CVSS 3.1 · 6.5 Medium EPSS 2.8% KEV · Not listed
Vendors
Debian Llhttp Nodejs and 2 more
Products
CVE-2022-32222

nodejs: potential openssl.cnf hijack

A cryptographic vulnerability exists on Node.js on linux in versions of 18.x prior to 18.40.0 which allowed a default path for openssl.cnf that might be accessible under some circumstances to a non-admin user instead of /etc/ssl as was the case in versions prior to the upgrade to OpenSSL 3.

CVSS 3.1 · 5.3 Medium EPSS 2.2% KEV · Not listed
Vendors
Products
CVE-2022-32223

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\Common Files\SSL\openssl.cnf” exists.Whenever the above conditions are present, `node.exe` will search for `providers.dll` in the current user directory.After that, `node.exe` will try to search for `providers.dll` by the DLL Search Order in Windows.It is possible for an attacker to place the malicious file `providers.dll` under a variety of paths and exploit this vulnerability.

CVSS 3.1 · 7.3 High EPSS 1.8% KEV · Not listed
Vendors
Products
CVE-2022-32213

nodejs: HTTP request smuggling due to flawed parsing of Transfer-Encoding

The llhttp parser <v14.20.1, <v16.17.1 and <v18.9.1 in the http module in Node.js does not correctly parse and validate Transfer-Encoding headers and can lead to HTTP Request Smuggling (HRS).

CVSS 3.1 · 6.5 Medium EPSS 44.8% KEV · Not listed
Vendors
Products
CVE-2022-32212

nodejs: DNS rebinding in --inspect via invalid IP addresses

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 requests allowing rebinding attacks.

CVSS 3.1 · 8.1 High EPSS 6.4% KEV · Not listed
Vendors
Products
CVE-2022-32214

nodejs: HTTP request smuggling due to improper delimiting of header fields

The llhttp parser <v14.20.1, <v16.17.1 and <v18.9.1 in the http module in Node.js does not strictly use the CRLF sequence to delimit HTTP requests. This can lead to HTTP Request Smuggling (HRS).

CVSS 3.1 · 6.5 Medium EPSS 81.8% KEV · Not listed
Vendors
Debian Llhttp Nodejs and 2 more
Products
CVE-2022-32215

nodejs: HTTP request smuggling due to incorrect parsing of multi-line Transfer-Encoding

The llhttp parser <v14.20.1, <v16.17.1 and <v18.9.1 in the http module in Node.js does not correctly handle multi-line Transfer-Encoding headers. This can lead to HTTP Request Smuggling (HRS).

CVSS 3.1 · 6.5 Medium EPSS 70.2% KEV · Not listed
Vendors
Products
CVE-2022-21824

nodejs: Prototype pollution via console.table properties

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 be "__proto__". The prototype pollution has very limited control, in that it only allows an empty string to be assigned to numerical keys of the object prototype.Node.js >= 12.22.9, >= 14.18.3, >= 16.13.2, and >= 17.3.1 use a null protoype for the object these properties are being assigned to.

CVSS 3.1 · 8.2 High EPSS 21.5% KEV · Not listed
Vendors
Debian Netapp Nodejs and 2 more
CVE-2021-44532

nodejs: Certificate Verification Bypass via String Injection

Node.js < 12.22.9, < 14.18.3, < 16.13.2, and < 17.3.1 converts SANs (Subject Alternative Names) to a string format. It uses this string to check peer certificates against hostnames when validating connections. The string format was subject to an injection vulnerability when name constraints were used within a certificate chain, allowing the bypass of these name constraints.Versions of Node.js with the fix for this escape SANs containing the problematic characters in order to prevent the injection. This behavior can be reverted through the --security-revert command-line option.

CVSS 3.1 · 5.3 Medium EPSS 10.4% KEV · Not listed
Vendors
Debian Nodejs Oracle and 1 more
Products
CVE-2021-44531

nodejs: Improper handling of URI Subject Alternative Names

Accepting arbitrary Subject Alternative Name (SAN) types, unless a PKI is specifically defined to use a particular SAN type, can result in bypassing name-constrained intermediates. Node.js < 12.22.9, < 14.18.3, < 16.13.2, and < 17.3.1 was accepting URI SAN types, which PKIs are often not defined to use. Additionally, when a protocol allows URI SANs, Node.js did not match the URI correctly.Versions of Node.js with the fix for this disable the URI SAN type when checking a certificate against a hostname. This behavior can be reverted through the --security-revert command-line option.

CVSS 3.1 · 7.4 High EPSS 8.4% KEV · Not listed
Vendors
Products
CVE-2021-22939

nodejs: Incomplete validation of tls rejectUnauthorized parameter

If the Node.js https API was used incorrectly and "undefined" was in passed for the "rejectUnauthorized" parameter, no error was returned and connections to servers with an expired certificate would have been accepted.

CVSS 3.1 · 5.3 Medium EPSS 14.7% KEV · Not listed
Vendors
Debian Netapp Nodejs and 3 more
Products
CVE-2021-22940

nodejs: Use-after-free on close http2 on stream canceling

Node.js before 16.6.1, 14.17.5, and 12.22.5 is vulnerable to a use after free attack where an attacker might be able to exploit the memory corruption, to change process behavior.

CVSS 3.1 · 7.5 High EPSS 13.9% KEV · Not listed
Vendors
Debian Netapp Nodejs and 3 more
Products
CVE-2021-22931

nodejs: Improper handling of untypical characters in domain names

Node.js before 16.6.0, 14.17.4, and 12.22.4 is vulnerable to Remote Code Execution, XSS, Application crashes due to missing input validation of host names returned by Domain Name Servers in Node.js dns library which can lead to output of wrong hostnames (leading to Domain Hijacking) and injection vulnerabilities in applications using the library.

CVSS 3.1 · 9.8 Critical EPSS 22.0% KEV · Not listed
Vendors
Netapp Nodejs Oracle and 2 more
CVE-2021-22918

libuv: out-of-bounds read in uv__idna_toascii() can lead to information disclosures or crashes

Node.js before 16.4.1, 14.17.2, 12.22.2 is vulnerable to an out-of-bounds read when uv__idna_toascii() is used to convert strings to ASCII. The pointer p is read and increased without checking whether it is beyond pe, with the latter holding a pointer to the end of the buffer. This can lead to information disclosures or crashes. This function can be triggered via uv_getaddrinfo().

CVSS 3.1 · 5.3 Medium EPSS 23.1% KEV · Not listed
Products
CVE-2021-22921

Node.js before 16.4.1, 14.17.2, and 12.22.2 is vulnerable to local privilege escalation attacks under certain conditions on Windows platforms. More specifically, improper configuration of permissions in the installation directory allows an attacker to perform two different escalation attacks: PATH and DLL hijacking.

CVSS 3.1 · 7.8 High EPSS 7.4% KEV · Not listed
CVE-2021-22930

nodejs: Use-after-free on close http2 on stream canceling

Node.js before 16.6.0, 14.17.4, and 12.22.4 is vulnerable to a use after free attack where an attacker might be able to exploit the memory corruption, to change process behavior.

CVSS 3.1 · 9.8 Critical EPSS 36.5% KEV · Not listed
Vendors
Debian Netapp Nodejs and 2 more
Products