GitHub Advisoryadvisory · npm

GHSA-f23m-r3pf-42rh lodash vulnerable to prototype pollution via array-path bypass in `_.unset`, `_.omit`, and `_.pullAt

MEDIUM Published 2026-04-01 Modified 2026-11-03 Official page ↗
Aliases
CVE-2026-2950
Ecosystem
npm
Packages
lodash, lodash-es, lodash-amd, lodash.unset, lodash.omit
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weaknesses
CWE-1321
Reviewed
2026-04-01

Affected packages

• npm lodash: >= 4.17.23, < 4.18.1 → fixed in 4.18.1 • npm lodash-es: >= 4.17.23, < 4.18.1 → fixed in 4.18.1 • npm lodash-amd: >= 4.17.23, < 4.18.1 → fixed in 4.18.1 • npm lodash.unset: < 4.18.0 → fixed in 4.18.0 • npm lodash.omit: < 4.18.0 → fixed in 4.18.0

Description

Impact The `_.unset`, `_.omit`, and `_.pullAt` functions 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. Patches 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. Workarounds None. Upgrade to the patched version. References • CVE-2025-13465 / GHSA-xxjr-mmjv-4gpg (original fix that this bypasses)

Related

Alias · CVE (1)

  • CVE-2026-2950 The _.unset and _.omit functions in Lodash are vulnerable to prototype pollution. vulnerability

Weakness · CWE (1)

  • CWE-1321 Improperly Controlled Modification of Object Prototype Attributes weakness

References