~ / search / GHSA-f7f6-9jq7-3rqj

GHSA-f7f6-9jq7-3rqj

estree-util-value-to-estree allows prototype pollution in generated ESTree

Source: GitHub Advisory Database (reviewed) Moderate CVE-2025-32014

Packages

EcosystemPackageAffectedFixed in
npm estree-util-value-to-estree < 3.3.3 3.3.3

Details

As written in the advisory (Markdown source, shown as plain text).

### Impact When generating an ESTree from a value with a property named `__proto__`, `valueToEstree` would generate an object that specifies a prototype instead. Example: ```js import { generate } from 'astring' import { valueToEstree } from 'estree-util-value-to-estree' const estree = valueToEstree({ ['__proto__']: {} }) const code = generate(estree) console.log(code) ``` Output: ```js { "__proto__": {} } ``` ### Patches This was fixed in version [3.3.3](https://github.com/remcohaszing/estree-util-value-to-estree/releases/tag/v3.3.3). ### Workarounds If you control the input, don’t specify a property named `__proto__`. If you don’t control the output, strip any properties named `__proto__` before passing it to `valueToEstree`.

References

External links from the advisory. They lead to third-party sites.