Dieses Posting ging vor einigen Jahren durchs Usenet und wurde so oft wiederholt, weil es einfach so ziemlich alles abdeckt, was man an Dokumentationen zum Thema UNIX-Security findet, daß ich es hier einfach noch mal abdrucke -- allerdings in übersetzter Version. :-)

Man kann als Linux-User, der nur mal kurz gucken möchte, ob er irgendwelche Scheunentore offen hat auch einfach mal bei http://www.nessus.org/nessus/ vorbeischauen. Nessus ist eine Sammlung von Angriffsmethoden, die unter einer angenehmen Oberfläche verpackt sind und Standardmethoden, wie sendmail-bugs, buffer overflows in suid root Programmen, usw. prüfen. Auch DenialOfService-Angriffe sind hiermit steuerbar... man sollte aber trotzdem wissen, was man tut, dieses Programm ist nichts für "script kiddies".

So, jetzt das Posting in übersetzter Version. Dies ist für Leute gedacht, die sich wirklich ernsthaft mit der Materie beschäftigen wollen/müssen (weil sie z.B. einen Firewall einrichten wollen/müssen und das auch in die berufliche Richtung so in etwa paßt. Hierfür sollte schon mal einige Wochenenden investiert werden -- aber danach hat man so ziemlich alles auf dem Kerbholz, was es in dieser Richtung gibt. Und solches Wissen wird heute *sehr* *sehr* gut bezahlt...

1. Vorarbeit

So, jetzt das Posting in übersetzter Version. Dies ist für Leute gedacht, die sich wirklich ernsthaft mit der Materie beschäftigen wollen/müssen (weil sie z.B. einen Firewall einrichten wollen/müssen und das auch in die berufliche Richtung so in etwa paßt. Hierfür sollte schon mal einige Wochenenden investiert werden -- aber danach hat man so ziemlich alles auf dem Kerbholz, was es in dieser Richtung gibt. Und solches Wissen wird heute sehr sehr gut bezahlt...

So, wenn du damit ausgerüstet bist, können die Grundlagen gelegt werden:

BEVOR Du eines dieser Tools benutzt und/oder einsetzt, lese die Dokumentationen zu dem Programm und versuche zu verstehen was dieses Programm für eine Sicherheitslücke versucht auszunutzen. Dann probiere dies nicht mit dem Tool, sondern manuell!

Wenn Du damit durch bist, gönne Dir ein Bier und einen erholsamen Abend. Du hast heute jede Menge gelernt :-)

2. Programmierung und Mailinglisten

So, weiter im Takt:

Du bist soeben um einen weiteren riesigen Haufen Informationen zum Thema Sicherheit reicher geworden. Jetzt gehts ans Eingemachte: die BugTRAQ Archive. Gehe auf http://www.securityfocus.com/ und lese das komplette Archiv dieser Mailingliste, versuche jeden Exploit nachzuvollziehen und ggf. nachzuahmen.

Jetzt geh an deine Arbeitsmaschine, die natürlich in keinster Weise mit den drei bis fünf Bastelrechnern verbunden ist (!!!), und trage Dich in alle möglichen bekannten Security-Mailinglisten ein. Beispiele wären BUGTRAQ, CIAC, CERT, und so weiter. Lese die dortigen Posts und versuche die Quellcodes, die garantiert schnell auftauchen werden, zu kompilieren und gegen einen deiner Rechner auszuführen. (Transport mit Disketten oder via kurz angestecktem Netzwerkkabel -- dieses sollte aber auf keinen Fall stecken, während Du irgendwelche Attacken ausprobierst, denn eine falsche IP ist schnell mal eingegeben (oops, Tippfehler) und man hat einen wütenden Nachbarn/ISP/.. auf dem Hals!)

Merke Dir eMail-Adressen von Leuten, die in diesen Mailinglisten oft auftauchen. Erstelle Dir eine Liste von diesen eMail-Adressen und suche in http://groups.google.com/, in welchen Gruppen noch zu diesem Thema geschrieben wird. Komme ja nicht auf die Idee, diesen Leuten eMails zu schreiben -- die haben genug um die Ohren!. Beispiele wären Farmer, Venema, Spafford, Ranum, usw. Lese ihre Homepages (falls vorhanden) und Ideen zum Thema, und versuche sie zu verstehen und nachzuvollziehen.

Versuche dich in Socket-Programmierung einzuarbeiten. Dies hilft sehr viel beim Ausspionieren von sicherheitsrelevanten Bugs in Programmen.

Gehe in einen Second-Hand EDV-Bücherladen (wenns sowas bei Dir gibt :) und versuche alle möglichen Manuals von allen möglichen auch älteren UNIX Systemen aufzutreiben, wie AIX, HPUX, Unicos, IRIX, Data General, SunOS, Solaris, XENIX, SYS V, usw. Bücher zum Thema Systemadministration aus der Zeit sind auch nicht zu verachten. Je mehr, desto besser -- und die Bücher sind meist spottbillig.

Versuche dich in mindestens die Grundlagen dieser Programmier- und Skriptsprachen einzuarbeiten:

Es hilft ungemein, wenn man bestimmte Aktivitäten (z.B. Parsing von syslog-Ausgaben) kurz mal automatisieren (i.e. einem Perlskript vor die Füße schmeißen) kann. Das geht aber nur, wenn man sich in die Grundlagen schon einmal eingearbeitet hat. Bau dir anhand der oben gekauften Manuals eine Tabelle, in der die groben Unterschiede und Gemeinsamkeiten der verschiedenen UNIX-Varianten gegenübergestellt werden. Mache das gleiche für die verschiedenen Shells, die es gibt (bash, csh, tcsh, sh, ...).

3. LinuxSicherheitsAspekteLiteratur

4. Fazit

So, jetzt brauchst Du noch die entsprechenden Programme um ein paar Experimente durchzuführen. Die gibt es bei http://ciac.llnl.gov/ciac/SecurityTools.html.

Eigentlich sollte das für den Anfang(*) ausreichen. Das Ziel, das Du anfangs verfolgen solltest, ist erstmal die alten Probleme und deren Lösungen zu verstehen und nachzuvollziehen, damit Du bei den neueren dann Kontext, Herkunft und vielleicht Vorgeschichte besser verstehst. Es wird keiner von Dir verlangen, daß du das unheimlich komplexe Feld namens "UNIX Security" in einem Tag (oder einer Woche oder einem Monat) gemeistert hast.

(*) ha, ha, ha... wer sich als Admin nicht STÄNDIG weiterbildet, hat schon verloren!

Die Hauptbereiche, mit denen Du dich beschäftigen solltest, sind folgende:

Der TIS FIREWALL TOOLKIT könnte jetzt von Nutzen sein. Mußt Du selbst entscheiden.

JensBenecke

LinuxSecurity/LinuxFaq (zuletzt geändert am 2008-07-22 20:00:48 durch JochenWeihgold)