Wazuh - Conformité aux règles CIS
Comment vérifier en continu que les règles appliquées lors de l'hardening de l'OS n'ont pas été altérées ?
Pour le cas des règles recommandées par le CIS, wazuh les reprend toutes (/var/ossec/ruleset/sca/cis_ubuntu22-04.yml pour Ubuntu 22.04) et réalise un scan toutes les X heures. Puis il remonte les vérifications valides et non valides.
Quel module ?
Le module "Security Configuration Assessment" (SCA) permet de répondre au besoin. Ce module réalise des scans afin de détecter des erreurs de configuration, et fait des recommandations.
- Chaque agent wazuh possède sa propre base en local où il stocke l'état actuel de chaque vérification du module SCA,
- Le wazuh server maintient aussi une base SCA pour l'ensemble des agents,
- L'agent wazuh envoie au wazuh server uniquement les différences constatées entre chaque scan.
Les scans peuvent être réalisés sur différents OS.
Comment être certain que le fichier contenant les règles n'a pas été lui-même altéré ?
Wazuh le vérifie à travers 2 mécanismes :
- Integrité du fichier de règles : si le hashage du fichier a été modifié, le fichier d'origine est restauré,
- Intégrité du résultat du scan : si le hashage des databases est différent entre l'agent et le server, le wazuh server demande à l'agent de lui renvoyer le dernier scan.
Configuration
Le module SCA est activé par défaut dans la configuration /var/ossec/etc/ossec.conf :
<sca>
<enabled>yes</enabled>
<scan_on_start>yes</scan_on_start>
<interval>12h</interval>
<skip_nfs>yes</skip_nfs>
</sca>
Nous conseillons de laisser la valeur "interval" à 12H maximum.
Ici nous sommes sur une Ubuntu 22.04, les règles vérifiées correspondent à l'OS et sa version : /var/ossec/ruleset/sca/cis_ubuntu22-04.yml
Lors de l'installation de l'agent, celui-ci provisionne le bon fichier de règles (au cas où, les fichiers sont ici : /var/ossec/etc/shared/).
Pour accèder ensuite au module SCA pour les règles du CIS :
On retrouve 3 types d'alertes :
- Passed : la règle du CIS est bien appliquée,
- Failed : la règle du CIS n'est pas appliquée :
Si l'hardening de l'OS a déjà été appliqué sur le système, soit il a été altéré par un logiciel malveillant, soit pas une erreur humaine. Dans l'environnement global, vous devriez pouvoir retracer à travers les outils mis en place (auditd,siem..).
- Not Applicable : parfois certaines vérifications ne peut pas être faites, exemple ici :
On voit que la raison du "not applicable" est indiquée, dans le cas présent, ntp n'était pas installé, le fichier /etc/ntp.conf ne peut pas exister.
Pour le score indiqué, il est recommandé de s'approcher du 100% de conformité.
Aller plus loin...
Les règles du CIS couvrent des recommandations sur beaucoup de points de sécurité d'un OS. Il reste tout de même possible de créer ses propres règles.