Skip to main content
Live Webinar with SANS (June 25)— Agentic CTI Automation for Fun & ProfitRegister Free
Mallory
CriticalPublic exploit

vm2 sandbox escape via Node.js custom inspect

IdentifiersCVE-2023-37903CWE-94

vm2, an open-source VM/sandbox library for Node.js, is vulnerable in versions up to and including 3.9.19 to a sandbox escape through the Node.js custom inspect function. An attacker who already has the ability to execute arbitrary JavaScript within a vm2 sandbox can abuse custom inspect behavior to break out of the sandbox boundary and execute arbitrary code in the host Node.js environment. The issue is described as a critical sandbox escape that can lead to remote code execution on the underlying system. The provided content does not include function-level root-cause detail beyond the involvement of the Node.js custom inspect function.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can result in full sandbox escape and arbitrary code execution in the host context, with corresponding compromise of confidentiality, integrity, and availability. In practical terms, this can allow execution of operating system commands, access to host resources and application data, and complete takeover of the process running vm2.

Mitigation

If you can’t patch tonight, do this now.

No effective mitigation or workaround is identified in the provided content for this specific CVE. Risk reduction measures are to avoid executing untrusted code in vm2, remove or replace vm2 where possible, and use stronger isolation boundaries such as separate processes, containers, or alternative sandboxing technologies.

Remediation

Patch, then assume compromise.

There are no patches and no known workarounds for CVE-2023-37903 in the affected vm2 versions described in the provided content. Users are advised to stop relying on vm2 as a security boundary for untrusted code and migrate to alternative isolation software or architectures.
PUBLIC EXPLOITS

Exploits

1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 1 / 1 TOTALView more in app
CVE-2023-37903MaturityPoCVerified exploit

This repository provides exploit code for CVE-2023-37903, a vulnerability in the vm2 Node.js library. The repository contains two main JavaScript files: 'PoC.js' and 'Reverse_shell.js'. 'PoC.js' demonstrates arbitrary command execution by running a ping command to an attacker-supplied IP address, serving as a proof of concept. 'Reverse_shell.js' executes a bash command to open a reverse shell to an attacker-controlled IP and port, allowing the attacker to gain remote shell access to the vulnerable system. The README provides a brief description and credits. The exploit requires the attacker to specify their own IP and port, and the target must be running a vulnerable version of vm2. The main attack vector is remote code execution via network interaction, and the payload is a bash reverse shell. No hardcoded endpoints are present; placeholders are used for attacker-supplied values.

7h3h4ckv157Disclosed Nov 5, 2023javascriptbashnetwork
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
Vm2 ProjectVm2application

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity3

Community discussion across Reddit, Mastodon, and other social sources.