---
id: CVE-2026-40476
title: graphql-go is a Go implementation of GraphQL
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…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-407
vendor: webonyx
product: graphql-php
affected:
  - graphql-php < 15.31.5
patched:
  - graphql-php 15.31.5
published: '2026-04-17'
updated: '2026-09-14'
sourceUpdated: '2026-09-14T20:16:43.900'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-40476'
references:
  - url: 'https://github.com/webonyx/graphql-php/releases/tag/v15.31.5'
    label: security-advisories@github.com
  - url: >-
      https://github.com/webonyx/graphql-php/security/advisories/GHSA-68jq-c3rv-pcrr
    label: security-advisories@github.com
  - url: 'http://www.openwall.com/lists/oss-security/2026/09/14/26'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - cve.org
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-04-20T14:53:06.028689Z'
scores:
  nvd: 7.5
  cna: 6.9
epss: 0.00732
epssPercentile: 0.52315
ingestedAt: '2026-09-14T20:14:21.143Z'
---

## Overview

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.

## Affected

- `graphql-php < 15.31.5`

## Remediation

Upgrade past the affected range:

- `graphql-php 15.31.5`
