Introduction
Maintenant, nous avons notre système SIEM mis en place et prêt à nous montrer tout ce qu’il a dans son ventre.
Mais ne nous décourageons pas, nous allons essayer de regarder tous les cas d’utilisation qu’un SIEM peut avoir. Nous verrons comment détecter si un attaquant essaie d’accéder à notre serveur, détecterons également les attaques par force brute, les changements dans les fichiers, les processus cachés, entre autres. En résumé, je vais essayer de vous montrer que si on joue bien son jeu, Wazuh peut être un outil très puissant pour détecter de véritables menaces, si et seulement si, il est bien configuré.
Nous verrons également comment ajouter un agent, le configurer, et d’autres aspects. Fini de parler, lançons-nous sur notre interface Wazuh !
Ajout du premier agent Windows
Avant d’ajouter notre premier agent Windows, nous allons devoir aller sur notre Wazuh-Dashboard et créer des groupes. Ces groupes vont beaucoup nous faciliter la tâche dans le futur. Avec ces groupes, nous pourrons éditer les configurations de manière groupée et non une par une. Cela est très pratique si jamais nous avons plus de 100 agents ou plus.
Pour cela, nous nous dirigeons vers :
Une fois dans ce menu, nous pouvons constater qu’il existe déjà un groupe, le groupe default. Ce groupe ne peut pas être supprimé, mais si nous le souhaitons, nous pouvons le modifier, mais cela n’est pas très conseillé, car il vaut mieux avoir des groupes nominatifs par groupe d’agents, tels que Windows, Linux, Firewalls, Network, etc.
Maintenant, il faut ajouter le groupe en cliquant sur Add new group, puis saisir le nom de notre nouveau groupe :
Et c’est bon. Vous pouvez remarquer sur le tableau que nous pouvons modifier et consulter la configuration de notre groupe. En gros, cette configuration est celle de l’agent qui sera installé sur chaque machine que nous voulons surveiller. Ce fichier de configuration se base sur un logiciel très connu dans le monde du Blue Teaming, OSSEC. Il permet de définir des règles de surveillance et bien d’autres choses.
Ajoutons maintenant notre premier agent. Pour ce faire, nous nous dirigeons vers :
Étant donné que nous n’avons pas encore ajouté d’agent, il nous dirige directement vers la page d’ajout.
Une fois sur cette page, rien de plus simple :
Tout d’abord, il faudra sélectionner l’OS de notre agent. Pour nous, notre premier agent sera un Windows 10. Ici, nous sélectionnons MSI 32/64 bits. Puis, dans Server Address, il faut mettre l’adresse du Wazuh-Manager !
Si jamais vous êtes sur différents nœuds, l’adresse sera forcément différente de celle de votre Dashboard, faites attention !!
Si nous descendons un peu plus bas, nous devons remplir ces deux champs :
Ici, nous devons d’abord donner un nom UNIQUE à notre agent. Une fois que vous aurez décidé quel nom mettre, il faudra l’assigner au groupe Windows créé un peu plus haut.
Et voilà, maintenant Wazuh nous donne une commande PowerShell que nous devrons exécuter sur notre agent. Sans trop tarder, il faut copier cette commande et la lancer sur un terminal PowerShell avec les droits d’administrateur. Une fois que Wazuh aura terminé de s’installer, il faudra simplement démarrer le service avec la commande PowerShell :
NET START WazuhSvc
C’est rapide, n’est-ce pas ? Une fois que nous avons réussi à installer notre agent, il ne nous reste plus qu’à fermer la fenêtre où nous sommes et vérifier si notre agent a bien été ajouté :
Et voilà comment nous avons réussi à ajouter notre tout premier agent. Maintenant, pour varier un peu, ajoutons un agent Linux.
Ajout du premier agent Linux
Pour les agents Linux, nous allons suivre exactement la même procédure que pour les agents Windows. Allons-y alors.
Tout d’abord, nous allons créer notre groupe :
Une fois notre groupe créé, nous allons nous diriger vers la page qui va nous permettre d’ajouter des agents :
Sur cette page, bien entendu, cela dépendra de la distribution Linux que vous utilisez pour votre machine. Moi, j’utilise une machine Debian 12, donc pour moi, ce sera des paquets .deb. Il faudra juste faire attention à prendre la bonne option pour votre distribution Linux.
Une fois les champs bien remplis, nous pouvons copier et coller les commandes que notre Wazuh nous aura données. Cela ressemblera à quelque chose comme cela :
Et voilà ! Maintenant, si nous retournons sur notre Dashboard des agents, nous pouvons constater que nous retrouvons nos 2 serveurs ajoutés :
C’était simple, n’est-ce pas ? Mais ne vous inquiétez pas, vous allez être encore plus surpris par la simplicité et la puissance de Wazuh.
Première découverte des fonctionnalités Wazuh
Maintenant que nous avons nos agents qui envoient des logs de nos machines vers le wazuh-server, nous pouvons commencer à découvrir à vol d’oiseau (pas dans les détails) toutes les fonctionnalités que Wazuh peut nous proposer.
Ne vous inquiétez pas, plus tard dans de futurs posts, nous irons 1000 fois plus dans les détails.
Tout d’abord, nous allons nous diriger vers la page principale de notre Wazuh-Dashboard en appuyant simplement sur le logo en haut à droite.
J’ai entouré en rouge tous les éléments que je considère importants. Bien entendu, je ne peux pas tout montrer. De plus, je n’ai pas d’environnement Office 365 sous la main, donc nous allons nous concentrer principalement sur les fonctionnalités de base.
Tout d’abord, nous avons une grande ligne qui nous montre l’état des alertes. Ici, en un coup d’œil, nous pouvons voir l’état de notre infrastructure, si nous avons des alertes critiques, majeures ou mineures.
Ensuite, nous avons divers modules, déjà prédéfinis dans Wazuh. Par exemple, nous avons le Configuration Assessment qui est d’une grande utilité pour pouvoir renforcer la sécurité de nos machines. Lorsqu’on entre dans ce module, nous avons un score, avec les conseils du CIS (Center for Internet Security) qui nous aident à savoir si notre machine ou serveur répond aux standards de l’industrie.
Ici, par exemple, dans une installation vierge de Windows 10, nous avons un score de 29%, ce qui est CATASTROPHIQUE. Mais bon, nous ne sommes pas dans un environnement de production, donc nous allons le laisser comme ça. Si jamais le renforcement de la sécurité vous intéresse, n’hésitez pas à me contacter pour que je fasse un post.
On peut voir que des critères tels que :
- La taille du mot de passe
- La durée de vie d’un mot de passe
- Que certains services soient arrêtés (Print Spooler)
Entre autres, définissent cette note.
Passons maintenant à autre chose, parlons de la partie Vulnerability Detection. Ici, nous allons pouvoir savoir si une de nos machines est exposée à une vulnérabilité, que ce soit à cause d’un logiciel installé sur la machine ou de l’OS lui-même. Cependant, il faut activer cette fonctionnalité manuellement car elle consomme pas mal de ressources sur l’hôte et sur le serveur.
Cela était nécessaire seulement sur les anciennes versions. Pour la nouvelle version de Wazuh, le Vulnerability Detection est activé par défaut !
Une fois que nous l’aurons soit activée, soit constatée qu’elle l’est par défaut, nous allons aller dans l’onglet Vulnerability Detection :
Là, nous constatons que ma machine (Debian/Linux), fraîchement déployée, a plus de 63 vulnérabilités critiques ?! Bon, faisons comme si de rien n’était.
Ici, nous avons un Dashboard plutôt bien fait, où l’on peut voir les CVE qui affectent notre système, le top des paquets ayant le plus de vulnérabilités, entre autres.
Si nous cliquons sur l’onglet Inventory, nous avons une vue plus détaillée de ce qui concerne notre système :
Plutôt utile, n’est-ce pas ? Cela nous aidera, dans un environnement de production, à connaître la surface d’attaque de nos machines, une chose essentielle à connaître pour mieux sécuriser par la suite !
Bon, passons maintenant à quelque chose de moins passionnant, la RGPD ou GDPR en anglais. Vu que nous sommes en France, donc en Europe, c’est la réglementation que nous devons respecter si nous ne voulons pas risquer de grosses amendes ou même la prison. Wazuh nous permet de vérifier si notre infrastructure répond aux exigences de la RGPD, dans le module GDPR.
Bon, rien de très excitant ici, rien qui saute aux yeux…
Passons maintenant (c’est promis, c’est la dernière fois) à la partie Threat Hunting. C’est ici que tout se joue, c’est LA raison principale pour laquelle une organisation voudrait implémenter un SIEM.
Le Threat Hunting, pour ceux qui ne le savent pas, consiste littéralement à chasser les menaces. L’analyste SOC, armé de son fusil et de sa tenue de chasseur, va traquer les malheureux hackers. Bon, je me suis un peu emporté…
Le Threat Hunting consiste à analyser les différentes alertes que notre SIEM va nous montrer, vérifier si elles sont légitimes, et intervenir si nécessaire. Cela peut aller jusqu’à mettre en quarantaine l’endpoint concerné, analyser ce qui se passe et décider des actions à prendre. Le Threat Hunting peut sauver une entreprise d’une attaque de ransomware, voire pire !
Donc, rien à prendre à la légère. Si nous allons dans le module Threat Hunting de Wazuh, nous trouvons un très beau Dashboard qui nous montre les alertes principales que Wazuh considère comme importantes :
Bien entendu, tous les Dashboards sont personnalisables, donc encore un point positif pour Wazuh !
Dans ce genre de Dashboard, on peut voir les alertes, les connexions réussies, le top des agents ayant des alertes, entre autres…
Et ce qui est très sympa avec Wazuh, c’est qu’il fait une corrélation entre l’alerte et une règle Mitre ATT&CK, ce qui peut grandement nous aider à mieux classifier les alertes.
Conclusion
Bon, c’est fini pour aujourd’hui. Dans un prochain post, je vais vous montrer la vraie puissance de Wazuh, avec des démos et de vraies attaques. Donc, ne ratez surtout pas le prochain post !!