« LINUX:Wazuh: HIDS » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(26 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 23 : | Ligne 23 : | ||
[[FILE:LINUX: | [[FILE:LINUX:Wazuh.1.pdf|800px|center]] | ||
Ligne 31 : | Ligne 31 : | ||
[[FILE:LINUX: | [[FILE:LINUX:Wazuh.2.pdf|800px|center]] | ||
Ligne 49 : | Ligne 49 : | ||
[wazuh] | [wazuh] | ||
gpgcheck=1 | gpgcheck=1 | ||
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpgkey=<nowiki>https://packages.wazuh.com/key/GPG-KEY-WAZUH</nowiki> | ||
enabled=1 | enabled=1 | ||
name=EL-$releasever - Wazuh | name=EL-$releasever - Wazuh | ||
baseurl=https://packages.wazuh.com/4.x/yum/ | baseurl=<nowiki>https://packages.wazuh.com/4.x/yum/</nowiki> | ||
protect=1 | protect=1 | ||
---- | ---- | ||
Ligne 71 : | Ligne 71 : | ||
=Configurer le mur de feu ou FireWall= | =Configurer le mur de feu ou FireWall= | ||
Comme des échanges se font via le réseau entre le serveur et les agents, il faut ajouter deux règles au FireWall. | Comme des échanges se font via le réseau entre le serveur et les agents, il faut ajouter deux règles au FireWall dans le fichier "/etc/sysconfig/iptables". | ||
* Voici ces règles pour IPTABLES à mettre sur le serveur: | * Voici ces règles pour IPTABLES à mettre sur le serveur: | ||
---- | ---- | ||
-A INPUT -p tcp -m tcp --dport 1514 -s 192.168.1.0/24 -j ACCEPT | -A INPUT -p tcp -m tcp --dport 1514 -s 192.168.1.0/24 -m conntrack --ctstate NEW -j ACCEPT | ||
-A INPUT -p tcp -m tcp --dport 1515 -s 192.168.1.0/24 -j ACCEPT | -A INPUT -p tcp -m tcp --dport 1515 -s 192.168.1.0/24 -m conntrack --ctstate NEW -j ACCEPT | ||
---- | ---- | ||
Ici on ouvre l'accès à tous le LAN local. On peux être plus restrictif: | Ici on ouvre l'accès à tous le LAN local. On peux être plus restrictif: | ||
Ligne 122 : | Ligne 122 : | ||
</alerts> | </alerts> | ||
---- | ---- | ||
On élimine le bloc concernant l'option "cluster". | On élimine le bloc concernant l'option "cluster". | ||
---- | ---- | ||
Ligne 209 : | Ligne 200 : | ||
Pour une question de clarté, je ne reprend que l'option concernée située dans ses blocs parents. | Pour une question de clarté, je ne reprend que l'option concernée située dans ses blocs parents. | ||
On garde la définition de cette commande. | On garde la définition de cette commande. | ||
---- | ---- | ||
Ligne 222 : | Ligne 208 : | ||
</command> | </command> | ||
---- | ---- | ||
La définition de cette commande est nécessaire. Plus bas, nous verrons comment mettre à jour dynamiquement, automatiquement la configuration des agents distants grâce à la configuration '''"Shared"'''. Ce changement distant de la configuration nécessite que le service de l'agent distant redémarre. Ce bloc défini quel quel exécutable utiliser; ces derniers se trouvent dans le répertoire "/var/ossec/active-response/bin". | |||
Nous gardons également celle que nous utiliserons par la suite dans le cadre de la réaction à une tentative d'intrusion. | |||
---- | ---- | ||
<command> | <command> | ||
Ligne 231 : | Ligne 220 : | ||
---- | ---- | ||
Les autres "command" peuvent être éliminées. | Les autres "command" peuvent être éliminées. | ||
Ligne 260 : | Ligne 241 : | ||
<protocol>tcp</protocol> | <protocol>tcp</protocol> | ||
</server> | </server> | ||
<config-profile>'''fedora, | <config-profile>'''fedora, fedora40'''</config-profile> | ||
<notify_time>10</notify_time> | <notify_time>10</notify_time> | ||
<time-reconnect>60</time-reconnect> | <time-reconnect>60</time-reconnect> | ||
Ligne 269 : | Ligne 250 : | ||
---- | ---- | ||
Au passage, remarquons que l'installation a reconnu le nom de notre distribution. | Au passage, remarquons que l'installation a reconnu le nom de notre distribution. | ||
Le fichier de configuration "/var/ossec/etc/internal_options.conf" déjà évoqué sur le serveur, existe aussi sur l'agent distant (machines "B" et suivantes). Il y a deux options qu'il est utile d'activer. | |||
Ces paramètres sont à ajouter dans le fichier local "'''/var/ossec/etc/local_internal_options.conf'''". S'il n'existe pas, on le crée. | |||
---- | |||
wazuh_command.remote_commands=1 | |||
logcollector.remote_commands=1 | |||
---- | |||
Ligne 298 : | Ligne 287 : | ||
==Remarque== | ==Remarque== | ||
On ne touche pas au reste. Sur le site Web de Wazuh, la documentation vous aidera pour aller plus loin. De nombreuses sections peuvent être éliminées, activées ou désactivées en fonction de vos préférences. | On ne touche pas au reste. Sur le site Web de Wazuh, la documentation vous aidera pour aller plus loin. De nombreuses sections peuvent être éliminées, activées ou désactivées en fonction de vos préférences. | ||
Ligne 405 : | Ligne 305 : | ||
systemctl restart wazuh-agent | systemctl restart wazuh-agent | ||
Dès que l'agent sera lancé, il essaye de se connecter au serveur et si c'est la première fois, il y a échange de clés entre eux via le port TCP 1515 afin que l'agent soit reconnu par la suite. | Dès que l'agent sera lancé, il essaye de se connecter au serveur et si c'est la première fois, il y a échange de clés entre eux via le port TCP 1515 afin que l'agent soit reconnu par la suite. | ||
=[[LINUX:Wazuh-Activation des réactions à une tentative d'intrusion|Activation des réactions à une tentative d'intrusion]]= | |||
Le but d'un HIDS est de détecter des actions malveillante. En fonction du type d'attaque, il est primordial de réagir pour la contrer. Le type d'action présentée consiste à ajouter une règle dans le firewall qui exclu l'accès à cet personne via son adresse IP et ceci pendant un certain temps. Nous utilisons IPTABLES comme firewall. | |||
Ligne 425 : | Ligne 329 : | ||
=[[LINUX:Wazuh | =[[LINUX:Wazuh-Décodeurs et Règles|Analyse: décodeurs et règles]]= | ||
Le serveur manager de Wazuh récolte les journaux auprès des agents. Ces journaux sont ensuite analysés. Une première phase consiste à décoder le journal pour y repérer des informations utiles. Sur cette base, un ensemble de règles analysent cette information prédigérée pour au final émettre un alarme graduée de 0 à 16, le niveau 0 étant l’absence d'alarme. | Le serveur manager de Wazuh récolte les journaux auprès des agents. Ces journaux sont ensuite analysés. Une première phase consiste à décoder le journal pour y repérer des informations utiles. Sur cette base, un ensemble de règles analysent cette information prédigérée pour au final émettre un alarme graduée de 0 à 16, le niveau 0 étant l’absence d'alarme. | ||
=[[LINUX:Wazuh-Statistiques|Statistiques]]= | |||
Au fur et à mesure, les attaques se diversifient et s'accumulent. A partir des adresses IP, on peut connaitre le pays d'origine et de là établir des statistiques. | |||
=[[LINUX:Wazuh-Actions préventives|Actions préventives]]= | |||
Jusqu'ici nous avons traité de l'aspect des actions immédiates à toute attaque. Wazuh dispose de divers autres modules ayant une action préventives. Ils tentent à repérer des problèmes potentiels de sécurité afin que nous puissions combler ces trous de sécurité. | |||
=[[LINUX:Wazuh-API|API]]= | |||
Wazuh dispose d'un interface de type HTTP qui permet d'interagir avec Wazuh Manager. | |||
=[[LINUX:Wazuh-WUI|Interface Utilisateur Web (WUI)]]= | |||
Wazuh dispose d'un outil additionnel sous forme d'interface utilisateur Web. Il permet de consulter les résultats des diverses analyses effectuées accompagnées de nombreux graphiques, d'avoir accès à la configuration,... | |||
Les alertes sont regroupées par jour et les graphiques qui en découlent sont présentés sous forme chronologiques. | |||