Entwurmung

Würmer: Neue Bedrohung für Linuxer

Würmer sind längst nicht mehr nur für Rüdiger Nehberg von Bedeutung. Spätestens seit dem Ramen-Wurm wurde die Gefahr von Würmern erneut verdeutlicht. Kleine Programme, die auf Sicherheitslücken in Betriebssystemen beziehungsweise installierter Software beruhen, können sich nahezu ungestört verbreiten. Zwar galt der Spot und Hohn des Ramen-Wurms den Entwicklern von RedHat, doch ist dies alles andere als nur ein Betriebssysteminternes Problem. Parallel zu Ramen gibt es mittlerweile etliche weitere Würmer, teilweise Bastarde, teilweise komplett neu konzipierte Programme.

Was ist überhaupt ein Wurm? Diese Frage lässt sich mit einem Satz beantworten: Ein Wurm ist ein Programm, daß speziell dafür konstruiert wurde, sich über Netzwerke hinweg auszubreiten und verschiedene Computer ohne menschliches Zutun automatisch zu insfizieren. Würmer sind in ihrem Aufbau dem von Viren recht ähnlich. Der Fortpflanzungsteil besteht hierbei aus einer Transportfunktion zur Verbreitung über Netzwerke und den dazu benötigten Mechanismen, um illegal Zugang zu anderen Rechnern zu bekommen. Dies geschieht meist anhand von vorgefertigten Exploits, die automatisch einen Vollzugang zum Fremdsystem ermöglichen.

Geschichtliches

Der erste Wurm wurde 1982 ursprünglich für nützliche Zwecke von der Firma Xerox programmiert und diente dazu, regelmässige Aufgaben ,wie zum Beispiel das Löschen von temporären Dateien, zu automatisieren. Ein sehr nützliches Programm bis es eines Tages wohl durch einen Fehler im Code die Seiten wechselte und damit begann, Systeme zum Absturz zu bringen. (So entstand auch eines der ersten Anti-Viren Programme, dass diesen Wurm stoppen sollte.)

Am zweiten November 1988 trat der erste Internet-Wurm auf. Benannt wurde der ,,Morris Wurm'' nach seinem Autor Robert Tappan Morris Jr., der zum damaligen Zeitpunkt an der Cornell University studierte. Sein Wurm insfizierte damals ungefähr 2.000 - 6.000 Systeme im Internet (genaue Zahlen nicht bekannt). Potentielles Angriffsziel waren alle mit BSD UNIX betriebenen Rechner der Firmen DEC und SUN. Hinzu kamen Rechner die mit UNIX System V ausgerüstet waren und bei denen durch Programme wie Sendmail, fingerd oder rexec eine Kompatibilität zu BSD UNIX geschaffen wurde. Zur Verbreitung setzte Morrison insgesamt vier verschiedene Verfahren ein. Zwei davon beruhten auf bekannten Sicherheitslücken in Sendmail und im fingerd, wodurch der Wurm von ''Aussen'' auch ohne Account vollen Zugriff zum Rechner bekam. Desweiteren machte sich der Wurm die weitverbreiteten sogenannten 'r'-Protokolle zunutzen, wodurch er auf entfernten Rechnern ohne Authentifizierung einfach Befehle ausführen beziehungsweise eine remote Shell starten konnte. Als letzte Technik wurde das sogenannte ''Brute-Force''-Verfahren angewandt, welches versuchte die Passwörter der einzelnen Benutzer des lokalen Systems zu knacken und anhand dieser Passwörter Zugang zu weiteren Systemen zu bekommen.

Ausserdem war geplant, ein weiteres Verfahren einzubinden, welches einen Fehler im File Transfer Protocol ausnutzt, der zuvor von R.T.Morris Jr. gefunden wurde. Aufgrund eines Fehlers im Programm kam es dazu, dass ein Großteil der insfizierten Rechner teilweise total überlastet war und somit nur eingeschränkt genutzt werden konnte.

Das Ausmaß dieses Pioniers der heutigen Würmer zeigt wie bedrohlich diese vor allem für große Netze sind. Morris selbst hätte nie daran geglaubt, daß sich sein Wurm so erfolgreich verbreiten würde und eine solche Katastrophe anrichten könnte. Die Folgen dieses ''harmlosen'' Wurms waren eine Strafe für Morrison in Form von drei Jahren Gefängnis auf Bewährung, eine Geldstrafe in Höhe von 10.000 Dollar und 400 Stunden Sozialarbeit. Zudem befand sich der Morrison Wurm eine Woche lang auf der Titelseite der New York Times. Direkt im Anschluss an dieses Disaster wurde das sogenannte Computer Emergency Response Team, kurz CERT (www.cert.org), gegründet.

Gefährlich! Aber warum?

Die Gefahr haben wir oben gesehen, aber wie kommt es, dass sich ein Wurm, der vor allem auf bekannten Sicherheitslücken basiert sich so schnell verbreitet? Die Erklärung hierfür ist wohl vor allem, dass die Administratoren der jeweiligen Systeme und Netze sich zu wenig mit dem Thema Sicherheit beschäftigen und somit auch gegen solche standardisierten Angriffe verwundbar sind. Zudem tauchen täglich neue, mehr oder minder gefährliche Sicherheitslücken in häufig verwendeter Software auf.
Je mehr ungepatchte Rechner ein Wurm verseuchen kann, desto mehr Potential hat er um sich weiter zu verbreiten, da er von jedem insfizierten Rechner weitere Angriffe auf bestimmte Adressbereiche startet. Die Wahrscheinlichkeit, dass er fündig wird und neue Rechner übernimmt ist vor allem bei kleineren Firmen sehr hoch, da sich dort meist kleinere Rechner am Netz befinden, die nicht regelmässig gewartet und geupdatet werden!

Eine weitere Gefahr bei Würmern ist, daß sie sich bei geschickter Programmierung plattformunabhängig vermehren können, so kann ein Wurm zum Beispiel gleichzeitig Sicherheitslücken bei Linux(UNIX)- und Windowsrechnern erkennen und ausnutzen.
Nun besteht die Hauptfunktion eines Wurms ja nicht allein darin, sich zu verbreiten, sondern dabei auch noch Schaden anzurichten. Dieser Schaden variiert mit der Intention des Autors. Es gibt zum Einen Würmer, die Dateien beschädigen, User ausspionieren, etc. Hingegen gibt es zum Anderen auch Würmer die eher niedere aber genauso schädliche Absichten verfolgen, so zum Beispiel Ramen, der lediglich daran interessiert war die Webseite zu modifizieren.

Verbreitung

Die Techniken, die die meisten Würmer heutzutage benutzen sind ebenso interessant wie primitiv. Sie alle basieren sogenannten Bannergrabbern. Das sind kleine Programme, die es ermöglichen zum Beispiel ganze Class-A Netze nach bestimmten Dämonen (z.B. Sendmail, Wu-FTPd) zu scannen. Ausserdem gibt es Scanner, die zum Beispiel direkt nach bekannten Bugs scannen, wie zum Beispiel den Unicode Bug im IIS 4.0/5.0. Nachdem verwundbare Rechner gefunden wurden wird ein System gestartet, welches man eigentlich schon als AIS, sprich als Automated Intrusion System bezeichnen kann. Dieses Programm ist in der Lage automatisch über die gefundene Sicherheitslücke in den Rechner einzubrechen und dort erneut den Wurm zu installieren.

Für die Übertragung des Wurm-Quellcodes gibt es verschiedenste Techniken, die meist sehr deutlich zeigen, wieviel Ahnung die jeweiligen Autoren vom System haben (in den letzten Fällen eher weniger). Sobald der Wurm auf dem neuen Rechner gestartet wurde beginnt er auch dort Schaden anzurichten und nach neuen potentiellen Opfern zu suchen.

Aktuelle Beispiele

Die Anzahl der Würmer die zur Zeit ''in the wild'' zu finden sind ist vor allem aufgrund der ganzen Bastarde der einzelnen Würmer nicht genau feststellbar. Die derzeitigen Würmer basieren größtenteils auf die Skriptsprachen Perl und Shellskript und stützen sich auf Fremdcode, sprich zum Beispiel Scanner die von anderen Autoren entworfen worden. Hauptangriffsziel der aktuellen Würmer sind meistens Linuxrechner, da diese in der Regel am leichtesten zu übernehmen sind.
Zwei Würmer die in der letzten Zeit für grosse Furore gesorgt haben sind sicherlich der Ramen und der Lion Wurm.

Ramen

Ramen's ''Zielgruppe'' sind RedHat-Benutzer, die die Versionen 6.2 oder 7.0 verwenden. Der Wurm basiert auf Sicherheitslücken im Wu-FTP-Server, im statd (rpc), und im LPRng, welche alle miteinander von aussen gegen eine sogenannte ''remote root'' Attacke verwundbar sind, das heisst der Wurm bekommt ohne Authentifizierung kompletten Zugang zum Rechner des Opfers. Hat er ein Opfer gefunden und erfolgreich insfiziert, so überschreibt er sämtliche ''index.html''-Dateien in der Hoffnung, der Rechner hostet eine Webseite. Inhalt der neuen index.html ist ein primitives: ''Ramen Crew - Hacker looooove noodles'', welches wohl auch die (nicht vorhandene) Intention dieses Wurms verdeutlicht. Dennoch ist es erstaunlich, nahezu beeindruckend, wie es dieser Wurm geschafft hat, sogar Rechner der NASA (nasa.gov) zu übernehmen. Genau aus diesem Grund könnte man Ramen auch als eine Art Schocktherapie für SysAdmins bezeichen (natürlich nur mit viel Fantasie).

Lion

Von Lion gibt es 3 ursprüngliche Version. Eine ähnelt der von Ramen sehr stark, man kann eigentlich sagen, dass lediglich die Sicherheitslücke, die dieser Wurm zur Verbreitung benutzt, eine andere ist, und zwar ein Fehler in Bind. Die anderen beiden Versionen sind beinahe identisch, mit dem kleinen Unterschied, dass eine von Ihnen ein sogenanntes ''Rootkit'' mitinstalliert. Ein Rootkit ist meist ein Set , bestehend aus mehreren Skripten, welches dazu gedacht ist, Spuren zu verwischen und Backdoors zu installieren. Im restlichen Aufbau kann man keinen großen Unterschied zu Ramen erkennen. Generell kann man sagen, dass sich alle aktuellen Würmer sehr stark ähneln und größtenteils auf den gleichen Code aufbauen. Dennoch ist es nicht so leicht möglich die Würmer schnell und effizient zu erkennen und zu stoppen.

Bekämpfung / Prävention

Eins sollte von Anfang an klar sein, Würmer lassen sich nicht ähnlich wie Viren bekämpfen. Hierzu erfordert es mehr als einen aktualisierten Virenscanner. Zunächst ist es ratsam sicherheitsrelevante Mailinglisten wie zum Beispiel Bugtraq (www.securityfocus.com) zu verfolgen und sein System immer up-to-date zu halten. Ausserdem wär eine Firewall sehr empfehlenswert, da die derzeitigen Würmer nur standardisierte Angriffe starten können und somit an einer richtig konfigurierten Firewall niemals vorbeikommen würden.

Generell gilt: ''Security through Obscurity'', da die Würmer auf bestimmte Angriffziele setzen. Sitzt nun zum Beispiel der verwundbare FTP-Dämon anstatt auf Port 21 auf dem Port 31337, so wird der Wurm ihn höchstwahrscheinlich nicht erkennen.
Sollte es nun doch vorkommen, dass man von einem Wurm insfiziert wurde, so ist es ratsam zunächst die insfizierten Rechner vom Netz zu nehmen und den Wurm zu entfernen, um unnötigen Ärger zu vermeiden und die Verbreitung vom eigenen Rechner aus zu verhindern. Zum Entfernen gibt es in der Regel relativ schnell Anleitungen die diesen Vorgang genauestens erklären beziehungsweise Programme, die dies automatisch übernehmen. Als Anlaufstelle für solche Anleitungen/Programme empfielt sich www.whitehats.com und natürlich jede Suchmaschine (in der Regel liefert '+ +remove' relativ gute Ergebnisse).

Prophezeihungen

Die Hauptfrage ist und bleibt: Was kommt auf uns zu? Genau kann man das natürlich nicht vorhersagen, jedoch kann man darauf spekulieren, was nach diesen “harmlosen“ und unkreativen Würmern kommt. Die Methoden zum Aufspüren von potentiellen Opfern ist sicherlich schon sehr gut realisiert, dennoch sind all diese Würmer stark beschränkt, da sie lediglich auf 1-3 Sicherheitslücken basieren.

Was nun, wenn sich nun ein paar kreative Köpfe hinsetzen und einen Wurm programmieren, der sich selbst updaten kann? Dies ist nicht nur Spekulation sondern wird mit Sicherheit auf uns zukommen. Wie will man zum Beispiel einen Wurm aufhalten, der sich ständig seine Updates aus diversen Newsgroups, etc. besorgt und somit immer mehr aufrüstet? So könnten die Würmer auch eine komplette Unabhängigkeit vom Betriebssystem erreichen. Oder was wäre wenn es Würmer gibt, die jedes System nach E-Mail-Adressen durchsucht und per Zufallsfunktion bestimmte Viren generiert und diese an die gefundenen Adressen schickt?

Wenn sich fähige Leute hinsetzen würden und einen OS-Unabhängigen Wurm programmieren würden und diesen auch noch mit einem OS-Unabhängigen Virus (erste Ansätze: Winux) paaren würden, wie würde man solch einen Wurm bekämpfen? Zwar ist das alles bisher nur Theorie, jedoch sollte man jetzt schon mit solchem Angriffen rechnen und möglichst schon über potentielle Gegenmittel philosophieren.

Fazit

Wie sagte doch Thornton Wilder so schön: ,,Die Abenteuer von heute finden in den Computern und den Laboratorien statt.'' (It is a good thing for an uneducated man to read a book of quotations). Wichtig ist es, ständig mit der Gefahr eines Angriffs zu rechnen und sich dagegen zu schützen. Viele Leute realisieren die Unsicherheit ihres Netzes viel zu spät und müssen meist teuer dafür bezahlen. Ihnen bleiben neben den Schäden des Wurms, die meist immense Geldbeträge mit sich bringen, auch noch die endlosen Abusemails anderer Administratoren, die sich über die Scans und Angriffsversuche beschweren.
Je mehr Rechner ein Netzwerk hat, desto wichtiger ist es, alle Rechner regelmässig zu warten und die Sicherheitslücken zu schließen, da bereits ein schwacher Rechner das gesamte Netzwerk unsicher macht.

Martin J. Münch <mjm@codito.de>


Links

1. Detailanalyse des Ramen-Wurms
http://www.codito.de/text/ramen.html

2. Skript zum Aufspüren vom Lion-Wurm
http://www.whitehats.com/library/worms/lionfind-0.1.tar.gz

3. Skript zum Aufspüren vom Ramen-Wurm
http://www.whitehats.com/library/worms/ramenfind.v0.4.gz

4. Informationen zum Lion-Wurm
http://www.cert.org/incident_notes/IN-2001-03.html