Description
Your web application's GraphQL implementation accepts non-JSON mutations over GET requests, increasing the risk of Cross-Site Request Forgery (CSRF) attacks. While JSON-based POST requests are generally considered resistant to CSRF, non-JSON GET requests are more susceptible to this type of attacks. GraphQL mutations are operations used to modify data on the server-side in a GraphQL API. While queries are used to request data from a GraphQL server, mutations are used to create, update, or delete data.
Remediation
Use POST for Mutations: Restrict GraphQL mutations to JSON-based POST requests to limit the CSRF attack surface.
References
Related Vulnerabilities
XWiki Cross-Site Request Forgery (CSRF) Vulnerability (CVE-2022-41927)
WordPress Plugin Redirection Cross-Site Request Forgery (1.1.4)
WordPress Plugin WP Reroute Email Cross-Site Request Forgery (1.4.6)
WordPress Plugin Post Thumbnail Editor Multiple Cross-Site Request Forgery Vulnerabilities (2.4.1)