[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ A ] [ B ] [ C ] [ D ] [ E ] [ F ] [ weiter ]

Anleitung zum Absichern von Debian
Kapitel 9 - Vor einer Komprimitierung


9.1 Aufsetzen einer Eindringlingserkennung

Debian enthält verschiedene Tools zur Erkennung von Eindringlingen, die Sie vielleicht dazu benutzen wollen, Ihr lokales System zu verteidigen (wenn Sie wirklich paranoid sind oder Ihr System wirklich kritische ist) or um andere Systeme im gleichen Netzwerk zu verteidigen.

Beachten Sie immer, dass Sie, um Ihre System-Sicherheit mit einerm dieser Tools wirklich zu verbessern, einen Alarm-und-Antwort-Mechanismus brauchen, also benutzen Sie keinen Eindringlings-Erkennung, wenn Sie niemanden akarmieren werden (d.H. verschwenden Sie nicht Ihre Zeit damit, Dinge zu konfigurieren, die Sie später nicht benutzen werden).

Die meisten Eindringlings Erkennungs Tolls werden entweder auf Syslog protokollieren oder Emails, über einen bestimmten erkannten Angriff, an den Root-User senden (die meisten können umkonfiguriert werden, um stattdessen einem anderen User Emails zu schicken). Ein Administrator muss sie passend konfigurieren, so dass falsche Positivmeldungen keinen Alarme auslösen, und so diesen Alarmen die notwendige Aufmerksamkeit geschenkt wird. Alarme können auf einen laufenden Angriff hindeuten und wären - sagen wir mal einen Tag - später nicht mehr nützlich, da der Angriff dann bereits erfolgreich beendet worden sein kann. Stellen Sie also sicher, dass es eine passende Regelung über die Behandlung von Alarmen gibt, und das technische Masnahmen zur Handhabung statt finden.

Eine Interessante Quelle für Information ist CERT's Intrusion Detection Checklist


9.1.1 Netzwerk basierende Eindringlings Erkennung

Snort ist ein flexibler Packet Schnüffler oder logger, der Angriffe durch nutzen einer Angriffs-Signatur-Bibliothek erkennt. Es erkennt eine breite Pallete von Angriffen und Tests, wie zum Beispiel Speicher-Überläufe, stealth Port scans, CGI Angriffe, SMB Tests und vieles mehr. Dies iste in Tool, das auf jedem Router installiert werden sollte, um ein Auge auf Ihrem Netzwerk zu haben. Installieren Sie es einfach mit apt-get install snort, folgen Sie den Fragen und beobachten Sie die logs.

Debians Snort kommt mit vielen eingeschalteten Sicherheits Checks, die Sie vielleicht haben möchten, jedoch sollten Sie das Setup anpassen, um bestimmte Services auf Ihrem System zu berücksichten. Sie möchten vielleicht auch zusätzliche Teste speziell für Ihre Services nutzen.

Sie können snort sowohl dazu benutzen, eine Netzwerk-Eindringlings-Erkennung für viele Hosts in Ihrem Netzwerk zu etablieren, als auch um Angriffe gegen Ihren eigenen Host zu erkennen.

Es gibt noch andere Tools, die dazu benutzt werden können, Netzwerk Angriffe zu erkennen (sogar einfacherere). Portsentry ist ein anderes interessantes Paket, dass Sie warnen kann, wenn jemand Ihre Seite scannt. Andere Tools, wie ippl oder iplogger erkennen ausserdem bestimmte IP (TCP und ICMP) Angriffe, auch wenn sie keine fortgeschrittenen Techniken zur Erkennung von Netzwerk Angriffen haben (was snort kann).

Sie können jedes dieser Tools mit dem idswakeup Programm testen. Hierbei handelt es sich um einen Falsch-Positv Generator, der NIDS mit einer Auswahl der üblichen unter Debian verfügbaren Angriffs-Signaturen alarmiert.


9.1.2 Host basierende Erkennung

Tiger ist ein bewährtes Eindringlings Erkennungs Toools, dass seit der Woody Distribution auf Debian portiert wurde. Tiger bietet Tests von allgemein üblichen Dingen, in bezug auf Einbrüche, Tests der Passwort-Stärje, Dateisystem Probleme, kommunizierende Prozesse.... Die Debian Version umfasst neue, Debian spezifische Tests: md5-Summen von vorhandenen binaries, und Test auf installierte und verwundbare Pakete. Die standard Installation lässt tiger jeden Tag einmal laufen und einen Report erstellen, der an den Superuser geschickt wird. Die erstellten Reports können Informationen zu einer geglückten Komprimitierung geben.

Protokoll-Analyse Tools, wie zum Beispiel logcheck können zusätzliche benutzt werden, wenn sie angepasst wurden, um Eindring-Versuche zu erkennen. Siehe Nutzen und anpassen von logcheck, Abschnitt 4.11.1.

Ausserdem kann jeder der Dateisystem-Integritäts-Checker (siehe Prüfen der Integrität des Dateisystems, Abschnitt 4.16.3) können sehr nützlich sein, um Anomalien in einer abgesicherten Umgebung zu erkennen. Ein erfolgreicher Eindringling wird mit höchster Sicherheit Dateien auf dem lokalen Dateisystem veröndern, um die lokalen Sicherheits Regelungen zu umgehen, Trojaner zu installieren, eigene User zu erstellen... solche Sachen können mit ihnen erkannt werden.


9.2 nützliche Kernel-Patches

FIXME: This section needs to cover how these specific patches can be installed in Debian using the kernel-2.x.x-patch-XXX packages.

Es gibt einige Kernel-Patches, die die System-Sicherheit signifikant erhöhen. Hier sind einige davon aufgezählt:


9.3 Vermeiden von Root-Kits


9.3.1 LKM - Ladbare Kernel-Module

LKM (Loadable Kernel Modules) sind Dateien, die nachladbare Teile des Kernels enthalten. Sie werden dynamisch in den Kernel geladen und führen bestimmte Aufgaben aus. Unter GNU/Linux werden sie dazu benutzt, die funktionalität des Kernels zu erweitern. Wenn Sie LKMs benutzen, geniesen Sie einige Vorteile. Wie wir gesehen haben können Sie dynamisch nachgeladen werden, ohne dass der Kernel neu compiliert werden muss, Sie können bestimmte Geräte-Treiber (oder Dateisysteme) und Treiber für andere Hardware, wie Sound- oder Netzwerkkarten, enthalten. Aber manche Cracker können LKMs für Root-Kits (knark oder adore) benutzen, um auf GNU/Linux Systemen Hintertüren zu installieren.

LKM Root-Kits können Prozesse, Dateien, Verzeichnisse und sogar Verbindungen verstecken, ohne den Quellcode irgendeines Binaries verändern zu müssen. Zum Beispiel kann ps Prozess Informationen aus /proc beziehen, ein bösartiges LKW kann den Kernel untergraben, so dass er einen bestimmten Prozess vor dem procfs veheimlicht. So kann noch nicht einmal eine selbsterstellte, unangetastete Kopie des ps Binary alle Prozess Informationen korrekt auflisten.


9.3.2 Erkennen von Root-Kits

Die Sucharbeit kann einfach und schmerzloss sein, oder schwierig und ermüdend, ganz abhängig von der Massnahme, die Sie benutzen. Es gibt zwei Verteidigungsmassnahmen zur Sicherheit bei LKMs, die proaktive, und die reaktive.


9.3.2.1 Proaktive Verteidigung

Der Vorteil dieser Verteidigung ist, dass hier verhindert wird, dass einige LKM Root-Kits dem System schaden. Die meist genutzte proaktive Verteidigung ist es, das Ziel zuerst zu erreichen, also ein LKM zu laden, das dazu da ist, das System vor Schaden durch ein bösswilliges LKM zu schützen. Eine andere Massnahme ist es, dem Kernel Fähigkeiten zu entziehen, und so das System sicherer zu machen. Zum Beispiel können Sie dem Kernel die Fähigkeit entziehen, Kernel-Module zu laden oder zu entfernen.

Sie können auf Debian Systeme einige Pakete finden, die Proaktive-Tools enthaölten:

Wenn Sie diese vielen Möglichkeiten auf Ihrem GNU/Linux System nicht brauche, möchten Sie vielleicht die Unterstützung für ladbare Module während der Kernel Konfiguration abschalten. So werden LKM Root-Kits vermieden, aber Sie können nicht mehr modulare Kernel benutzen. Beachten Sie auch, dass durchd as abschalten der nachladbaren Module der Kernel überladen werden kann. Manchmal ist dies nicht notwendig.

Um die Unterstützung für nachladbare Module abzuschalten, setzen Sie einfach CONFIG_MODULES=n in .config.


9.3.2.2 Reaktive Verteidigung

Der Vorteil reaktiver Verteidigung ist, dass is die System Resourcen weniger überlädt. Sie funktioniert durch vergleichen Tabelle für System-Aufrufe mit einer bekanntermassen sauberen Kopie in einer Date (System.map). Der augenscheinliche Nachteil ist, dass der Systemadministrator erst davon erfährt, wenn das System bereits kompromitiert wurde.

Die Entdeckung von Root-Kits vollbringt unter Debian chkrootkit. Das Programm Chkrootkit prüft Anzeichen von Root-Kits auf dem lokalen System, und stellt fest ob der Computer mit einem Root-Kit infiziert ist.

Sie können auch KSTAT (Kernel Security Therapy Anti Trolls) von S0ftproject group benutzen. KSTAT prüft den Bereich des Kernel-Speichers (/dev/kmem) auf Informationen über den Ziel Host, einschliesslich der Installation von ladbaren Kernel-Modulen.

FIXME: Add info on how to compile the kernel w/o lkm support?


9.4 geniale/paranoide Ideen — was Sie tun können

Dies ist wahrscheinlich der instabilste und lustigste Abschnitt, da ich hoffe, dass manche der "Wow, das klingt verrückt" Ideen realisiert werden. Nachfolgend einer Liste von ein paar Ideen — abhängig von Ihrem Standpunkt aus können Sie sie für genial, paranoid, verrückt oder sicher halten — um Ihre Sicherheit schnell zu erhöhen. Unbeschädigt werden Sie sie aber nicht überstehen.


9.4.1 Aufstellen eines Honigtopfes (honeypot)

FIXME: More Content specific to Debian needed.

Wenn Sie wollen (und es implementieren können und ihm Zeit widmen können) können Sie einen vollen Honeypot mit einem Debian GNU/Linux System aufsetzen. Sie haben alle benötigten Werkzeuge, um einen allumfassendes Honeynet aufzubauen (d.h. das Netzwerk, der Honeypot ist lediglich ein falsche Server): Die Firewall, das Netzwerk Eindringlings-Erkennungssystem, und den falschen Server. Seien Sie aber vorsichtig, Sie müssen ziemlich sicher sein, dass Sie rechtzeitig alarmiert werden (siehe Die Wichtigkeit von Logs und Alarmen, Abschnitt 4.11), so dass sie geeignete Massnahmen einleiten können und die Komprimitierung sobald Sie genug gesehen haben beenden können.

Sie können mehr über das aufstellen von Honeypots in Lanze Spitzners exzellentem Artikel To Build a Honeypot (aus der Know your Enemy Serie) oder David Raikow's Building your own honeypot lesen. Ausserdem ist das Honeynet Project dem Aufstellen von Honeypots und der Analyse von Angriffen auf Sie gewidmet. Dort gibt es wertvolle Informationen über das aufsetzen von Honeypots und die Analyse der Resultate eines Angriffs (sehen Sie sich den Contest an).


[ zurück ] [ Inhalt ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ A ] [ B ] [ C ] [ D ] [ E ] [ F ] [ weiter ]

Anleitung zum Absichern von Debian

2.5 (beta) 5 marzo 2004Sat, 17 Aug 2002 12:23:36 +0200

Javier Fernández-Sanguino Peña jfs@computer.org