Every CVE Search/ Get API key

CVE-2022-21708

Denial of Service in graphql-go

6.5 MediumFix available

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

1.24%Up 0.4 points since Feb 8, 2022
90%50%10%1%

What each source reports

CVE List Score used 6.5

Denial of Service in graphql-go

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
CVE-2022-21708
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
EUVDEUVD-2022-0647 6.5

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
EUVD-2022-0647
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-mh3m-8c74-74xh 6.5

Denial of Service in graphql-go

Impact

This is a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. To make things worse the only mitigation in affected versions creates opportunities for other attacks. This issue is only available if you are using graphql.MaxDepth option in your schema (which is highly recommended in most cases).

Patches

The issue has been patched in version v1.3.0. We have been trying to maintain backwards compatibility and avoid breaking changes so upgrading should not be problematic.

Workarounds

The best workaround is to patch to a version greater than or equal to v1.3.0. Otherwise, the only workaround in versions prior to v1.3.0 is to disable the graphql.MaxDepth option from your schema. Unfortunately, this could potentially create opportunities for other attacks.

References

There are no references or links. This issue was reported privately and was fixed before creating this Security Advisory.

For more information

If you have any questions or comments feel free to reach out to @pavelnikolov or @tony on the Gopher Slack.

Record
GHSA-mh3m-8c74-74xh
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
NVD 6.5

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
CVE-2022-21708
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0
3.5 LowAV:N/AC:M/Au:S/C:N/I:N/A:P
Weakness
CWE-400, CWE-674
Updated
2026-11-02
OSV 6.5

Denial of Service in graphql-go

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
CVE-2022-21708
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
OSVDEBIAN-CVE-2022-21708 6.5

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
DEBIAN-CVE-2022-21708
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-03
OSVGHSA-mh3m-8c74-74xh 6.5

Denial of Service in graphql-go

Impact

This is a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. To make things worse the only mitigation in affected versions creates opportunities for other attacks. This issue is only available if you are using graphql.MaxDepth option in your schema (which is highly recommended in most cases).

Patches

The issue has been patched in version v1.3.0. We have been trying to maintain backwards compatibility and avoid breaking changes so upgrading should not be problematic.

Workarounds

The best workaround is to patch to a version greater than or equal to v1.3.0. Otherwise, the only workaround in versions prior to v1.3.0 is to disable the graphql.MaxDepth option from your schema. Unfortunately, this could potentially create opportunities for other attacks.

References

There are no references or links. This issue was reported privately and was fixed before creating this Security Advisory.

For more information

If you have any questions or comments feel free to reach out to @pavelnikolov or @tony on the Gopher Slack.

Record
GHSA-mh3m-8c74-74xh
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-400
Updated
2026-11-02
OSVUBUNTU-CVE-2022-21708 6.5

graphql-go is a GraphQL server with a focus on ease of use. In versions prior to 1.3.0 there exists a DoS vulnerability that is possible due to a bug in the library that would allow an attacker with specifically designed queries to cause stack overflow panics. Any user with access to the GraphQL handler can send these queries and cause stack overflows. This in turn could potentially compromise the ability of the server to serve data to its users. The issue has been patched in version v1.3.0. The only known workaround for this issue is to disable the graphql.MaxDepth option from your schema which is not recommended.

Record
UBUNTU-CVE-2022-21708
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGO-2022-0300 No score

Panic via malicious inputs in github.com/graph-gophers/graphql-go

Malicious inputs can cause a panic.

A maliciously crafted input can cause a stack overflow and panic. Any user with access to the GraphQL can send such a query.

This issue only occurs when using the graphql.MaxDepth schema option (which is highly recommended in most cases).

Record
GO-2022-0300
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
github.com/graph-gophers/graphql-go
Go
before 1.3.0
1.3.0
golang-github-graph-gophers-graphql-go
Debian:12
before 1.3.0-1
1.3.0-1
golang-github-graph-gophers-graphql-go
Debian:13
before 1.3.0-1
1.3.0-1
golang-github-graph-gophers-graphql-go
Debian:14
before 1.3.0-1
1.3.0-1
golang-github-graph-gophers-graphql-go
Ubuntu:20.04:LTS
All versions, plus listed versions
0.0~git20180609.bb97385-2
None known

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-21708 is a medium vulnerability (CVSS 6.5) in Graph-gophers Graphql-go, published January 21, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.24%, the 69th percentile. Fixed in github.com/graph-gophers/graphql-go 1.3.0.

References

Show 5 moreShow less
MoveEnter Open