CVE-2026-92949
vm2 3.9.6 before 3.11.7 Sandbox Bypass via Accessor Descriptor
MEDIUM 6.3
At a glance
- Source
- NVD
- EPSS
- EPSS 0.32 % · percentile 25 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- VulnCheck
- NVD status
- Deferred
Description
vm2 versions from 3.9.6 before 3.11.7 fail to properly restrict access to accessor properties on frozen objects, allowing sandboxed scripts to bypass vm.freeze() and vm.readonly() protections. Attackers can use Object.getOwnPropertyDescriptor() or __lookupSetter__() to extract and invoke host object setters directly, mutating properties the embedder explicitly marked read-only.
Weaknesses (CWE)
- CWE-471 — Modification of Assumed-Immutable Data (MAID)
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 4.0 | MEDIUM 6.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N | VulnCheck |
| CVSS 3.1 | MEDIUM 4.0 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:N | VulnCheck |
| CVSS 4.0 | MEDIUM 6.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X | NVD · disclosure@vulncheck.com (Secondary) |
| CVSS 3.1 | MEDIUM 4.0 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:N | NVD · disclosure@vulncheck.com (Secondary) |
Advisories
- GHSA-633r-hq9m-c4ff — vm2: vm.freeze()/vm.readonly() bypass via accessor descriptor
European references
- ENISA EUVD · EUVD-2026-81598
- GCVE · GCVE-0-2026-92949
Affected products
| Product | Versions |
|---|---|
| patriksimek · vm2 | affected 3.9.6 < 3.11.7 ; unaffected 3.11.7 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |