// For flags

CVE-2023-23918

Node.js: Permissions policies can be bypassed via process.mainModule

Severity Score

7.5
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Attend
*SSVC
Descriptions

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 process.mainModule.require(). This only affects users who had enabled the experimental permissions option with --experimental-policy.

This update for nodejs12 fixes the following issues. Fixed permissions policies bypass via process.mainModule. Fixed permissions policies bypass via Module._load. Fixed permissions policies impersonation using module.constructor.createRequire. Fixed permissions policies bypass via process.binding. Fixed mainModule.proto bypass. Fixed missing DiffieHellman key generation. Fixed HTTP Request Smuggling via Empty headers separated by CR.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None
Attack Vector
Network
Attack Complexity
Low
Authentication
None
Confidentiality
Complete
Integrity
None
Availability
None
* Common Vulnerability Scoring System
SSVC
  • Decision:Attend
Exploitation
None
Automatable
Yes
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2023-01-19 CVE Reserved
  • 2023-02-23 CVE Published
  • 2025-05-08 CVE Updated
  • 2025-07-04 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-863: Incorrect Authorization
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 14.0.0 <= 14.14.0
Search vendor "Nodejs" for product "Node.js" and version " >= 14.0.0 <= 14.14.0"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 14.0.0 < 14.21.3
Search vendor "Nodejs" for product "Node.js" and version " >= 14.0.0 < 14.21.3"
lts
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 16.0.0 <= 16.12.0
Search vendor "Nodejs" for product "Node.js" and version " >= 16.0.0 <= 16.12.0"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 16.0.0 < 16.19.1
Search vendor "Nodejs" for product "Node.js" and version " >= 16.0.0 < 16.19.1"
lts
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 18.0.0 <= 18.11.0
Search vendor "Nodejs" for product "Node.js" and version " >= 18.0.0 <= 18.11.0"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 18.0.0 < 18.14.1
Search vendor "Nodejs" for product "Node.js" and version " >= 18.0.0 < 18.14.1"
lts
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 19.0.0 < 19.6.1
Search vendor "Nodejs" for product "Node.js" and version " >= 19.0.0 < 19.6.1"
-
Affected