Skip to content
Fencer Vulns
high 8.6

CVE-2026-47209 json

vm2: Bridge Proxy set trap ignores receiver parameter, enabling host object property injection via prototype chain

published 2026-05-29 5 mo ago modified 2026-10-26 14 d ago also EUVD-2026-36440 , GHSA-c4cf-2hgv-2qv6

cvss
8.6
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.3%
EPSS 0.3% chance of exploitation in 30 days, percentile 21%
public exploits
0
none known

Summary

vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, the BaseHandler.set trap in bridge.js (line 1231) ignores the receiver parameter and unconditionally writes to the host target object. Per the Proxy set trap specification, when receiver !== proxy (e.g., when a child object inherits from the proxy via Object.create), the property assignment should create an own property on the receiver, not on the proxy target. The current implementation always calls otherReflectSet(object, key, value) against the host target, causing all inherited property writes to leak through to the host object. This bug provides an alternative attack vector for writing dangerous cross-realm Symbol keys (e.g., nodejs.util.promisify.custom) to host objects, bypassing any future per-trap isDangerousCrossRealmSymbol guard on the direct set path. This issue has been patched in version 3.11.4.

Patch / fix

  • npm vm2 3.11.4
  • vm2_project vm2 3.11.4

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2026-47209 updated cvss 8.6

vm2: vm2: Integrity bypass via incorrect property assignment leading to potential arbitrary code execution

  • Red Hat Ansible Automation Platform 2.1 ansible-automation-platform/automation-portal 1785854226
    fixed: vendor fix RHSA-2026:50850
  • Red Hat Developer Hub 1.9 rhdh/rhdh-hub-rhel9 1782761244
    fixed: vendor fix RHSA-2026:33574
  • Red Hat Developer Hub 1.9 rhdh/rhdh-rhel9-operator 1782767215, rhdh/rhdh-operator-bundle 1782772967
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
Proof of concept is public
Automatable
yes
Technical impact
partial
Assessed
4 mo ago

Exploit prediction

0.29% chance of exploitation in the next 30 days, higher than 21% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 8.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N
GitHub 3.1 8.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:H/A:N

Affected packages

ecosystem package affected fixed in
npm vm2
<3.11.4
3.11.4

Affected products

  • patriksimek vm2

Classification

Weakness
  • CWE-693 Protection Mechanism Failure

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.

CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.