Vulnerability DatabaseGHSA-2p3c-p3qw-69r4

GHSA-2p3c-p3qw-69r4
JavaScript vulnerability analysis and mitigation

Overview

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).

Technical details

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).

Impact

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).

Mitigation and workarounds

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).

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-23947CRITICAL9.3
  • JavaScriptJavaScript
  • @orval/core
NoYesJan 20, 2026
CVE-2026-23950HIGH8.8
  • JavaScriptJavaScript
  • grafana-graphite
NoYesJan 20, 2026
CVE-2026-22037HIGH8.4
  • JavaScriptJavaScript
  • @fastify/express
NoYesJan 19, 2026
CVE-2026-23522LOW3.7
  • JavaScriptJavaScript
  • @lobehub/chat
NoNoJan 19, 2026
CVE-2025-66803LOW1.7
  • JavaScriptJavaScript
  • @hotwired/turbo
NoYesJan 20, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management