Michael Schröpl: Sambar und ungeklärte Datei root.exe

Beitrag lesen

Hi,

ich versteh das nicht, warum müssen LINUX User immer
sicherer sein :( heul.

weil es weniger davon gibt, weil sie im Schnitt sauberer konfiguriert sind, weil UNIX grundsätzlich ein System der Unterteilung von Privilegien besitzt und bei Windows nur ein Teil der System einen schwachen Versuch desselben.

Alles zusammen macht es einfach attraktiver, ein Windows-System anzugreifen als eines der vielen verschiedenen, insbesondere auch noch unterschiedlich konfigurierten UNIX-Abkömmlinge.

Wurm ? wasn das ?

Ich skizziere mal, was der bei Dir gesucht hat - dann versehst Du, was er ungefähr tut - und wie.

Der Wurm läuft auf einem beliebigen Rechner als Programm und sendet HTTP-Requests an irgendwelche IP-Adressen - zufällig auch an Deine.

Du könntest ein Windows-System haben. Also ist es einen Versuch wert, das zu knacken.

Dein Webserver könnte ein M$-IIS sein. Der hat bekannte Sicherheitslücken, wenn Du diese nicht durch Einspielen der aktuellen Patches vertuscht - äh, behoben hast.

Ein Teil der Sicherheitslücken besteht darin, den IIS einfach in der Standardinstallation zu verwenden.
Dabei sind nämlich bestimmte Verzeichnisse als CGI-verzeichnisse vorkonfiguriert, d.h. darin liegende URLs werden nicht ausgeliefert, sondern _ausgeführt_.
Ein guter Angreifer kennt diese Verzeichnisse.

Bestimmte Versionen des IIS haben bestimmte bugs.
Einer der Bugs besteht darin, zu übersehen, daß ein Angreifer einen URL senden könnte, der versucht, über "../" aus dem URL-Raum heraus zu navigieren und damit beliebige Dateien auf Deinem Server anzusprechen.
Es gibt natürlich einen Patch dafür, aber den hast Du vielleicht nicht installiert. Woher solltest Du auch wissen, daß es Windows-Programme gibt, die Fehler haben?

Wenn man mit diesem "../"-Trick nun aus einem bekannten CGI-Verzeichnis heraus (z. B. "/scripts") eine beliebige Programmdatei ansprechen könnte, dann würde man sie auf Deinem Rechner ausführen (so funktioniert CGI ja nun mal). Denn der Fehler des IIS besteht insbesondere darin, nicht zu begreifen, daß "/scripts/../../../../" etc. eben _kein_ CGI-Verzeichnis mehr ist.

Als nächstes braucht der Angreifer die Verzeichnisstruktur Deines Windows-Servers.
Wissen kann er sie nicht - aber Du wirst ja hoffentlich den Installations-Default verwendet haben, wie die meisten Windows-Anwender. Also probieren wir mal c:\windows und c:\winnt und ... mal sehen, ob wir fündig werden.
Falls dies der Fall ist, läßt sich durchaus ein Pfad konstruieren, der zu einem bekannten ausführbaren Programm führt. Ein guter Kandidat ist beispielsweise das Programm "cmd.exe" - die "WinNT-Box" (früher hätte man "DOS-Box" gesagt). Die kann selbst wiederum Programme mit richtigen langen Kommandozeilen ausführen ...

Das alleine reicht immer noch nicht. Der Angreifer muß nun irgendwas auf Deiner Kiste ausführen, was ihn weiter bringt.
Am einfachsten ginge das, wenn er einfach ein eigenes Programm ausführen könnte. Aber ein solches Programm befindet sich nicht auf Deiner Kiste - _noch_ nicht.
Aber gleich - nämlich dann, wenn der Angreifer es schafft, bei Dir ein bekanntes, vorinstalliertes Windows-Programm auszuführen, mit dem er eine Verbindung von Deinem zu _seinem_ Rechner aufbauen kann. Denn wenn er _das_ schafft, dann holt er sich über diese Verbindung viele gute Freunde, nämlich den eigentlichen Wurm-Code!
Ein guter Kandidat dafür ist das bei Windows mitgelieferte und (wie üblich unter dem Standard-Pfad installierte) FTP-Programm ... oder eine von mehreren anderen Möglichkeiten.
Eigentlich sollte ein Webserver es natürlich gar nicht nötig haben, selbst FTP- oder HTTP-Verbindungen zu anderen Systemen _aufbauen_ zu dürfen (das tun ja normalerweise die Browser, wenn sie ihn kontaktieren) - aber Du wirst schon keine Firewall installiert haben, die das explizit verhindert ...

Und sobald er seinen eigenen Code auf Deine Kiste laden und dort ausführen kann, sind wir wieder am Anfang der Geschichte.
Jetzt ist es nämlich _Dein_ Server, von dem aus dem der Wurm HTTP-Verbindungen zu beliebigen neuen Rechnern aufzubauen versucht, um mutig dorthin vorzustoßen, wo noch nie ein Wurm ... äh, oder so ähnlich. ;-)

Und was lernen wir daraus?

Der Angreifer muß ganz schön viele Voraussetzungen auf Deinem Server antreffen - d. h. der Betreiber muß ganz schön viele Gelegenheiten verpaßt haben, sich zu wehren.
Windows zu installieren ist nicht der Fehler - aber es nicht zu verstehen und zu glauben, der Angreifer verstünde es auch nicht, _das_ ist einer.

Viele Grüße
      Michael