Parse Server's GraphQL WebSocket endpoint bypasses security middleware
Moderate severity
GitHub Reviewed
Published
Mar 13, 2026
in
parse-community/parse-server
•
Updated Mar 13, 2026
Package
Affected versions
>= 9.0.0, < 9.6.0-alpha.14
< 8.0.0
Patched versions
9.6.0-alpha.14
8.6.40
Description
Published to the GitHub Advisory Database
Mar 13, 2026
Reviewed
Mar 13, 2026
Last updated
Mar 13, 2026
Impact
Any Parse Server deployment that uses the GraphQL API is affected. The GraphQL WebSocket endpoint for subscriptions does not pass requests through the Express middleware chain that enforces authentication, introspection control, and query complexity limits. An attacker can connect to the WebSocket endpoint and execute GraphQL operations without providing a valid application or API key, access the GraphQL schema via introspection even when public introspection is disabled, and send arbitrarily complex queries that bypass configured complexity limits.
Patches
The unfinished GraphQL WebSocket subscription feature has been removed, including the
createSubscriptionsmethod and thesubscriptions-transport-wsdependency. GraphQL subscriptions were never functional in Parse Server as the schema did not define any subscription types.Workarounds
Block WebSocket upgrade requests to the GraphQL subscriptions path (by default
/subscriptions) at the network level, for example using a reverse proxy or load balancer rule.References