CVE-2023-30581

Description

A vulnerability has been discovered in Node.js, where the use of proto in process.mainModule.proto.require() can bypass the policy mechanism and require modules outside of the policy.json definition.

Statement

This vulnerability is rated as an IMPORTANT severity because this vulnerability is a policy bypass resulting from the improper handling of the JavaScript prototype chain. A malicious actor can trigger this flaw by using process.mainModule.proto.require() to load and execute modules explicitly disallowed by the policy.json configuration.

Successful exploitation allows for the execution of unauthorized code within the context of the application process, leading to a compromise of system integrity.

At the time of this CVE's disclosure, the affected policy mechanism was designated as an experimental feature.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score7.57.5N/A
Attack VectorNetworkNetworkN/A
Attack ComplexityLowLowN/A
Privileges RequiredNoneNoneN/A
User InteractionNoneNoneN/A
ScopeUnchangedUnchangedN/A
ConfidentialityNoneNoneN/A
Integrity ImpactHighHighN/A
Availability ImpactNoneNoneN/A

Vector

Red Hat: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

NVD: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Frequently Asked Questions

Want to get errata notifications? Sign up here.