CRITICAL10.0
GHSA-ww6v-677g-p656
Sandbox Breakout in safe-eval
Details
Affected versions of `safe-eval` are vulnerable to a sandbox escape. By accessing object constructors, un-sanitized user input can access the entire standard library and effectively break out of the sandbox.
## Proof of Concept: This code accesses the process object and calls `.exit()` ```js var safeEval = require('safe-eval'); safeEval("this.constructor.constructor('return process')().exit()"); ```
## Recommendation
Update to version 0.4.0 or later
Are you affected?
Enter the version of the package you're using.
Affected packages
npm/safe-eval
Introduced in:
0No fixed version published yet for safe-eval (npm). Pin to a known-safe version or switch to an alternative.
References
- https://nvd.nist.gov/vuln/detail/CVE-2017-16088[ADVISORY]
- https://github.com/hacksparrow/safe-eval/issues/5[WEB]
- https://github.com/patriksimek/vm2/issues/59[WEB]
- https://github.com/hacksparrow/safe-eval/pull/13[WEB]
- https://github.com/advisories/GHSA-ww6v-677g-p656[ADVISORY]
- https://www.npmjs.com/advisories/337[WEB]