CVE-2023-23918
Node.js: Permissions policies can be bypassed via process.mainModule
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
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.
CVSS Scores
SSVC
- Decision:Attend
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
References (4)
URL | Tag | Source |
---|---|---|
https://security.netapp.com/advisory/ntap-20230316-0008 |
|
URL | Date | SRC |
---|
URL | Date | SRC |
---|---|---|
https://nodejs.org/en/blog/vulnerability/february-2023-security-releases | 2023-03-16 |
URL | Date | SRC |
---|---|---|
https://access.redhat.com/security/cve/CVE-2023-23918 | 2023-05-09 | |
https://bugzilla.redhat.com/show_bug.cgi?id=2171935 | 2023-05-09 |
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
|