Thématiques principales

dimanche 15 mars 2020

Samhain

Introduction

Samhain [samhain] est un outil de control d’intégrité pour les OS ou il importe de vérifier qu'une configuration n'est pas altéré dans le temps et qu'aucune intrusion n'a été réalisé.

Pour ce faire l'outil va procéder au stockage de l'ensemble des empreintes des fichiers du système pour lesquels vous souhaitez assurer des garanties.

Pour cela il faudra configurer le fichier /etc/samhainrc avec l'ensemble des fichiers et répertoire sur lesquels opérer la surveillance.

Par défaut, cette configuration est largement déjà pertinente: surveillance des répertoires /etc, /var etc...

En pratique

Installation

Dans la pratique, Samhain est plutôt simple à utiliser:

D'abord l'installer depuis le dépôt:
 
1
$sudo apt-get install samhain

Ou depuis le targz sur le site officiel ce qui permet d avoir la derniere version:

1
$wget https://la-samhna.de/samhain/samhain-current.tar.gz

on depackage:

1
2
3
4
$gunzip /tmp/samhain-current.tar.gz
$tar -xf /tmp/samhain-current.tar
$gunzip samhain-4.4.1.tar.gz
$tar -xf samhain-4.4.1.tar

Et on build:

1
2
3
4
$cd /tmp/samhain-4.4.1
$sudo ./configure
$sudo make
$sudo make install

Et si vous souhaitez qu'un check soit fait lors des reboot:

1
$sudo make install-boot

 

Initialisation

Enfin suite à l'installation, il faut initialiser la base de données (a faire qu'une seule fois):

1
$sudo samhain -t init

 

Utilisation

Ensuite dans son utilisation on procédé a des checks réguliers:

1
$sudo samhain -t check

Et si il est nécessaire de mettre a jour la base des empreintes (suite a l'installation d'une nouvelle application), on appelle la commande update

1
$sudo samhain -t update

 

Configuration

Comme precisé dans l'introduction, la configuration (chapitre 5, [samhain]),  de samhain se réalise dans le fichier /etc/samhainrc
 
Cette configuration se realise par l'application de regles sur des repertoires ou des fichiers (attention qui peuvent etre des repertoires sous unix tout est fichier)

Les relgles s'appliquent par des instructions precisées entre []. Ces instructions peuvent etre soit definies par l'utilisateur (ce que nous ne verons pas ici) soit utilisées via un pool d'instruction et regles pre-existantes.

Par exemple:


1
2
[ReadOnly]
dir = /some/directory

La liste des instructions regles pre-existante ReadOnly, LogFiles, GrowingLogFiles, Attributes, IgnoreAll, IgnoreNone, etc... reponds deja globalement à l'ensemble des besoins pouvant être exprimés en terme de vérification d’intégrité.

Notification

Dernier point important, lors d'un check, même si celui ci est réalisé manuellement, il est important d'informer des anomalies éventuelles détectées mais aussi de les remonter auprès des systèmes d'informations en charge du monitoring.

D'une part en tant que producteur de log et l'alerte, la configuration des niveau de criticité des messages se gère dans la section [EventSeverity] du même fichier de configuration.

De même, le type de flux d'alerte peut être configurer dans ce même fichier auprès de la même section permettant de produire ces alertes sous la forme de mail (chapitre 4.4), de flux syslog (chapitre 4.11) ou de messages (chapitre 7) a destination d'un serveur distant Samhain nommé Yule.

Le propos n'est pas de rentrer dans le détails ici de cette configuration mais syslog étant un type support standard pour la gestion de messages au travers d'un SI, il n'est déconnant de se tourner vers lui pour gérer ensuite agrégation du suivi et des alertes.

 References


[samhain] https://la-samhna.de/samhain/
[simple] http://www.lestutosdenico.com/outils/samhain-multi-systeme-exploitation
[more-difficult] https://www.howtoforge.com/host-based-intrusion-detection-samhain

Aucun commentaire:

Enregistrer un commentaire