original in en Georges Tarbouriech
en to de Katja Socher
Georges ist ein langj�hriger Unixbenutzer (kommerzielles und freies). Er ist
sehr interessiert an freien Sicherheitswerkzeugen und wei� wirklich ihre hohe
Qualit�t zu sch�tzen.
Sicherheit war immer eines der Hauptanliegen der Systemadministratoren.
Jedoch wurde durch die Internet "explosion" das Risiko einer St�rung sogar noch
gr��er. Statistisch gesehen w�chst, wenn die Zahl der mit dem Internet verbundenen Benutzer steigt,
die Zahl der Cracker mit derselben Wachstumsrate. Dementsprechend wuchs
die Entwicklung von Sicherheitssoftware exponentiell. Wiedereinmal Dank an die
freie Softwaregemeinde, da sie uns mit den besten Werkzeugen, die jemals gesehen
wurden, versorgt hat und mit einer Menge Dokumentation.
Du wirst viele interessante Links im Refernzabschnitt am Ende des Artikels
finden. Offensichtlich kann das, was wir hier erw�hnen, nicht ersch�pfend sein.
Ich pr�sentiere nur eine Auswahl guter Werkzeuge.
Dieser Artikel ist sowohl f�r private Benutzer als auch f�r Systemadministratoren
gedacht, da einige Werkzeuge f�r den Schutz von Hosts und andere f�r die
Verbesserung der Netzwerksicherheit entwickelt wurden.
Die meisten dieser Werkzeuge laufen auf vielen Unixsystemen (wenn nicht allen),
egal ob diese Unixsysteme nun kommerziell oder frei sind. Und schlie�lich, dieser
Artikel ist kein "Wie sichert man sein Netzwerk oder seine Maschine", sondern
eine Darstellung von verschiedenen Werkzeugen, die du benutzen kannst (mu�t), um
die Sicherheit eines Netzwerkes oder einer Maschine zu verbessern.
La�t uns diesen Abschnitt "Werkzeuge f�r whitehats, um redhat
vor blackhats zu sch�tzen" nennen :-) Die meisten Linuxdistributionen (nicht nur
RedHat!) enthalten eine ganze Menge an guten Sicherheitswerkzeugen. Sie
k�nnen benutzt werden, um deinen Rechner sicherer zu machen.
Unter ihnen k�nnen wir TCPWrapper, PAM (Pluggable Authentication
Modules), shadow utilities... nennen. Da sie Teil von Distributionen sind,
findest du eine Menge �ber sie zu lesen: HOWTO, man pages, weshalb wir nicht
zuviel Zeit darauf verwenden werden.
La�t uns mit den shadow utils beginnen. Um es kurz zu machen,
sie erlauben die Pa�wortverschl�sselung. Die /etc/passwd Datei wird durch
/etc/shadow ersetzt.
Etwas sorgf�ltiger ausgearbeitet ist PAM. Wie der Name sagt,
ist es eine weitere Autentifizierungsmethode. Es wird daf�r benutzt, den Zugriff
auf Dienste zu konfigurieren. Eine Menge Restriktionen k�nnen von einigen
Konfigurationsdateien aus definiert werden, so da� die Administration leichter
wird. Normalerweise befinden sich diese Dateien im /etc/pam.d Verzeichnis.
TCPWrapper, es ist ausreichend zu sagen, da� es den Zugriff auf
einen Dienst durch die IP Adresse oder den Hostnamen beschr�nkt. Zugriffe k�nnen
erlaubt oder zur�ckgewiesen werden durch zwei Dateien: /etc/hosts.allow und
/etc/hosts.deny.
TCPWrapper kann auf zwei Arten konfiguriert werden: entweder durch verschieben der
Deamons oder Ver�ndern der Datei /etc/inetd.conf . Wenn TCPWrapper kein Teil
deines Unixsystems ist, kannst du ihn �ber ftp://ftp.porcupine.org/pub/security
bekommen
Und jetzt verstehst du, warum wir nicht viel �ber die oben erw�hnten Werkzeuge
sagten: ein einziges Werkzeug kann all das f�r dich verwalten, w�hrend wir es
dir beibringen. Bastille-Linux.
Wenn du nur ein Werkzeug installierst, das ist es! Es ist (noch) nicht Teil der
normalen Linuxdistributionen, aber man kann es von http://bastille-linux.sourceforge.net
bekommen
Wir werden nichts �ber Bastille-Linux sagen!!! Es ist �berfl�ssig, da es einen
ausgezeichneten Artikel dar�ber in der
Septemberausgabe von LinuxFocus von meinem Freund Frédéric gibt:
er erkl�rt dir alles. Wenn du ihn noch nicht gelesen hast, sieh ihn dir
hier an.
La�t uns hinzuf�gen, da� Bastille-Linux ein Werkzeug ist, ohne da� man nicht
leben kann!
Ein weiteres allgemeines Werkzeug, um die Sicherheit zu erh�hen, ist
xinetd. Es ist verf�gbar auf http://www.xinetd.org. Tut mir leid, aber wir
werden auch dar�ber nicht reden!!! Wieder einmal hat Frédéric
in der Novemberausgabe von LinuxFocus ganze Arbeit geleistet. Du kannst ihn
hier lesen.
Das war der FredFocusabschnitt ...
Mach dir keine Sorgen �ber das Geld Fred, ich kann warten...
Jetzt la�t uns einige spezielle Werkzeuge anschauen.
Freie Unixsysteme kommen mit Software, die Maschine in eine
Firewall verwandelt. Der 2.2 Kernel enth�lt
ipchains. Davor der 2.0 Kernel benutzte
ipfwadm. Um ipchains oder ipfwadm zum Laufen zu bringen, mu�
der Kernel mit den richtigen Optionen kompiliert werden. Eine Menge an
Dokumentation dar�ber ist durch HOWTOS verf�gbar, deshalb werden wir wieder
nicht mehr dazu sagen.
Kurz, la�t uns sagen, eine Firewall ist ein Paketfilterungswerkzeug. Der
wichtigste Teil der Arbeit betrifft die Konfiguration einer Firewall. Das
bedeutet, da� eine schlecht konfigurierte Firewall sehr gef�hrlich werden kann.
Trotzdem sind Firewalls sehr wichtig.
Zum Beispiel bietet Bastille-Linux eine Firewall, die auf
ipchains basiert.
Wenn du zu http://www.linuxapps.com gehst und
"firewall" in das Suchfeld eintippst, wirst du mindestens 40 Antworten bekommen.
Viele von ihnen sind GUIs f�r die ipchains oder ipfwadm Administration. Einige
andere sind wirklich gro�e Werkzeuge mit Tonnen an Features, wie z.B. T.REX,
verf�gbar unter http://www.opensourcefirewall.com.
Wiederum, la� dich nicht reinlegen: eine Firewall ist obligatorisch auf einem
Netzwerk, aber die Netzwerksicherheit kann nicht NUR von ihr abh�ngen. Ein
Cracker bricht vielleicht innerhalb von 15 Minuten ein. Du bist vorgewarnt
worden.
Hier erreichen wir das Herz des Problems. Die Idee ist: benutze dieselben
Werkzeuge, wie sie die Cracker benutzen, um die Verwundbarkeiten deines
Netzwerkes (deiner Maschine) zu �berpr�fen.
In diesem Bereich k�nnen wir von zwei sehr gro�artigen Werkzeugen profitieren,
aber es gibt noch viele andere.
Das erste wird nmap genannt. Du kannst es von http://www.insecure.org herunterladen. Au�erdem
findest du dort viele Informationen, Links...
Mit nmap kannst du �berpr�fen, welche ports auf deiner Maschine,auf deinem
Netzwerk offen sind. Sicherlich kannst du das mit Befehlen wie lsof oder
netstat machen, aber nur f�r deine eigene Maschine. Nat�rlich kannst du
deine Maschine auch mit nmap �berpr�fen.
nmap kann dich mit einer Menge an Informationen versorgen: z.B. kann es dir
sagen, welches Betriebssystem l�uft, es informiert dich �ber gef�hrlich
ge�ffnete
ports... Und schlie�lich ist nmap sehr einfach zu benutzen.
nmap kann entweder von einer Shell oder von einer grafischen Oberfl�che, nmapfe
genannt, benutzt werden. Das GUI basiert auf der gtk lib. Die aktuelle Version
von nmap ist 2.53. Es l�uft auf vielen Unixsystemen und ist als Quellcode,
rpm, mit oder ohne GUI verf�gbar.
nmap ist ein Werkzeug, ohne da� Systemadministratoren nicht leben k�nnen!
Vielen Dank, Mr. Fyodor und herzlichen Gl�ckwunsch zu dieser guten Arbeit.
Das zweite ist nessus. Es kann von http://www.nessus.org heruntergeladen werden.
Nessus l�uft unter der Client/Server Architektur und der Posix Quellcode ist auf
vielen Unixsystemen nutzbar. Es gibt sogar einen Client f�r
Win32 (nur, damit du es wei�t).
Nessus verl��t sich auf nmap (du siehst, du kommst ohne es nicht aus!) und der gtk
lib f�r sein GUI.
Dei aktuelle Version ist 1.06 und mit ihm kannst du ein ganzes Netzwerk mit
einem einzigen Befehl scannen, das ist die Netzwerkadresse. Zum Beispiel werden
die 255 Maschinen deines Netzwerkes gescannt, wenn du die Adresse
192.168.1.0/24 in das Zielfeld eintippst.
Auch wenn nessus ein bi�chen komplexer ist als nmap, ist es trotzdem noch
einfach zu benutzen und hat viele Features. Zum Beispiel kann es Berichte
generieren, es kann diffs zwischen Berichten machen... Ein weiteres Feature ist
ganz interessant: nessus macht L�sungsvorschl�ge zu den Problemen, die es
w�hrend eines portscans gefunden hat. Soweit wie die Rechner Unixrechner sind,
sind die Vorschl�ge oft sehr gut. Sie sind f�r andere Betriebssysteme weniger
gut geeignet. Aber das ist hier nicht der Punkt.
Hier ist ein Beispiel einer sehr verwundbaren Maschine:
Nessus hat ein weiteres gro�artiges Feature: es arbeitet mit
plugins, es kann leicht jedes Mal upgedatet werden, wenn eine neue
Sicherheitsl�cke irgendwo gefunden wurde.
Ein weiteres Werkzeug, das Systemadministratoren brauchen! Gro�artige Arbeit,
Mr. Deraison und "Merci
beaucoup".
Beide Werkzeuge wurden auf einem Linuxrechner auf einem Netzwerk mit
verschiedenen Betriebsystemen getestet: Linux RH 6.2, Irix 6.5.7, Solaris 2.6, NeXTStep
3.3, QNX RT, BeOS 5.0, Amiga OS 3.5, Not Terminated 4.0. Die Ergebnisse sind f�r
die meisten der Plattformen beeindruckend. Nat�rlich wird das Amiga
Betriebssystem wirklich nicht gut identifiziert (da es als Drucker oder Router
erschien!), aber wer hat noch dieses Betriebssystem in einem Netzwerk (abgesehen
von mir)?
Auf jeden Fall sind diese Werkzeuge ein "must have" (mu� man haben) bei heutigen
Netzwerken.
Um dieses Kapitel abzuschlie�en, la�t uns noch einige andere Werkzeuge erw�hnen,
wie
SARA http://www-arc.com/sara/, oder seinen
"Vater" SATAN http://www.porcupine.org/satan/,
oder SAINT http://www.wwdsi.com.
Sie sind nicht nur port scanner und sie k�nnen ganz n�tzlich sein, um die
Netzwerksicherheit zu verbessern.
Einige Werkzeuge sind in der Lage, portscans oder eine St�rung zu erkennen.
Ein "Standard" (das ist paranoid!) Systemadministrator KANN NICHT ohne diese Art
von Werkzeugen arbeiten.
Das erste Werkzeugpaket kommt vom Abacus
Project. Du kannst diese Werkzeuge von http://www.psionic.com bekommen. Drei verschiedene
Werkzeuge sind verf�gbar: logcheck, portsentry und
hostsentry.
Logcheck ist in Version 1.1.1, portsentry in Version 1.0 und
hostsentry in Version 0.0.2 alpha.
Portsentry ist ein portscan Erkennungswerkzeug. Wie der Name
sagt, wenn der port von irgendwoher gescannt wird, blockiert portsentry
augenblicklich den host, entweder durch Fallenlassen der Route durch Benutzen
der Firewall (oder einer ungenutzten IPadresse) oder durch das Schreiben der
IP Adresse des Angreifers in die /etc/hosts.deny Datei, sobald TCPWrapper auf
deiner Maschine installiert ist. Das Ergebnis ist sehr effizient!
Porsentry verl��t sich auf die Hauptkonfigurationsdatei und ein paar wenige
spezielle Dateien. Die letzteren werden benutzt, um Hosts zu ignorieren (d.h.
damit sie nicht blockiert werden) oder um einige ports auf einigen hosts zu
blockieren.
In der config Datei definiert man die Art, wie portsentry arbeiten wird. Man
w�hlt erst die ports aus, die man an portsentry binden will, entweder
TCP oder UDP ports (oder beide). Sei vorsichtig, mit dem Einbinden von
port 6000, wenn du X11 laufen hast!
Je nach dem Unixsystem, das du benutzt, kannst du 2 verschiedene Operationsmodi
haben, um die ports zu �berwachen. Der fortgeschrittene Mode ist momentan nur f�r
Linux verf�gbar.
Als n�chstes w�hlst du eine Blockieroperation aus: entweder du blockierst die
scans nicht, oder du machst es, oder du l��t einen �u�eren Befehl laufen.
Dann w�hlst du den Weg, um die Route fallenzulassen, entweder leitest du den
Angreifer auf eine ungenutzte IPadresse von deinem Netzwerk um oder zu einem
Paketfilter (Firewall).
Der folgende Schritt betrifft TCPWrappers. Das hei�t, du entscheidest (oder
nicht), einen DEMENTATIONSTEXT in die /etc/hosts.deny Datei zu schreiben.
Als n�chstes kannst du definieren, einen �u�eren Befehl laufen zu lassen und
schlie�lich kannst du einen Ausl�sewert f�r den scan (default ist 0) ausw�hlen.
Das ist alles, was du tun mu�t! Wir nehmen an, da� du alles �ber
logging wei�t, da, offensichtlich, alle Alarme gelockt sind. Das bedeutet, du
kannst deine syslog.conf Datei ver�ndern, wenn du die eventuellen Alarme
anderwohin haben willst als nach /var/log/messages oder
var/log/syslog oder /var/adm/messages...
Du kannst jetzt portsentry im Hintergrund mit der Option deiner Wahl laufen
lassen. Die verf�gbaren Optionen h�ngen von deinem System ab: du bist in der
Lage,-tcp, -udp auf den meisten Unixsystemen und -atcp, -audp auf Linuxrechnern
("a" f�r advanced (fortgeschritten)) zu benutzen.
La�t uns einen Blick auf das Ergebnis werfen, wenn eine Maschine gescannt wird,
auf der portsentry l�uft.
Hier k�nnen wir nicht �ber Werkzeuge reden. Scripting ist eine der
Hauptf�higkeiten eines jeden Systemadministrators. Shellskripte, Perlskripte...
sind Teil deines t�glichen Jobs, wenn du Netzwerke verwaltest.
Nat�rlich k�nnen Skripte dazu benutzt werden, um Aufgaben zu
automatisieren, aber genausogut zur Sicherheits�berwachung. Jeder
Systemadministrator hat seine eigenen Bed�rfnisse und er versucht immer, sie so
zu verwalten, wie sie f�r ihn am besten passen. Das ist nicht immer leicht.
Etwas kann helfen: abonniere das SysAdmin
Magazin! Diese Zeitschrift wird von Systemadministratoren f�r
Systemadministratoren gemacht und versorgt dich mit einer Menge Programmen,
Skripten... Du kannst sogar eine CD-ROM bekommen, die alle vorherigen Ausgaben
enth�lt und nat�rlich alle bisherigen Programme oder Skripte.
Dies ist keine Werbung... es ist ein Weg, um mehr L�sungen zu finden, um die
Sicherheit zu verbessern. Schau sie dir an auf http://www.samag.com.
Wenn du ein Systemadministrator bist, la� uns sagen, es ist einen Versuch wert.
Nun, es ist nur ein Vorschlag.
Es gibt noch vieles �ber Sicherheit hinzuzuf�gen, aber wie wir vorher schon
sagten, ist dieser Artikel kein "Wie sichere ich mein Netzwerk". Ein Buch zu
diesem Thema w�re nicht ausreichend. Sicherheit h�ngt nicht nur von Werkzeugen
ab, es ist auch eine Verhaltensweise (gewisserma�en). Zum Beispiel machen mich einige
�bliche Verhaltensweisen verr�ckt. Wann werden die Leute verstehen, da�
M$ Office Dateien wie Bomben sind? Sie sind nicht nur "enorm" in ihrer Gr��e,
sondern potentiell voll von Makroviren. Bitte, Wintelbenutzer, SCHICKT KEINE
Word oder Excel Dokumente als Mailattachments. Weiterhin, wenn du welche
empf�ngst, �FFNE sie NICHT: dies ist nur ein Vorschlag, aber du wurdest gewarnt!
Sie sind so gef�hrlich (ich sollte sagen gef�hrlicher!) als irgendein
ausf�hrbares Programm, das du erh�lst (oder herunterl�dst), Und, wo wir schon
dabei sind, einfacher Text oder HTML Dokumente sind viel kleiner in der Gr��e
als Officedokumente und sie sind NICHT gef�hrlich!
Nat�rlich, ich wei�, die Wintelwelt arbeitet auf diese Weise: wenn du einen
einzigen Treiber herunterl�dst, ist es immer ein ausf�hrbares Programm! La�t uns
zugeben, wir k�nnen den gro�en Firmen vertrauen... aber wei�t du, was mit den
Archiven geschehen sein k�nnte, die du herunterl�dst? Sicher, es ist eine
paranoide Art des Denkens, aber ist es so verr�ckt? Warum denkst du, haben viele
Archive Pr�fsummen, um die Autentizit�t zu pr�fen?
Das folgende "verletzt" vielleicht viele Leute, aber es ist eine Tatsache: JAVA
ist gef�hrlich! Applets sind unsicher, Javaskripte sind unsicher. Trotzdem w�re
es interessant zu wissen, wieviele Webseiten Java benutzen! Weiter ist Java eine
Quelle von Problemen, wenn man eine Seite besucht: wieviele von ihnen lassen
deinen Browser einfrieren. Ist das das Ziel einer Webseite?
La�t uns nicht �ber ActiveX von der Redmondarmee reden!
Vorschlag: benutz Rebol stattdessen(http://www.rebol.com)
Da wir gerade beim Thema sind: bitte, neue Internet-"professionelle", h�rt auf,
Webseiten zu erstellen, die nur der Wintelwelt und IE5 gewidmet sind! Mir ist
klar, da� dies weitverbreitet ist, jedoch surfen viele Leute im
Internet mit anderen Betriebssystemen und vielen verschiedenen Browsern.
So zu arbeiten, wie du es machst, h�lt viele Leute vom Besuch deiner Webseite ab. Das
Ziel des Internets ist es, zu teilen. Propriet�re Dinge zu benutzen, ist Unsinn.
Nach meiner bescheidenen Meinung ist das erste, was man beim Erstellen einer
Webseite machen sollte, es mit verschiedenen Betriebssystemen und verschiedenen
Browsern zu testen... aber dies ist nur meine Meinung. Nur zur Information: wenn
du dich zu solch einer Webseite mit einem Unixrechner verbindest und sagen wir
Netscape, kann man noch nicht mal die Indexseite sehen!
Entschuldigung f�r die Abschweifung.
Ein weiterer wichtiger Punkt ist es, sich daran zu erinnern, da� die Sicherheit
keine 100% erreichen wird. Wir sind weit davon entfernt. Du kannst sie
verbessern, das ist alles: das ist eine Tatsache. Zum Beispiel kannst du alle
Werkzeuge benutzen, die wir hier erw�hnt haben und trotzdem eine Hintert�r weit
offen lassen. La� dich nicht hereinlegen: Cracker werden nicht zuerst versuchen,
einen 128 bit Schl�ssel zu knacken, sondern sie werden versuchen, irgendwosonst
ein kleines Loch zu finden. Deshalb sei mit Programmen wie SUID oder SGID
vorsichtig, mit Zugriffsrechten, mit nutzlos laufenden Diensten, mit
gestrichenen Accounts usw.
Wenn die verschiedenen Unixsysteme viele Gemeinsamkeiten haben, so sind sie sehr
verschieden, was die Sicherheit betrifft. Einige von ihnen sind wie Siebe! Du mu�t dir
dar�ber auch im klaren sein. Zum Beispiel ist es gro�artig, eine
Internetkabelverbindung mit einer Standardwindowsirgendwasmaschine zu haben: das
hei�t, du kannst das Icon von einer Cracker Maschine im
Nachbarschaftsnetzwerk haben... und bald liefert dir M$ ein Bild des Crackers!
Ich mache blo� Spa�...
Die Stra�e zu Netzwerk- und Computersicherheit ist eine sehr lange. Wenn du dich
daf�r interessierst, wirst du jeden Tag etwas lernen. Gl�cklicherweise gibt es
eine Menge Quellen, um Informationen zu bekommen. Hier sind einige von ihnen.
http://www.linuxsecurity.com ist die erste
Goldmine. Hier findest du beinahe alles!
http://www.sans.org ist der Ort, um Hilfe und
Informationen �ber Sicherheit zu bekommen. Eine Seite, die du regelm��ig
konsultieren solltest.
http://www.infosyssec.org
ist ein weiterer Ort, um tonnenweise Informationen �ber Sicherheit zu bekommen.
http://www.securityfocus.com ist die Homepage
von Bugtraq und liefert auf diese Weise eine Menge an Sicherheitsinformationen.
http://www.cs.purdue.edu/coast/hotlist/
DIE Seite, die du besuchen mu�t!
Oben auf der Seite findest du einen "Links" Knopf: klicke darauf, um die
Adressen der meisten Distributoren zu erhalten. Die Konsultation ihrer Seite
ist obligatorisch, um Informationen �ber Sicherheitspatche zu bekommen. Dies
gilt f�r jeden Unixeditor! Viele von ihnen geben Sicherheits- oder empfohlene
Patches regelm��ig bekannt.
Viele Artikel aus fr�heren LinuxFocusausgaben sind es wert, sie zu lesen
(zus�tzlich zu den von mir bereits genannten):
Verbessern der Systemsicherheit
gebr�uchlicher Linuxdistributionen
TCPD und Firewalls unter Verwendung von
IPFWADM
VXE, mehr Sicherheit unter Linux
Viel mehr an Dokumentation ist verf�gbar und wir k�nnen nicht alle
existierenden Links liefern. Auch k�nnen wir nicht alle freien
Sicherheitswerkzeuge erw�hnen, wie schon gesagt. Auf jeder hier erw�hnten Seite
wirst du weitere Links finden, die dich zu noch mehr Links schicken...
wie russische P�ppchen.
Die Tatsache, da� einige Werkzeuge oder Seiten in diesem Artikel nicht erw�hnt
werden, hei�t nicht, da� sie nicht von Interesse sind.es hei�t nur, da� die
Werkzeuge nicht von mir getestet wurden. Offensichtlich mu� man eine
willk�rliche Auswahl unter den hunderten von verf�gbaren Werkzeugen treffen.
Das Ziel dieses Artikels ist es, die Leser mit Orten, von denen man aus
anfangen kann, zu versorgen. Wir hoffen, da� es helfen wird.