Installation de Suricata et analyse par Ossec

Plop à tous

J’ai récemment eu envie d’essayer Suricata et de le coupler avec Ossec, selon la doc le format de log de suricata ‘snort-fast’ est supporté par Ossec … dans les faits, les logs ne sont malheureusement pas reconnu :s

Il est cependant possible de les rajouter à la mains ;).

Installation de Suricata

Pour l’install de suricata sur une Debian un apt-get install suricata suffit, oinkmaster et les fichiers de conf de snort seront installé avec.

Fichier Init

Cela dit, il manque le fichier /etc/init.d/suricata dans le paquet d’install :

OinkMaster

Il faut modifier le fichier /etc/oinkmaster pour récupérer les règles de snort mise à jour :

Récupération et Mise à jour des règles :

oinkmaster -C /etc/oinkmaster.conf -o /etc/snort/rules/

Configuration de suricata

Ensuite on modifie le fichier de conf de suricata /etc/suricata/suricata-debian.yaml (à vous de choisir les fichiers à charger) :

Si vous voulez récupérer tout les fichiers disponibles, voici la commande pour créer les lignes :

Sachant que si vous prenez tout les fichiers, suricata mettra une bonne heure avant de se lancer :s, le mieux est d’optimiser le trucs, si c’est juste pour un serveur web apache, charger du ftp.rules ne sert à rien 😉

Ossec

Pour ma part, j’install Ossec dans /opt, donc mes path seront /opt/ossec, …, à vous de les changer en fonctions de votre installation.
Deux solutions sont possible ici, l’une si vous n’avez que peu de règles à rajouter, l’autre pour le cas contraire 😉

Décodeur et règles local

Ici on créer un simple décodeur (/opt/ossec/etc/local_decoder.xml) :

Et l’on mettra les règles spécifique dans /opt/ossec/rules/local_rules.xml

Décodeur et règles spécifique

Si l’on compte créer son propre « groupe » avec un fichier de règles xml propre à suricata, il vous faudra préférer cette méthode (c le mieux à faire si vous avez beaucoup de règles) :

Le décodeur (/opt/ossec/etc/local_decoder.xml) :

Votre fichier de règles (/opt/ossec/rules/suricata.xml)

Il faut désormais changer la conf de Ossec pour rajouter les détections de suricata, on ajoute dans les localfiles :

Un démarrage de suricata et d’ossec et tout devrait fonctionner 😉

A noter que les règles fournient ne sont que des exemples, et ne permettront pas de détecter tout info fournit par suricata, à vous de créer les votres en fonction de vos besoins