Créez des rapports de sécurité Active Directory avec PowerShell. Tout d’abord, sécuriser un environnement Active Directory (AD) est essentiel pour plusieurs raisons. Tout d’abord, Active Directory est un composant central de nombreuses organisations réseaux et contient une richesse d’informations sensibles sur les utilisateurs, les ordinateurs et d’autres ressources réseau. Si ces informations venaient à tomber entre de mauvaises mains, elles pourraient les utiliser pour compromettre la sécurité de l’ensemble du réseau.
Cet article traite des différentes façons de sécuriser notre environnement Active Directory avec PowerShell.
Commençons par Créer des rapports de sécurité Active Directory avec PowerShell.
Créer des rapports de sécurité Active Directory avec PowerShell
Prérequis Certaines des commandes de cet article utiliseront des commandes Active Directory . Par conséquent, dans cet article, nous devrons installer les composants prérequis :
Certaines des commandes de cet article utiliseront des commandes Active Directory. Par conséquent, dans cet article, nous devrons installer les composants prérequis :
- Niveau fonctionnel de domaine – Windows Server 2016.
- Outils d’administration à distance du serveur (RSAT) pour Active Directory installés sur votre poste de travail joint à un domaine.
- La dernière PowerShell version, ou au moins PowerShell 5.x et au-dessus, est requise pour exécuter les scripts.
Avant de commencer, assurez-vous que nous avons les prérequis ci-dessus et importer le module Active Directory en utilisant le fragment ci-dessous.
Install-Module ActiveDirectory
Import-Module ActiveDirectory
Différentes méthodes pour sécuriser le Active Directory
Il existe plusieurs façons de sécuriser notre environnement Active Directory. Dans la section suivante, nous discutons de quelques façons de sécuriser notre infrastructure Active Directory.
Application de politiques de verrouillage de mot de passe détaillées et de verrouillage de comptes
Tout compte fait, Active Directory inclut une politique de mot de passe par défaut. Cependant, les administrateurs peuvent également mettre en place des politiques de mot de passe plus strictes et des politiques de verrouillage de comptes. Ce processus nous permet de mettre en place des mots de passe plus sécurisés et des paramètres de verrouillage de comptes pour les comptes privilégiés.
Utilisez les lignes PowerShell suivantes pour créer une politique de mot de passe et de verrouillage de compte détaillée sur un système avec le Module AD pour Windows PowerShell installé et importé.
Script de Politique de Verrouillage:
New-ADFineGrainedPasswordPolicy PolicyName -ComplexityEnabled $true -LockoutThreshold "3" -MaxPasswordAge "30.00:00:00" -MinPasswordLength "14" -PasswordHistoryCount "20" -Precedence "1" -ReversibleEncryptionEnabled $false -ProtectedFromAccidentalDeletion $true
Script de Politique de Mot de Passe Granulaire:
Add-ADFineGrainedPasswordPolicySubject PolicyName -Subjects GroupName
Regardez l’attribut msDS-ResultantPSO du compte d’utilisateur pour déterminer quelle politique granulaire de mot de passe et de verrouillage de compte s’applique. De plus, il révèle la référence à la politique de mot de passe qui est impliquée. Pour cela, nous pouvons également utiliser le Get-ADUserResultantPasswordPolicy cmdlet PowerShell.
Gérer les instantanés d’Active Directory
Les instantanés pour Active Directory peuvent être utiles dans les scénarios où l’organisation a besoin de comparer des informations d’un moment spécifique (l’heure à laquelle nous avons pris l’instantané) avec des données d’un autre moment.
A functional Active Directory VSS Writer and the Volume Shadow Copy functionality are required to create an Active Directory snapshot. These features come standard with Windows Server.
Connectez-vous à un Contrôleur de domaine (DC) avec un compte d’utilisateur appartenant aux groupes Domain Admins ou Opérateurs de sauvegarde pour travailler avec des instantanés. Après vous être connecté, ouvrez l’Invite de commande et essayez les étapes suivantes.
Pour créer un instantané Active Directory à l’aide de PowerShell, nous pouvons utiliser le Export-DSSnapshot cmdlet :
Export-DSSnapshot -Path
Ensuite, si vous souhaitez afficher tous les instantanés Active Directory à l’aide de PowerShell, nous pouvons utiliser le Get-DSSnapshot cmdlet :
Get-DSSnapshot -Path
Ensuite, pour monter un instantané Active Directory à l’aide de PowerShell, nous utilisons le Mount-DSSnapshot cmdlet. Par exemple, la commande ci-dessous montera l’instantané avec l’ID spécifié à partir du emplacement spécifié :
Mount-DSSnapshot -Path -Identity
La cmdlet PowerShell ci-dessus sortira l’emplacement où la base de données est montée. Pour l’exposer en tant que Magasin LDAP, exécutez cette commande:
dsamain.exe -dpbath "" -LDAPport
Gardez cette commande en cours d’exécution aussi longtemps que nous voulons que le serveur LDAP soit opérationnel. Pour rechercher des informations, utilisez le Module AD pour les cmdlets PowerShell Windows. Entrez le paramètre -Server et le nom d’hôte et le numéro de port du serveur, séparés par un point-virgule, comme suit:
Get-ADComputer -Identity * -Server Localhost:PortNumber
Alternativement, nous utilisons des outils Active Directory supplémentaires comme ldifde.exe et csvde.exe pour transférer des informations entre les instantanés et Active Directory. Malheureusement, aucun outil natif n’est disponible pour effectuer ce type d’opérations.
Gestion des objets Active Directory supprimés
Dans l’ensemble, le processus de tombeau Active Directory permet au Contrôleur de domaine de répliquer la suppression. Lorsque la Corbeille de récupération AD est activée, le DC réplique les objets supprimés avant d’être mise en tombeau.
Dans cet état, nous pouvons voir les objets supprimés dans le conteneur Objets supprimés. Fondamentalement, nous restaurons les objets à partir de ce conteneur, y compris leurs appartenances aux groupes et d’autres attributs, à leur emplacement d’origine ou à un conteneur différent.
Sur un système sur lequel le module AD pour Windows PowerShell est installé, utilisez les commandes PowerShell suivantes pour afficher les objets AD supprimés pour un domaine:
Get-ADObject -IncludeDeletedObjects -Filter *
De plus, pour restaurer un objet AD supprimé objet, utilisez les cmdlets PowerShell suivantes sur un système sur lequel le module Windows PowerShell AD est installé :
Get-ADObject -Filter { displayName -eq "" } - IncludeDeletedObjects |
Restore-ADObject
Réinitialisation du mot de passe du compte de service Kerberos dans l’AD
Chaque domaine Active Directory possède son propre compte KRBTGT dans un environnement à plusieurs domaines, utilisé par tous les contrôleurs de domaine totalement écrits. De plus, nous attribuons individuellement des comptes KRBTGT à chaque contrôleur de domaine en lecture seule.
Le compromis du compte de service Kerberos entraîne une perte de la sécurité Kerberos et des enregistrements d’audit.
Bien sûr, si vous souhaitez réinitialiser le mot de passe du compte de service compte, connectez-vous à un contrôleur de domaine avec des droits d’administrateur de domaine et exécutez ce qui suit:
Set-ADAccountPassword -Identity (Get-ADUser krbtgt).DistinguishedName -Reset -NewPassword (ConvertTo-SecureString "" -AsPlainText -Force)
Autres moyens de sécuriser l’environnement AD
Il existe de nombreuses autres façons de sécuriser un Active Directory, et nous en avons mentionné quelques-unes. Cependant, il faudra quelques articles de plus pour les expliquer tous, voici donc une liste de concepts sur ce que nous pouvons faire pour sécuriser votre environnement Active Directory :
- Sauvegarde et restauration des GPO et base de données AD (NTDS)
- Gérer le mode de restauration des services de répertoire (DSRM) des mots de passe sur les contrôleurs de domaine.
- Mettre en œuvre une solution de mot de passe local pour l’administrateur (LAPS)
- Travailler avec des comptes de service gérés par groupe (gMSA).
- Utiliser le Security Configuration Wizard (SCW) pour sécuriser les contrôleurs de domaine.
- Gérer et surveiller le groupe protégé Utilisateurs.
- Mettre en pratique les politiques d’authentification et les silos de politique d’authentification Configurer le verrouillage intelligent extranet.
- et bien plus encore.
Passons maintenant à la section suivante, où nous abordons l’exportation de rapports de sécurité et audit à l’aide de PowerShell.
Création de rapports d’audit de sécurité Active Directory à l’aide de PowerShell
Microsoft a introduit la politique d’audit de sécurité avancée dans AD il y a quelques itérations. Cette fonctionnalité étend les options d’audit dans dix catégories:
- Accès aux objets globaux Audit.
- Compte Connexion.
- Gestion des comptes.
- Suivi détaillé.
- Accès au service de répertoire.
- Connexion/Déconnexion.
- Accès aux objets.
- Changement de politique.
- Utilisation des privilèges.
- et Utilisation du système.
Il existe plusieurs options d’audit pour chacune de ces catégories. De plus, la politique ajoute des entrées dans le Journal des événements avec la source Microsoft Windows sécurité audit lorsqu’elle est activée.
Pour configurer la politique de sécurité d’audit avancée, suivez ces étapes:
- Ouvrez la Console de gestion de la stratégie de groupe.
- Accédez au nœud Contrôleurs de domaine pour le domaine où vous souhaitez configurer la politique.
- Faites un clic droit sur le Default Domain Controllers Policy et cliquez sur Modifier dans le menu.
- Développez le Configuration de l’ordinateur, cliquez sur Stratégies, cliquez sur Paramètres Windows, cliquez sur Paramètres de sécurité, cliquez sur Configuration avancée de la stratégie d’audit, cliquez sur Stratégies d’audit, puis sur Accès DS.
5. Double-cliquez sur la Audit Directory Service, Changes paramètre.
6. Cocher la case pour configurer les événements d’audit et sélectionner Succès et Échec événements d’audit.
7. Enregistrer les paramètres et fermer l’écran Propriétés.
8. Fermer la fenêtre Éditeur de stratégie de groupe de gestion.
Avec PowerShell, le Get-WinEvent Cmdlet permet aux auditeurs système de personnaliser des options de filtrage avancées. Par exemple, la commande simple en une seule ligne suivante interroge tous les journaux de sécurité et les exporte dans un fichier CSV en tant que rapport généré.
Get-WinEvent -FilterHashtable @{LogName="Security"} | Export-Csv -Path .\Security.csv -NoTypeInformation
Le fichier CSV devrait ressembler à ce qui suit:
La copie des événements d’audit à partir des journaux des événements du visualiseur de l’ordinateur contrôleur de domaine vers une solution centralisée de gestion des incidents et événements de sécurité (SIEM) est une pratique recommandée.
Merci de lire Créer des rapports de sécurité Active Directory avec PowerShell. Nous allons conclure cet article maintenant.
Lire aussi Déployer l’outil de gestion Active Directory
Conclusion de la création de rapports de sécurité Active Directory avec PowerShell
En plus des préoccupations de sécurité mentionnées ci-dessus, des problèmes de conformité et de respect des réglementations peuvent survenir si un environnement Active Directory n’est pas suffisamment sécurisé. Par exemple, de nombreuses organisations doivent respecter des normes spécifiques de sécurité des données et de confidentialité. Ne pas sécuriser un Active Directory peut les mettre en danger de non-conformité et de sanctions potentielles.
Source:
https://infrasos.com/create-active-directory-security-reports-with-powershell/