CVE-2023-37466: vm2 Sandbox Escape vulnerability

Published Jul 13, 2023
·
Updated

In vm2 for versions up to 3.9.19, Promise handler sanitization can be bypassed, allowing attackers to escape the sandbox and run arbitrary code.

Impact Remote Code Execution, assuming the attacker has arbitrary code execution primitive inside the context of vm2 sandbox.

Patches None.

Workarounds None.

References PoC - https://gist.github.com/leesh3288/f693061e6523c97274ad5298eb2c74e9

For more information

If you have any questions or comments about this advisory:

- Open an issue in VM2

Thanks to Xion (SeungHyun Lee) of KAIST Hacking Lab for disclosing this vulnerability.

Other sources

In vm2 for versions up to 3.9.19, Promise handler sanitization can be bypassed, allowing attackers to escape the sandbox and run arbitrary code.

Red Hat

Node.js vm2 module could allow a remote attacker to execute arbitrary code on the system, caused by a sandbox escape flaw in the Promise handler. By sending a specially crafted request, an attacker could exploit this vulnerability to execute arbitrary code on the system.

IBM

vm2 is an advanced vm/sandbox for Node.js. The library contains critical security issues and should not be used for production. The maintenance of the project has been discontinued. In vm2 for versions up to 3.9.19, Promise handler sanitization can be bypassed with @@species accessor property allowing attackers to escape the sandbox and run arbitrary code. Remote Code Execution, assuming the attacker has arbitrary code execution primitive inside the context of vm2 sandbox.

vm2 is an advanced vm/sandbox for Node.js. The library contains critical security issues and should not be used for production. The maintenance of the project has been discontinued. In vm2 for versions up to 3.9.19, Promise handler sanitization can be bypassed with the @@species accessor property allowing attackers to escape the sandbox and run arbitrary code, potentially allowing remote code execution inside the context of vm2 sandbox.

Affected Software

4 affected componentsFixes available
npm/vm2<=3.9.19
IBM Cognos Analytics<=12.0.0-12.0.2
IBM Cognos Analytics<=11.2.0-11.2.4 FP3
Vm2 Project Vm2 Node.js<=3.9.19

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade vm2 to a version that resolves this vulnerability.

    Fixed in 3.10.0
  2. Compensating control

    Do not use vm2 for production, since the library “contains critical security issues and should not be used for production.”

Event History

Jul 13, 2023
Advisory Published
05:02 PM
CVE Published
via MITRE·11:17 PM
Data Sourced
via MITRE·11:17 PM
DescriptionSeverityWeakness
Jul 14, 2023
Data Sourced
12:15 AM
DescriptionWeakness
Data Sourced
via NVD·12:15 AM
DescriptionSeverityWeaknessAffected Software
Aug 16, 2023
Data Sourced
via Red Hat·02:44 PM
DescriptionSeverityAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2023-37466?

CVE-2023-37466 has a critical severity level due to the potential for remote code execution.

2

How do I fix CVE-2023-37466?

To fix CVE-2023-37466, you should upgrade vm2 to version 3.9.20 or later.

3

What systems are affected by CVE-2023-37466?

CVE-2023-37466 affects vm2 versions up to and including 3.9.19 used in various Node.js applications.

4

Can CVE-2023-37466 lead to data breaches?

Yes, CVE-2023-37466 can potentially lead to data breaches as it allows attackers to execute arbitrary code in the system's context.

5

Who is responsible for addressing the CVE-2023-37466 vulnerability?

The responsibility lies with the developers or administrators of applications using the affected versions of vm2.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203
CVE-2023-37466 - vm2 Sandbox Escape vulnerability - SecAlerts