Ce blog se compose de deux sections principales :
-
Section 1 : Une vue macroscopique de la méthodologie d'attaque AD.
-
Section 2 : Trois exemples d'attaques AD connues :
- Attaques DCSync et DCShadow
- Kerberoasting
- Attaques d'extraction de mot de passe Ntds.dit
Comprendre la méthodologie des attaques AD
Si vous voulez comprendre l'AD et les concepts de sécurité qui y sont associés, vous devez d'abord connaître l'anatomie des brèches AD d'une manière extrêmement clinique. Mais avant de connaître l'anatomie des attaques AD, vous souhaitez rafraîchir vos connaissances sur les bases de la sécurité AD ? Allez-y et lisez la Partie 7 de cette série de blogs.
Examinons maintenant la méthodologie des attaques AD du point de vue du pirate :
-
Leur stratégie ultime : L'objectif final des pirates AD est de prendre le contrôle de l'environnement AD de la victime.
-
Le gain lucratif : La zone d'attaque AD, une fois exposée, permet aux pirates d'accéder aux comptes et services AD les plus critiques. Grâce à cet accès privilégié, les pirates peuvent accéder librement à des identités sensibles et aux données qui leur sont associées pour les compromettre et les exploiter.
-
L'approche choisie : Les pirates cherchent à accéder soit à des données hautement sensibles, soit à des comptes et groupes utilisateur hautement privilégiés. Les pirates prennent le contrôle, compromettent l'infrastructure AD par le biais des tactiques décrites ci-dessous, puis formulent des exigences de nature monétaire ou autre qui finissent par paralyser la victime.
-
Les tactiques employées : Les pirates cherchent à créer, modifier et gérer l'infrastructure AD, c'est-à-dire à se faire passer pour des administrateurs du domaine et à opérer au sein du réseau compromis en exerçant les privilèges d'accès les plus élevés. Les tactiques utilisées pour obtenir une entrée initiale peuvent être réalisées par le biais d'e-mails de phishing, d'outils de scripting open-source tels que Mimikatz, ou par le biais de ports ouverts vulnérables comme dans le cas des attaques RDP.
-
Les étapes suivantes : Une fois qu'un pirate a obtenu l'accès à l'environnement AD, il se déplace latéralement et s'efforce de renforcer son emprise sur les ressources et les données qui ne lui sont pas destinées. C'est ainsi que commence leur exploitation.
À ce stade, les pirates peuvent faire presque tout ce qu'ils veulent à partir de l'infrastructure AD.
Ils peuvent :
➤ Rester indétectés pour surveiller et exploiter toute mauvaise configuration de la conception AD.
➤ Modifier l'appartenance au groupe d'administrateurs du domaine pour engourdir le contrôle AD par ses administrateurs légitimes. Par exemple, après avoir effectué l'entrée initiale, le groupe d'administrateurs du domaine peut être surveillé pour détecter toute vulnérabilité, y compris les utilisateurs sur-privilégiés ou d'autres paramètres d'appartenance au groupe non gérés et non surveillés. Par le biais d'attaques d'exploitation de justificatifs ou de déploiement de malwares, diverses autorisations, paramètres de sécurité et configurations d'adhésion peuvent être modifiés par les pirates.
➤ Changer les mots de passe, valeurs d'attributs et modifier les paramètres de gestion de la stratégie de groupe et les adhésions aux groupes AD, ce qui permet de s'immiscer dans les droits d'accès, autorisations et privilèges disponibles pour les utilisateurs et groupes AD.
➤ Déployer des ransomwares par la circulation d'e-mails de phishing, la livraison de téléchargements drive-by par le biais d'une infrastructure web compromise, ou par l'installation de malwares téléchargeables sur des postes de travail AD compromis.
Quelques exemples notables d'attaques AD
-
Attaques DCSync et DCShadow :
➤ Ces attaques AD sont principalement réalisées par l'exploitation du modèle de réplication AD.
-
Similitude : Les deux attaques se caractérisent par le fait que les pirates obtiennent le contrôle illicite d'un contrôleur de domaine (DC), puis étendent leur contrôle à tous les autres DC du domaine.
-
Principale différence : Alors que les pirates de DCSync s'appuient uniquement sur la réplication pour obtenir les informations d'authentification nécessaires pour se faire passer pour des administrateurs du domaine, les pirates de DCShadow vont plus loin et enregistrent un nouveau faux DC avant de le désenregistrer après l'attaque. La nature de l'attaque justifie également qu'ils soient plus rapides et plus discrets.
➤ Attaques DCSync :
-
Lors d'une attaque DCSync, les pirates obtiennent les informations d'authentification de chacun des autres DC de la forêt AD. Ils y parviennent en utilisant la commande DCSync de l'outil de script open-source appelé Mimikatz.
-
Le protocole distant DRS (Directory Replication Service) peut également constituer le premier point de contact pour l'exploitation. Le protocole DRS est un protocole de communication qui est utilisé pour gérer la réplication des données dans l'AD
-
En ayant accès à tous les DC de chaque domaine, les pirates compromettent la topologie de réplication
-
Les pirates élèvent ensuite leurs privilèges d'accès et leurs autorisations pour prendre le contrôle et gérer tous les utilisateurs, groupes et comptes ordinateur AD, configurations et paramètres de la stratégie de groupe. Le service AD est désormais à la merci de leur contrôle illégal.
➤ Attaques DCShadow :
-
Lors d'une attaque DCShadow, les pirates prennent furtivement le contrôle de n'importe quel DC, serveur-partenaire de réplication ou d'un utilisateur à faible privilège ou de son poste de travail, et utilisent la commande DCShadow pour enregistrer un DC "fictif" avec des droits de réplication. Pour ce faire, ils utilisent des outils tels que Mimikatz ou Remote Server Administration Tools.
-
Les pirates lancent alors des modifications malveillantes qui seront répliquées dans tout le domaine. Ils peuvent également ajouter des portes dérobées dans le schéma AD
-
Les pirates peuvent immédiatement couvrir leurs traces en désenregistrant les DC fictifs, ce qui rend ces attaques plus difficiles à suivre et à surveiller
-
Pour en savoir plus sur les attaques DCShadow en détail, lisez la suite ici.
- Kerberoasting :
➤ Chaque aspect du flux du protocole Kerberos peut être exploité par des pirates pour compromettre la configuration AD.
➤ Kerberoasting est l'une des nombreuses méthodes d'exploitation AD bien documentées.
➤ Dans cette technique, les pirates obtiennent un accès et s'authentifient de manière illégitime dans un réseau d'entreprise.
➤ Ils acquièrent un ticket d'octroi (TGT) valide en usurpant l'identité de tout client qui s'authentifie dans l'environnement AD lors de la procédure d'authentification Kerberos primaire.
➤ L'utilisateur compromis ici peut être n'importe quel utilisateur du domaine valide. Il n'est pas nécessaire que cet utilisateur soit un utilisateur privilégié tel qu'un administrateur du domaine.
➤ Le pirate demande ensuite des tickets de service au centre de distribution de clés (KDC) pour un service spécifique associé au nom de principal du service (SPN) nécessaire. Ce ticket de service est chiffré avec une clé secrète du serveur ou le mot de passe du compte de service associé au SPN.
➤ Cette clé est accessible depuis la base de données du KDC.
➤ Seuls le KDC (qui est essentiellement le DC authentifiant le client) et le serveur cible fournissant le service requis connaissent cette clé secrète.
➤ Le pirate, qui imite le client ou l'utilisateur, envoie ce ticket de service au serveur cible. À ce stade, le serveur recoupe les informations d'identification et établit une session unique pour la délivrance du service.
➤ Le pirate, cependant, peut exploiter davantage cette situation et utiliser divers moyens pour cracker les informations d'identification du compte de service. Ils peuvent le faire en adoptant des outils de crackage de mots de passe hors ligne. Ils pourraient même sniffer le trafic réseau à la recherche d'autres TGT Kerberos ou récupérer les hachages de mots de passe dans la mémoire de l'utilisateur à cette fin.
➤ Par conséquent, ils peuvent alors accéder aux comptes de service et à leurs services associés sans avoir besoin de contacter le serveur cible du service.
➤ Le plus souvent, les comptes de service se voient accorder des autorisations qui vont au-delà de ce qui est prévu, et sont souvent peu surveillés.
➤ Le compte utilisateur compromis ici pourrait ne pas être réellement autorisé à accéder au service. Et pourtant, en l'absence de mécanisme en place durant le flux du protocole Kerberos qui confirme la validité de toute demande d'accès d'un client à certains services, cette vulnérabilité est souvent exploitée par les pirates.
➤ Les mots de passe des comptes de service sont vulnérables à la compromission par les pirates, car les mots de passe SPN des utilisateurs sont souvent définis manuellement comme des mots de passe simples et à caractères courts (généralement moins de 25 caractères) qui sont modifiés peu fréquemment et sont donc plus faciles à exploiter.
➤ Une fois que les pirates ont accès aux comptes de service, ils peuvent également obtenir un accès administrateur injustifié. Ils passent du statut d'utilisateur du domaine à faible privilège à celui d'administrateur du domaine à haut privilège, qui peut alors procéder latéralement à travers les domaines AD pour pénétrer plus loin.
➤ Pour en savoir plus sur l'attaque Kerberoating, reportez-vous ici.
-
Attaques d'extraction de mot de passe Ntds.dit
➤ Le cœur d'un service AD est constitué de données stockées dans le fichier de base de données, ntds.dit, dans le répertoire C:\Windows\NTDS\. Cette base de données stocke tous les types d'objets AD, notamment les utilisateurs, ordinateurs, groupes, OU et paramètres de stratégie de groupe AD.
➤ Les hachages de mot de passe pour chacun des comptes utilisateur dans l'AD sont également stockés ici sur chaque DC des domaines AD.
➤ Obtenir un accès non autorisé à ce fichier de base de données ouvre une multitude de possibilités aux adversaires de l'AD. Les pirates planifient généralement des attaques futures, comme les attaques de type pass-the-hash, à partir du réseau AD compromis, à l'aide de ces hachages de mots de passe.
➤ Dans cette technique, qui est un type de dumping d'informations d'identification, les pirates font initialement une copie du fichier ntds.dit en utilisant diverses méthodes. Certaines d'entre elles peuvent être soit par le biais des commandes ntdsutil AD, soit par des modules PowerShell de test de pénétration tels que Invoke-NinjaCopy à partir de scripts PowerSploit.
➤ Les pirates extraient ensuite les hachages de mots de passe et couvrent leurs traces.
➤ Les hachages de mots de passe peuvent être transmis à des outils tels que Mimikatz pour mener d'autres attaques ou peuvent être extraits jusqu'à leur forme lisible en texte clair grâce à d'autres outils tels que Hashcat ou John the Ripper.
➤ La connaissance des hachages de mots de passe ou de leurs versions en texte clair est précieuse pour les pirates afin de compromettre les utilisateurs du domaine, d'obtenir un accès privilégié et, finalement, d'obtenir un accès d'administrateur du domaine pour contrôler l'environnement AD.
Il existe de nombreuses autres méthodes d'attaque AD. Cependant, il est important de comprendre le mécanisme général d'attaque à travers quelques attaques bien documentées telles que celles énumérées ci-dessus, puis de s'appuyer sur ces connaissances pour approfondir d'autres méthodes d'exploitation utilisées par les pirates AD. Restez à l'écoute pour en savoir plus sur ce sujet.