PT-2026-42148 · Root+3 · @Rootio/Vm2+1

CVE-2026-47209

·

Published

2026-05-20

·

Updated

2026-07-21

CVSS v3.1

8.6

High

VectorAV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N
Name of the Vulnerable Software and Affected Versions vm2 versions prior to 3.11.4
Description The BaseHandler.set trap in bridge.js ignores the receiver parameter and unconditionally writes to the host target object. According to the Proxy set trap specification, when the receiver is not the proxy (for example, when a child object inherits from the proxy via Object.create), the property assignment should create an own property on the receiver rather than on the proxy target. The current implementation always calls the otherReflectSet() function against the host target, which allows inherited property writes to leak to the host object. This creates an attack vector for writing dangerous cross-realm Symbol keys, such as nodejs.util.promisify.custom, to host objects, bypassing guards on the direct set path.
Recommendations Update to version 3.11.4 or later.

Exploit

Fix

LPE

Protection Mechanism Failure

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2026-47209
GHSA-C4CF-2HGV-2QV6

Affected Products

@Rootio/Vm2
Vm2