GitHub Advisoryadvisory · PyPI

GHSA-hv3w-m4g2-5x77 strawberry-graphql: Denial of Service via unbounded WebSocket subscriptions

HIGH Published 2026-04-06 Modified 2026-06-08 Official page ↗
Aliases
CVE-2026-35526
Ecosystem
PyPI
Packages
strawberry-graphql
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-400, CWE-770
Reviewed
2026-04-06

Affected packages

• PyPI strawberry-graphql: < 0.312.3 → fixed in 0.312.3

Description

Strawberry GraphQL's WebSocket subscription handlers for both the `graphql-transport-ws` and legacy `graphql-ws` protocols allocate an `asyncio.Task` and associated `Operation` object for every incoming subscribe message without enforcing any limit on the number of active subscriptions per connection. An unauthenticated attacker can open a single WebSocket connection, send connection_init, and then flood subscribe messages with unique IDs. Each message unconditionally spawns a new `asyncio.Task` and async generator, causing linear memory growth and event loop saturation. This leads to server degradation or an OOM crash.

Related

Alias · CVE (1)

  • CVE-2026-35526 Strawberry GraphQL is a library for creating GraphQL APIs. vulnerability

Weakness · CWE (2)

  • CWE-400 Uncontrolled Resource Consumption weakness
  • CWE-770 Allocation of Resources Without Limits or Throttling weakness

References