Prototype Pollution in Feathersjs Feathers
CVE-2026-54335
Feathersjs is a framework for creating web APIs and real-time applications with TypeScript or JavaScript. In 5.0.44 and earlier, the _.merge(target, source) utility exported by @feathersjs/commons recursively merges source into target by iterating Object.keys(source). When source was produced by JSON.parse and contains a __proto__, constructor, or prototype key, that key is returned as an own-enumerable property; the recursive merge then resolves target['__proto__'] to Object.prototype and writes attacker-supplied properties onto it, polluting the prototype for all plain objects in the process for the lifetime of the Node process. This issue is fixed in version 5.0.45.
Vulnerability class: Prototype Pollution
EPSS: 0.004 (31.9th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 3.7 (Low). Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N.
Affected products
- Feathersjs Feathers — versions < 5.0.45
Weakness classification (CWE)
References
- security-advisories@github.com (x_refsource_CONFIRM)
- security-advisories@github.com (x_refsource_MISC)
- security-advisories@github.com (x_refsource_MISC)
- security-advisories@github.com (x_refsource_MISC)
Frequently asked questions
- What is CVE-2026-54335?
- CVE-2026-54335 is a low-severity vulnerability in Feathersjs Feathers, classified under Improperly Controlled Modification of Object Prototype Attributes (Prototype Pollution). CVSS score: 3.7/10. Published 2026-07-17.
- How severe is CVE-2026-54335?
- Low severity. CVSS v3 base score is 3.7 out of 10.