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
API-SPY-API-PROBE — Uma ferramenta poderosa de brute-force de diretórios, projetada para operações recursivas/multiplex, descoberta e enumeração de APIs, extração de arquivos JS e listagem de métodos HTTP de API, em um único comando. Isso não é SOMENTE para APIs, minha ferramenta apenas se destaca nelas. | Kitploit
Ferramentas/GitHubGitHub/austinjump-sec/api-spy-api-probe
ReconhecimentoScripting e AutomaçãoExploração de Aplicações WebTestes de Segurança de APIsColeta de InformaçõesTestes de PenetraçãoRastreador
GitHubaustinjump-sec/api-spy-api-probe

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 →

API-SPY-API-PROBE

Ver Repositório
515há 3 mesesAinda não revisado

Sobre

Uma ferramenta poderosa de brute-force de diretórios, projetada para operações recursivas/multiplex, descoberta e enumeração de APIs, extração de arquivos JS e listagem de métodos HTTP de API, em um único comando. Isso não é SOMENTE para APIs, minha ferramenta apenas se destaca nelas.

Compartilhar

API-SPY 🕵️👻

Uma ferramenta poderosa de brute-force em diretórios projetada para reconhecimento de API e testes de penetração. Descobre automaticamente endpoints ocultos de API, realiza subvarredura recursiva e testa métodos HTTP para enumeração mais aprofundada de APIs.

screenie work

Funcionalidades

✨ Capacidades Principais:

  • 🎯 Descoberta rápida de endpoints usando brute-force baseado em wordlist
  • 🔄 Subvarredura recursiva automática de endpoints descobertos
  • 🔍 Teste de métodos HTTP (GET, POST, PUT, DELETE, PATCH, OPTIONS)
  • ⚡ Varredura multi-thread para melhor desempenho
  • 📊 Tratamento inteligente de códigos de status (200, 401, 403)
  • 🔗 Prompts interativos para subvarredura e teste seletivos
  • 🕷️ Extração de JavaScript para endpoints comuns de /api/
  • 🪟 Suporte a multiplexação de terminal (tmux) para operações paralelas
  • ⏱️ Pulo automático de prompts com tempo limite configurável

Instalação

Pré-requisitos

  • Python 3.6+
  • Biblioteca requests
  • tmux (opcional, para a flag --split)
  • xfce-terminal (para ambientes desktop Linux)

Configuração

root@kitploit:~
# Clone o repositório
git clone https://github.com/austinjump-sec/API-SPY.git
cd API-SPY

# Instale as dependências
pip install requests

# Torne os scripts executáveis (opcional)
chmod +x apispy.py apiprobe.py

Uso

Sintaxe Básica

root@kitploit:~
python3 apispy.py <baseUrl> <wordlist> [OPÇÕES]

Argumentos Obrigatórios

ArgumentoDescrição
<baseUrl>URL alvo (ex.: http://exemplo.com ou http://api.exemplo.com)
<wordlist>Caminho para o arquivo de wordlist contendo endpoints (um por linha)

Argumentos Opcionais

Exemplos

Varredura básica com configuração padrão (single-thread)

root@kitploit:~
python3 apispy.py http://api.exemplo.com wordlist.txt

Varredura multi-thread com 10 threads

root@kitploit:~
python3 apispy.py http://api.exemplo.com wordlist.txt -t10

Usar tmux para operações paralelas

root@kitploit:~
python3 apispy.py http://api.exemplo.com wordlist.txt -t5 --split

Subvarredura de URL específica com maior número de threads

root@kitploit:~
python3 apispy.py http://api.exemplo.com/v1 wordlist.txt -t20

Como Funciona

Fase 1: Teste de Endpoints Comuns de API

A ferramenta começa testando um conjunto predefinido de caminhos comuns de API:

  • api, v1, v2, api/v1, api/v2, graphql, rest

Fase 2: Brute-Force com Wordlist

  • Carrega endpoints da sua wordlist (ignora comentários iniciados com #)
  • Testa cada endpoint com requisições HTTP GET
  • Execução multi-thread para varredura mais rápida
  • Identifica endpoints responsivos com códigos de status: 200, 401, 403

Fase 3: Subvarredura Interativa (Opcional)

Quando um endpoint é encontrado, você recebe um prompt:

root@kitploit:~
'-> Subscaneamento <url>? (s/n) [Pulo automático em 5s]:
  • Escolha s/sim para escanear recursivamente aquele endpoint com a mesma wordlist
  • Inicia automaticamente em um novo terminal ou janela tmux dividida
  • Pula automaticamente após 5 segundos se nenhuma entrada for fornecida

Fase 4: Teste de Métodos HTTP (Opcional)

Após a subvarredura, você recebe um prompt:

root@kitploit:~
'-> Testar métodos em <url>? (s/n) [Pulo automático em 5s]:
  • Inicia apiprobe.py que testa métodos HTTP no endpoint descoberto
  • Testa: GET, POST, PUT, DELETE, PATCH, OPTIONS
  • Saída colorida (verde para 200, amarelo para erros de autenticação)
  • Mostra tamanhos das respostas e dicas do cabeçalho Allow

Interpretação da Saída

Script Principal API-SPY

root@kitploit:~
[+] Url found: http://api.exemplo.com/v1            ← 200 OK (acessível)
    '-> Subscaneamento http://api.exemplo.com/v1? (s/n) [Pulo automático em 0s]: 
[-] Timeout: Skipped prompt for http://api.exemplo.com/v1?
    '-> Testar métodos em http://api.exemplo.com/v1? (s/n) [Pulo automático em 4s]: 
[-] Url found but not permitted (403 ERR): ...      ← Proibido mas existe
[-] Url found but not permitted (401 ERR): ...      ← Requer autenticação

Script API-Probe

root@kitploit:~
[+] GET     -> STATUS: 200 OK (Tamanho: 1024)
[-] POST    -> STATUS: 405 (Tamanho: 0)
[Dica do Cabeçalho] Allow: GET, HEAD, OPTIONS

Formato da Wordlist

Crie um arquivo de texto simples com endpoints (um por linha):

root@kitploit:~
admin
users
api/users
v1/products
v2/customers
/api/v1/auth
/graphql
search
data
config

Nota: Linhas iniciadas com # são tratadas como comentários e ignoradas.

Wordlists Recomendadas

Wordlists populares de API para usar com o API-SPY:

  • SecLists - Endpoints de API
  • Wordlist da Assetnote
  • Rotas de API do FuzzDB

Dicas de Performance

Diretrizes para Número de Threads

  • 1-5 threads: Conservador, menor risco de detecção, mais lento
  • 5-20 threads: Desempenho equilibrado e furtividade
  • 20-50 threads: Varredura agressiva, resultados mais rápidos
  • 50-150 threads: Velocidade máxima (pode disparar WAF/IDS)
root@kitploit:~
# Modo furtivo (poucas threads)
python3 apispy.py http://alvo.com wordlist.txt -t3

# Modo equilibrado
python3 apispy.py http://alvo.com wordlist.txt -t15

# Modo agressivo
python3 apispy.py http://alvo.com wordlist.txt -t50

Comportamento de Tempo Limite

  • Prompts interativos pulam automaticamente após 5 segundos
  • Útil para varredura não monitorada de grandes listas de alvos
  • Modifique timeout=5 no código-fonte para personalizar

Solução de Problemas

"Wordlist not found"

Verifique se o caminho da wordlist está correto e o arquivo existe:

root@kitploit:~
ls -la /caminho/para/wordlist.txt

Erro de script nomeado incorretamente

Ao subvarrer, certifique-se de que:

  • O script principal se chama: apispy.py
  • O script de teste se chama: apiprobe.py
  • Ambos estão no mesmo diretório

tmux split-window não está funcionando

Se --split falhar:

  • Instale o tmux: sudo apt install tmux
  • Certifique-se de estar executando dentro de uma sessão tmux: tmux new-session -s scan
  • Reverte automaticamente para xfce-terminal

"Connection Failed" para todos os endpoints

  • Verifique se a URL base está correta e acessível
  • Verifique configurações de firewall/proxy
  • Certifique-se de que o serviço alvo está em execução
  • Teste manualmente: curl http://sua-url/

Nenhum resultado encontrado

  • Verifique se a wordlist contém endpoints relevantes
  • Verifique se o alvo retorna códigos de status diferentes de 200/401/403
  • Tente com menos threads para evitar timeouts
  • Aumente o tempo limite da requisição na função check_status()

Considerações de Segurança

⚠️ Legal e Ético:

  • Teste apenas sistemas que você possui ou tem permissão explícita por escrito para testar
  • O acesso não autorizado a sistemas de computador é ilegal na maioria das jurisdições
  • Use o API-SPY de forma responsável para testes de penetração autorizados e pesquisa em segurança
  • Respeite os limites de taxa e não realize ataques DoS

Melhores Práticas

  1. Obtenha Autorização: Consiga permissão por escrito antes de testar
  2. Use Wordlists Apropriadas: Escolha endpoints relevantes para o seu alvo
  3. Monitore a Detecção: Fique atento a bloqueios de WAF/IDS ou bloqueios de conta
  4. Respeite os Limites de Taxa: Use contagens de threads mais baixas em sistemas de produção
  5. Documente Descobertas: Registre todos os endpoints descobertos para relatórios

Uso Avançado

Valores Personalizados de Tempo Limite

Edite o código-fonte para ajustar os valores de timeout:

root@kitploit:~
def ask_subscan(url, wordlist, timeout=10):  # Altere de 5 para 10 segundos

Filtragem de Resultados

Crie wordlists direcionadas a caminhos específicos de API:

root@kitploit:~
# Apenas endpoints de admin
grep -i "admin" wordlist-completa.txt > wordlist-admin.txt

# Apenas API v1
grep "v1" wordlist-completa.txt > wordlist-v1.txt

Varredura em Lote

Escaneie múltiplos alvos com um loop:

root@kitploit:~
for target in http://alvo1.com http://alvo2.com http://alvo3.com; do
    python3 apispy.py "$target" wordlist.txt -t10
done

Arquitetura

apispy.py (Scanner Principal)

  • Orquestra o fluxo de trabalho de varredura
  • Gerencia threads e requisições concorrentes
  • Lida com prompts interativos e abertura de terminais
  • Coordena operações de subvarredura e teste

apiprobe.py (Testador de Métodos)

  • Testa métodos HTTP em endpoints descobertos
  • Informa a disponibilidade de métodos e códigos de status
  • Extrai dicas dos cabeçalhos HTTP
  • Fornece avaliação da capacidade do endpoint

Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para:

  • Relatar bugs e problemas
  • Sugerir novas funcionalidades
  • Melhorar a documentação
  • Otimizar o desempenho

Aviso Legal

Esta ferramenta é fornecida apenas para fins educacionais e de teste de segurança autorizado. Os usuários são responsáveis por garantir que possuem a devida autorização antes de escanear qualquer sistema. O acesso não autorizado a sistemas de computador é ilegal.

Licença

Este projeto é fornecido "como está" para pesquisa em segurança e testes autorizados.


Criado por: austinjump-sec
Repositório: austinjump-sec/API-SPY

Baixar ferramenta
ArgumentoDescrição
--t<número>Número de threads (máx. 150, padrão: 1)
--splitUsa tmux split-window em vez de novas janelas de terminal
--debugMostra mensagens de erro ocultas
--loudMostra todas as mensagens, positivas e erros, destacando qualquer coisa que não retorne 404
--jsEscaneia arquivos JavaScript e extrai endpoints de API comuns fixados no código