Vulnerability · Published Oct 5, 2026 · Assigned by GitHub_M

CVE-2026-104852GraphQL Tools has prototype pollution in well-established utility function `mergeDeep`

High 8.2

In plain English

A high-severity prototype pollution in graphql-tools from ardatan. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 39% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)8.2High
Exploit odds (30 days)0.5%top 60.6% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

GraphQL Tools provides utilities for building, stitching, and mocking GraphQL schemas. Prior to 12.0.1, the GraphQL Tools utils package's mergeDeep function follows inherited properties while recursively merging source objects and does not exclude __proto__, constructor, or prototype keys. An unauthenticated GraphQL client can alias fields to those names so responses from two subgraphs collide during ordinary supergraph result merging, causing mergeDeep to traverse Object and Function prototypes and overwrite Function.prototype.call with a subgraph-supplied value. This breaks subsequent requests in the process until restart. This issue is fixed in version 12.0.1.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npm@graphql-tools/utils12.0.1GHSA-7mx3-vvmw-hjmv

Affected products (as reported)

VendorProductVersions
ardatan graphql-tools < 12.0.1

Weakness: CWE-1321 · Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

References