A prototype pollution vulnerability exists in @nyariv/sandboxjs versions <= 0.8.23, allowing attackers to inject arbitrary properties into Object.prototype via crafted JavaScript code. This can result in a denial-of-service (DoS) condition or, under certain conditions, escape the sandboxed environment intended to restrict code execution. The vulnerability stems from insufficient prototype access checks in the sandbox’s executor logic, particularly in the handling of JavaScript function objects returned.
The product receives input from an upstream component that specifies attributes that are to be initialized or updated in an object, but it does not properly control modifications of attributes of the object prototype.
Link | Tags |
---|---|
https://gist.github.com/Hagrid29/9df27829a491080f923c4f6b8518d7e3 | issue tracking exploit |
https://github.com/nyariv/SandboxJS/issues/31 | vendor advisory patch |
https://www.npmjs.com/package/@nyariv/sandboxjs | product |
https://www.vulncheck.com/advisories/nyariv-sandboxjs-prototype-pollution-sandbox-escape-dos | third party advisory |