CVE-2026-75507
CVE-2026-75507 · GraphQL-core: Denial of service via quadratic complexity in the OverlappingFieldsCanBeMerged validation rule
This page contains facts from public vulnerability sources. Check the original advisory before updating.
GraphQL-core is a Python port of the GraphQL.js reference implementation. From 3.0.0 until 3.2.12 and 3.3.0rc1, the OverlappingFieldsCanBeMerged rule in specified_rules repeatedly compares fields that share response names and recursively re-compares flattened inline fragments during the validation phase. The prior named-fragment memoization does not cover this path, so nested repeated inline fragments can drive quadratic and worst-case O(n²·m²) CPU work before any resolver or AST-based depth or complexity control runs. An unauthenticated remote attacker can submit a shallow, highly compressible GraphQL query that pins a worker process and can saturate a multi-worker service. This issue is fixed in versions 3.2.12 and 3.3.0rc1.
CVSS 7.5 · High · EPSS 0.6% · Public exploit · Fix available
- Published
- Updated
Affected products and versions
graphql-core
- Versions
- >= 3.0.0, < 3.2.12: Affected
- >= 3.3.0a1, < 3.3.0rc1: Affected
No fix published
graphql-core Debian:12
- Versions
- 2.3.2-1
- 3.1.7-1
- 3.2.0-1
- 3.2.1-1
- 3.2.11-1
- 3.2.12-1
- 3.2.3-1
- 3.2.3-2
- 3.2.4-1
- 3.2.5-1
- 3.2.6-1
- 3.2.6-2
- 3.2.7-1
- 3.2.8-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
graphql-core Debian:13
- Versions
- 3.2.11-1
- 3.2.12-1
- 3.2.6-1
- 3.2.6-2
- 3.2.7-1
- 3.2.8-1
- Affected ranges
- ECOSYSTEM: (−∞, +∞)
No fix published
graphql-core Debian:14
- Versions
- 3.2.11-1
- 3.2.6-1
- 3.2.6-2
- 3.2.7-1
- 3.2.8-1
- Affected ranges
- ECOSYSTEM: < 3.2.12-1
Update to 3.2.12-1
graphql-core PyPI
- Versions
- 3.0.0
- 3.0.1
- 3.0.2
- 3.0.3
- 3.0.4
- 3.0.5
- 3.0.6
- 3.1.0
- 3.1.0b0
- 3.1.0b1
- 3.1.0b2
- 3.1.1
- 3.1.2
- 3.1.3
- 3.1.4
- 3.1.5
- 3.1.6
- 3.1.7
- 3.2.0
- 3.2.0rc1
- 3.2.0rc2
- 3.2.0rc3
- 3.2.0rc4
- 3.2.0rc5
- 3.2.1
- 3.2.10
- 3.2.11
- 3.2.2
- 3.2.3
- 3.2.4
- 3.2.5
- 3.2.6
- 3.2.7
- 3.2.8
- 3.2.9
- Affected ranges
- ECOSYSTEM: ≥ 3.0.0, < 3.2.12
Update to 3.2.12
graphql-core PyPI
- Versions
- 3.3.0a1
- 3.3.0a10
- 3.3.0a11
- 3.3.0a12
- 3.3.0a13
- 3.3.0a14
- 3.3.0a2
- 3.3.0a3
- 3.3.0a4
- 3.3.0a5
- 3.3.0a6
- 3.3.0a7
- 3.3.0a8
- 3.3.0a9
- 3.3.0b0
- 3.3.0b1
- 3.3.0b2
- 3.3.0rc0
- Affected ranges
- ECOSYSTEM: ≥ 3.3.0a1, < 3.3.0rc1
Update to 3.3.0rc1
Original sources
- https://github.com/graphql-python/graphql-core/security/advisories/GHSA-vj8h-fx38-h3vc
- https://github.com/graphql-python/graphql-core/commit/150e59814d97d12140be005a558c93188ef89198
- https://github.com/graphql-python/graphql-core/commit/29c2753a7ee30a96a4109e7c6add1a2dae0497d7
- https://github.com/graphql-python/graphql-core/releases/tag/v3.2.12
- https://github.com/graphql-python/graphql-core/releases/tag/v3.3.0rc1
- https://nvd.nist.gov/vuln/detail/CVE-2026-75507