Magic Quadrant™ pour la gestion des accès privilégiés 2025 : Netwrix reconnue pour la quatrième année consécutive. Téléchargez le rapport.

Plateforme
Centre de ressourcesBlog
Extraction des mots de passe des comptes de service avec Kerberoasting

Extraction des mots de passe des comptes de service avec Kerberoasting

Aug 31, 2022

Dans notre article sur la reconnaissance LDAP reconnaissance post, nous avons exploré comment un attaquant peut effectuer une reconnaissance pour découvrir des comptes de service à cibler dans un domaine Active Directory (AD). Examinons maintenant une méthode qu'un attaquant peut utiliser pour compromettre ces comptes et exploiter leurs privilèges : le Kerberoasting. Cette technique est particulièrement effrayante car elle ne nécessite aucun privilège d'administrateur dans le domaine, est très facile à réaliser et est pratiquement indétectable.

Kerberoasting : Vue d'ensemble

Kerberoasting est une attaque qui abuse d'une fonctionnalité du protocole Kerberos pour récolter les hachages de mots de passe des comptes utilisateurs d'Active Directory : tout utilisateur de domaine authentifié peut demander des tickets de service pour un compte en spécifiant son Nom Principal de Service (SPN), et le service de délivrance de tickets (TGS) sur le contrôleur de domaine retournera un ticket qui est chiffré en utilisant le hachage NTLM du mot de passe du compte.

Par conséquent, une fois qu'un adversaire a découvert les SPN des comptes de service en utilisant une tactique telle que la reconnaissance LDAP, il peut collecter des tickets pour tous ces comptes. En emportant ces données hors ligne, ils peuvent effectuer une attaque par force brute pour craquer le mot de passe en clair de chaque compte de service — sans aucun risque de détection ou de blocage de compte.

Il ne faut que quelques minutes à un attaquant pour accéder à un domaine, collecter des tickets et commencer le processus de craquage. À partir de là, c'est juste une question de temps avant qu'ils ne compromettent un ou plusieurs comptes de service, qu'ils peuvent utiliser pour voler ou chiffrer des données sensibles ou causer d'autres dommages.

Les adversaires se concentrent sur les comptes de service pour plusieurs raisons. Premièrement, ces comptes ont souvent des privilèges bien plus étendus que les autres comptes d'utilisateurs AD, donc les compromettre donne à l'attaquant un accès plus important. De plus, les mots de passe des comptes de service changent rarement, donc l'adversaire est susceptible de conserver l'accès pendant longtemps. Pour comprendre les types d'accès qui peuvent être obtenus en utilisant le Kerberoasting, regardez la liste des SPN d'Active Directory maintenue par Sean Metcalf.

Kerberoasting : Comment ça fonctionne

Étape 1. Obtenez les SPNs des comptes de service.

. Il existe de nombreuses façons d'obtenir ces SPN, y compris :

Étape 2. Demandez des tickets de service pour les SPN des comptes de service.

Exécutez simplement quelques lignes de PowerShell, et un ticket de service sera retourné et stocké en mémoire dans votre système.

      Add-Type –AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken –ArgumentList ‘MSSQLSvc/jefflab-sql02.jefflab.local:1433’
      

Image

Étape 3. Extraire les tickets de service en utilisant Mimikatz.

Mimikatz extraira les tickets locaux et les sauvegardera sur le disque pour un craquage hors ligne. Installez simplement Mimikatz et lancez une seule commande :

Image

Étape 4. Déchiffrer les tickets.

Les tickets Kerberos sont chiffrés avec le mot de passe du compte de service associé au SPN spécifié dans la demande de ticket. Les outils Kerberoasting fournissent un script Python pour craquer les tickets et fournir leurs mots de passe en clair en exécutant un dictionnaire de hachages de mots de passe contre eux. Cela peut nécessiter une certaine configuration pour s'assurer que vous avez l'environnement requis pour exécuter le script, mais ce blog couvre ces détails.

Image

Alternativement, vous pouvez collecter les tickets Kerberos en utilisant le script GetUserSPNs et les déchiffrer avec l'outil de récupération de mot de passe Hashcat.

Protection contre les attaques de Kerberoasting

La principale atténuation des attaques de Kerberoasting consiste à s'assurer que tous les comptes de service utilisent des mots de passe longs et complexes qui sont plus difficiles à craquer, et à les faire tourner régulièrement pour minimiser le temps pendant lequel le compte pourrait être utilisé par un adversaire qui parvient à craquer un mot de passe. L'utilisation de comptes de service gérés par groupe est une meilleure pratique pour attribuer des mots de passe aléatoires et complexes qui peuvent être changés automatiquement.

Puisque les adversaires craquent les tickets hors ligne, le processus ne génère aucun trafic réseau, rendant cette partie de l'attaque indétectable. Mais vous pouvez repérer les étapes antérieures en surveillant Active Directory avec une solution de sécurité solide. En particulier, les comptes de service sont normalement utilisés depuis les mêmes systèmes de la même manière, alors surveillez les demandes d'authentification anormales. De plus, surveillez les pics de demandes de tickets de service.

Enfin, les spécialistes de la sécurité recommandent également de désactiver le chiffrement basé sur RC4. Sinon, même si un compte utilisateur prend en charge le chiffrement AES, un attaquant peut demander un ticket chiffré en RC4, qui est plus facile à craquer qu'un ticket créé avec le chiffrement AES.

Partager sur

En savoir plus

À propos de l'auteur

Un homme en veste bleue et chemise carreaux sourit pour lappareil photo

Jeff Warren

Directeur des produits

Jeff Warren supervise le portefeuille de produits Netwrix, apportant plus d'une décennie d'expérience dans la gestion et le développement de produits axés sur la sécurité. Avant de rejoindre Netwrix, Jeff dirigeait l'organisation des produits chez Stealthbits Technologies, où il a utilisé son expérience en tant qu'ingénieur logiciel pour développer des solutions de sécurité innovantes à l'échelle de l'entreprise. Avec une approche pratique et un don pour résoudre des défis de sécurité complexes, Jeff se concentre sur la création de solutions pratiques qui fonctionnent. Il est titulaire d'un BS en Systèmes d'Information de l'Université du Delaware.