Dans la première partie de ce billet, j'ai parlé de la menace que représente DCShadow pour les organisations qui utilisent Microsoft Active Directory (AD). Dans la partie 2, j'aborde les mesures que vous pouvez prendre pour protéger votre organisation.
(Rappel rapide : DCShadow est une fonctionnalité de l'outil de post-exploitation Mimikatz que les attaquants utilisent pour créer silencieusement des portes dérobées dans AD en injectant des modifications directement dans le flux de réplication AD).
Limiter les tests aux environnements de laboratoire
L'injection de modifications dans AD peut corrompre ou même bloquer votre AD. Par conséquent, si vous souhaitez simuler une attaque DCShadow ou expérimenter DCShadow, ne le faites que dans un environnement de laboratoire isolé.
Renforcez vos défenses
Voici quelques mesures que vous pouvez prendre pour défendre votre environnement de production contre DCShadow :
Contrôler l'accès privilégié
Un attaquant doit disposer d'un accès privilégié pour utiliser DCShadow. Et une fois qu'un attaquant dispose d'un accès privilégié, il n'y a vraiment rien que vous puissiez faire pour l'empêcher d'utiliser DCShadow.
Mimikatz étant un logiciel libre, un pirate peut apporter une modification triviale au code pour changer sa signature et éviter d'être détecté par les antivirus et les logiciels de protection des points d'accès. Et si des outils tels que Windows Defender Credential Guard peuvent empêcher Mimikatz d'extraire les mots de passe de la mémoire, ils ne se défendent pas contre la fonction DCShadow (qui ne repose pas sur des mots de passe).
Par conséquent, la restriction, la surveillance et la gestion des accès privilégiés (par exemple, à l'aide d'un système PAM) sont essentielles pour prévenir une attaque DCShadow.
Contrôler les modifications apportées aux sites et services AD
L'apparition de nouveaux objets serveur transitoires sous un site AD peut indiquer une attaque DCShadow. Je recommande donc de surveiller la partition de configuration AD où ces objets sont stockés pour les DC ajoutés temporairement.
Alors que les changements injectés par DCShadow dans le flux de réplication AD ne sont pas capturés dans les journaux d'événements de sécurité Windows, l'enregistrement (et la suppression) des serveurs dans la partition de configuration par DCShadow l'est. Ainsi, par exemple, vous pouvez configurer des notifications dans votre système SIEM pour alerter sur la création d'objets serveur sous le conteneur CN=Sites, CN=Configuration. Ou si vous utilisez un outil de suivi des changements AD comme Semperis Directory Services (DS) Protector, vous pouvez y configurer des notifications :
(Dans cet exemple, le serveur a été sélectionné comme classe d'objets et une notification est envoyée lorsqu'un objet serveur est ajouté aux sites et services AD).
Désactiver immédiatement les comptes compromis
Si un faux DC est détecté, désactivez immédiatement le compte qui l'a ajouté. Comme DCShadow tente de brouiller les pistes (en n'en laissant aucune), ce n'est pas le genre d'attaque qu'il faut laisser se dérouler, observer, puis agir. Selon toute probabilité, il est trop tard et l'attaquant a déjà créé des portes dérobées, mais vous devriez quand même désactiver le compte pour éviter d'autres dommages.
Un coup de projecteur sur DCShadow
Même avec les mesures défensives ci-dessus, vous devez supposer qu'à un moment donné, un intrus extérieur - ou un initié devenu voyou - obtiendra un accès privilégié. Et vous devez supposer que l'attaquant possède Mimikatz et sait comment l'utiliser.
Pour éviter que votre système AD ne soit compromis de manière inconnue - et donc irréparable - vous devez être en mesure de voir les modifications apportées par DCShadow. Sinon, vous risquez de devoir reconstruire AD à partir de zéro, comme l'explique Microsoft dans Planning for Compromise.
La meilleure façon de voir les changements effectués par DCShadow est de surveiller le flux de réplication AD.
En théorie, il est possible de mettre en évidence les modifications apportées par DCShadow en vidant le contenu d'AD et en le comparant à une sauvegarde. Cependant, il est difficile (voire impossible) de le faire en pratique. Par exemple, j'ai discuté avec une organisation qui a tenté un "dump and diff" lorsque son AD a été compromis, et après trois semaines d'essais, elle n'était toujours pas sûre d'avoir trouvé toutes les modifications non autorisées.
La surveillance du flux de réplication AD garantit également la visibilité si un attaquant contourne la journalisation des événements de sécurité d'une autre manière, par exemple en désactivant la journalisation, en désactivant les agents de collecte, en supprimant les journaux, etc.
Bien entendu, la surveillance ne suffit pas : il faut aussi pouvoir annuler immédiatement les modifications non souhaitées.
Ces deux fonctionnalités - surveillance du flux de réplication AD et rétablissement immédiat des modifications - sont disponibles dans Semperis DS Protector. Pour illustrer mon propos, j'ai enregistré une courte démonstration (8 minutes) d'une attaque DCShadow et de sa détection/remédiation avec Semperis.
La démo est disponible ici.
Notez que si vous utilisez un outil de suivi des modifications AD qui surveille les modifications AD en injectant LSASS, vous ne verrez pas les modifications effectuées par DCShadow à moins que l'agent LSASS n'accroche également les événements de réplication. (En général, ces agents ne s'intéressent qu'aux événements de changement).
Maintenir une dernière ligne de défense fiable
Je m'en voudrais de ne pas rappeler la nécessité de disposer de bonnes sauvegardes et d'un processus de récupération éprouvé. Si un pirate s'introduit, obtient des autorisations et crypte vos systèmes, vous ne voudrez pas le récompenser (ou récompenser les terroristes pour lesquels il travaille) en payant la rançon. Et si vos systèmes sont complètement effacés, même cette mauvaise option n'est pas envisageable. Par conséquent, mettez vos sauvegardes à l'abri (c'est-à-dire hors ligne) et testez votre processus de restauration pour Active Directory au moins une fois par trimestre. (Si des tests trimestriels de reprise d'activité vous semblent déraisonnables, il est temps de chercher un nouveau système de sauvegarde/restauration).
Rétablir la vue sur votre système SIEM
Lorsque DCShadow a été publié, ses créateurs ont averti qu'il pourrait "rendre aveugle votre SIEM qui vaut un million de dollars". En surveillant le flux de réplication AD et en transmettant les événements de changement à votre système SIEM, vous pouvez rendre la vue à votre système SIEM, protéger les investissements dans le système et sauvegarder l'intégrité d'Active Directory.