Mehr Sicherheit für Hadoop mit Host Intrusion Detection

Originalartikel von Vic Hargrave, Solution Project Lead

Im Laufe der Jahre hat die Entwickler-Community immer wieder Hadoop und Hbase mit neuer Funktionalität zur Verbesserung der Sicherheit versorgt. Dazu gehören Kerberos Benutzerauthentifizierung, verschlüsselte Datenübermittlung zwischen den Knoten eines Clusters und HDFS-Dateiverschlüsselung. Auch Trend Micro hat einige Sicherheitsfunktionen beigetragen.
All diese Sicherheitsmechanismen sind in erster Linie auf den Schutz der Hadoop-Daten ausgerichtet. Doch benötigen IT-Mitarbeiter auch Einblicke in Sicherheits-Events innerhalb eines Hadoop-Clusters. Dafür ist ein Host Intrusion Detection System (HIDS) gut geeignet. Trend Micro hat an der Verbesserung der Sicherheit für Big Data mithilfe von OSSEC gearbeitet. OSSEC ist Trend Micros quelloffenes HIDS, das Hadoop und HBase Sicherheits-Monitoring liefert.

Überblick über OSSEC

OSSEC bringt einige wichtige Sicherheitsfunktionen mit, wie etwa File Integrity Checking, Log-Analysen und Generierung von Alerts. Die Software beruht auf einer Agent/Server-Architektur. Das bedeutet, dass Agenten das Handling der Monitoring-Logs, Dateien und Registry (auf Windows-Systemen) übernehmen und dann die relevanten Logs verschlüsselt über UDP an den Server zurückschicken. Das Eindringen in Agentensysteme wird normalerweise über Dateiänderungen oder aufgezeichnete Sicherheitsvorfälle festgestellt.

Bild 1. Sichern von Hadoop mit OSSEC

(Quelle: http://vichargrave.com/securing-hadoop-with-ossec/)

Auf dem Server werden die Logs mit Decodern geparst und mit Regeln, die Sicherheits-Alerts erzeugen, interpretiert. OSSEC bringt eine Vielzahl an Decodern und Regeln mit, die eine breite Palette von Systemen und Vorfällen unterstützen. Auch lässt sich diese Auswahl mit eigenen Decodern und Sicherheits-Alert-Regeln erweitern.

 

Hadoop File Integrity Checking

Hadoop- und HBase-Systeme nutzen für ihre Arbeit viele Konfigurations- und Java-Dateien. Nicht autorisierte Änderungen an den Dateien können sich auf das gesamte Cluster auswirken. Dies gilt insbesondere für die HDFS Namens-Knoten in einem Hadoop-System und HMaster-Knoten in einem HBase-System. Ersterer kontrolliert HDFS-Operationen und letzterer ist in den I/O zwischen HMaster und Regions-Server involviert.

OSSEC kann Änderungen an diesen wichtigen Hadoop-Dateien aufdecken. Wird ein OSSEC-Agent gestartet, so scannt er rekursiv nutzerspezifische Verzeichnisse und berechnet MD5- und SHA1-Hash-Werte für jede gefundene Datei. Die Dateinamen und Hashes werden in einer Datenbank auf dem OSSEC-Server gespeichert. Der Agent wiederholt diesen Vorgang in vom Nutzer angegebenen Intervallen (üblicherweise alle paar Stunden). Erhält der Server einen Hash-Wert für eine bestimmte Datei, der sich von dem gespeicherten unterscheidet, so generiert er einen Sicherheits-Alert. Der OSSEC-Server zeichnet jeden Sicherheits-Alert in eigenen Alert-Logdateien auf.

Üblicherweise befinden sich die Konfigurationsdateien für Hadoop und Hbase im /etc-Verzeichnis und die Java-Dateien liegen in /usr/bin und /usr/sbin. OSSEC ist per Design darauf ausgerichtet, File Integrity Checks für alle Dateien in diesen Verzeichnissen durchzuführen. Doch werden sie in anderen Verzeichnissen vorgehalten, so kann die Software die Dateien auch dort prüfen, wenn eine entsprechende Änderung in der Agenten-Konfigurationsdatei ossec.conf vorgenommen wird.

Ein weiterer Beitrag stellt dar, wie diese Tools dafür verwendet werden können, um potenzielle Einbrüche in die Hadoop/Hbase-Systeme aufzudecken und grafisch darzustellen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*