2021-06-04 18:23:21 +00:00
|
|
|
id: graphql-detect
|
2020-04-20 12:52:29 +00:00
|
|
|
|
|
|
|
info:
|
2021-06-04 18:23:21 +00:00
|
|
|
name: GraphQL API Detection
|
2021-10-08 06:40:53 +00:00
|
|
|
author: NkxxkN,ELSFA7110,@OFJAAAH
|
2020-08-03 21:52:00 +00:00
|
|
|
severity: info
|
2021-10-08 06:41:57 +00:00
|
|
|
tags: tech,graphql,fuzz
|
2020-04-20 12:52:29 +00:00
|
|
|
|
|
|
|
requests:
|
|
|
|
- method: POST
|
2020-05-25 08:24:39 +00:00
|
|
|
path:
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/HyperGraphQL"
|
|
|
|
- "{{BaseURL}}/___graphql"
|
|
|
|
- "{{BaseURL}}/altair"
|
|
|
|
- "{{BaseURL}}/api/cask/graphql-playground"
|
|
|
|
- "{{BaseURL}}/api/graphql"
|
|
|
|
- "{{BaseURL}}/api/graphql/v1"
|
|
|
|
- "{{BaseURL}}/explorer"
|
|
|
|
- "{{BaseURL}}/express-graphql"
|
|
|
|
- "{{BaseURL}}/graph"
|
|
|
|
- "{{BaseURL}}/graph_cms"
|
2020-04-20 12:52:29 +00:00
|
|
|
- "{{BaseURL}}/graphiql"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/graphiql.css"
|
|
|
|
- "{{BaseURL}}/graphiql.js"
|
|
|
|
- "{{BaseURL}}/graphiql.min.css"
|
|
|
|
- "{{BaseURL}}/graphiql.min.js"
|
|
|
|
- "{{BaseURL}}/graphiql.php"
|
|
|
|
- "{{BaseURL}}/graphiql/finland"
|
|
|
|
- "{{BaseURL}}/graphql"
|
|
|
|
- "{{BaseURL}}/graphql-console"
|
|
|
|
- "{{BaseURL}}/graphql-devtools"
|
|
|
|
- "{{BaseURL}}/graphql-explorer"
|
|
|
|
- "{{BaseURL}}/graphql-playground"
|
|
|
|
- "{{BaseURL}}/graphql-playground-html"
|
2020-09-21 14:01:20 +00:00
|
|
|
- "{{BaseURL}}/graphql.php"
|
|
|
|
- "{{BaseURL}}/graphql/console"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/graphql/graphql-playground"
|
|
|
|
- "{{BaseURL}}/graphql/schema.json"
|
|
|
|
- "{{BaseURL}}/graphql/schema.xml"
|
|
|
|
- "{{BaseURL}}/graphql/schema.yaml"
|
|
|
|
- "{{BaseURL}}/graphql/v1"
|
|
|
|
- "{{BaseURL}}/je/graphql"
|
|
|
|
- "{{BaseURL}}/laravel-graphql-playground"
|
|
|
|
- "{{BaseURL}}/playground"
|
|
|
|
- "{{BaseURL}}/portal-graphql"
|
|
|
|
- "{{BaseURL}}/query"
|
|
|
|
- "{{BaseURL}}/query-api"
|
|
|
|
- "{{BaseURL}}/query-explorer"
|
|
|
|
- "{{BaseURL}}/query-laravel"
|
|
|
|
- "{{BaseURL}}/sphinx-graphiql"
|
|
|
|
- "{{BaseURL}}/subscriptions"
|
2020-09-21 14:01:20 +00:00
|
|
|
- "{{BaseURL}}/v1"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/v1/altair"
|
|
|
|
- "{{BaseURL}}/v1/api/graphql"
|
|
|
|
- "{{BaseURL}}/v1/explorer"
|
|
|
|
- "{{BaseURL}}/v1/graph"
|
|
|
|
- "{{BaseURL}}/v1/graphiql"
|
|
|
|
- "{{BaseURL}}/v1/graphiql.css"
|
|
|
|
- "{{BaseURL}}/v1/graphiql.js"
|
|
|
|
- "{{BaseURL}}/v1/graphiql.min.css"
|
|
|
|
- "{{BaseURL}}/v1/graphiql.min.js"
|
|
|
|
- "{{BaseURL}}/v1/graphiql.php"
|
|
|
|
- "{{BaseURL}}/v1/graphiql/finland"
|
|
|
|
- "{{BaseURL}}/v1/graphql"
|
|
|
|
- "{{BaseURL}}/v1/graphql-explorer"
|
|
|
|
- "{{BaseURL}}/v1/graphql.php"
|
|
|
|
- "{{BaseURL}}/v1/graphql/console"
|
|
|
|
- "{{BaseURL}}/v1/graphql/schema.json"
|
|
|
|
- "{{BaseURL}}/v1/graphql/schema.xml"
|
|
|
|
- "{{BaseURL}}/v1/graphql/schema.yaml"
|
|
|
|
- "{{BaseURL}}/v1/playground"
|
|
|
|
- "{{BaseURL}}/v1/subscriptions"
|
2020-09-21 14:01:20 +00:00
|
|
|
- "{{BaseURL}}/v2"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/v2/altair"
|
|
|
|
- "{{BaseURL}}/v2/api/graphql"
|
|
|
|
- "{{BaseURL}}/v2/explorer"
|
|
|
|
- "{{BaseURL}}/v2/graph"
|
|
|
|
- "{{BaseURL}}/v2/graphiql"
|
|
|
|
- "{{BaseURL}}/v2/graphiql.css"
|
|
|
|
- "{{BaseURL}}/v2/graphiql.js"
|
|
|
|
- "{{BaseURL}}/v2/graphiql.min.css"
|
|
|
|
- "{{BaseURL}}/v2/graphiql.min.js"
|
|
|
|
- "{{BaseURL}}/v2/graphiql.php"
|
|
|
|
- "{{BaseURL}}/v2/graphiql/finland"
|
|
|
|
- "{{BaseURL}}/v2/graphql"
|
|
|
|
- "{{BaseURL}}/v2/graphql-explorer"
|
|
|
|
- "{{BaseURL}}/v2/graphql.php"
|
|
|
|
- "{{BaseURL}}/v2/graphql/console"
|
|
|
|
- "{{BaseURL}}/v2/graphql/schema.json"
|
|
|
|
- "{{BaseURL}}/v2/graphql/schema.xml"
|
|
|
|
- "{{BaseURL}}/v2/graphql/schema.yaml"
|
|
|
|
- "{{BaseURL}}/v2/playground"
|
|
|
|
- "{{BaseURL}}/v2/subscriptions"
|
2020-09-21 14:01:20 +00:00
|
|
|
- "{{BaseURL}}/v3"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/v3/altair"
|
|
|
|
- "{{BaseURL}}/v3/api/graphql"
|
|
|
|
- "{{BaseURL}}/v3/explorer"
|
|
|
|
- "{{BaseURL}}/v3/graph"
|
|
|
|
- "{{BaseURL}}/v3/graphiql"
|
|
|
|
- "{{BaseURL}}/v3/graphiql.css"
|
|
|
|
- "{{BaseURL}}/v3/graphiql.js"
|
|
|
|
- "{{BaseURL}}/v3/graphiql.min.css"
|
|
|
|
- "{{BaseURL}}/v3/graphiql.min.js"
|
|
|
|
- "{{BaseURL}}/v3/graphiql.php"
|
|
|
|
- "{{BaseURL}}/v3/graphiql/finland"
|
|
|
|
- "{{BaseURL}}/v3/graphql"
|
|
|
|
- "{{BaseURL}}/v3/graphql-explorer"
|
|
|
|
- "{{BaseURL}}/v3/graphql.php"
|
|
|
|
- "{{BaseURL}}/v3/graphql/console"
|
|
|
|
- "{{BaseURL}}/v3/graphql/schema.json"
|
2020-10-09 15:49:07 +00:00
|
|
|
- "{{BaseURL}}/v3/graphql/schema.xml"
|
|
|
|
- "{{BaseURL}}/v3/graphql/schema.yaml"
|
|
|
|
- "{{BaseURL}}/v3/playground"
|
2021-10-08 06:40:53 +00:00
|
|
|
- "{{BaseURL}}/v3/subscriptions"
|
|
|
|
- "{{BaseURL}}/v4/altair"
|
|
|
|
- "{{BaseURL}}/v4/api/graphql"
|
|
|
|
- "{{BaseURL}}/v4/explorer"
|
|
|
|
- "{{BaseURL}}/v4/graph"
|
|
|
|
- "{{BaseURL}}/v4/graphiql"
|
|
|
|
- "{{BaseURL}}/v4/graphiql.css"
|
|
|
|
- "{{BaseURL}}/v4/graphiql.js"
|
|
|
|
- "{{BaseURL}}/v4/graphiql.min.css"
|
|
|
|
- "{{BaseURL}}/v4/graphiql.min.js"
|
|
|
|
- "{{BaseURL}}/v4/graphiql.php"
|
|
|
|
- "{{BaseURL}}/v4/graphiql/finland"
|
|
|
|
- "{{BaseURL}}/v4/graphql"
|
|
|
|
- "{{BaseURL}}/v4/graphql-explorer"
|
|
|
|
- "{{BaseURL}}/v4/graphql.php"
|
|
|
|
- "{{BaseURL}}/v4/graphql/console"
|
|
|
|
- "{{BaseURL}}/v4/graphql/schema.json"
|
|
|
|
- "{{BaseURL}}/v4/graphql/schema.xml"
|
|
|
|
- "{{BaseURL}}/v4/graphql/schema.yaml"
|
|
|
|
- "{{BaseURL}}/v4/playground"
|
|
|
|
- "{{BaseURL}}/v4/subscriptions"
|
2020-10-09 15:49:07 +00:00
|
|
|
|
2020-04-20 12:52:29 +00:00
|
|
|
headers:
|
|
|
|
Content-Type: application/json
|
2021-06-04 18:23:21 +00:00
|
|
|
|
2020-04-20 12:52:29 +00:00
|
|
|
body: '{"query":"query IntrospectionQuery{__schema {queryType { name }}}"}'
|
2020-10-09 15:49:07 +00:00
|
|
|
|
2021-09-02 11:59:10 +00:00
|
|
|
stop-at-first-match: true
|
2020-10-09 15:49:07 +00:00
|
|
|
matchers-condition: and
|
2020-04-20 12:52:29 +00:00
|
|
|
matchers:
|
2020-10-09 15:49:07 +00:00
|
|
|
- type: status
|
|
|
|
status:
|
|
|
|
- 200
|
2021-06-04 18:23:21 +00:00
|
|
|
|
2021-11-12 05:57:26 +00:00
|
|
|
- type: word
|
|
|
|
part: header
|
2021-11-12 07:25:49 +00:00
|
|
|
words:
|
|
|
|
- "application/json"
|
2021-11-12 06:09:28 +00:00
|
|
|
|
2020-10-09 15:49:07 +00:00
|
|
|
- type: regex
|
|
|
|
regex:
|
|
|
|
- "__schema"
|
|
|
|
- "(Introspection|INTROSPECTION|introspection).*?"
|
2020-10-15 09:05:13 +00:00
|
|
|
- ".*?operation not found.*?"
|
2021-10-08 06:40:53 +00:00
|
|
|
condition: or
|