
Cloud Vulnerability DB
A community-led vulnerabilities database
The graphql-upload library integrated into Apollo Server 2 contains a Cross-Site Request Forgery (CSRF) vulnerability identified as GHSA-2p3c-p3qw-69r4. The vulnerability affects Apollo Server versions 2.0.0 through 2.25.3, with version 2.25.4 providing a patch. The issue stems from the library's ability to process GraphQL operations within multipart/form-data POST requests, which can bypass browser security controls (GitHub Advisory).
The vulnerability exists because multipart/form-data POST requests are treated as "simple requests" by browsers and don't trigger CORS preflight checks. This allows GraphQL mutations to be executed without proper CORS policy verification. The issue is particularly concerning when the server uses SameSite=None cookies for authentication or relies on network properties for security. The vulnerability is enabled by default in Apollo Server 2, even if the upload functionality isn't explicitly used (GitHub Advisory).
When exploited, this vulnerability allows malicious websites to execute authenticated mutations on vulnerable GraphQL servers through users' browsers. While attackers cannot see the response due to CORS policies, the side effects of the mutations still occur. This is particularly dangerous for servers using cookie-based authentication or those relying on network-level security controls (GitHub Advisory).
For Apollo Server 2 users not utilizing uploads, upgrading to version 2.25.4 automatically disables the graphql-upload functionality. Alternatively, users can specify uploads: false in the ApolloServer configuration. For those actively using the upload feature, upgrading to Apollo Server v3.7 and enabling its CSRF prevention feature is recommended. Users manually integrating graphql-upload must implement CSRF prevention measures (GitHub Advisory).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."