What’s Vulnerable › Vulnerabilities
CVE-2026-30241: Mercurius: queryDepth limit bypassed for WebSocket subscriptions
- Severity: high (CVSS 8.2 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.4% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-03-06 · updated 2026-06-17
- Weakness: CWE-863
Description
Mercurius is a GraphQL adapter for Fastify. Prior to version 16.8.0, Mercurius fails to enforce the configured queryDepth limit on GraphQL subscription queries received over WebSocket connections. The depth check is correctly applied to HTTP queries and mutations, but subscription queries are parsed and executed without invoking the depth validation. This allows a remote client to submit arbitrarily deeply nested subscription queries over WebSocket, bypassing the intended depth restriction. On schemas with recursive types, this can lead to denial of service through exponential data resolution on each subscription event. This issue has been patched in version 16.8.0.
Affected products
- mercurius-js mercurius: before 16.8.0 — fixed in 16.8.0
How to fix
Upgrade to a fixed version: mercurius-js mercurius 16.8.0. Check the vendor advisory for mitigations.
References
- https://github.com/mercurius-js/mercurius/commit/5b56f60f4b0d60780b0ff499a479bd830bdd6986
- https://github.com/mercurius-js/mercurius/security/advisories/GHSA-m4h2-mjfm-mp55
Get alerted when CVE-2026-30241 or the next vulnerability affects your stack