Evaluer le niveau de sécurité de Active Directory avec Ping Castle

Evaluer le niveau de sécurité de Active Directory avec Ping Castle

Aujourd’hui nous allons découvrir Ping Castle, un outil français qui va nous fournir une note sur la sécurité de notre domaine Active Directory et nous donner des recommandations afin de renforcer la sécurité de ce dernier.

Téléchargement de Ping Castle

Nous allons commencer par télécharger l’exécutable de Ping Castle sur notre contrôleur de domaine içi.

téléchargement de ping castle

Une fois téléchargé on a juste à dézipper le dossier et lancer l’exécutable.

exécuter Ping Castle

Exécution de Ping Castle

Une fois lancé la console va s’ouvrir et on va pouvoir choisir l’option souhaité.

Pour ce tutoriel je vais choisir l’option 1 afin d’évaluer le niveau de sécurité de mon domaine avec l’obtention d’une note.

choix de l'option ping castle

Il nous demande ensuite sur quel domaine on souhaite lançer le test.

choix du domaine

Une fois le domaine sélectionné le script se lance et va auditer tout notre domaine et générer un fichier .html avec les résultats.

résultat audit active directory

Nous avons juste à ouvrir ce fichier dans notre navigateur pour étudier les résultats.

note audit ping castle

Nous pouvons constater que nous avons pas mal de points à améliorer sur notre domaine et que Ping Castle nous donne également des recommandations afin d’améliorer notre score.

recommandations de sécurité

Nous verrons prochainement comment renforcer la sécurité de notre Active Directory avec Harden afin d’améliorer notre score sur Ping Castle.

Enumérer Active Directory avec Bloodhound

Enumérer Active Directory avec Bloodhound

BloodHound est un outil puissant d’énumération et d’analyse de la sécurité d’Active Directory, utilisé par les professionnels de la sécurité informatique et les administrateurs système pour évaluer la posture de sécurité d’un environnement Windows.

Conçu pour identifier et cartographier les relations d’accès, les privilèges et les chemins d’attaque potentiels au sein d’un domaine Active Directory, BloodHound offre une visibilité approfondie sur les relations entre les utilisateurs, les groupes, les ordinateurs et les ressources.

En exploitant la collecte d’informations, cet outil permet de visualiser graphiquement les dépendances et les vulnérabilités potentielles, facilitant ainsi la détection des risques de sécurité et des vecteurs d’attaque.

Dans ce tutoriel nous allons voir comment l’installer et cartographier notre domaine Active Directory.

Installation de Bloodhound

Nous allons commencer par nous rendre sur notre Kali afin d’installer Bloodhound.

sudo apt-get install bloodhound

Une fois que c’est installé, on va démarrer la console neo4j afin de pouvoir accéder à l’interface graphique de l’outil sur notre navigateur.

sudo neo4j console
lancement de la console neo4j

On va ouvrir l’url que nous a généré la commande dans notre navigateur.

ouverture de neo4j dans le navigateur

Pour se connecter on va entrer les identifiants par défault neo4j : neo4j.

Il nous faudra ensuite indiquer un nouveau mot de passe.

On peut à présent se connecter à Bloodhound :

bloodhound

Notre navigateur va s’ouvrir et après avoir entré nos identifiants on arrive sur l’interface de Bloodhound.

Bloodhound est un visualisateur de données qui pour l’instant n’en possède pas, nous allons devoir les générer sur notre domaine avec un autre outil nommé Sharpound.

Récupération des données avec Sharpound

Maintenant que notre console neo4j est fonctionnelle, nous allons pouvoir récupérer les données de notre domaine avec Sharpound.

Sharpound existe sous forme de script Powershell ou d’exécutable et va énumérer et cartographier notre domaine Active Directory et générer des fichiers au format JSON que nous étudierons ensuite avec Bloodhound.

Dans ce tutoriel nous allons utiliser la version Powershell téléchargeable sur ce Github.

Une fois le fichier téléchargé nous pouvons l’exécuter avec Powershell sur une machine présente sur notre domaine.

.\SharpHound.ps1
Invoke-BloodHound -CollectionMethod All
collecter les données avec Sharphound

On va maintenant pouvoir récupérer le fichier .zip généré par Sharpound et y extraire les fichiers JSON que l’on va importer dans Sharpound.

extraction des fichiers JSON

Analyse des fichiers JSON dans Bloodhound

Pour analyser nos fichiers on a juste à les faire glisser sur l’interface graphique de Bloodhound.

importer les fichiers JSON dans Bloodhound

Nous pouvons à présent analyser notre domaine en nous rendant sur l’ongler « Analysis » et choisir la requête que l’on souhaite effectuer.

analyse du domaine Active Directory

Il existe une multitude de requête que nous pouvons à présent réaliser comme par exemple :

Chercher les membres d’un groupe spécifique

Identifier les relations de permissions sur un objet spécifique

Trouver les utilisateurs avec des sessions actives

Explorer les relations de confiance entre les domaines

Analyser les chemins d’attaque privilégiés

Trouver les comptes de service avec des privilèges étendus

et bien d’autres encore à vous de jouer.

Afficher les dernières connexions (Last Logon) dans Active Directory avec un script Powershell

Afficher les dernières connexions (Last Logon) dans Active Directory avec un script Powershell

Aujourd’hui nous allons voir la réalisation d’un script en Powershell pour afficher les Last Logon à notre domaine Active Directory.

L’affichage des dernières connexions dans Active Directory revêt une signification fondamentale pour un administrateur, offrant une fenêtre vitale sur l’activité des utilisateurs au sein du réseau.

En surveillant les last logon, l’administrateur peut rapidement identifier les comportements inhabituels, détecter les comptes inutilisés, et prendre des mesures proactives pour maintenir la sécurité du système. 

Dans ce script nous allons afficher les résultats du script dans un fichier Excel avec les dernières connexions des utilisateurs. 

script Last Logon

Le lien vers mon Github pour y copier le script.

Bloquer les ports USB avec une GPO

Bloquer les ports USB avec une GPO

Aujourd’hui nous allons retourner dans notre domaine Active Directory afin de bloquer les ports USB de nos utilisateurs avec une GPO.

Dans un contexte professionnel, bloquer les ports USB des utilisateurs permet d’améliorer la sécurité du réseau en réduisant les risques potentiels liés à l’introduction de périphériques non autorisés. Cette mesure renforce la protection contre les menaces telles que la propagation de logiciels malveillants, le vol de données et les attaques basées sur des périphériques amovibles, contribuant ainsi à maintenir un environnement informatique plus sûr et conforme aux politiques de sécurité de l’entreprise.

De plus, cela peut aider à prévenir la fuite d’informations sensibles et à garantir la confidentialité des données au sein de l’organisation.

Création de la GPO

Nous allons nous rendre sur notre contrôleur de domaine et y saisir les touches « WIN + R » afin d’ouvrir la console Exécuter puis y entrer « gpmc.msc » afin d’ouvrir la console de gestion des stratégies de groupe

ouvrir la console de gestion des stratégies de groupe

Nous allons ensuite dérouler notre forêt et sélectionner l’unité organisationnelle contenant les ordinateurs des utilisateurs dont on souhaite bloquer les ports USB.

créer une nouvelle GPO

On va ensuite nommer notre nouvelle GPO « Block USB ».

nommer la GPO

Nous allons maintenant modifier notre nouvelle GPO en faisant un clic droit dessus.

modifier la GPO

Une fois dans l’éditeur de stratégie de groupe, on va se rendre dans Configuration de l’ordinateur, Modèles d’administration, Système, Accès au stockage amovible puis faire un clic droit sur « Toutes les classes les stockages amovibles : refuser tous les accès ».

bloquer les ports USB

On va cliquer sur « Activer » puis « Appliquer ».

activer le blocage des ports USB

Mettre à jour les stratégies de groupe

Nous allons maintenant nous rendre sur le poste de notre utilisateur afin d’y mettre à jour les stratégies de groupe en ouvrant le terminal de commande et en entrant la commande :

gpupdate /force
gpupdate /force

Nous allons maintenant vérifier que notre GPO a bien été prise en compte sur le poste de notre utilisateur avec la commande :

gpresult /r
gpresult /r

Notre GPO est bien en place, à présent notre utilisateur ne peux plus insérer de périphérique USB sur sa machine.

Installer un serveur DHCP sur Windows Server 2019

Installer un serveur DHCP sur Windows Server 2019

Dans ce tutoriel nous allons installer un serveur DHCP sur notre domaine Active Directory afin que les utilisateurs puissent obtenir des adresses IP automatiquement sur le réseau.

Attention de bien avoir configuré un réseau NAT isolé de votre LAN pour vos VMs sinon votre serveur DHCP risque d’arroser tous les appareils connectés à votre réseau.

Si vous avez besoin d’un petit rappel pour créer un réseau NAT dans VMware je vous invite à consulter ce tutoriel.

Nous allons voir la méthode d’installation avec Powershell et celle avec l’ajout de rôles et fonctionnalités.

Installation du rôle DHCP avec Powershell

Commençons par voir la méthode avec Powershell, il nous faudra ouvrir un Powershell sur le serveur sur lequel nous souhaitons installer le rôle DHCP et entrer cette commande :

Install-WindowsFeature -Name DHCP -IncludeManagementTools
Installer DHCP avec powershell

Etant donné que nous installons notre serveur DHCP dans un environnement Active Directory, il nous faut autoriser le serveur DHCP sur le domaine.

Add-DhcpServerInDC -DnsName SRV02FR.DC01.HACKOPS -IPAddress 192.168.2.102

Pensez à remplacer dans la commande le nom DNS par celui de votre serveur sur lequel vous installé DHCP ainsi que l’adresse IP.

Installer le rôle DHCP avec l’ajout de rôles et fonctionnalités

Passons à la seconde méthode nous allons nous rendre sur l’onglet « Gérer » puis sur « Ajouter des rôles et fonctionnalités ».

Une fois dans l’assistant, nous allons choisir « Installation basée sur un rôle ou une fonctionnalité ».

installation rôle et fonctionnalité

On indique ensuite le serveur.

choix du serveur pour l'installation

On sélectionne ensuite « Serveur DHCP » et on peut valider jusqu’a l’installation.

Installation serveur DHCP

Une fois que c’est fait, on recevra une notification afin d’autoriser le serveur DHCP dans Active Directory ou nous aurons à renseigner un compte Administrateur si nous ne sommes pas connecté avec afin de l’autoriser et il créera également deux groupes de sécurité dans le domaine qui permettrons de gérer la délégation du serveur DHCP.

C’est terminé pour l’installation, nous pouvons passer à la configuration.

Configuration du serveur DHCP

Nous allons maintenant nous rendre sur l’onglet DHCP, puis faire un clic droit sur notre serveur afin d’aller dans le « Gestionnaire DHCP ».

gestionnaire DHCP

Une fois dans le gestionnaire DHCP, nous allons créer une nouvelle étendue en faisant un clic droit sur IPv4 et en sélectionnant « Nouvelle étendue ».

nouvelle étendue dhcp<br />

Une fois arrivé dans l’assistant on clique sur suivant et nous allons donner un nom à notre étendue.

nom étendue dhcp

Ensuite nous allons déterminer une plage d’adresses IP pour notre étendue. 

plage ip dhcp

Il nous demandera ensuite si nous souhaitons exclure des adresses IP. Ce serait intéressant à faire si nous avions des périphériques présents dans notre étendue nécessitant une adresse IP statique, tels que des serveurs ou des imprimantes. Ici, nous n’allons rien exclure car les adresses IP statiques de nos serveurs ne font pas partie de la plage d’adresses IP que l’on a renseignée.

exclusion adresse ip

Maintenant il va nous demandé quelle durée de bail nous souhaitons donner à nos utilisateurs, cela va déterminer le temps où l’utilisateur va pouvoir utiliser une adresse IP de l’étendue.

Cela va dépendre des besoins spécifiques de votre réseau et de la politique de gestion des adresses IP de votre organisation.

Si votre réseau prend en charge des périphériques mobiles qui se déplacent fréquemment entre différents sous-réseaux, vous pourriez envisager d’utiliser des durées de bail plus courtes pour s’assurer que les adresses IP sont rapidement libérées et disponibles pour d’autres périphériques lorsqu’ils se déplacent.

Il faudra tout de même éviter de définir une durée de bail trop courte, car cela pourrait entraîner une surcharge du serveur DHCP avec des renouvellements fréquents. 

Içi nous allons mettre 7 jours.

durée du bail ip dhcp

Ensuite il va nous demander si nous souhaitons configurer les options DHCP pour cette étendue maintenant, nous mettons oui.

configuration des options de l'étendue

Içi nous devons renseigner la passerelle.

passerelle

Maintenant pour le DNS, c’est normalement rempli par défault indiquant le nom de notre contrôleur de domaine comme domaine parent.

configuration dns

Nous arrivons maintenant sur la résolution WINS que nous allons laisser vide. La résolution WINS (Windows Internet Name Service) était un service de résolution de noms utilisé principalement dans les anciennes versions de Microsoft Windows. Il permettait de résoudre les noms NetBIOS en adresses IP, facilitant ainsi la communication dans les réseaux locaux. Cependant, avec l’évolution des technologies réseau et l’adoption généralisée du DNS, la résolution WINS est devenue obsolète.

résolution wins

Nous n’avons plus qu’a confirmer que nous voulons activer cette étendue maintenant et elle sera en place.

activer étendue dhcp
étendue pool adresses ip

Nous pouvons à présent nous rendre sur un poste client et le configurer afin qu’il obtienne une adresse IP dynamiquement de notre serveur DHCP.

Configuration du client DHCP

Nous allons tout d’abord aller dans les propriétés de notre adaptateur réseau afin de le configurer pour qu’il obtienne une adresse IP de manière dynamique.

configuration ip dynamique adaptateur réseau

Nous allons également ouvrir Wireshark afin de capturer l’échange entre le client et le serveur DHCP.

Une fois dans l’interface de Wireshark, nous allons entrer le filtrer DHCP et lancer une capture.

capture dhcp wireshark

Afin de capturer tout le processus d’échange entre le client et le serveur, on va ouvrir un terminal de commande et demander à l’interface réseau de libérer son bail auprès du serveur DHCP.

ipconfig /release

Si nous regardons dans Wireshark, nous voyons que notre client a bien perdu son adresse IP.

dhcp release wireshark

Puis nous allons renouveler son adresse IP auprès du serveur DHCP.

ipconfig /renew
récupérer adresse ip dhcp

Voyons maintenant se qu’il s’est passé dans Wireshark.

capture dhcp wireshark

Alors voyons comment décortiquer cette capture, la première information que l’on peut voir est le « DHCP Discover » ou découverte DHCP.

Lorsqu’un périphérique souhaite obtenir une adresse IP sur le réseau, il envoie un message DHCP Discover en broadcast sur le réseau. Ce message indique que notre client cherche un serveur DHCP disponible.

Ensuite notre serveur DHCP qui reçoit le message DHCP Discover peut répondre avec un message DHCP Offer. Cette offre contient une adresse IP disponible pour le client, ainsi que d’autres informations de configuration réseau.

Le client, après avoir reçu une ou plusieurs offres, sélectionne l’offre qu’il souhaite accepter et envoie un message DHCP Request pour confirmer cette sélection.

Le serveur DHCP répond avec un message DHCP Acknowledgment pour confirmer que l’adresse IP et les configurations associées ont été attribuées au client.

Créer une réservation d’adresse IP

Pour finir ce tutoriel sur le DHCP, nous allons voir comment créer une réservation d’adresse IP dans notre étendue DHCP pour un périphérique comme une imprimante réseau ou un serveur afin que son IP reste fixe.

Dans le gestionnaire DHCP, on va dérouler  notre étendue puis faire un clic droit sur « Réservations » puis cliquer sur « Nouvelle réservation ».

nouvelle réservation adresse IP

Nous devons maintenant donner un nom à cette réservation et lui attribuer une adresse IP de notre étendue.

Nous allons également rensigner l’adresse MAC de notre périphérique en enlevant les : entre les caractères.

Concernant « le type pris en charge » nous pouvons laisser sur « les deux ».

réservation dhcp

Une fois que nous avons cliqué sur « Ajouter », c’est tout se que nous avons à faire, si l’on retourne sur notre étendue nous voyons notre nouvelle réservation.

liste réservation dhcp

Et voila ça sera tout pour ce tutoriel, j’espère que vous avez  pu en savoir un peu plus sur le rôle DHCP et son mode de fonctionnement.