Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
batchql — Script de auditoria de segurança GraphQL com foco na execução de consultas e mutações em lote. | Kitploit
Ferramentas/GitHubGitHub/assetnote/batchql
Scanners de VulnerabilidadesTestes de Segurança de APIsSegurança WebTestes de Penetração
GitHubassetnote/batchql

batchql

Script de auditoria de segurança GraphQL com foco na execução de consultas e mutações em lote.

Ver Repositório
41342há 4 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

BatchQL

BatchQL é um script de auditoria de segurança GraphQL com foco em realizar consultas e mutações GraphQL em lote. Este script não é complexo, e recebemos melhorias de bom grado.

Ao explorar o espaço do problema de ataques de lote GraphQL, descobrimos que existiam algumas postagens em blogs na internet, porém nenhuma ferramenta para realizar ataques de lote GraphQL.

Os ataques de lote GraphQL podem ser bastante sérios dependendo das funcionalidades implementadas. Por exemplo, imagine uma funcionalidade de redefinição de senha que espera um PIN de 4 dígitos enviado ao seu e-mail. Com esta ferramenta, você poderia tentar todas as 10 mil tentativas de PIN em uma única consulta GraphQL. Isso pode contornar quaisquer limites de taxa ou bloqueios de conta, dependendo dos detalhes de implementação do fluxo de redefinição de senha.

Detecções

Esta ferramenta é capaz de detectar o seguinte:

  • Suporte a consulta de introspecção
  • Detecção de sugestões de esquema
  • Detecção potencial de CSRF
  • Agrupamento baseado em nome de consulta
  • Agrupamento baseado em lista JSON de consultas

Ataques

Atualmente, esta ferramenta suporta apenas o envio de consultas baseadas em lista JSON para ataques de lote. Ela suporta cenários onde as variáveis estão incorporadas na consulta ou onde são fornecidas na entrada JSON.

Uso

Enumeração

root@kitploit:~
❯ python batch.py -e http://re.local:5000/graphiql -p localhost:8080

Schema suggestions enabled. Use Clairvoyance to recover schema: https://github.com/nikitastupin/clairvoyance
CSRF GET based successful. Please confirm that this is a valid issue.
CSRF POST based successful. Please confirm that this is a valid issue.
Query name based batching: GraphQL batching is possible... preflight request was successful.
Query JSON list based batching: GraphQL batching is possible... preflight request was successful.
Most provide query, wordlist, and size to perform batching attack.

Ataques de Lote

  1. Salve um arquivo que contenha sua consulta GraphQL, ex. acc-login.txt:
root@kitploit:~
mutation emailLoginRemembered($loginInput: InputRememberedEmailLogin!) {
  emailLoginRemembered(loginInput: $loginInput) {
    authToken {
      accessToken
      __typename
    }
    userSessionResponse {
      userToken
      userIdentity {
        userId
        identityType
        verified
        onboardingStatus
        registrationReferralCode
        userReferralInfo {
          referralCode {
            code
            valid
            __typename
          }
          __typename
        }
        __typename
      }
      __typename
    }
    __typename
  }
  }
  1. Execute o seguinte comando para realizar um ataque de lote GraphQL:
root@kitploit:~
❯ python batch.py --query acc-login.txt --wordlist passwords.txt -v '{"loginInput":{"email":"[email protected]","password":"#VARIABLE#","rememberMe":false}}' --size 100 -e http://re.local:5000/graphiql -p localhost:8080

O comando acima faz o seguinte:

  • Especifica uma consulta a partir de um arquivo local --query acc-login.txt.
  • Especifica uma wordlist --wordlist passwords.txt
  • Especifica a entrada de variável com o identificador de substituição -v {"loginInput":{"email":"[email protected]","password":"#VARIABLE#","rememberMe":false}}
  • Especifica o tamanho do lote --size 100
  • Especifica o endpoint -e http://re.local:5000/graphiql
  • Especifica um proxy -p localhost:8080

Referências

  • Explorando GraphQL
  • Aplicação GraphQL Vulnerável Propositalmente
  • Ataque de Lote GraphQL - Wallarm
  • Mitigando Ataques de Lote
Baixar ferramenta