GraphQL
Tools
graphinder
graphqlmap
Introspection enabled
Send this :
Introspection not enabled
Fuzz
Dump DB schema
List path
Vulnerabilities
SQL Injection: simple but classic, try SQL and NoSQL injection in fields values,
Send a single quote ' inside a graphql parameter to trigger the SQL injection
Debug & information disclosure: Insert bad characters in object or fields name, sometimes DEBUG mode is activated and even if you have a 403 status, you could have a good surprise,
Batching Attack: Batching is the process of taking a group of requests, combining them into one, and making a single request with the same data that all of the other queries would have made (more here). When authentication process is used with GraphQL, batch attack can be performed to simultaneously sending many queries with different credentials, itβs like a bruteforce attack but only with one request. Also, batch attack can be used against 2FA authentication, to bypass rate-limit (if itβs based on number of query by IP for example). More : https://lab.wallarm.com/graphql-batching-attack/
Last updated
Was this helpful?
