Description
exceljs through 4.4.0 contains a prototype pollution vulnerability in the deepMerge helper that fails to reject __proto__, constructor, or prototype keys when merging note objects. Attackers can assign parsed JSON with a malicious __proto__ property to cell notes, modifying Object.prototype and affecting all plain objects created in the process.
Metrics
CVSS 3.1 9.4/10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:LWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| exceljs | exceljs | <= 4.4.0 |
References
- https://github.com/exceljs/exceljs
- https://github.com/exceljs/exceljs/blob/v4.4.0/lib/utils/under-dash.js#L155-L181
- https://github.com/mateocallec/exceljs-hardened/security/advisories/GHSA-qwr4-7h29-chpf
- https://www.vulncheck.com/advisories/exceljs-through-prototype-pollution-via-deepmerge-reached-from-note-serialization
Timeline
- Published
- Aug 24, 2026
- Last modified
- Oct 14, 2026
- NVD status
- Deferred