CVE-2022-25893 Arbitrary Code Execution

Critical 9.8 Published Updated

Attackers can execute arbitrary code on the host by exploiting a prototype lookup flaw in the vm2 JavaScript sandbox library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2022-25893?

CVE-2022-25893 is a critical code injection vulnerability in vm2, published on 21 Dec 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

The package vm2 before 3.9.10 are vulnerable to Arbitrary Code Execution due to the usage of prototype lookup for the WeakMap.prototype.set method. Exploiting this vulnerability leads to access to a host object and a sandbox compromise.

Weakness: CWE-471

Which versions are affected by CVE-2022-25893?

2 open source packages ship an affected version, including vm2. It affects 1 product.

PackageAffectedFixed in
vm2 npmAll versions3.9.10
vm2 npmAll versions3.9.10

Products include Vm2 Project Vm2.

How do I fix CVE-2022-25893?

Upgrade vm2 to 3.9.10 or later.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2022-25893 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2022-25893 exists.

Sources

Also known as GHSA-4w2j-2rg4-5mjw, ROOT-APP-NPM-CVE-2022-25893.

Is CVE-2022-25893 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free