Auth bypass in Node.js Node

CVE-2023-30586

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.setEngine() API can be used to bypass the permission model when called with a compatible OpenSSL engine. The OpenSSL engine can, for example, disable the permission model in the host process by manipulating the process's stack memory to locate the permission model Permission::enabled_ in the host process's heap memory. Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Vulnerability class: Broken Access Control

Published · last modified .

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N.

EPSS exploit prediction

EPSS: 0.013 (70.4th percentile), scored .

Low probability of exploitation in the next 30 days, but still tracked. 70th percentile — 70.4% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2023-30586: held from 0.013 to 0.013.

EPSS over last 30 days · oldest: 0.013 · newest: 0.013 · change: 0.000

Affected products

Weakness classification (CWE)

Public proof-of-concept exploits

References

Frequently asked questions

What is CVE-2023-30586?
CVE-2023-30586 is a high-severity vulnerability in Node.js Node, classified under Missing Authorization. CVSS score: 7.5/10. Published 2023-07-01.
How severe is CVE-2023-30586?
High severity. CVSS v3 base score is 7.5 out of 10.
Is CVE-2023-30586 known to be exploited?
1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.