Register for the AI for Security Summit: Join Figma, Perplexity & Wiz
Vulnerability DatabaseGHSA-mmqv-m45h-q2hp

GHSA-mmqv-m45h-q2hp
JavaScript vulnerability analysis and mitigation

Overview

The localeval npm package was found to contain a critical sandbox escape vulnerability (GHSA-mmqv-m45h-q2hp) that could lead to Remote Code Execution. The vulnerability affects all versions from 0.0.0 to versions prior to 15.3.0, and was disclosed on September 4, 2020. The package failed to properly restrict access to the main context through constructor.constructor, which could allow attackers to break out of the intended sandbox environment (GitHub Advisory).

Technical details

The vulnerability stems from improper sandbox implementation where the package fails to restrict access to the main context through constructor.constructor. This allows attackers to execute arbitrary code outside the sandbox environment. A proof of concept demonstrates that evaluating the payload constructor.constructor("return process.env")() returns the contents of process.env, effectively breaking out of the sandbox. The issue was initially identified in the function prototype implementation in the browser context, where the function was being called with fn.apply(0, ...), causing the 'this' object to be a number and leaking the Number prototype into the environment (GitHub Commit).

Impact

The vulnerability allows attackers to access variables outside the sandbox and execute non-sandboxed code. This means attackers can potentially access sensitive information and execute arbitrary code with the same privileges as the application running the localeval package. For example, attackers could access hidden variables and execute system commands like process.exit() (GitHub Issue).

Exploitability

The vulnerability is easily exploitable as demonstrated by multiple proof of concept examples. An attacker can break the sandbox using simple JavaScript code patterns like this.constructor.constructor('return hiddenVariable')() to access variables outside the sandbox, or this.constructor.constructor('process.exit(0)')() to execute arbitrary code on Node.js systems (GitHub Issue).

Mitigation and workarounds

No official fix is currently available for this vulnerability. The recommended action is to consider using an alternative package until a fix is made available. Some attempts at mitigation included setting uid and gid for the evaluator process to limit potential damage from exploitation, but these measures do not fully address the core vulnerability (GitHub Advisory, GitHub Commit).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-54504HIGH8.8
  • JavaScript logoJavaScript
  • @andrea9293/mcp-documentation-server
NoYesSep 17, 2026
CVE-2026-77615HIGH8.7
  • JavaScript logoJavaScript
  • paella-core
NoYesSep 17, 2026
CVE-2026-91127HIGH8.2
  • JavaScript logoJavaScript
  • @file-viewer/doc
NoYesSep 18, 2026
CVE-2026-77301HIGH7.5
  • JavaScript logoJavaScript
  • adm-zip
NoYesSep 18, 2026
CVE-2026-84992MEDIUM6.1
  • JavaScript logoJavaScript
  • md-editor-v3
NoYesSep 18, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management