Qu'est-ce que le Kerberos PAC ?
Jan 10, 2023
Le Privileged Attribute Certificate (PAC) est une extension des tickets de service Kerberos qui contient des informations sur l'utilisateur qui s'authentifie et ses privilèges. Un contrôleur de domaine ajoute les informations PAC aux tickets Kerberos lorsqu'un utilisateur s'authentifie dans un domaine Active Directory (AD). Lorsque les services de ticket Kerberos sont utilisés pour s'authentifier sur d'autres systèmes, ils peuvent récupérer le PAC du ticket d'un utilisateur pour déterminer leur niveau de privilèges sans avoir à interroger le contrôleur de domaine.
Contenu connexe sélectionné :
Ce guide détaille plusieurs attaques impliquant le Kerberos PAC, les limites de la validation du PAC pour se défendre contre celles-ci, et comment les solutions Netwrix peuvent aider. Il répond également aux questions fréquemment posées sur le Kerberos PAC.
Attaques qui exploitent le Kerberos PAC
Parce que les PAC contiennent des informations très précieuses, ils sont la cible de multiples techniques d'attaque de Windows AD. Voici quelques-unes des principales.
Attaques d'élévation de privilèges (CVE-2014-6324)
Le PAC est devenu une cible pour les attaques d'élévation de privilèges AD lorsque une vulnérabilité dans l'algorithme de validation du PAC dans la version de Windows Server 2012 R2 et antérieures a été divulguée publiquement en 2014. Cette vulnérabilité permet aux attaquants de forger un PAC pour tout compte utilisateur qu'ils ont compromis et de fait rendre cet utilisateur un Domain Admin.
L'équipe de cybersécurité Windows a rapidement pris en charge CVE-2014-6324 en publiant la mise à jour MS14-068.
Pour des informations complètes sur la vulnérabilité et le correctif, lisez le post de Microsoft. Cette attaque a également été couverte en détail lors de Black Hat 2015 et sur Adsecurity.org.
Pour tester cette vulnérabilité, vous pouvez utiliser le Python Kerberos Exploitation Kit (PyKEK) ou Kekeo.
Billets Golden et Silver
Les Golden Tickets et les Silver Tickets permettent également aux attaquants d'utiliser des PACs falsifiés dans une attaque Active Directory.
Un Golden Ticket est un ticket-granting ticket (TGT) Kerberos falsifié créé à l'aide d'une clé KDC volée. Il permet aux attaquants de créer un TGT Kerberos valide pour n'importe quel utilisateur dans le domaine et de manipuler le PAC de cet utilisateur pour obtenir des privilèges supplémentaires. Les Golden Tickets sont utiles pour éviter la détection car les adversaires peuvent utiliser des comptes apparemment inoffensifs pour effectuer des activités privilégiées.
De même, les Silver Tickets permettent aux attaquants de forger des PACs d'Active Directory pour les tickets de service de délivrance de tickets (TGS). Cependant, contrairement aux Golden Tickets, les Silver Tickets donnent aux attaquants des droits uniquement pour un service spécifique sur un hôte spécifique. Les tickets TGS sont chiffrés avec le hachage du mot de passe du service, donc si un acteur de la menace vole le hachage pour un service, il peut créer des tickets TGS pour ce service.
Parfois, les comptes de service ont des droits limités. Un bon exemple est un compte de service SQL qui n'a pas de droits au niveau du système sur les bases de données hébergées sur ce serveur SQL. Cependant, ces comptes ne sont pas sûrs car les attaquants peuvent utiliser des Silver Tickets pour forger des PAC et donner des privilèges supplémentaires à un compte de service avec des droits limités, puis compromettre complètement leur cible.
Comme vous pouvez le voir ci-dessous, les Golden et Silver Tickets accordent aux utilisateurs une adhésion à des groupes privilégiés en utilisant des RID tels que 512 (Domain Admins) et 519 (Enterprise Admins).
Validation PAC
Comment pouvez-vous mettre en œuvre la sécurité autour des PACs contrefaits ?La validation des PAC peut aider, bien que ce ne soit pas une panacée.
La validation du PAC est contrôlée par la clé de registre ValidateKdcPacSignature, qui se trouve dans HKLMSYSTEMCurrentControlSetControlLsaKerberosParameters. Définir cette clé sur 0 désactivera la validation du PAC.
When PAC validation is enabled on a Windows system, the PAC of a user authenticating to that system will be checked against Active Directory to ensure its validity — but only when certain criteria are met.
Plus précisément, comme Microsoft l'explique:
Le système d'exploitation Windows envoie les messages de validation PAC au service NetLogon du DC lorsque le service ne dispose pas du privilège TCB et qu'il n'est pas un service du Gestionnaire de Contrôle de Service (SCM). Le processus du Service de Sous-système d'Autorité de Sécurité Locale (LSASS) enverra des messages de validation PAC au DC lorsque le client LSA (le serveur d'application) n'est pas exécuté dans le contexte du système local, du service réseau ou du service local ; ou qu'il ne dispose pas du privilège SeTCB (Agir comme une partie du système d'exploitation).
Autrement dit, la validation PAC n'empêche pas les attaquants d'utiliser des Silver et Golden Tickets. Lors de mes tests, que la validation PAC soit activée ou non, j'ai pu utiliser des Silver et Golden Tickets contre un système cible.
Exploration d'un User PAC
Si vous êtes intéressé par l'examen d'un PAC pour un utilisateur, Impacket, qui est fourni avec un script getPAC.py, est un excellent moyen de commencer.
Pour tester cela sous Windows, vous devriez essayer CommandoVM. Cet outil regroupe le script getPAC.py (et bien d'autres) sous forme de fichiers exécutables, vous n'avez donc pas à vous soucier des dépendances Python.
Avec le script getPAC.py, vous pouvez cibler n'importe quel utilisateur sans privilèges spéciaux et récupérer leurs paramètres et informations PAC :
Comme vous pouvez le voir, le script renvoie bien plus que l'appartenance à des groupes. Pour en savoir plus sur ces résultats, les clés d'informations de groupe et l'appartenance à des groupes Kerberos, consultez la documentation de Microsoft sur la structure de données du Privilege Attribute Certificate.
Comment Netwrix peut aider
La validation des clients PAC et des scripts tels que getPAC.py peuvent protéger vos utilisateurs et vos données contre les accès non autorisés. Malheureusement, ils ne fournissent pas une protection suffisante, surtout si les acteurs de menaces utilisent des Golden et Silver Tickets pour forger des attaques PAC.
C’est là que l’Active Directory security solution de Netwrix intervient. Complète, facile à utiliser et sécurisée, cet outil de détection des menaces peut vous aider à :
- Identifiez et remédiez aux risques de sécurité grâce aux évaluations de sécurité.
- Activez des politiques de password policies et protégez les identifiants contre les menaces avancées.
- Remplacez les comptes privilégiés permanents par un accès juste-à-temps, juste suffisant.
- Détectez les menaces sophistiquées à temps pour prévenir les violations.
- Vérifiez, établissez et renforcez les protocoles de sécurité.
- Générez les rapports de sécurité nécessaires pour les audits de conformité.
- Automatisez les réponses aux menaces attendues.
- Annulez les suppressions et modifications indésirables dans Active Directory.
- Rationalisez la récupération complète du domaine pour garantir la continuité.
FAQ
Qu'est-ce que le PAC dans Kerberos ?
Le Privileged Attribute Certificate (PAC) fait partie d'un ticket Kerberos. Il contient des informations sur les privilèges de l'utilisateur et est utilisé chaque fois qu'ils s'authentifient dans un domaine Active Directory.
Qu'est-ce que la validation PAC ?
Si activée sur un système Windows, la validation PAC vérifiera la validité du PAC d'un utilisateur authentifiant en le comparant à Active Directory. Malheureusement, activer la validation PAC ne pas empêchera les attaques Golden Ticket et Silver Ticket.
Partager sur
En savoir plus
À propos de l'auteur
Joe Dibley
Chercheur en sécurité
Chercheur en sécurité chez Netwrix et membre de l'équipe de recherche en sécurité de Netwrix. Joe est un expert en Active Directory, Windows et une grande variété de plateformes logicielles d'entreprise et de technologies, Joe étudie les nouveaux risques de sécurité, les techniques d'attaque complexes, ainsi que les atténuations et détections associées.
En savoir plus sur ce sujet
Lois sur la confidentialité des données par État : Différentes approches de la protection de la vie privée
Exemple d'analyse des risques : Comment évaluer les risques
Le Triangle CIA et son application dans le monde réel
Qu'est-ce que la gestion des documents électroniques ?
Analyse quantitative des risques : Espérance de perte annuelle