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
icebreaker — Obtém credenciais do Active Directory em texto simples se você estiver na rede interna, mas fora do ambiente AD. | Kitploit
Ferramentas/GitHubGitHub/danmcinerney/icebreaker
Quebra de SenhasReconhecimentoAnálise de VulnerabilidadesPós-ExploraçãoTestes de PenetraçãoRed Teaming
GitHubdanmcinerney/icebreaker

icebreaker

Obtém credenciais do Active Directory em texto simples se você estiver na rede interna, mas fora do ambiente AD.

Ver Repositório
1.2k159há 7 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

icebreaker

Rompa o gelo com aquele ambiente Active Directory bonitinho ali. Quando você está sozinho e frio olhando para uma festa do Active Directory, mas não possui nem uma única credencial AD para participar da diversão, esta ferramenta é para você.

Automatiza sequencialmente 5 ataques internos de rede contra o Active Directory para fornecer credenciais em texto simples. Use a opção --auto para adquirir automaticamente privilégios de administrador de domínio após obter uma posição inicial.

Detalhes Resumidos

Os seguintes ataques são executados sequencialmente até o quarto e quinto ataques, que são executados em paralelo e indefinidamente.

  • Reverse bruteforce
    • Adquire automaticamente uma lista de nomes de usuário e testa cada um com duas das senhas AD mais comuns (mais de duas tentativas podem acionar políticas de bloqueio de conta)
  • Upload para compartilhamentos de rede
    • Captura senhas de usuários com uploads de arquivos maliciosos para compartilhamentos de rede disponíveis
  • Envenenamento de protocolos de rede broadcast
    • Usa protocolos de rede comuns para enganar os computadores dos usuários e enviar senhas para você
  • Man-in-the-middle em conexões SMB
    • Executa comandos remotos em computadores AD para coletar senhas
  • Envenenamento de DNS IPv6
    • Explora o DNS para enganar computadores AD e enviar as senhas de seus usuários para você

Detalhes Técnicos

Todos os hashes NetNTLMv2 capturados nas técnicas abaixo são automaticamente quebrados com JohnTheRipper e uma lista de senhas específica do AD com 1 milhão de entradas.

  • Reverse bruteforce
    • Usa rpcclient para encontrar hosts que aceitam sessões SMB nulas
    • Usa ridenum para encontrar nomes de usuário válidos via RID cycling em hosts SMB nulos
    • Pode usar o theHarvester para coletar nomes de usuário potenciais adicionais de um domínio da internet especificado
    • Realiza um reverse bruteforce de 2 senhas nos nomes de usuário encontrados, ou você pode especificar uma lista de senhas para usar
    • Senhas padrão testadas: P@ssw0rd e <temporada_atual><ano>, ex.: Spring2018
  • Upload de SCF
    • Usa Nmap para encontrar compartilhamentos de rede anonimamente graváveis via script NSE smb-enum-shares
    • Escreve um arquivo SCF no compartilhamento com um caminho de ícone de arquivo que aponta para sua máquina
    • Quando um usuário AD abre o compartilhamento no File Explorer, o hash NetNTLMv2 dele é enviado para você
  • Envenenamento LLMNR/NBTNS/mDNS
    • Usa Responder.py para envenenar os protocolos de rede broadcast/multicast de camada 2 (LLMNR, NBT-NS, mDNS) e capturar hashes NetNTLMv2
  • Relay SMB
    • Usa ntlmrelayx.py e Responder.py para fazer relay de hashes SMB
    • Usa Nmap para identificar alvos de relay vulneráveis via script NSE smb-security-mode
    • Alvos vulneráveis terão SMBv1 habilitado e SMB signing desabilitado
    • O relay bem-sucedido de um hash resultará na captura do hash NetNTLMv2 de um usuário, que será automaticamente quebrado
    • Se um hash de usuário for retransmitido para uma máquina e esse usuário for um administrador local, a execução de comandos ocorrerá e o seguinte será realizado remotamente:
      • Adicionar um usuário administrativo - icebreaker:P@ssword123456
      • Executar uma versão ofuscada e com bypass de AMSI do Mimikatz
      • A saída do Mimikatz é analisada em busca de hashes NTLM e senhas em texto simples
      • Executar uma versão ofuscada e com bypass de AMSI do Invoke-PowerDump para hashes SAM
      • A saída é analisada em busca de hashes NTLM
  • Envenenamento de DNS IPv6
    • Usa mitm6 e ntlmrelayx.py para envenenar DNS IPv6 a fim de capturar hashes de usuário NetNTLMv2
    • Cria um servidor WPAD falso com autenticação
    • O DNS IPv6 é habilitado por padrão em ambientes Active Directory
    • Nota: isso pode causar problemas de conectividade de rede para os usuários

Como Funciona

Ele realizará os 5 ataques de rede acima em ordem. O reverse bruteforce e os uploads de arquivos SCF geralmente são rápidos, depois ele permanece no ataque 3, Responder.py, por 10 min por padrão. Após esse tempo, ou o tempo especificado pelo usuário, ele passa para os dois últimos ataques, que são executados em paralelo e indefinidamente.

Se algum host for descoberto como permitindo sessões SMB nulas, o icebreaker usará o ridenum para realizar RID cycling em busca de nomes de usuário válidos. Se você usar a opção "-d <somedomain.com>", o theHarvester extrairá endereços de e-mail do site especificado. Quaisquer nomes de usuário de e-mail compatíveis com AD serão adicionados à lista de nomes de usuário do reverse bruteforce. O Icebreaker usa a biblioteca asyncio para realizar o reverse bruteforce usando a ferramenta linux rpcclient com 10 workers assíncronos.

O ataque de upload de SCF abusa dos Shell Command Files contra compartilhamentos de rede anonimamente graváveis. SCFs são arquivos que podem realizar ações básicas, como mostrar a área de trabalho ou abrir uma janela do File Explorer. Eles têm a propriedade curiosa de permitir que você defina o ícone do arquivo para um caminho de rede. Se você definir esse caminho de rede para sua própria máquina, os usuários que abrirem o compartilhamento de arquivos no File Explorer enviarão automaticamente o hash de senha NetNTLMv2 para você. O Icebreaker usa o script Nmap smb-enum-shares para encontrar compartilhamentos anonimamente graváveis e, em seguida, gera e faz upload automaticamente do SCF com payload.

O ataque 3 usa o Responder.py para envenenar os protocolos multicast/broadcast LLMNR, NBT-NS e mDNS. Quando os usuários navegam para um caminho de rede inexistente, o Responder dirá a eles que sua máquina atacante é o caminho correto. O hash da senha NetNTLMv2 do usuário agora é seu. O Responder capturará hashes enviados pelo ataque SCF, mas o próximo ataque geralmente é mais útil para capturar hashes SCF porque tem o potencial de usar o hash para execução de comandos.

O relay SMB é um ataque de rede antigo onde os atacantes se posicionam entre o cliente SMB e o servidor SMB. Isso permite que os atacantes capturem e retransmitam hashes NetNTLMv2 para hosts que tenham SMBv1 habilitado e SMB signing desabilitado. O ntlmrelayx.py da biblioteca Impacket é usado para fazer o relay, enquanto o Responder.py é usado para fazer man-in-the-middle nas conexões SMB. Se o usuário cliente SMB tiver direitos administrativos em qualquer host na rede que tenha SMB signing desabilitado, o ntlmrelayx.py executará comandos nesse host.

Assim que o ntlmrelayx retransmitir um hash capturado, ele executará um comando powershell codificado em base64 que primeiro adiciona um usuário administrativo (icebreaker:P@ssword123456), depois executa uma versão ofuscada e com bypass de AMSI do Mimikatz, seguida por uma versão ofuscada e com bypass de AMSI do Invoke-PowerDump. A saída do Invoke-Mimikatz e do Invoke-PowerDump é analisada em busca de senhas em texto simples ou hashes NTLM e entregue ao usuário na saída padrão, bem como no arquivo found-passwords.txt. Hashes NTLM, ao contrário dos hashes NetNTLMv2, podem ser usados como uma senha em texto simples para autenticação em outros hosts AD. A única ressalva é que desde o patch KB2871997 da Microsoft, apenas a conta de administrador local RID 500 embutida pode ser usada em ataques pass-the-hash.

O ataque final usa a ferramenta mitm6 para realizar um ataque man-in-the-middle de DNS IPv6 em toda a rede. Isso força os hosts na rede a usar a máquina do atacante como seu servidor DNS. Uma vez definido como servidor DNS, o atacante serve arquivos de configuração de proxy WPAD maliciosos para as vítimas e coleta seus hashes NetNTLMv2. Esses hashes são retransmitidos usando o ntlmrelayx.py para mais possibilidades de execução remota de código. Uma coisa a observar é que esse ataque é propenso a causar problemas na rede. Frequentemente causa erros de certificado nos navegadores das máquinas cliente. Também provavelmente deixará a rede mais lenta. A beleza desse ataque, no entanto, é que ambientes Windows AD são vulneráveis por padrão.

Se o icebreaker for executado com a flag --auto [tmux/xterm], ao atingir o ataque 4, o icebreaker executará o Empire e o DeathStar em uma sessão tmux ou janelas xterm. Com essa opção, em vez de executar o mimikatz no host remoto para o qual retransmitimos o hash, o icebreaker adicionará um usuário administrativo e depois executará o código lançador powershell do Empire para obter um agente na máquina remota. O DeathStar usará esse agente para automatizar o processo de obtenção de administrador de domínio. O Empire e o DeathStar não serão fechados quando você sair do icebreaker.

A quebra de senhas é feita com JohnTheRipper e uma wordlist personalizada. A origem desta lista é o merged.txt, que é a combinação de todas as senhas da conta GitHub SecLists. A wordlist foi podada e não inclui senhas com: tudo minúsculo, tudo maiúsculo, todos símbolos, menos de 7 caracteres, mais de 32 caracteres. Essas regras estão em conformidade com os requisitos padrão de senha do Active Directory e reduziram a lista de 20 milhões para pouco mais de 1 milhão, o que torna a quebra de senhas extremamente rápida.

Instalação

Como root:

root@kitploit:~
./setup.sh
pipenv install --three
pipenv shell

Você pode receber um erro após executar o pipenv install. Atualize para uma versão do pipenv superior à 11.9.0 se for o caso. Você pode clonar o pipenv do github e apenas executar apt-get remove python-pipenv && python setup.py install dentro da pasta.

Uso com Docker

Ainda há alguns bugs a serem resolvidos com a imagem docker, então é provável que isso gere erro para você, mas está quase lá. A partir do Repositório Git:

root@kitploit:~
docker build --rm -t danmcinerney/icebreaker .
docker run danmcinery/icebreaker

Ou anexe os comandos que você normalmente adicionaria ao icebreaker (não esqueça de mapear volumes):

root@kitploit:~
docker run -v $(pwd)/logs:/icebreaker/logs -v $(pwd)/hashes:/icebreaker/hashes -v $(pwd)/icebreaker-scan.xml:/icebreaker/icebreaker-scan.xml -v $(pwd)/submodules:/icebreaker/submodules -e PYTHONUNBUFFERED=0 danmcinerney/icebreaker -x icebreaker-scan.xml

**Nota: Você vai querer mapear portas para listeners com a flag -p <host>:<container> do docker.

Uso

Execute como root. Leia de uma lista separada por novas linhas de endereços IP (IPs únicos ou intervalos CIDR) e, em vez de fazer o ntlmrelayx adicionar um usuário e executar mimikatz na vítima após o relay do hash, faça com que ele execute um comando personalizado na máquina vítima. Neste exemplo, estamos fornecendo um comando semelhante ao que o Empire poderia nos dar para um one-liner de lançador powershell.

./icebreaker -l targets.txt -c "powershell -nop -w hidden -exec bypass -enc WwFk..."

Leia de uma hostlist, diga ao Responder para usar a interface eth0 em vez da interface de gateway padrão, deixe o Responder rodar por 30m em vez dos 10m habituais, e execute os comandos pós-relay padrão do ntlmrelayx para extrair o SAM do servidor vítima.

./icebreaker -l targets.txt -i eth0 -t 30 -c default

Use um arquivo de saída XML do Nmap, pule todos os cinco ataques e não quebre hashes automaticamente, e use uma lista de senhas personalizada para o ataque de reverse bruteforce (observe que, como este exemplo está pulando o ataque 1 com '-s rid', a lista de senhas especificada nem será usada; isso é apenas um exemplo)

./icebreaker.py -x nmapscan.xml -s rid,scf,llmnr,relay,dns,crack -p /home/user/password-list.txt

Uso do tipo "disparou e esqueceu": insira o arquivo de alvos, extraia nomes de usuário de e-mail do companydomain.com para serem adicionados ao ataque de reverse bruteforce, pule o envenenamento de DNS IPv6 do mitm6, e execute o Empire e o DeathStar em janelas tmux ou xterm quando o ataque 4 começar para obter administrador de domínio automatizado. O objetivo desse uso é disparar o comando na segunda-feira às 9h e depois fazer uma pausa curta e ininterrupta até sexta-feira às 16h30, quando voltamos para um shell de administrador de domínio nos esperando. Pulamos o ataque 5 (mitm6) porque ele pode causar problemas na rede e não queremos clientes irritados interrompendo nossa merecida pausa.

./icebreaker.py -l targets.txt -d companydomain.com -s dns --auto [tmux/xterm]

Baixar ferramenta