Active Directory – Les outils pour auditer votre AD

Hello, cela fait un moment que je n’ai pas publié de contenu, étant occupé avec beaucoup de travail et diverses responsabilités. Dans ce nouveau billet, je saisis l’occasion pour partager avec vous quelques outils que j’utilise régulièrement dans mon quotidien pour auditer l’Active Directory et renforcer la sécurité de l’infrastructure.

Si vous êtes un administrateur système, en particulier chargé de l’administration de l’Active Directory au sein de votre entreprise, ou même d’une section spécifique de l’AD, vous êtes probablement familiarisé avec des outils offrant une vision globale des modifications apportées aux ressources et à la configuration de l’AD. Les experts dans ce domaine connaissent bien les outils natifs tels que PowerShell, la Console AD, Repadmin…etc, mais ils nécessitent une approche morcelée. Les outils que je vais présenter ici offrent une vue complète sur l’ensemble des services AD.

J’apprécie particulièrement ces outils car ils sont open-source, alignés sur les bonnes pratiques de Microsoft et de l’ANSSI, et entièrement développés en utilisant PowerShell.

PingCastle (Audit)

On présente plus cet outil made in France.

Permet d’effectuer un bilan de santé et fournir des informations sur la sécurité de votre environnement AD dans un rapport au format HTML.

Simple à utiliser et rapide. Compatible Microsoft AzureAD Entra

PingCastle

Purple Knight (Audit)

Tout comme PingCastle, mais avec un rapport HTML bien foutu à mon goût.

Facilement à utiliser également et rapide. Compatible Microsoft AzureAD Entra

Purple_Knight_Active_Directory

Forest Druid (Audit)

Le petit frère de Purple Knight (by Semperis les deux) Forest Druid va se concentrer sur la découverte des chemins d’attaque du Tier 0. En gros, il va chercher les objets vulnérables du Tier 0 et c’est à vous de faire le nécessaire pour corriger.

Disponible ici : https://www.purple-knight.com/fr/forest-druid/

Facile à utiliser et compatible Microsoft AzureAD Entra

BloodHound (Audit)

BloodHound est un outil très puissant de cartographie full web pour Active Directory et Microsoft AzureAD Entra.

Si vous exécutez cet outil dans votre environnement AD, il est probable que votre antivirus le détecte et le bloque, car il est souvent utilisé lors d’attaques sur Active Directory. Cependant, il est important de noter que l’outil n’est pas conçu à cette fin. L’objectif de BloodHound est de fournir de manière très détaillée toutes les informations sur un Active Directory, en mettant particulièrement en évidence les chemins d’attaques les plus sensibles.

ADTimeLine (ANSSI)

Le script ADTimeline génère une chronologie basée sur les métadonnées de réplication Active Directory pour les objets considérés comme intéressants.

Les objets considérés comme intéressants récupérés par le script incluent :

  • Objets racine de partition de schéma et de configuration.
  • Racine du domaine et objets situés directement sous la racine.
  • Objets ayant un ACE sur la racine du domaine.
  • Racines de domaine situées dans la forêt AD.
  • Approbations de domaine.
  • Utilisateurs supprimés (c’est-à-dire désactivés).
  • Objets protégés par le processus SDProp (c’est-à-dire AdminCount est égal à 1).
  • Le compte Invité.
  • L’objet AdminSDHolder.
  • Objets ayant un ACE sur l’objet AdminSDHolder.
  • Objets de schéma de classe.
  • Objets de stratégie de groupe existants et supprimés.
  • Secrets DPAPI.
  • Contrôleurs de domaine (objets ordinateur, ntdsdsa et objets serveur).
  • Zones DNS.
  • Filtres WMI.
  • Comptes avec SIDHistory suspect (la portée s’étend à l’échelle de la forêt).
  • Unités organisationnelles.
  • Objets avec la délégation Kerberos activée.
  • Droits étendus.
  • Comptes d’utilisateurs Kerberoastable (valeur SPN).
  • Silos de politiques d’authentification.
  • Objets Certification Authority et pKIEnrollmentService.
  • Conteneurs de références croisées.
  • Rôles Exchange RBAC et comptes attribués à un rôle.
  • Objets de configuration du flux de messagerie Exchange.
  • Objets de bases de données de boîtes aux lettres Exchange.
  • Objets du service de réplication de boîtes aux lettres Exchange
  • Objets supprimés sous la partition de configuration.
  • Objets dynamiques.
  • Le service d’annuaire et les objets du gestionnaire RID.
  • L’accès compatible pré-Windows 2000, les propriétaires de créateurs de GPO et les groupes d’administrateurs DNS.
  • Conteneurs ADFS DKM.
  • Objets de point de connexion au service considérés comme présentant un intérêt.
  • Groupes personnalisés qui doivent être définis manuellement.
  • Objets utilisateur avec le redirecteur de courrier activé
  • …etc.

Disponible ici : https://github.com/ANSSI-FR/ADTimeline

AD Control Paths (ANSSI)

« Les chemins de contrôle dans Active Directory sont une agrégation de « relations de contrôle » entre entités du domaine (utilisateurs, ordinateurs, groupes, GPO, conteneurs, etc.) qui peuvent être visualisées sous forme de graphiques (comme ci-dessus) et dont le but est de répondre à des questions. comme « Qui peut obtenir les privilèges « Administrateurs de domaine » ? » ou « Quelles ressources un utilisateur peut-il contrôler ? » et même « Qui peut lire les emails du PDG ? »  »

Disponible ici : https://github.com/ANSSI-FR/AD-control-paths


 

N’hésitez pas à utiliser largement les outils d’audit. Aucune altération ne doit être apportée à votre Active Directory, sauf dans le cas du renforcement de la sécurité (HARDEN AD). Ces outils offrent des solutions de correction, des liens vers des tutoriels, ainsi que des bonnes pratiques de Microsoft, entre autres. Profitez-en pleinement !

 


HardenAD (Security)

HardenAD pousse les limites en vous offrant la possibilité d’automatiser la mise en œuvre des bonnes pratiques pour le déploiement d’Active Directory, en mettant particulièrement l’accent sur l’application du modèle de hiérarchisation Microsoft.

Ne le faites pas en PROD hein ! =)

Vous avez un exemple ici : it-connect.fr alors je répète, pas de bêtise en PROD 🙂


Pour ceux qui gèrent une infrastructure Active Directory ancienne, il est essentiel de comprendre que viser un score parfait de 100% n’est pas l’objectif réaliste. Atteindre une telle perfection est quasiment impossible, à moins de recommencer entièrement depuis le début, par exemple, en établissant un nouveau domaine propre et en déplaçant progressivement les ressources avec des relations d’approbation… Good Luck.

Votre objectif devrait être d’auditer votre AD et de corriger autant de points que possible sans causer de perturbations majeures. Comme c’est le cas pour tout, il y a des exceptions, et souvent, ce n’est pas à vous, en tant qu’administrateur système, de décider de toutes les corrections. Prévenir et informer votre responsable ou le RSSI est un bon point de départ.

En tant que sysadmin, il est essentiel de suivre une démarche méthodique : analyser, informer, planifier, corriger (et documenter), tester/valider, et éviter de revenir en arrière si possible. C’est important de documenter en cas de gros problème, ce sera plus simple de rollback.

Cependant, dans certaines situations, la correction peut s’avérer impossible. Cela se produit généralement avec des applications obsolètes, offrant deux solutions possibles :

  1. Mettre à jour les versions des applications.
  2. Opter pour un changement complet de solution.
  3. Aller, je rajoute une 3eme pour le fun. Ton boss est au courant, ça avance pas, tu laisses tomber, on s’en branle jusqu’au jour J (ransomware)

Quelques articles à consulter en lien avec ce sujet :

A vous de jouer.

Bonne journée.

Cette publication a un commentaire

Laisser un commentaire