Red Hat Enterprise Linux 3: Sicherheitshandbuch | ||
---|---|---|
Zurück | Kapitel 9. Intrusion Detection | Nach vorne |
Ein host-basiertes IDS analysiert verschiedene Gebiete zur Feststellung von Missbrauch (bösartige oder missbräuchliche Aktivitäten innerhalb des Netzwerks) oder Einbruch (von außen). Host-basierte IDS konsultieren verschiedene Arten von Log-Dateien (Kernel, System, Server, Netzwerk, Firewall und viele mehr), und vergleichen diese Logs mit einer internen Datenbank, die häufige Signaturen bekannter Attacken enthält. Host-basierte IDS für UNIX und Linux machen starken Gebrauch von syslog und dessen Fähigkeit, geloggte Vorkommnisse je nach Schwere einzuteilen (z.B. geringfügige Drucker-Nachrichten im Vergleich zu wichtigen Kernelwarnungen). Die host-basierten IDS filtern Logs (die im Falle einiger Netzwerk- und Kernel-Event-Logs ziemlich detailliert sein können), analysieren diese, versehen die abweichenden Nachrichten mit einem eigenen Kennzeichen je nach Schwere des Vorfalls, und sammeln diese in einem bestimmten Log für die Analyse durch den Administrator.
Host-basierte IDS können auch die Datenintegrität wichtiger Dateien und Executables prüfen. Eine Datenbank mit wichtigen Dateien (und allen anderen Dateien, die Sie hinzufügen möchten) wird geprüft, und eine Prüfsumme jeder Datei über ein Programm wie md5sum (128-bit Algorithmus) oder sha1sum (160-bit Algorithmus) erstellt. Die host-basierte IDS speichert diese Summen in einer Nur-Textdatei und vergleicht in periodischen Abständen die Prüfsummen mit den Werten in der Textdatei. Stimmen die Prüfsummen der Datei nicht überein, warnt das IDS den Administrator per E-Mail oder Pager. Dieser Vorgang wird von Tripwire verwendet, der in Abschnitt 9.2.1 beschrieben wird.
Tripwire ist das beliebteste host-basierte IDS für Linux. Tripwire, Inc., die Entwickler von Tripwire, haben vor Kurzem den Software-Quellcode für die Linux-Version geöffnet und unter der GNU General Public License lizenziert. Tripwire ist unter http://www.tripwire.org/ erhältlich.
![]() | Hinweis |
---|---|
Tripwire wird nicht mit Red Hat Enterprise Linux ausgeliefert und wird nicht unterstützt. Es wurde in diesem Handbuch als Referenz für Benutzer, die Interesse an der Verwendung dieses Tools haben, gegeben. |
Der RPM Paket Manager (RPM) ist ein weiteres Programm, das als host-basiertes IDS verwendet werden kann. RPM enthält verschiedene Optionen für das Abfragen von Paketen und derem Inhalt. Diese Verifizierungsoptionen können von unschätzbarem Wert für einen Administrator sein, der im Verdacht hat, dass wichtige Systemdateien und Executables verändert wurden.
Im folgenden finden Sie eine Liste einiger Optionen für den RPM, mit denen Sie die Dateiintegrität auf einem Red Hat Enterprise Linux-System prüfen können. Weitere Informationen über die Verwendung von RPM finden Sie im Red Hat Enterprise Linux Handbuch zur System-Administration.
![]() | Wichtig | |
---|---|---|
Einige der Befehle in dieser Liste erfordern das Importieren des Red Hat GPG öffentlichen Schlüssels in Ihren RPM-Schlüsselring. Dieser Schlüssel verifiziert, dass die auf Ihrem System installierten Pakete eine Paketsignatur von Red Hat enthalten, die sicherstellt, dass Ihre Pakete von Red Hat stammen. Der Schlüssel kann mit dem folgenden Befehl importiert werden (ersetzen Sie <version> durch die Version der RPM, die auf Ihrem System installiert sind):
|
Die Option -V verifiziert die Dateien im installierten Paket mit dem Namen package_name. Wird keine Ausgabe ausgegeben und das Programm beendet, bedeutet dies, dass keine der Dateien seit dem letzten Update der RPM-Datenbank in irgendeiner Weise geändert wurden. Wird ein Fehler wie z.B. folgender angezeigt,
S.5....T c /bin/ps |
dann wurde die Datei verändert und Sie sollten überprüfen, ob Sie die Datei behalten wollen (wie z.B. bei geänderten Konfigurationsdateien in /etc/) oder diese Datei löschen und das Paket, das die Datei enthielt, neu installieren möchten. In der folgenden Liste werden die Elemente der 8-Zeichen-Strings definiert (S.5....T im Beispiel oben), die einen Verifizierungsfehler melden.
. — Der Test hat diese Phase der Verifizierung bestanden
? — Es wurde eine Datei gefunden, die nicht gelesen werden konnte. Dies ist wahrscheinlich ein Problem der Dateiberechtigungen
S — Es wurde eine Datei gefunden, die kleiner oder größer als die ursprünglich auf dem System installierte Datei ist
5 — Es wurde eine Datei gefunden, deren md5-Prüfsumme nicht mit der ursprünglichen Prüfsumme dieser Datei übereinstimmt
M — Es wurde ein Fehler in der Dateiberechtigung oder mit dem Typ der Datei gefunden
D — Es wurde ein Übereinstimmungsfehler in der Major/Minor-Nummer der Gerätedateien gefunden
L — Es wurde ein symbolischer Link gefunden, der zu einem anderen Dateipfad weist
U — Es wurde eine Datei gefunden, deren Besitzer geändert wurde
G — Es wurde eine Datei gefunden, deren Gruppenrechte geändert wurden
T — Es wurden mtime Verifizierungsfehler in der Datei gefunden
Die Option -Va verifiziert alle installierten Pakete und findet jegliche Fehler in deren Verifizierungstests (fast genauso wie die Option -V, jedoch genauer in der Ausgabe, da jedes installierte Paket verifiziert wird).
Die Option -Vf verifiziert individuelle Dateien in einem installierten Paket. Dies kann sehr hilfreich sein, wenn Sie eine schnelle Verifikation einer verdächtigen Datei durchführen wollen.
Die Option -K ist hilfreich für das Prüfen der md5-Prüfsumme und der GPG-Signatur einer RPM-Paket-Datei. Dies ist sinnvoll, wenn Sie feststellen wollen, ob ein Paket, dass Sie installieren, von Red Hat oder einer anderen Organisation, deren GPG-Schlüssel Sie in Ihrem Schlüsselring haben, signiert ist. Wurde ein Paket nicht ordnungsgemäß signiert, wird eine Fehlermeldung wie folgende ausgegeben:
application-1.0.i386.rpm (SHA1) DSA sha1 md5 (GPG) NOT OK (MISSING KEYS: GPG#897da07a) |
Seien Sie vorsichtig, wenn Sie unsignierte Pakete installieren, da diese nicht von Red Hat, Inc. anerkannt sind und bösartigen Code enthalten können.
RPM kann ein leistungstarkes Tool sein, wie durch die vielen Verifizierungstools für installierte Pakete und RPM-Paket-Dateien. Es wird dringend empfohlen, dass Sie ein Backup des Inhalts Ihres RPM-Datenbank-Verzeichnisses (/var/lib/rpm/) auf CD-ROM etc. durchführen, nachdem Sie Red Hat Enterprise Linux installiert haben. Hierdurch können Sie sicher Dateien und Pakete gegen diese Datenbank verifizieren, anstelle die Datenbank auf dem System zu verwenden, da bösartige Benutzer die Datenbank korrumpieren und dadurch Ihre Ergebnisse beeinflussen können.
Im folgenden werden einige andere, beliebte host-basierte IDS beschrieben. Bitte lesen Sie die Webseiten der jeweiligen Tools für weitere Informationen zu Installation und Konfiguration in Ihrer Umgebung.
![]() | Hinweis |
---|---|
Diese Applikationen werden nicht mit Red Hat Enterprise Linux ausgeliefert und werden nicht unterstützt. Sie werden in diesem Handbuch als Referenz für Benutzer, die Interesse an der Evaluation dieser Tools haben, gegeben. |
SWATCH http://www.stanford.edu/~atkins/swatch/ — Der Simple WATCHer (SWATCH) verwendet von syslog generierte Logdateien zur Warnung vor Anomalien basierend auf den Benutzerkonfigurationsdateien. SWATCH wurde entworfen, um jedes Ereignis, das der Benutzer zur Konfigurationsdatei hinzufügen will, aufzuzeichnen. Es wurde jedoch weitestgehend als host-basiertes IDS übernommen.
LIDS http://www.lids.org/ — Das Linux Intrusion Detection System (LIDS) ist ein Kernel-Patch und ein Administrationstool, das auch Dateiänderungen über Zugangskontrolllisten (ACLs) kontrolliert und Prozesse und Dateien, selbst vom Root-Benutzer, schützt.
Zurück | Zum Anfang | Nach vorne |
Intrusion Detection | Nach oben | Netzwerk-basierte IDS |