cf9212606e909b9d09a751d094486ecf.png

Introduction

Le compte krbtgt est l'un des comptes les plus critiques dans un environnement Active Directory. Il joue un rôle essentiel dans l'authentification Kerberos et sa sécurisation est primordiale pour protéger votre infrastructure. Dans cet article, nous explorerons en détail ce qu'est le compte krbtgt, pourquoi il est important de réinitialiser régulièrement son mot de passe, et comment procéder de manière sécurisée.

Qu'est-ce que le compte krbtgt ?

Le compte krbtgt (Kerberos Ticket Granting Ticket) est un compte système créé automatiquement lors de l'installation d'Active Directory. Il sert à :

  • Chiffrer et signer les tickets Kerberos : Le mot de passe de ce compte est utilisé comme clé de chiffrement pour les TGT (Ticket Granting Tickets)
  • Assurer l'authentification : Il valide l'identité des utilisateurs dans le protocole d'authentification Kerberos
  • Maintenir la sécurité du domaine : Il constitue la base cryptographique de la confiance dans le domaine AD

Pourquoi réinitialiser le mot de passe krbtgt ?

Raisons de sécurité

La réinitialisation du mot de passe krbtgt est cruciale dans plusieurs situations :

  • Après une compromission : Si votre environnement AD a été compromis, les attaquants peuvent avoir obtenu le hash du mot de passe krbtgt, leur permettant de créer des Golden Tickets pour maintenir leur accès.
  • Maintenance préventive : Microsoft recommande de changer ce mot de passe au moins une fois par an ou tout les 6 mois 😉, voire plus fréquemment pour les environnements hautement sensibles.
  • Conformité réglementaire : Certaines normes de sécurité exigent une rotation régulière des comptes privilégiés.

NB : Dans la pratique, nous devons réinitialiser le mot de passe du compte krbtgt une première fois. Ensuite, il faut s'assurer que le mot de passe est répliqué sur l'ensemble des contrôleurs de domaine. Il va falloir réinitialiser une seconde fois le mot de passe du compte (puisqu'il en mémorise 2) afin de mener l'opération jusqu'au bout.

Avant cela, il vaut mieux attendre au moins 10 heures après le premier changement de mot de passe pour être sur que tous les tickets en cours de validité intègre le nouveau mot de passe (le deuxième reste l'ancien). Ensuite, il faudra réinitialiser une seconde fois le mot de passe : le compte krbtgt aura alors deux nouveaux mots de passe.

Conséquences d'un krbtgt compromis

Un compte krbtgt compromis peut permettre à un attaquant de :

  • Créer des Golden Tickets valides pour n'importe quel utilisateur
  • Maintenir un accès persistant au domaine
  • Contourner la plupart des mécanismes de détection

Prérequis et précautions

Prérequis techniques

Avant de procéder à la réinitialisation :

  • Droits administrateur : Vous devez être membre du groupe Administrateurs du domaine
  • Planification : Prévoyez une fenêtre de maintenance appropriée
  • Documentation : Documentez l'opération et informez les équipes concernées

⚠️Précautions importantes⚠️

⚠️Attention : La réinitialisation du mot de passe krbtgt peut temporairement affecter l'authentification dans votre domaine. Planifiez cette opération pendant une fenêtre de maintenance.

Phase Pratique : Réinitialisation grace à un Script Powershell

Connectez-vous au contrôleur de domaine ou au serveur de gestion.

Téléchargez le script de réinitialisation de mot de passe KRBTGT depuis le github https://github.com/zjorz/Public-AD-Scripts/blob/master/Reset-KrbTgt-Password-For-RWDCs-And-RODCs.ps1 . Au moment de la rédaction de cet article, il est en version 3.4 .

Assurez-vous que le fichier est débloqué pour éviter les erreurs lors de l'exécution du script car le script n'est pas signé. 

Pour cela mettez vous à la racine du repertoire ou se situ le script et utilisez la commande :  Unblock-File

Unblock-File .\Reset-KrbTgt-Password-For-RWDCs-And-RODCs.ps1

Ensuite, ouvrez Windows PowerShell en tant qu’administrateur et exécutez le script.

.\Reset-KrbTgt-Password-For-RWDCs-And-RODCs.ps1

Le script de réinitialisation du mot de passe KRBTGT s'affichera avec un menu plutôt sympa et si vous souhaitez lire les informations, les fonctions, le comportement et l'impact. Cliquez sur Yes et parcourez les informations.

9fa889f2283dd1953fd53d103b74aa73.png

Lorsque vous aurez terminé de lire les informations, vous verrez 9 options à sélectionner.

Ceux que nous utiliserons sont :

  • 5 – Simulation Mode | Use KrbTgt PROD/REAL Accounts – No Password Reset/WhatIf Mode!
  • 6 – Real Reset Mode | Use KrbTgt PROD/REAL Accounts – Password Will Be Reset Once!

Remarque : l'option 5 n'affectera pas l'environnement et affichera uniquement les détails de l'opération. L'option 6 réinitialisera le mot de passe KRBTGT.

c3c598f06d3df30647e821d21e36a828.png

Mode simulation

Appuyez sur l'option 5 .

Renseignez le nom de domaine complet de la forêt AD à cibler ou appuyez sur Entrée pour la forêt AD actuelle. Nous souhaitons cibler la forêt XXXXX.local , sur laquelle nous nous trouvons actuellement. Appuyez ensuite sur Entrée.

cc21696fd7b763b11244dc216c7153b3.png

Sélectionnez le compte KRBTGT que vous souhaitez cibler. Sélectionnez 1. Tapez Continuer et appuyez sur Entrée.

2940ef051420d80d26be4b0ab12fe74b.png

Si tout semble correct, passez à l’étape suivante.

Mode de réinitialisation réel

Suivez les mêmes étapes que ci-dessus, mais cette fois, appuyez sur l'option 6 .

La sortie montrera qu'un nouveau mot de passe est défini pour le compte KRBTGT.

a2c55ce3ae3e6818095f3e33eda84eff.png

Une fois que vous avez ce message, le script de réinitialisation du mot de passe du compte KRBTGT a défini avec succès un nouveau mot de passe pour le compte KRBTGT.

Vérifiez que le mot de passe du compte KRBTGT a été défini

Démarrez Active Directory Users and Computers (ADUC). Recherchez l'objet utilisateur krbtgt et si vous ne le voyez pas, dans l'onglet View, clique droit et "Afficher les options avancées", une fois que krbtgt apparait, double-cliquez dessus pour ouvrir les propriétés. Cliquez sur l'onglet « Attribute Editor » . Recherchez l'attribut pwdLastSet .

Dans notre exemple, nous pouvons vérifier que le compte KRBTGT a été réinitialisé avec succès le 11 septembre 2025 (hier).

                                               40f452c7c2f9a62b74fc9bd86ea86504.png

Après avoir exécuté le mode 6 – Mode de réinitialisation réelle , les événements ci-dessous apparaissent dans les journaux des événements de sécurité, étant en success, on a confirmation que tout s'est bien passé:

  • ID 4688

c64bc2ed0b54c78097ead6ae15457671.png

Réinitialiser le mot de passe du compte KRBTGT deux fois

Attendez la fin de la réplication AD et effectuez la même opération pour modifier le mot de passe KRBTGT. Si vous avez un site multisite et souhaitez attendre la fin de la réplication, c'est tout à fait possible et recommandé. Attendez ensuite le lendemain et exécutez le script pour modifier le mot de passe du compte KRBTGT.

Le mot de passe doit être modifié deux fois pour supprimer efficacement l'historique des mots de passe. Le modifier une fois, attendre la fin de la réplication, puis le modifier à nouveau réduit les risques de problèmes.

Vérifiez l' attribut pwdLastSet du compte KRBTGT après la deuxième réinitialisation du mot de passe.

 

✅ N'hesitez pas à utiliser ce script : " https://github.com/Scarfacemoignon/Reset-KrbTgt-Password-For-RWDCs-And-RODCs/blob/main/Reset-KrbTgt-Password-For-RWDCs-And-RODCs.ps1 "

Conclusion

La réinitialisation du mot de passe du compte krbtgt est une opération critique pour maintenir la sécurité de votre environnement Active Directory. Bien que l'opération puisse sembler technique, suivre les bonnes pratiques et procédures décrites dans cet article vous permettra de l'effectuer en toute sécurité.

N'oubliez pas que cette opération doit s'inscrire dans une stratégie de sécurité globale incluant la surveillance, la sauvegarde régulière, et la formation des équipes IT. La sécurité d'Active Directory est un processus continu qui nécessite une attention constante et des mises à jour régulières des procédures.