Sécuriser votre annuaire Active Directory contre les attaques de malware

Sylvain Cortes,
Architecte IAM & Expert Cybersécurité,
Microsoft MVP (Identity & Access)

L’annuaire Active Directory représente vraisemblablement le centre névralgique de votre infrastructure informatique. Il est donc nécessaire de s’assurer de la bonne configuration de celui-ci afin que votre organisation ne soit pas sensible aux attaques persistantes ou aux infections de malwares / cryptovirus.

L’histoire ressente des attaques informatiques en France nous conforte dans le fait que nul n’est à l’abris, et que l’ensemble des organisations doivent absolument mettre en œuvre un plan d’investigation spécifique pour vérifier le design et la gouvernance de leur annuaire Active Directory.

Par où commencer pour protéger Active Directory ?

C’est une question très large mais globalement, il est nécessaire de mettre en œuvre un plan spécifique incorporant les éléments suivants :

  1. Monter drastiquement en compétence sur la technologie Active Directory
  2. Lire les recommandations très utiles proposées par Microsoft et l’ANSII
  3. A minima, implémenter le Tier-Model de Microsoft pour obtenir un design sécurisé
  4. Installer un minimum d’outillage vous permettant de contrôler les modifications au sein de votre environnement Active Directory

Avant d’aller plus loin, il est nécessaire de bien appréhender quelques principes fondamentaux de la sécurité Active Directory :

  • Il est impossible de protéger un système d’exploitation contre son compte d’administration globale, cela n’a rien à voir avec des faiblesses supposées de Windows, c’est un concept global s’appliquant également à UNIX ou Linux ;
  • Il est impossible de protéger un environnement Active Directory contre un Administrateur de domaine (attention au « mythe » Domain admin vs Enterprise admin) ;
  • Il faut veiller de ne donner sous aucunes raisons un compte Administrateur local d’une station de travail à un utilisateur lambda.

Cinétique d’une attaque sur Active Directory

  • Phase 0 : L’attaquant commence une phase d’écoute et d’analyse. Il s’agit ici de se documenter sur l’environnement de la cible. Plusieurs méthodes sont disponibles, l’usage du Social Hacking est une des méthodes préférées d’un attaquant car elle reste très efficace.
  • Phase 1 : L’attaquant aura comme objectif de devenir administrateur local d’une station de travail sur le réseau, cette compromission initiale sera le point de départ du reste de l’attaque. A ce stade, plusieurs méthodes sont disponibles : démarrer sur un Live-CD, usage d’une distribution Kali pour faire de l’injection, usage de matériel spécifique pour collecter les mots de passe utilisés, etc.
  • Phase 2 : L’attaquant tentera ensuite un mouvement latéral pour compromettre d’autres stations de travail en parallèle à la première infection. Généralement, l’attaquant pourra utiliser des comptes déjà présents sur la première station de travail mais pourra également travailler sur les comptes de services communs aux différentes stations de travail.
  • Phase 3 : L’attaquant commencera l’escale et prendra possession d’un ou plusieurs serveurs membres du domaine. Il utilisera généralement des outils de découverte tel que BloodHound et des outils pour explorer les traces de hash de mot de passe tel que Mimikatz.
  • Phase 4 : Pour donner suite à l’exploitation des hash de mot de passe et à l’exploration de certains attributs Active Directory l’attaquant pourra se rendre Administrateur du domaine. Une autre d’approche est d’avoir un accès physique au disque dur virtuel ou non d’un des contrôleurs de domaine afin d’extraire une copie de la base de données Active Directory et de réaliser une attaque par dictionnaire par exemple.
  • Phase 5 : L’attaquant doit maintenant couvrir ses actions afin de rendre persistante l’attaque et accéder aux données de l’organisation.

Les contremesures principales à implémenter

Il convient de mettre en œuvre des contremesures basiques mais efficaces afin d’assurer un minimum de sécurité dans votre infrastructure.

Contremesure numéro 1 : chiffrer les disques durs des systèmes d’exploitation

Il est extrêmement important de chiffrer les disques durs de l’ensemble des systèmes d’exploitation et notamment des stations de travail. Vous pouvez utiliser Bitlocker sur Windows, FileVault sur MacOS ou LUKS sur Linux. Ces outils de chiffrement sont embarqués dans les systèmes d’exploitation et leur paramétrage basique est relativement trivial. Si vous souhaitez des fonctions plus avancées en termes de fonctions ou d’administration, rajoutez un outil centralisant multi-plateformes tel que WinMagic.

Contremesure numéro 2 : activer les fonction UEFI en lieu et place du BIOS

Depuis quelques années, les nouveaux matériels intègrent un UEFI pour remplacer les fonctions du BIOS. Ceci permet de rajouter des fonctions de sécurité telle que Secure Boot. Il peut être utile de paramétrer un mot de passe au démarrage hardware en complément.

Contremesure numéro 3 : ne jamais donner un compte administrateur local à un utilisateur lambda

Cette contremesure est primordiale, il faut absolument proscrire l’usage de compte d’administration pour les utilisateurs sur leur station de travail. En effet, le départ de chaque attaque sera grandement facilité si l’utilisateur possède un compte d’administration locale car l’attaque pourra alors exécuter des tâches et des processus en utilisant le compte local « nt authority ». Contrairement à la légende, il est tout à fait possible de paramétrer finement le poste de travail afin que l’utilisateur puisse travailler normalement en adaptant ses privilèges. En cas de difficulté sur le paramétrage ou d’applications métier récalcitrantes ne pas hésiter à déployer une solution de gestion des privilèges telle que DefendPoint au niveau des systèmes d’exploitation client.

Contremesure numéro 4 : implémenter le Tier-model proposé par Microsoft

Microsoft propose un type de design Active Directory nommé Tier-model. S’il est suivi à la lettre, ce modèle permet de s’affranchir des erreurs de gouvernance classiquement implémentées lors de la plupart des déploiements Active Directory.

Globalement le principe du Tier-model est de définir 3 zones avec des limites d’administration et d’accès pour chacune de ces zones. Ce schéma Microsoft explique les grandes lignes de ce type de design :

Vous pourrez consulter le document extrêmement complet écrit par Microsoft qui démontre en détail les principes de ce modèle. Consultez et reconsultez ce document, il représente la base de tout design Active Directory sécurisé digne de ce nom.

Contremesure numéro 5 : mettre en œuvre une solution pour collecter les journaux d’évènement et suivre les changements

Il est essentiel de pouvoir suivre l’ensemble des modifications réalisées sur votre environnement Active Directory. Il s’agit ici de collecter et conserver les journaux d’évènement depuis vos contrôleurs de domaine et d’obtenir des alertes sur les modifications réalisées. Cela vous permettra d’identifier les actions suspectes telles que : un changement dans des groupes d’administration de haut niveau, des tentatives d’intrusion via un dictionnaire de mots de passe, des modifications sur certains objets sensibles dans l’annuaire Active Directory, etc. Netwrix Auditor propose des outils complets et performants dans ce domaine que vous pourrez découvrir sur leur site.

Contremesure numéro 6 : mettre en œuvre un plan de « recovery » Active Directory

Nulle protection n’est sûre à 100%. Vous devez être prêt au pire et au déclenchement d’un plan B en cas de nécessité. Il est donc extrêmement important de prévoir en amont ce type de situation. Il convient de rédiger et de tester un plan de recouvrement Active Directory. Vous pouvez gérer ce plan avec des fonctions directement embarquées dans les systèmes d’exploitation Microsoft, mais vous pouvez aussi faire le choix d’une solution dédiée telle que Semperis pour prévoir et anticiper des restaurations complètement automatisées de vos domaines ou de vos forêts Active Directory en cas de compromission.

Merci d’avoir pris le temps de lire cet article, j’espère sincèrement que sa lecture vous sera utile dans la compréhension de la sécurité Active Directory.