CVE-2026-78207: exceljs through 4.4.0 Prototype Pollution via deepMerge Reached From Note Serialization
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.
Security readout for executives and security teams
Plain-English summary
Applications using exceljs through 4.4.0 may let attacker-controlled spreadsheet note data alter shared JavaScript object behavior. Because the corruption can influence unrelated objects in the same process, a successful attack could compromise data, application decisions, or service availability.
Executive priority
Treat as urgent where internet-facing or partner-facing inputs can reach spreadsheet note serialization. Prioritize confirming reachability immediately, then contain exposed workflows. Systems using exceljs without untrusted note data require prompt inventory and review, but the source bundle does not prove direct exploitability.
Technical view
The deepMerge helper does not reject __proto__, constructor, or prototype keys. When parsed attacker-controlled JSON is assigned to cell notes and serialized, these keys can modify Object.prototype, affecting subsequently created plain objects throughout the process. The supplied CVSS 3.1 score is 9.4.
Likely exposure
Highest exposure is in server applications using affected exceljs versions that accept untrusted parsed JSON, assign it to cell notes, and serialize workbooks. Exposure is lower where note content is trusted or strictly validated. The bundle does not establish risk from merely opening arbitrary workbooks.
Exploitation context
The CVSS vector describes network-accessible, low-complexity exploitation requiring neither privileges nor user interaction. However, CISA KEV status is false, and the supplied sources provide no evidence of active exploitation. Practical reachability depends on application data flow.
Researcher notes
The bundle’s affected metadata lists version 0 with defaultStatus unaffected, conflicting with the narrative claim that versions through 4.4.0 are vulnerable. No fixed upstream version is identified. Researchers should verify package lineage, exact deployed code, note-serialization reachability, and authoritative vendor guidance before declaring remediation complete.
Mitigation direction
Inventory applications and services using exceljs, including transitive dependencies and deployed lockfile versions.
Prevent untrusted input from reaching cell-note objects until a confirmed remediation is available.
Recursively reject __proto__, constructor, and prototype keys before merging or serializing note data.
Upgrade only to a vendor-confirmed fixed release; this bundle does not identify one.
Isolate workbook generation from sensitive, long-lived application processes where practical.
Validation and detection
Inspect manifests, lockfiles, and deployed artifacts for exceljs versions through 4.4.0.
Trace whether attacker-controlled parsed JSON can populate cell notes before workbook serialization.
Verify input validation recursively blocks dangerous property names at every object depth.
Test remediation in an isolated environment and confirm Object.prototype remains unchanged after note serialization.
Review downstream authorization and configuration logic that depends on ordinary object properties.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-1321: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
2CVSS vectors
3Timeline events
1ADP providers
5Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-1321 · source CWE mapping
Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.