Vulnerability advisory
CVE-2026-2950
lodash vulnerable to Prototype Pollution via array path bypass in `_.unset` and `_.omit`
Also known as GHSA-f23m-r3pf-42rh
- CVSS 3.x
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/lodash/lodash ↗ | |
| d35a9c40beb594d09814ba7f7673b81d4d67a816 to before 835a537f36ee2fd5fb7f524e213ff9ba2d8698f8 | 835a537f36ee2fd5fb7f524e213ff9ba2d8698f8 |
Description
The _.unset and _.omit functions in Lodash are vulnerable to prototype pollution. The fix for CVE-2025-13465 only guards against string key members, so an attacker can bypass the check by passing array-wrapped path segments. This allows deletion of properties from built-in prototypes such as Object.prototype, Number.prototype, and String.prototype. The issue permits deletion of prototype properties but does not allow overwriting their original behavior. The issue is patched from 4.18.0 to 4.18.1 depending on the package: lodash, lodash-es, and lodash-amd in 4.18.1, and the standalone lodash.unset and lodash.omit packages in 4.18.0.