id: graphql-voyager

info:
  name: GraphQL Voyager - Exposed
  author: Hamza Sahin
  severity: low
  description: |
    GraphQL Voyager UI exposed (often a dev tool) which visualizes the GraphQL schema in production.
  metadata:
    verified: true
    max-request: 4
    shodan-query: html:"voyager.min.js"
  tags: misconfig,graphql,voyager,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/voyager"
      - "{{BaseURL}}/voyager/"
      - "{{BaseURL}}/ui/voyager"
      - "{{BaseURL}}/graphql/voyager"

    stop-at-first-match: true

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "GraphQL Voyager"
          - "Voyager helps represent any GraphQL API"

      - type: regex
        part: body
        regex:
          - "(?i)voyager\\.min\\.js"
          - "(?i)/voyager[-_/]static/"
# digest: 4a0a00473045022100f0de1eb3f52d266de37961e95a6d76883af9307416454286ae62554bc52d15ed02207d03dec9df979e3d84c394673c591bc3796a9cf0be4db1499da9e6d630356738:922c64590222798bb761d5b6d8e72950