CVE-2021-21413
What it is
isolated-vm is a library for nodejs which gives you access to v8's Isolate interface. Versions of isolated-vm before v4.0.0 have API pitfalls which may make it easy for implementers to expose supposed secure isolates to the permissions of the main nodejs isolate. Reference objects allow access to the underlying reference's full prototype chain. In an environment where the implementer has exposed a Reference instance to an attacker they would be able to use it to acquire a Reference to the nodejs context's Function object. Similar application-specific attacks could be possible by modifying the local prototype of other API objects. Access to NativeModule objects could allow an attacker to load and run native code from anywhere on the filesystem. If combined with, for example, a file upload API this would allow for arbitrary code execution. This is addressed in v4.0.0 through a series of related changes.
At a glance
- Exploitability
- Can be exploited from the same network segment without logging in. High risk of data exposure, data tampering.
- Exploit odds
- 0.7% chance of exploitation in the next 30 days (EPSS).
- Fix
- A patch, advisory or fixed version is referenced. Upgrade or apply it.
Timeline
- PublishedDisclosed publicly on CVE.org and NVD
- Last updatedMost recent change to the record
Why it ranks here
- Exploited in the wild: no, CISA does not list it.
- Exploit odds: 0.7% in the next 30 days (EPSS).
- Severity: 8.0 HIGH (CVSS).
- Fix: a patch or advisory is linked.
Details
- Published
- Last modified
- Exploit probability
- 0.7% · EPSS, next 30 days
- Weakness
- CWE-913
- Record status
- Modified
Affected
- isolated-vm Project isolated-vm < 4.0.0
Attack profile CVSS 3.1 · 8.0
- Attack vector
- Adjacent network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
- Scope
- Changed
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Raw vector
CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N
Is it in your code?
Hand this to your coding agent. It searches your project for the affected products and checks versions. Nothing leaves your machine.
Read https://cve-list.com/agent/cve/CVE-2021-21413.md and follow it. Check whether this project is affected by CVE-2021-21413. Read only. Don't change anything and don't upload my code. Tell me yes, no or not sure, with the file as proof.
Fix and advisories
- https://github.com/laverdet/isolated-vm/commit/2646e6c1558bac66285daeab54c7d490ed332b15
- https://github.com/laverdet/isolated-vm/commit/27151bfecc260e96714443613880e3b2e6596704
- https://github.com/laverdet/isolated-vm/security/advisories/GHSA-mmhj-4w6j-76h7
- https://github.com/laverdet/isolated-vm/commit/2646e6c1558bac66285daeab54c7d490ed332b15
- https://github.com/laverdet/isolated-vm/commit/27151bfecc260e96714443613880e3b2e6596704
- https://github.com/laverdet/isolated-vm/security/advisories/GHSA-mmhj-4w6j-76h7
References
- https://github.com/laverdet/isolated-vm/blob/main/CHANGELOG.md#v400
- https://github.com/laverdet/isolated-vm/commit/2646e6c1558bac66285daeab54c7d490ed332b15
- https://github.com/laverdet/isolated-vm/commit/27151bfecc260e96714443613880e3b2e6596704
- https://github.com/laverdet/isolated-vm/security/advisories/GHSA-mmhj-4w6j-76h7
- https://github.com/laverdet/isolated-vm/blob/main/CHANGELOG.md#v400
- https://github.com/laverdet/isolated-vm/commit/2646e6c1558bac66285daeab54c7d490ed332b15
- https://github.com/laverdet/isolated-vm/commit/27151bfecc260e96714443613880e3b2e6596704
- https://github.com/laverdet/isolated-vm/security/advisories/GHSA-mmhj-4w6j-76h7