GHSA-gcqx-w48m-w2h4
deepmerge mergeObject() allows prototype poisoning of returned objects
Packages
Details
As written in the advisory (Markdown source, shown as plain text).
deepmerge through 4.3.1 contains a prototype poisoning vulnerability in the mergeObject() function that fails to properly validate keys being written to target objects. Attackers can supply malicious source objects in merge operations to inject attacker-controlled properties into the returned object's prototype, causing applications to inherit unintended values when accessing properties without own-property checks.
References
External links from the advisory. They lead to third-party sites.
- https://nvd.nist.gov/vuln/detail/CVE-2026-93753
- https://github.com/TehShrike/deepmerge/issues/273
- https://github.com/TehShrike/deepmerge
- https://github.com/TehShrike/deepmerge/blob/5b87756a5671635679001cbac72aa42f23472c81/index.js#L39-L60
- https://www.vulncheck.com/advisories/deepmerge-through-4.3.1-prototype-poisoning-via-mergeobject