Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

GraphQL Misconfiguration

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Nächste SlideShare
Attacking GraphQL
Attacking GraphQL
Wird geladen in …3
×

Hier ansehen

1 von 22 Anzeige

Weitere Verwandte Inhalte

Ähnlich wie GraphQL Misconfiguration (20)

Anzeige

Aktuellste (20)

GraphQL Misconfiguration

  1. 1. GraphQL Misconfiguration By - Harshit Sengar
  2. 2. C O N T E N T S Part 01 Part 02 GraphQL Rest vs Graphql Part 03 Terminologies Part 04 Part 05 Part 06 Endpoint & Tools Attacks Vectors Practice Labs
  3. 3. 01 GraphQL
  4. 4. 01 GraphQL GraphQL is a query language for your API, and a server- side runtime for executing queries by using a type system you define for your data. GraphQL isn't tied to any specific database or storage engine and is instead backed by your existing code and data. A GraphQL service is created by defining types and fields on those types, then providing functions for each field on each type.
  5. 5. 02 Rest v/s Graphql
  6. 6. 03 Terminologies
  7. 7. 03 Terminologies Queries and Mutations Schema and Types Arguments Fields Variable OperationName
  8. 8. 04 GraphQL Endpoints & Tools
  9. 9. 04 GraphQL Endpoints & Tools • /graphql • /graphql/console/ • /graphql.php • /graphiql • /graphiql.php • ....etc, • Graphiql • Graphql Playground • Graphql Raider (Burp-Extension) • InQL (Burp-Extension) Endpoints Tools
  10. 10. 05 Attack Vectors
  11. 11. Introspection Query DOS IDOR & Authorization Bypass Injections Mutation 05 Attack Vectors
  12. 12. 05 Introspection Query { __schema { directives { name description } subscriptionType { name description } types { name description } queryType { name description } mutationType { name description } queryType { name description } } } 1. query allSchemaTypes { __schema { types { name kind description } } } 2. query availableQueries { __schema { queryType { fields { name description } } } } 3. query EnumerationValues { __type(name: "<ENUM TYPE>") { kind name description enumValues { name description } } } https://hackerone.com/reports/291531
  13. 13. 05 DOS / Nested Queries query{ allUsers{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ posts{ author{ username } } } } } } } } } } } } } } } } } } }
  14. 14. 05 IDOR & Bypass Authorization
  15. 15. 05 Injections • SQL Injections • Command Injections • XSS • etc.., SQL Injection
  16. 16. 05 Mutations • SQL Injections • Command Injections • XSS • Change/Modify the Details • etc.., SQL Injection
  17. 17. 06 Practice Labs
  18. 18. SKF-Labs Vuln-graphql-api 06 Practice Labs
  19. 19. Contact: Email: hsengar.100@gmail.com Twitter: https://www.twitter.com/sengarharshit1 Linkedin: https://www.linkedin.com/in/sengarharshit1 Medium: https://www.medium.com/@sengarharshit1 THANK YOU

×