
Verifica domínios expirados quanto à categorização/reputação e histórico do Archive.org para determinar bons candidatos para phishing e nomes de domínio C2
Autores Joe Vest (@joevest) e Andrew Chiles (@andrewchiles)
A seleção de nomes de domínio é um aspecto importante da preparação para testes de penetração e, especialmente, para engajamentos de Red Team. Normalmente, domínios que foram usados anteriormente para propósitos benignos e foram devidamente categorizados podem ser comprados por apenas alguns dólares. Tais domínios podem permitir que uma equipe ignore filtros web baseados em reputação e restrições de saída de rede para tarefas de phishing e C2.
Esta ferramenta baseada em Python foi escrita para consultar rapidamente o mecanismo de busca Expireddomains.net para domínios expirados/disponíveis com um histórico de uso anterior. Em seguida, ela consulta opcionalmente a reputação do domínio em serviços como Symantec Site Review (BlueCoat), IBM X-Force e Cisco Talos. A saída principal da ferramenta é um relatório em estilo de tabela HTML com carimbo de data/hora.
Veja CHANGELOG para histórico de atualizações e notas de lançamento!
Instalar os requisitos Python
pip3 install -r requirements.txt
Opcional - Instalar dependências adicionais de suporte a OCR
Debian/Ubuntu: apt-get install tesseract-ocr python3-pil
MAC OSX: brew install tesseract
pipenv --python 3.7
pipenv install
Opcional - Instalar dependências adicionais de suporte a OCR
apt-get install tesseract-ocr python3-pilConstruir a imagem
docker build -t domainhunter .
Executar com seus argumentos
docker run -it domainhunter [args]
usage: domainhunter.py [-h] [-a] [-k KEYWORD] [-c] [-f FILENAME] [--ocr]
[-r MAXRESULTS] [-s SINGLE] [-t {0,1,2,3,4,5}]
[-w MAXWIDTH] [-V]
Encontra domínios expirados, categorização de domínios e histórico do Archive.org para determinar bons candidatos para domínios de C2 e phishing
argumentos opcionais:
-h, --help mostra esta mensagem de ajuda e sai
-a, --alexa Filtra resultados para listagens do Alexa
-k KEYWORD, --keyword KEYWORD
Palavra-chave usada para refinar os resultados da pesquisa
-c, --check Realiza verificações de reputação do domínio
-f FILENAME, --filename FILENAME
Especifica arquivo de entrada com nomes de domínio separados por
linha para verificar
--ocr Realiza OCR em CAPTCHAs quando desafiado
-r MAXRESULTS, --maxresults MAXRESULTS
Número de resultados a retornar ao consultar os mais recentes
domínios expirados/excluídos
-s SINGLE, --single SINGLE
Realiza verificações detalhadas de reputação para um único
nome de domínio/IP.
-t {0,1,2,3,4,5}, --timing {0,1,2,3,4,5}
Modifica o tempo das requisições para evitar CAPTCHAs. Mais lento(0)
= 90-120 segundos, Padrão(3) = 10-20 segundos,
Mais rápido(5) = sem atraso
-w MAXWIDTH, --maxwidth MAXWIDTH
Largura da tabela de texto
-V, --version mostra o número da versão do programa e sai
Exemplos:
./domainhunter.py -k apples -c --ocr -t5
./domainhunter.py --check --ocr -t3
./domainhunter.py --single mydomain.com
./domainhunter.py --keyword tech --check --ocr --timing 5 --alexa
./domaihunter.py --filename inputlist.txt --ocr --timing 5
Use os padrões para verificar os 100 domínios mais recentes e verificar reputação
python3 ./domainhunter.py
Pesquisar os 1000 domínios mais recentemente expirados/excluídos, mas não verificar reputação
python3 ./domainhunter.py -r 1000
Realizar todas as verificações de reputação para um único domínio
python3 ./domainhunter.py -s mydomain.com
[*] Baixando lista de domínios maliciosos de http://mirror1.malwaredomains.com/files/justdomains
[*] Obtendo reputação do domínio para: mydomain.com
[*] BlueCoat: mydomain.com
[+] mydomain.com: Technology/Internet
[*] IBM xForce: mydomain.com
[+] mydomain.com: Communication Services, Software as a Service, Cloud, (Score: 1)
[*] Cisco Talos: mydomain.com
[+] mydomain.com: Web Hosting (Score: Neutral)
Realizar todas as verificações de reputação para uma lista de domínios na velocidade máxima com OCR de CAPTCHAs
python3 ./domainhunter.py -f <domainslist.txt> -t 5 --ocr
Pesquisar domínios disponíveis com o termo "dog", máximo de 25 resultados, e verificar reputação
python3 ./domainhunter.py -k dog -r 25 -c
____ ___ __ __ _ ___ _ _ _ _ _ _ _ _ _____ _____ ____
| _ \ / _ \| \/ | / \ |_ _| \ | | | | | | | | | \ | |_ _| ____| _ \
| | | | | | | |\/| | / _ \ | || \| | | |_| | | | | \| | | | | _| | |_) |
| |_| | |_| | | | |/ ___ \ | || |\ | | _ | |_| | |\ | | | | |___| _ <
|____/ \___/|_| |_/_/ \_\___|_| \_| |_| |_|\___/|_| \_| |_| |_____|_| \_\
Expired Domains Reputation Checker
Autores: @joevest e @andrewchiles
AVISO LEGAL: Isto é apenas para fins educacionais!
É projetado para promover a educação e a melhoria da segurança cibernética/de computadores.
Os autores ou empregadores não são responsáveis por qualquer ato ilegal ou uso indevido realizado por qualquer usuário desta ferramenta.
Se você planeja usar este conteúdo para fins ilegais, não o faça. Tenha um bom dia :)
[*] Baixando lista de domínios maliciosos de http://mirror1.malwaredomains.com/files/justdomains
[*] Obtendo domínios expirados ou excluídos contendo "dog"
[*] https://www.expireddomains.net/domain-name-search/?q=dog
[*] Realizando verificações de reputação para 8 domínios.
[*] BlueCoat: doginmysuitcase.com
[+] doginmysuitcase.com: Travel
[*] IBM xForce: doginmysuitcase.com
[+] doginmysuitcase.com: Not found.
[*] Cisco Talos: doginmysuitcase.com
[+] doginmysuitcase.com: Uncategorized