Ossec

Dernière mise à jour : 07/01/2020

OSSEC est un HIDS de niveau système, qui s’installe sur quasiment n’importe quelle distribution Linux du moment qu’un administrateur dispose d’un compilateur C sur la machine adéquate. Cet HIDS peut s’installer seul (il ne vérifie que ce qui se passe sur la machine) ou en tant que serveur/agent (c’est-à-dire qu’on l’installe sur une machine centrale ou serveur, qui contrôle tout un réseau de machines sur lesquelles on installe des agents ossec). Je décrirai ici l’installation dite « locale », à savoir qu’on ne surveille que son propre serveur.

Pré-requis

Il est possible que certains éléments ne soient pas installés sur le système de base. Pour Ubuntu 16 (LTS), il faut :

apt install libpcre2-dev (à compléter)

Procédure

D’abord en téléchargeant la dernière version, par exemple dans votre répertoire /home (ou tout répertoire sur lequel vous avez un droit root, car il est impértif d’installer cet utilitaire en tant qu’administrateur du système).

$ git clone https://github.com/ossec/ossec-hids 
$ cd ossec-hids
$ ./install.sh

Vérifiez qu’il s’agit bien de la dernière version. Et sinon c’est tout ce qu’il y a à faire, à la réserve près de répondre aux questions de l’installateur. Cela suffira pour un serveur web isolé. Il est possible d’avoir aussi un serveur surveillant plusieurs autres (appelés agents)

Installation locale

Choisir le type d’installation et la langue
1- Choisir le type d'installation (local) 
...
** Za instalaciju na srpskom, izaberi [sr].
** Türkçe kurulum için seçin [tr].
(en/br/cn/de/el/es/fr/it/jp/pl/ru/sr/tr) [en]: fr
1- Quel type d'installation voulez-vous (serveur, agent, local ou aide) ? local
- Installation en local choisie.
Définition de l’environnement d’installation
2- Définition de l'environnement d'installation. 
- Choisissez votre répertoire d'installation de OSSEC HIDS
[/var/ossec]: (garder la valeur par défaut comme indiqué)
- L'installation sera faite sur /var/ossec .
Configuration de OSSEC HIDS
3- Configuration de OSSEC HIDS. 
3.1- Voulez-vous une alerte par email ? (o/n) [o]: n
--- Alerte par email désactivée.
3.2- Voulez-vous démarrer le démon de vérification d'intégrité ? (o/n) [o]: o
- Lancement de syscheck (démon de vérification d'intégrité).
3.3- Voulez-vous démarrer le moteur de détection de rootkit ? (o/n) [o]: o
- Lancement de rootcheck (détection de rootkit).
3.4- La réponse active vous permet d’exécuter des
commandes spécifiques en fonction d'évènement. Par exemple,
vous pouvez bloquer une adresse IP ou interdire l'accès à
un utilisateur spécifique.
Plus d'information sur : http://www.ossec.net/en/manual.html#active-response
- voulez-vous démarrer la réponse active ? (o/n) [o]: o
- Réponse active activée.
- Par défaut, nous pouvons activer le contrôle d'hôte
et le pare-feu (firewall-drop). Le premier ajoute
un hôte dans /etc/hosts.deny et le second bloquera
l'hôte dans iptables (sous linux) ou dans ipfilter
(sous Solaris, FreeBSD ou NetSBD).
- Ils peuvent aussi être utilisés pour arrêter les scans
en force brute de SSHD, les scans de ports ou d'autres
formes d'attaques. Vous pouvez aussi les bloquer par
rapport à des évènements snort, par exemple.
- Voulez-vous activer la réponse pare-feu (firewall-drop) ? (o/n) [o]: o
- pare-feu (firewall-drop) activé (local) pour les levels >= 6
- liste blanche (white list) par défaut pour la réponse active :
- 212.27.54.252
- 212.27.53.252
- Voulez-vous d'autres adresses IP dans votre liste (white list) ? (o/n)? [n]: o
- IPs (séparées par des espaces) : votre-ip

Puis lancez ossec via la commande indiquée en résultat /var/ossec/bin/ossec-control start, le programme sera également lancé à chaque redémarrage du serveur.

Une précaution importante à prendre

Okay, ossec est simple à installer, mais si vous voules qu’il serve à quelque chose, il faut impérativement :

  • Autoriser la réponse active lors de l’installation (ou du paramétrage) : ossec bloquera (temporairement) les adresses IP causant des problèmes.
  • Mettre les bons répertoires de logs dans le fichier de configuration.

Cet outil se base sur les logs pour trouver des anomalies : il faut donc inclure a minima les logs du systèmes et les logs de vos serveurs web !