CVE-2026-40476 json
graphql-php: Denial of Service via quadratic complexity in OverlappingFieldsCanBeMerged validation
published 2026-04-14 6 mo ago modified 2026-10-26 13 d ago also GHSA-68jq-c3rv-pcrr , EUVD-2026-23569
- cvss
- 7.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.8%
- EPSS 0.8% chance of exploitation in 30 days, percentile 58%
- public exploits
- 0
- none known
Summary
graphql-go is a Go implementation of GraphQL. In versions 15.31.4 and below, the OverlappingFieldsCanBeMerged validation rule performs O(n²) pairwise comparisons of fields sharing the same response name. An attacker can send a query with thousands of repeated identical fields, causing excessive CPU usage during validation before execution begins. This is not mitigated by existing QueryDepth or QueryComplexity rules. This issue has been fixed in version 15.31.5.
Patch / fix
- packagist webonyx/graphql-php 15.31.5
- webonyx graphql-php 15.31.5
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 6 mo ago
Exploit prediction
0.85% chance of exploitation in the next 30 days, higher than 58% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N |
| CNA | 4.0 | 6.9 | CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| packagist | webonyx/graphql-php | <15.31.5 |
15.31.5 |
Affected products
- webonyx graphql-php
Classification
- Weakness
-
- CWE-407 Inefficient Algorithmic Complexity
References
-
github.com
/webonyx/graphql-php/security/advisories/GHSA-68jq-c3rv-pcrr
web, vendor-advisory
-
github.com
/webonyx/graphql-php/releases/tag/v15.31.5
web, release-notes
- openwall.com /lists/oss-security/2026/09/14/26
-
nvd.nist.gov
/vuln/detail/CVE-2026-40476
advisory
-
github.com
/webonyx/graphql-php
package
Sources
- CVE List CVE-2026-40476
- GitHub Advisory GHSA-68jq-c3rv-pcrr
- NVD CVE-2026-40476
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.