Firmenbrief

18.10.2017

Tipps vom LIS-Service: Trick or Treat mit Samhain - intrusion detection system


Samhain ist ein irisch-keltisches Fest und wird in der Nacht zum 1. November gefeiert, ist eine der Geisternächte im Jahr und heißt auf Englisch Halloween. Passend zu diesem Termin möchten wir erläutern, was Samhain darüber hinaus für Admins bietet: Unter diesem Namen schützt auch ein äußerst hilfreiches Werkzeug vor unheimlichen IT-Vorkommnissen: Das host-basierte Intrusion Detection System Samhain dient der Sicherstellung der Integrität von Betriebssystemen und darauf gespeicherten Daten; es überwacht Änderungen am Dateisystem einzelner Computer beziehungsweise Server.

Während der Installation werden vertrauenswürdige Benutzer definiert. Dies geschieht in der Grundeinstellung root und samhain. Sie können dann weitere Benutzer als vertrauenswürdig hinzufügen. Ist die Installation abgeschlossen, wird der Ist-Zustand des Systems ermittelt. Dazu legen Sie in /var/lib/samhain/samhain_file eine Datenbank über das Dateisystem an.

Gespeichert werden die Prüfsumme des Dateiinhaltes, die Dateigröße, Zugriffsrechte, Besitzer und Gruppe, Anzahl von Hardlinks, die Nummer der Inode, und, bei Gerätedateien, die Gerätenummer.

Initialisierung
→ samhain -t init  (erstellt die Datenbank)
→ samhain -t update   Datenbank updaten (nach Änderungen am Dateisystem, update etc ...)
→ Die Datenbank sollte mit gnupg signiert werden.


Die manuelle Verifikation der System-Integrität erfolgt mit dem Befehl:

→ samhain -t check

Jedoch sollte samhain so konfiguriert sein, dass es als Deamon automatisch startet und in regelmäßigen Abständen einen Check durchführt.

Policies - wann gewarnt wird

Die folgenden Policies sind vordefiniert:
  • ReadOnly: Nur die Zeit des letzten Zugriffs darf sich ändern.
  • Prelink: Nur die Zeit des letzten Zugriffs darf sich ändern, jedoch für Programme und Bibliotheken die mit Hilfe von prekink verändert wurden, um einen schnellen Programmstart zu ermöglichen.
  • LogFiles: Alle Zeitstempel, Prüfsumme und Dateigröße dürfen sich ändern.
  • GrowingLogFiles: Sowohl Zeitstempel als auch Prüfsumme dürfen sich ändern, die Dateigröße darf sich nicht verringern, allerdings erhöhen.
  • Attributes: Nur Veränderungen von Eigentümer, Gruppe oder Zugriffsrechten werden berichtet.
  • IgnoreAll: Alle Veränderungen werden ignoriert, allerdings wird die Existenz einer Datei geprüft.
  • IgnoreNone: Alle Veränderungen einschließlich der Zugriffszeit werden berichtet.
  • User0, User1: standardmäßig auf „nichts darf sich ändern" gesetzt, sind als benutzerdefinierte Policies gedacht.
Je nach Einstellungen zum log-Verhalten von samhain werden Verstöße gegen die Regeln und andere Informationen direkt über die Konsole ausgegeben (stderr, wenn nicht als Deamon gestartet), als Email oder syslog (/var/log/samhain_log) hinterlegt.