AD Hardening: Microsoft Security Compliance Manager & Microsoft Security Compliance Toolkit

Comme vous le savez, je travaille énormément sur les concepts de AD Hardening de manière à réaliser des re-design d’installation Active Directory afin que l’IT global des organisations soit le moins sensible possible aux attaques de malware (attaques indirectes) ou aux attaques directes.

Dans ce cadre, la recommandation de Microsoft est de segmenter l’environnement lié à l’annuaire Active Directory en trois tiers : Tier 0, Tier 1 et Tier 2 – le Tier 2 représentant globalement les workstations :

Globalement, l’effort de travail et d’investissement se fait bien évidement sur la couche Tier 0 (qui voudrait voir ses contrôleurs de domaine compromis ?) – cela est bien normal, car un re-design AD est un effort colossal pour la plupart des organisations, et elles mettent généralement le focus sur la sécurisation des contrôleurs de domaine. Néanmoins, attention, il ne faut pas oublier que les attaques proviennent à 90% de Tier 2 (voir la règle #2 d’un autre de mes post : https://www.identitycosmos.com/http:/www.identitycosmos.com/non-classe/the-good-old-arcade-games-teach-us-about-today-cybersecurity-rules).

Il est effectivement impossible de sécuriser à 100% la couche Tier 2, mais Microsoft nous fournit un ensemble d’outils permettant de nous faciliter le travail. Ces outils sont assez méconnus, car gratuits ! Je sais, cela parait curieux, mais quel intérêt aurait un commercial Microsoft à vous parler d’un outil gratuit ?

Microsoft Security Compliance Manager

Microsoft Security Compliance Manager (SCM de son petit nom) est un outil relativement ancien, je dirais qu’il existe depuis environ 6 ou 7 ans. D’abord en version 1, puis 2, puis 3 jusqu’à la dernière version en 4.0. Cet outil permet d’utiliser des modèles de sécurité prédéfinis et d’appliquer ces modèles sur les postes de travail ou même les serveurs membres soit par GPO, soit par System Center Configuration Manager (via la fonction DCM).

Plus d’informations sur l’outils en V4 [ ICI ]

La dernière version de l’outil intègre des modèles pour Windows 10 V.1511 et pour Windows Server 2016.

Même si cet outil est très intéressant, je ne passerai pas trop de temps dessus car il a été remplacé par un nouvel outil : Microsoft Security Compliance Toolkit

Microsoft Security Compliance Toolkit

Microsoft Security Compliance Toolkit est donc le remplaçant de Microsoft Security Compliance Manager, il est actuellement en version 1.0. Vous trouverez des informations générales sur l’outil sur cette page de Microsoft [ ICI ].

Le kit de base est disponible en téléchargement [ ICI ].

Un update de ce kit de base assurant la compatibilité avec Windows 10 V.1809 et Windows Server 2019 est disponible en téléchargement [ ICI ] – Cet update contient en fait les mises à jours des référentiels de sécurité fournis par l’outil, ce que l’on appelle les Baselines, mais nous en parlerons plus loin dans cet article. Des informations complémentaires sur le contenu de cet update sont disponibles sur [ CET ARTICLE ].

Lorsque vous téléchargez SCT 1.0, le ZIP contient plusieurs éléments :

Dans le répertoire « PolicyAnalyzer », vous trouverez les éléments suivants :

Le document PDF « Policy Analyzer.pdf » donne des explications sur l’outil Policy Analyzer (qui est présent en version 3.2 dans SCT 1.0), pour être honnête, la documentation est médiocre, il faut être bien concentré pour comprendre le fonctionnement ! Globalement, Policy Analyzer va pouvoir faire plusieurs choses :

  • Comparer les configurations appliquées sur les machines avec des Baselines fournies par Microsoft – c’est la fonction principale de cet outil
  • Détecter les paramètres redondants appliqués au travers de plusieurs GPOs
  • Comparer les paramètres de GPO de domaine avec les clés de registre effectivement paramétrées sur les machines, cela pouvant mettre en évidence des problèmes d’application de GPO,et donc des problèmes de conformité

Par exemple, sur ce screenshot, on peut voir une comparaison de valeurs entre la valeur locale du paramètre (registre), le paramètre présent dans la GPO qui devrait s’appliquer et le modèle de sécurité préconisé par Microsoft (Baseline) :

L’ensemble des informations peut être exporté dans Excel :

Dans le répertoire « LGPO », vous trouverez les éléments suivants :

Le document PDF « LGPO.pdf » donne des explications sur l’outil Local Group Policy Object (qui est présent en version 2.2 dans SCT 1.0), à nouveau la documentation n’est pas terrible, il va falloir que Microsoft fasse un effort sur le sujet. Globalement, Local Group Policy Object va pouvoir faire plusieurs choses :

  • Importer des paramètres depuis des fichiers .POL
  • Importer des paramètres depuis des fichiers de type Security Template
  • Exporter les GPOs vers un backup
  • Exporter les GPOs pour réaliser une comparaison dans le premier outil du kit (Policy Analyzer)

L’outil est uniquement en ligne de commande – il était déjà présent dans Microsoft Security Compliance Manager – Cette vidéo donne quelques exemples d’utilisation de l’outil : https://www.youtube.com/watch?v=Dv6dq1YllnU

L’outil propose aussi des fichiers de Baseline pour chaque population de système :

Avec un update pour les dernières versions d’OS disponibles en téléchargement [ ICI ]. Chaque fichier ZIP, lorsqu’il est décompressé possède la même structure, par exemple ici pour Windows 2012 R2 :

Le répertoire “Documentation” contient un fichier Excel avec les paramètres recommandés :

Le répertoire “GP Reports” contient les fichiers équivalents au format Excel mais au format Report HTML tel que prévu dans la GPMC (L’outil de gestion des stratégies de groupe dans Active Directory) :

Le répertoire “GPOs” contient les paramètres au format GPO (plus être précis, au format GPT de la GPO) :

Le répertoire « WMI Filters » contient des filtres WMI tout prêts à être importés – bon je ne suis pas super fan des filtres WMI pour plein de raisons différentes, mais ils sont présents si vous voulez les utiliser:

Vous trouverez [ ICI ] des informations générales sur la notion de Security Baseline chez Microsoft.

Je vous laisse maintenant explorer par vous-même ce kit – pour être honnête son usage est relativement consommateur de temps, mais c’est un outil parfait pour s’assurer de la configuration de sécurité des machines Windows dans une environnement Active Directory – je vais essayer de réaliser rapidement un tutoriel complet de la solution. Je vais notamment rentrer en contact avec l’équipe produit pour voir comment il serait possible d’améliorer la documentation présente sur docs.microsoft.com, car pour l’instant c’est plus que léger.

N’hésitez pas à laisser vos commentaires sur ce post.