CVE-2026-2950

lodash vulnerable to Prototype Pollution via array path bypass in `_.unset` and `_.omit`

State
Published
Severity
6.5 Medium
Published
Mar 31, 2026
Updated
Oct 15, 2026
Reserved
Feb 21, 2026

Read the record on cve.org

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.

Scores

CVSSScoreVectorSource
3.16.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:Lopenjs

Weaknesses

  • CWE-1321 Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')

Affected Products

ProductVersions
lodashlodash
  • 4.17.23 to before 4.18.1Affected
  • 4.18.1Not affected
lodash-eslodash
  • 4.17.23 to before 4.18.1Affected
  • 4.18.1Not affected
lodash-amdlodash
  • 4.17.23 to before 4.18.1Affected
  • 4.18.1Not affected
lodash.unsetlodash
  • before 4.18.0Affected
  • 4.18.0Not affected
lodash.omitlodash
  • before 4.18.0Affected
  • 4.18.0Not affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.