
Ferramenta de Segurança para Reconhecimento e Coleta de Informações em um site. (python 3.x)

Ferramenta de Segurança para Reconhecimento e Coleta de Informações em um site. (python 3.x)
- Adicionar função de proxy
- Redefinir prioridades/tarefas
- Vamos depurar resultados de subdomínios de certificado
- Exibir o número atual de bypass durante o scan ("CB:")
- Easter egg para o Natal :)
- Opção -nfs (não primeiro passo) para pular as primeiras etapas de recon
- Google CSE antes do scan
- Criação da WIKI
- Detectando potencial divulgação de caminho em página web HTML
- Detectando diretórios ocultos potenciais
(para mais detalhes consulte CHANGELOG.md)
- git clone https://github.com/c0dejump/HawkScan.git && sudo python3 HawkScan/setup.py install
- pip(3) install -r requirements.txt
- python3 -m pip install -r requirements.txt
P1 é o mais importante
[WIP] Exclusão múltipla como: --exclude 403,1337b [P1] [Em progresso] (veja Exemplos)
[WIP] Roteamento anônimo através de algum proxy (lista de proxies http/s) [P1] [Em progresso]
[WIP] Reconstruir relatório de scan [P1]
[WIP] HExHTTP substituir "informações do cabeçalho" antes do scan
usage: hawkscan.py [-h] [-u URL] [-f FILE_URL] [-t THREAD] [--exclude EXCLUDE [EXCLUDE ...]] [--auto] [--update] [-w WORDLIST] [-b [BACKUP ...]] [-p PREFIX] [-H HEADER_] [-a USER_AGENT] [--redirect] [--auth AUTH] [--timesleep TS] [--proxie PROXIE] [-r] [-s SUBDOMAINS] [--js] [--nfs] [--ffs] [--notify] [-o OUTPUT] [-of OUTPUT_TYPE]
> Geral:
-u URL URL para escanear [obrigatório]
-f FILE_URL Arquivo com múltiplas URLs para escanear
-t THREAD Número de threads para usar no Fuzzing de URLs. Padrão: 30
--exclude EXCLUDE [EXCLUDE ...] Excluir página, código de resposta, tamanho da resposta. (Exemplos: --exclude 500,337b)
--auto Threads automáticas dependendo da resposta do site. Máx: 30
--update Para atualização automática
--lightmode Para apenas um fuzzing simples de 1 requisição por segundo e uma nova sessão para cada requisição
> Configurações de Wordlist:
-w WORDLIST Wordlist usada para Fuzzing do site desejado. Padrão: dichawk.txt
-b Adicionar prefixo/sufixo de extensões de backup durante o scan. (Exemplos: exemple.com/~ex/, exemple.com/ex.php.bak...) /!\ cuidado, leva mais tempo
-p PREFIX Adicionar prefixo na wordlist para escanear
> Configurações de Requisição:
-H HEADER_ Modificar cabeçalho. (Exemplo: -H "cookie: test")
-a USER_AGENT Escolher user-agent. Padrão: Aleatório
--redirect Para escanear com resposta de redirecionamento (301/302)
--auth AUTH Autenticação HTTP. (Exemplos: --auth admin:admin)
--timesleep TS Para definir um timesleep/rate-limit se a aplicação estiver instável durante o scan.
> Dicas:
-r Diretórios/arquivos recursivos
-s SUBDOMAINS Testador de subdomínios
--js Para tentar encontrar chaves, tokens, endpoints sensíveis... na página JavaScript
--nfs Não executar a primeira etapa do scan durante a primeira execução (waf, vhosts, wayback etc...)
--ffs Forçar a primeira etapa do scan durante a primeira execução (waf, vhosts, wayback etc...)
--notify Para receber notificação quando o scan terminar (funciona apenas no linux)
> Configurações de Exportação:
-o OUTPUT Saída para site_scan.txt (padrão no diretório do site)
-of OUTPUT_TYPE Formato do arquivo de saída. Formatos disponíveis: json, csv, txt
//Básico
python hawkscan.py -u https://www.exemplo.com/
//Com dicionário específico
python hawkscan.py -u https://www.exemplo.com/ -w dico_extra.txt
//com 30 threads
python hawkscan.py -u https://www.exemplo.com/ -t 30
//Com scan de arquivos de backup
python hawkscan.py -u https://www.exemplo.com/ -b
//Com exclusão de página
python hawkscan.py -u https://www.exemplo.com/ --exclude profile.php
//Com exclusão de código de resposta
python hawkscan.py -u https://www.exemplo.com/ --exclude 403
//Com exclusão de número de bytes
python hawkscan.py -u https://www.exemplo.com/ --exclude 1337b
//Com dois tipos de exclusão
python hawkscan.py -u https://www.exemplo.com/ --exclude 1337b,403
Layno (https://github.com/Clayno/) [Ajudante técnico]
Sanguinarius (https://twitter.com/sanguinarius_Bt) [Ajudante técnico]
Jamb0n69 (https://twitter.com/jamb0n69) [Ajudante técnico]
Cyber_Ph4ntoM (https://twitter.com/__PH4NTOM__) [Testador beta e designer de logo]
https://www.paypal.me/c0dejump
Ou se quiser me pagar um café :)
Este script usa "WafW00f" para detectar o WAF na primeira etapa (https://github.com/EnableSecurity/wafw00f)
Este script usa "Sublist3r" para escanear subdomínios (https://github.com/aboul3la/Sublist3r)