---
id: CVE-2026-80051
title: >-
  github.com/graphql-go/graphql (GraphQL for Go) through 0.8.1 does not validate
  that a scalar variable value matches its declared type
summary: >-
  github.com/graphql-go/graphql (GraphQL for Go) through 0.8.1 does not validate
  that a scalar variable value matches its declared type. The built-in
  coerceString and coerceBool functions (scalars.go) accept input whose type
  does not match…
severity: medium
cvss: 5.9
cvssVector: 'CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'
cwe:
  - CWE-1287
vendor: graphql-go project
product: github.com/graphql-go/graphql
affected:
  - github.com/graphql-go/graphql <= 0.8.1
published: '2026-08-25'
updated: '2026-09-09'
sourceUpdated: '2026-09-09T16:03:22.897'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-80051'
references:
  - url: 'https://github.com/graphql-go/graphql/blob/v0.8.1/scalars.go#L307-L315'
    label: cve@mitre.org
  - url: 'https://www.openwall.com/lists/oss-security/2026/08/25/2'
    label: cve@mitre.org
tags:
  - nvd
  - cve.org
  - exploit-available
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-08-25T19:21:05.710528Z'
cvssSource: cna
ingestedAt: '2026-09-14T12:22:06.568Z'
epss: 0.00184
epssPercentile: 0.07127
---

## Overview

github.com/graphql-go/graphql (GraphQL for Go) through 0.8.1 does not validate that a scalar variable value matches its declared type. The built-in coerceString and coerceBool functions (scalars.go) accept input whose type does not match the declared String, ID, or Boolean scalar instead of raising the request error that the GraphQL specification mandates. In some cases (but not any typical case of JSON sent to a website), a deeply nested value leads to an unrecoverable "fatal error: stack overflow" condition.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
