Skip to content
OpenAdvisories
High · 7.5 CVE-2023-30587 EUVD-2023-34968GHSA-c595-v5xp-gv8w

A vulnerability in Node.js version 20 allows for bypassing restrictions set by the --experimental-permission flag using the built-in inspec…

Published Sep 7, 2024 · Updated Apr 30, 2025 · Assigned by hackerone

Description

A vulnerability in Node.js version 20 allows for bypassing restrictions set by the --experimental-permission flag using the built-in inspector module (node:inspector).

By exploiting the Worker class's ability to create an "internal worker" with the kIsInternal Symbol, attackers can modify the isInternal value when an inspector is attached within the Worker constructor before initializing a new WorkerImpl. This vulnerability exclusively affects Node.js users employing the permission model mechanism.

Please note that at the time this CVE was issued, the permission model is an experimental feature of Node.js.

Affected products

VendorProductAffectedFixed
NodeJS Node 4.0 – < 4.*, 5.0 – < 5.*, 6.0 – < 6.*, 7.0 – < 7.*, 8.0 – < 8.*, 9.0 – < 9.*, 10.0 – < 10.*, 11.0 – < 11.*, 12.0 – < 12.*, 13.0 – < 13.*, 14.0 – < 14.*, 15.0 – < 15.*, 17.0 – < 17.*, 19.0 – < 19.*, 20.0 – < 20.3.1 4.*

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
openSUSE Tumbleweed nodejs20 20.3.1-1.1 openSUSE-SU-2024:13021-1

Wolfi

ReleasePackageFixed inAdvisory
Wolfi rolling nodejs-20 20.3.1-r0 —

Advisories 5

References