CVE-2026-35523 json
Authentication bypass in strawberry-graphql via legacy graphql-ws WebSocket subprotocol
published 7mo ago modified 4mo ago also EUVD-2026-19716 , GHSA-vpwc-v33q-mq89 , PYSEC-2026-133
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 38%
- public exploits
- 0
- none known
Summary
Strawberry GraphQL is a library for creating GraphQL APIs. Strawberry up until version 0.312.3 is vulnerable to an authentication bypass on WebSocket subscription endpoints. The legacy graphql-ws subprotocol handler does not verify that a connection_init handshake has been completed before processing start (subscription) messages. This allows a remote attacker to skip the on_ws_connect authentication hook entirely by connecting with the graphql-ws subprotocol and sending a start message directly, without ever sending connection_init. This vulnerability is fixed in 0.312.3.
Patch / fix
- pypi strawberry-graphql 0.312.3
- strawberry strawberry_graphql 0.312.3
- strawberryrocks strawberry 0.312.3
Is CVE-2026-35523 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 7mo ago
Exploit prediction
0.44% chance of exploitation in the next 30 days, higher than 38% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
| OSV | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | strawberry-graphql | <0.312.3 |
0.312.3 |
Affected products
- strawberry-graphql strawberry
Classification
- Weakness
-
- CWE-306 Missing Authentication for Critical Functionality
References
-
github.com
/strawberry-graphql/strawberry/commit/0977a4e6b41b7cfe3e9d8ba84a43458a2b0c54c2
web
-
github.com
/strawberry-graphql/strawberry/security/advisories/GHSA-vpwc-v33q-mq89
web, vendor-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-35523
advisory
-
github.com
/pypa/advisory-database/tree/main/vulns/strawberry-graphql/PYSEC-2026-133.yaml
web
-
github.com
/strawberry-graphql/strawberry
package
-
github.com
/strawberry-graphql/strawberry/releases/tag/0.312.3
web
Sources
- CVE List CVE-2026-35523
- GitHub Advisory GHSA-vpwc-v33q-mq89
- NVD CVE-2026-35523
- OSV PYSEC-2026-133
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.