Kerberoast
Kerberoast est une attaque basée sur la demande de TGS et sur les attributs SPN de comptes Active Directory.
SPN (Service Principal Name)
Un nom de principal de service (SPN) est un identifiant unique d’une instance de service. Les SPN sont utilisés par l’authentification Kerberos pour associer une instance de service à un compte de connexion au service.
Pour obtenir un Service Ticket (ST), un client interroge le KDC en présentant son Ticket Granting Ticket (TGT) valide et en indiquant le service visé via le champ sname. Ce champ peut être renseigné sous plusieurs formes (par exemple SPN, sAMAccountName, UPN). Si le TGT est accepté et que le service existe, le KDC renvoie le ST, qui est chiffré avec la clé dérivée du mot de passe (NT hash) du compte de service.
Un attaquant disposant d’un TGT et connaissant le nom du service peut donc demander ce ST puis l’attaquer hors-ligne pour tenter de retrouver le mot de passe du compte de service, attaque connue sous le nom de Kerberoasting.
Le risque est particulièrement élevé lorsque le compte de service possède des privilèges élevés et utilise un mot de passe faible. Cette attaque requiert des identifiants valides au sein du domaine.
Identifier les comptes vulnérables
Casser les tickets
Il devient ensuite possible d’essayer de les casser hors ligne grâce à des attaques par dictionnaires ou par force brute.
Voir le guide dédié aux attaques par bruteforce