Prototype pollution in GraphQL Tools mergeIncrementalResult helper
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- Low · High · High
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
GraphQL Tools and @graphql-tools/utils from 10.10.1 before 12.0.2 are affected. The mergeIncrementalResult helper does not check that path segments are primitive values, so non-primitive segments bypass checks for __proto__, constructor and prototype (CWE-1321). A malicious or compromised upstream server sending crafted @defer or @stream responses can write attacker-controlled properties to Object.prototype in the consuming Node.js process.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
GraphQL Tools provides utilities for building, stitching, and mocking GraphQL schemas. From 10.10.1 until 12.0.2, the @graphql-tools/utils mergeIncrementalResult helper passes incrementalResult.path segments to setObjectKeyPath without runtime primitive-type validation. A non-primitive segment can bypass strict comparisons against __proto__, constructor, and prototype, then be coerced during property access so a malicious or compromised upstream incremental GraphQL response writes attacker-controlled properties to Object.prototype in the consuming Node.js process. The affected implementation is packages/utils/src/mergeIncrementalResult.ts and is reachable when consumers merge untrusted @defer or @stream transport results. This issue is fixed in version 12.0.2.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| ardatan | graphql-tools | 10.10.1 to before 12.0.2 | 12.0.2 | Patch available | CNA |
| — | @graphql-tools/utils (npm) | 10.10.1 to before 12.0.2 | 12.0.2 | Patch available | GHSA-c4qx-w738-7hr3 |
- graphql-tools Vendorardatan Affected 10.10.1 to before 12.0.2 Fixed in 12.0.2 Patch available CNA
- @graphql-tools/utils (npm) Vendor— Affected 10.10.1 to before 12.0.2 Fixed in 12.0.2 Patch available GHSA-c4qx-w738-7hr3
Remediation
Update GraphQL Tools and @graphql-tools/utils to 12.0.2, the fixed version.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA graphql-tools (ardatan) Fixed in 12.0.2
- Fix · GHSA-c4qx-w738-7hr3 @graphql-tools/utils (npm) Fixed in 12.0.2 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
Not affected: 6 products
- OpenShift Serverless
- Red Hat Developer Hub 1
- Red Hat OpenShift AI (RHOAI)
- Red Hat OpenShift Container Platform 4
- Red Hat OpenShift Container Platform 5
- Self-service automation portal 2
Timeline
- 2026-11-05 Threatist record created from CVE-2026-114604
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 CVSS score added · Red Hat
- 2026-11-07 Priority changed: MEDIUM → LOW
References
Other 6
- https://github.com/ardatan/graphql-tools/security/advisories/GHSA-c4qx-w738-7hr3
- https://github.com/ardatan/graphql-tools/pull/8467
- https://github.com/ardatan/graphql-tools/commit/19f5b3373fd7ace0688d19950fc529ce8347952a
- https://github.com/ardatan/graphql-tools/commit/20d36a5c6eb8fd5524420988e01a48618c450d70
- https://github.com/ardatan/graphql-tools/releases/tag/@graphql-tools/[email protected]
- https://github.com/ardatan/graphql-tools
More ardatan vulnerabilities
- TI-2026-82206 Stale connection parameters in GraphQL Tools WebSocket executor CVSS 4.0HIGH 8.2
- TI-2026-82207 GraphQL Tools legacy WebSocket executor misroutes subscription data CVSS 4.0MEDIUM 6.0
- TI-2026-68299 Prototype pollution in GraphQL Tools mergeDeep function CVSS 4.0HIGH 8.2
- TI-2026-65765 GraphQL Tools: TLS Certificate Validation Disabled in Legacy GraphQL WebSocket Executor CVSS 3.1HIGH 7.4
Sources
- CVE-2026-114604 · CVE Program
- CVE-2026-114604 · NVD
- FIRST EPSS
- CVE-2026-114604 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences