Rootkits – Anfänge, Massenproduktion, Trends

Rootkits sind heute weit verbreitete Schädlinge, vor allem unter Windows. Doch woher kommen diese kleinen Tarnkappen-Programme, die das Rechner-System umgehen? Und welche Trends können wir voraussehen?

Mein erstes Rootkit begegnete mir im Jahr 2004. Ich war damals noch blutige Anfängerin unter den Virenanalysten und hatte nur eine vage Ahnung von Unix-Rootkits. Eines Tages stieß ich jedoch auf eine ausführbare Datei für Windows, die beim Start keine schädlichen Auswirkungen zeigte. Ich nahm sie etwas genauer unter die Lupe: Zum Vorschein kam eine Datei in der Liste der geladenen Module, die nicht auf der Festplatte erschien. Ich konnte das nur deshalb mit bloßem Auge erkennen, weil der Rootkit-Code fehlerhaft war. Heute bräuchte ich zu diesem Zweck verschiedene spezielle Tools – wenn das überhaupt ausreichend wäre.

Das Rootkit, das ich gefunden hatte, war beileibe nicht das erste Windows-Rootkit. Für mich war es allerdings neu und es eröffnete mir gewissermaßen das Tor zu einer neuen Welt. Einer Welt, in der Programme mit dem Betriebssystem spielen, Regeln übertreten und auf wundersame Weise von den Prozess- und Dateilisten verschwinden. Ich verwendete viel Zeit darauf, die Treiber zu untersuchen, die das Programm benutzte, um sich selbst im System zu verbergen. Bei dem entdeckten Trojan-Dropper.Win32.SmallProxy handelte es sich um ein Programm, das in bestimmten Umgebungen eingesetzt werden konnte und spezielle Systeme angriff – für damals recht komplex und ungewöhnlich.

Von Unix-Rootkits und DOS-Stealth-Viren

Zur Definition des Begriffs Rootkit: In Unix-Systemen steht ‚root’ für einen Administrator mit vollen Privilegien, ein ‚kit’ ist eine Zusammenstellung verschiedener Tools. Folglich bezeichnet der Begriff ‚Rootkit’ verschiedene Tools, die dazu genutzt werden können, um ohne Wissen des tatsächlichen Administrators Zugriff auf das System zu erlangen. Solche Tools tauchten erstmals in den frühen 90er Jahren für Unix auf. Es gibt sie immer noch, aber sie entwickeln sich nicht wirklich weiter.

Windows-Rootkits – auch wenn ihr Name aus der Unix-Welt stammt – sind jedoch die direkten Nachfolger von DOS-Stealth-Viren.

Die DOS-Stealth-Viren, auch Tarnkappenviren genannt, traten erstmals um 1990 in Erscheinung, ungefähr zur selben Zeit wie Unix-Rootkits. Anders als Unix-Rootkits, die ihren Autoren ermöglichen sollten, auf das System zuzugreifen und sich in ihm zu verbergen, verbargen sich Tarnkappenviren für DOS lediglich vor den Anwendern und den AV-Programmen. Damit hatten sie bereits dieselbe Funktion wie moderne Windows-Rootkits. Auch die Techniken, die von DOS-Stealth-Viren eingesetzt wurden, sind denen der Windows-Rootkits sehr ähnlich. Stealth-Viren basieren beispielsweise auf Techniken wie dem Abfangen von Systemaufrufen und dem Tarnen des Schadcodes durch falsche Daten auf der Festplatte oder im Speicher. Auch Windows-Rootkits nutzen diese Techniken intensiv.

Der Begriff Windows-Rootkits geht auf einen Artikel von Greg Hoglunds aus dem Jahr 1999 zurück. Er basiert auf Untersuchungen des Windows-Kernel aus dem Vorjahr, die von einem Programmierer aus Sri Lanka im Usenet veröffentlicht wurden (http://www.cmkrnl.com).

Hoglund entwickelte als erster ein Tool zum Verbergen von Daten im System, indem er verschiedene Techniken zur Umgehung des Windows-Systemschutzes kombinierte. Er veröffentlichte die Ergebnisse seiner Arbeit in einem e-Magazin. Dort wurde sein Tool „NT-Rootkit“ genannt. In der Folgezeit wurde es in vielen Malware-Exemplaren eingesetzt – bis zum heutigen Tag fasziniert und inspiriert NT-Rootkit sowohl Forscher als auch Rootkit-Autoren.

Andere Quellen gehen auf Bücher über Windows zurück. So präsentierte bereits im Jahr 1995 der Windows-Programmierer Jeffrey Richter in der fünften Auflage seines bekannten Buches „Advanced Windows“ unter dem Titel „Programming Applications for Microsoft Windows“ Techniken zum Abfangen von Systemaufrufen im Benutzermodus. Diese Techniken wurden später in vielen Rootkits übernommen, wobei manche Rootkit-Autoren sogar so weit gingen, Quellcode direkt aus dem Buch zu kopieren. Auch in zwei weiteren Programmier-Klassikern wurden Techniken zum Abfangen von Systemaufrufen beschrieben, und zwar in Sven Schreibers Buch „Undocumented Windows 2000 Secrets“ aus dem Jahr 2001 und in dem 1999 erschienenen „Undocumented Windows NT“ von Prasad Dabak, Sandeep Phadke und Milind Borate.

Die ersten Windows-Rootkits

Kurz nach dem Erscheinen von NT-Rootkit tauchten verschiedene andere Tools auf, die Objekte im Windows-Betriebssystem verbergen konnten:

  • 2000 – „he4hoook“ wurde von von einem russischen Programmierer entwickelt. Das Tool ist nicht schädlich, versteckt aber Dateien. he4hoook arbeitet im Kernelmodus, wird jedoch vom Autor nicht als Rootkit bezeichnet.
  • 2002 –Bei „HackerDefender“ (alias HacDef) handelt es sich ebenfalls nur um ein Tool, wenn auch um ein leistungsstärkeres: Es kann über eine flexible Konfigurationsdatei zum Verbergen von Dateien, Prozessen und Registrierungsschlüsseln eingesetzt werden. Es arbeitet ebenfalls im Kernelmodus.
  • 2003 – Das Tool „Vanquish“ kann zum Verbergen von Dateien, Verzeichnissen und Registrierungsschlüsseln benutzt werden. Zudem hat es eine schädliche Payload: Es zeichnet Passwörter auf. Vanquish arbeitet im Benutzermodus.

In den folgenden Jahren bewegten sich die Entwickler derartiger Tools immer weiter weg von neutralen Instrumenten. Sie entwickelten Tools mit anderen – auch schädlichen – Motiven.

  • 2003 – “Haxdoor” (alias A-311 Death alias Nuclear Grabber). Diese Entwicklung ist bereits mehr als ein Tool. Es ist ein vollwertiges Backdoor, das Rootkit-Technologien benutzt, um seine Anwesenheit im System zu verbergen. Es arbeitet vorwiegend im Benutzermodus.
  • 2004 – „FU“, ein Tool zum Verbergen von Prozessen. Mit diesem Tool wurde eine neue Technik eingeführt, die auf der Modifizierung der Systemstruktur selbst basiert und nicht auf Modifizierung des Systemzugriffs. FU arbeitet im Kernelmodus.

Die oben stehende Liste ist nicht vollständig, enthält aber diejenigen Rootkits, die zum Verständnis der Entwicklung der Windows-Rootkits notwendig sind, insbesondere HackerDefender, Haxdoor und FU. Diese drei Rootkits wurden in freier Wildbahn – normalerweise zusammen mit anderer Malware – gefunden.

Die Rootkits der Jahre 2000 bis 2004 passen genau in die (veraltete) Standardklassifizierung: Sie funktionieren sowohl auf Benutzer als auch auf Kernelebene, indem sie die Kette der Systemaufrufe modifizieren (Execution Path Modification) oder direkt Systemdaten manipulieren (Direct Kernel Object Manipulation). Über diese Klassifizierung wird endlos diskutiert – weitere Informationen hierzu gibt es unter http://www.securitylab.ru

Rootkit–Massenproduktion

In der Folgezeit wurden Rootkits weiter entwickelt und in Schadprogramme integriert, obwohl es damals schwierig war, unabhängige Tarnkappen-Technologien zu entwickeln. Es gab auf diesem Gebiet bis dahin kaum Programmierkenntnisse. Die wenigen schädlichen Rootkits aus dieser Zeit können in drei Kategorien unterteilt werden:

  • Trojaner, die vorgefertigte Tools und Bibliotheken verwendeten, um sich selbst zu verbergen. Die überwiegende Mehrheit dieser Trojaner benutzte zu diesem Zweck HackerDefender und FU.
  • Vorgefertigte schädliche Rootkits, die zum Download oder Verkauf angeboten wurden und vom Käufer modifiziert werden konnten. Haxdoor ist ein Beispiel für diese Kategorie. Ebenso wie HackerDefender war Haxdoor im Herbst des Jahres 2005 überaus populär. Zu dieser Zeit fügte Kaspersky Lab seinen Datenbanken täglich neben vielen anderen auch etwa 10 neue Signaturen hinzu, um die Anwender vor neuen Haxdoor-Varianten zu schützen.
  • Rootkits auf Bestellung zur Durchführung zielgerichteter Attacken. AV-Hersteller wurden normalerweise erst von ihren Kunden, in diesem Fall meist von großen Unternehmen, auf diese Rootkits aufmerksam gemacht. Im Normalfall untersuchten Virenanalysten das System vor Ort, nachdem Netzwerk-Adminstratoren die Ursache des Problems nicht hatten ausmachen können. Die Gruppe von Rootkits war äußerst klein, aber die einzelnen Exemplare bewegten sich auf einem sehr hohen technischen Niveau.

Um das Jahr 2005 handelte es sich bei fast 80 Prozent aller bekannten Rootkits um Varianten von HackerDefender und Haxdoor. Rbot und SdBot hingegen waren die ersten multifunktionalen Backdoor-Trojaner mit integrierter Rootkit-Technologie. Der Grund hierfür liegt auf der Hand, denn jede Technologie, die die Gesamtfunktionalität eines kommerziellen Trojaners verbesserte, brachte automatisch zusätzlichen finanziellen Vorteil für den Autor oder den Besitzer. Die Betreiber von Botnetzen waren daher die ersten, die sich die Tarnkappen-/Rootkit-Technologie zunutze machten.

Ungefähr ein Jahr später wurden Rootkit-Technologien in gewöhnliche E-Mail-Würmer wie Bagle, in Trojan-Spys wie Goldun und in Mailbot-Programme wie Rustock integriert. Diese Entwicklung erwies sich als ernsthafte Herausforderung für die AV-Industrie.

Rootkit-Skandale

Im Jahr 2005 war der Einsatz von Rootkit-Technologien innerhalb von Malware bereits so weit verbreitet, dass das Thema auch für die Massenmedien und natürlich für Anbieter von Sicherheitssoftware immer interessanter wurde.

Einige Skandale im Zusammenhang mit Rootkit-Technologien, die in verschiedenen Soft- und Hardware-Produkten gefunden wurden, machten im Jahr 2006 deutlich, dass Rootkits endgültig zu einem öffentlichen Thema geworden waren. Bekannt wurde vor allem der von Sony auf einigen CDs verwendete DRM-Kopierschutz, der seine Dateien vor dem Anwender verbarg und zugleich eine ernsthafte Sicherheitslücke darstellte. Obwohl oft nicht klar ist, welche Gefahren von Rootkits ausgehen, verunsichert allein der Begriff Rootkit viele Anwender.

Anti-Rootkits

Der sich anbahnenden Rootkit-Panik mussten die AV-Hersteller begegnen. Einige Anbieter modifizierten ihre Produkte dahingehend, dass sie nun während des regulären Virenscans Zugriff auf verborgene Objekte hatten. Andere veröffentlichten separate Anti-Rootkit-Tools. Und wieder andere kombinierten beide Ansätze, indem sie einen Rootkit-Scan in ihre AV-Produkte integrierten, der über die Benutzeroberfläche des Produkts gestartet werden konnte.

Aber tatsächlich erwies sich keine dieser Lösungen als besonders erfolgreich – alle deckten den Brunnen gewissermaßen erst ab, als das Kind bereits hineingefallen war.

Vor dem Hintergrund dieses Wettlaufs war F-Secure – dessen Anti-Rootkit-Tool kurz nach Rootkit Revealer von Sysinternals auf den Markt kam – eines der ersten großen AV-Unternehmen, das ernstzunehmende Schritte unternahm. Das Tool von F-Secure erkannte verborgene Prozesse, basierte allerdings nur auf Proof-of-Concept-Technologien.

Anbieterunabhängige Anti-Rootkit-Tools erschienen sogar schon im Jahr 2005. Die Autoren dieser kostenlosen Tools versuchten allerdings lediglich, so viele verborgene Daten wie möglich aufzudecken. Sie wurden entwickelt, um einen einzigen Objekt-Typ – in diesem Fall verborgene Dateien – zu finden. Mit der Zeit kamen immer mehr Funktionen hinzu und ein systematischer Ansatz wurde verwendet. Heute gibt es mindestens 20 kostenlose Anti-Rootkit-Tools, die nützlichsten sind GMER (http://gmer.net) und Rootkit Unhooker (http://antirootkit.com), wobei letztgenanntes nicht mehr weiterentwickelt wird. Beide Tools ermöglichen eine schnelle, allerdings oberflächliche Analyse, die den Zustand eines Systems von allen Seiten beleuchtet. Wenn nötig, können sie aber auch für eine tiefer gehende Analyse eingesetzt werden. Weitere Informationen zu solchen Anti-Rootkit-Tools finden Sie auch unter http://z-oleg.com und http://www.securityfocus.com/.

Proof-of-Concept-Rootkits

Um das Jahr 2006 wurden die meisten Rootkits von Anti-Rootkit-Tools entdeckt und der Rootkit-Boom flaute ab. Das führte aber auch dazu, dass Entwickler – sowohl Blackhats als auch Whitehats – nach neuen, unentdeckbaren Techniken zu suchen begannen.

Die meisten konzentrierten sich auf den Einsatz von Hardware-Virtualisierung (integriert in die neuen Intel- und AMD-Prozessoren), um Kontrolle über das Betriebssystem zu erhalten. Etwas Wirbel machte hier die Bluepill-Technologie (eine Hardware-Virtualisierungstechnologie). Es gibt aktuell keine Tools, die solche Bluepill-Rootkits zuverlässig erkennen. Andererseits gibt es glücklicherweise auch keine voll funktionsfähigen Schadprogramme, die diese Technik nutzen. So existiert gegenwärtig ausschließlich ein Proof-of-Concept-Code – doch der erste Schritt in diese Richtung ist damit gemacht.

Im Laufe des Jahres 2006 wurden drei solcher Proof-of-Concept-Rootkits veröffentlicht:

An der Entwicklung von Erkennungstechnologien für diese hypothetischen Bedrohungen wird natürlich gearbeitet. Kaspersky Lab ist bekannt, dass derzeit zwei Projekte zur Untersuchung solcher Rootkits existieren: Russian North Security Labs (http://northsecuritylabs.com) und American Hypervista Technologies (http://hypervisor.com). Bisher hat Hypervista nur einige theoretische Informationen veröffentlicht, North Security Labs dagegen hat eine Beta-Version seines Hypersight Rootkit Detectors auf seiner offiziellen Website zum Download bereitgestellt. Auch wenn die Projekte noch in den Kinderschuhen stecken, so sind sie doch überaus interessant.

Der zweite große Bereich, in dem gerade geforscht wird, sind Rootkits, die im Bootsektor aktiv werden, die so genannten Bootkits. Diese Gruppe von Rootkits erlangt die absolute Kontrolle über das System, während es hochgefahren wird. Diese Technik geht zurück auf die Bootviren der DOS-Ära. Das erste Proof-of-Concept-Rootkit, das im Bootsektor funktionierte, war eEye Bootroot (http://www.blackhat.com [.PDF, 437 Kb]) und erschien im Jahr 2005.

Vbootkit (http://www.blackhat.com [.PDF, 165 Kb]), ein ähnliches Proof-of-Concept-Bootkit, erschien 2007 und wurde als Forschungsobjekt für ein zu der Zeit brandaktuelles Thema präsentiert – für die Sicherheit von Windows Vista.

Das mystische Rootkit

Ende 2006 machten in Sicherheitsforen Gerüchte über Rustock.c die Runde, ein angeblich neues und unentdeckbares Rootkit, die vermeintlich neueste Entwicklung der Rustock-Spambot-Familie. Eineinhalb Jahre später erklärten Forscher des russischen AV-Unternehmens Dr. Web, sie hätten ein Sample von Rustock.c gefunden und seine Verbreitungsroutine analysiert. Bis heute sind nicht alle Details bekannt, so dass sich nur schwer einschätzen lässt, wie ernsthaft die Bedrohung wirklich ist. Die Daten von Dr. Web weisen darauf hin, dass dieses Rootkit tatsächlich im September 2007 und nicht Ende 2006 entwickelt wurde. Nach Einschätzung von Kaspersky Lab ist Rustock.c nicht unentdeckbar. Das Programm verwendet keine innovative Technologie, die eine Entdeckung unmöglich macht. Zwar umgeht es bestehende Erkennungsmethoden, aber das ist nicht allzu ungewöhnlich und auch weniger berüchtigte Rootkits sind dazu in der Lage. Weitere Informationen zur Geschichte von Rustock.c finden Sie in unserem Artikel unter http://www.viruslist.com/de.

Rootkits für andere Systeme

Ab und zu erhalten AV-Unternehmen Samples von Rootkits für weniger verbreitete Unix-Systeme wie beispielsweise Solaris von Sun Microsystems. Normalerweise liegt das daran, dass die entsprechende Unternehmen ihre Server nicht regelmäßig überprüfen, dass sie vor langer Zeit konfiguriert und die Einstellungen seither nicht mehr geändert wurden. Es ist deshalb kein Problem, solche Systeme zu hacken und ein Rootkit zu installieren, das dann Jahre später zufällig entdeckt wird – meist nachdem bereits zahlreiche firmeninterne Informationen oder vertrauliche Daten abgeflossen und entsprechende finanzielle Verluste entstanden sind.

Es gibt einige Rootkits für Apple OS X und es gibt sogar ein Anti-Rootkit-Tool für dieses Betriebssystem, den OS X Rootkit Hunter. Seitdem OS X auf Unix basiert, können zudem einige Unix-Rootkits dahingehend modifiziert werden, dass sie auch unter OS X funktionieren. Insgesamt sieht Kaspersky Lab in diesen Fällen weder eine wesentliche Entwicklung von Mac-Rootkits noch ernsthafte Bedrohungen auf diesem Gebiet.

Betriebssysteme für mobile Geräte, wie etwa Windows Mobile und Symbian wurden nach Meinung des russischen Sicherheitsspezialisten bisher noch nicht von Rootkits angegriffen. Es gibt insgesamt gesehen auch nur wenig Malware für diese Betriebssysteme – und da nur wenige Anwender die aktuell verfügbaren AV-Lösungen nutzen, besteht auch keine Notwendigkeit für die Cyberkriminellen, Rootkit-Technologien einzusetzen.

Beinahe-Rootkits

Versteht man unter Rootkits Programme, die die Sicherheitsmechanismen von Betriebssystemen umgehen und ihre Aktivität verbergen, so ist die im Folgenden beschriebene Malware sicherlich grenzwertig und wird von Spezialisten auch nicht dediziert als Rootkit definiert:

  • Erstens gibt es Schadprogramme, die sich zwar im Betriebssystem verstecken, dies aber „auf die ehrliche Art“ tun: Programme dieser Art modifizieren weder das System noch umgehen sie die integrierten Sicherheitsvorrichtungen. Es gibt beispielsweise schädliche Programme, deren Bodys sich in Ordner- oder Dateistreams befinden. Andere Programme verwenden dokumentierte Systemfunktionen, um Ereignishooks zu installieren. Auch diese Programme gelten nicht als Rootkits, obwohl sie Tarnkappen-Verhalten zeigen.
  • Zweitens gibt es Programme, deren Unsichtbarkeit auf die interne Programmarchitektur zurückzuführen ist, zum Beispiel der CodeRed-Wurm (http://www.viruslist.com/en/viruses/encyclopedia?virusid=23374), der weder Dateien auf der Festplatte noch Prozesse im Speicher erstellt.
  • Drittens gibt es ausgefeilte Techniken, mit deren Hilfe das Betriebssystem ausgetrickst wird. Sie können von einem Schadprogramm eingesetzt werden, und zwar nicht um die Spuren der eigenen Aktivität zu verbergen, sondern um sich im System zu vergraben oder AV-Lösungen zu umgehen.

Nach einer relativ langen Zeitspanne, in der keine neuen Rootkits auf der Bildfläche erschienen, brachte das Jahr 2008 neue Herausforderungen für die AV-Industrie. Ein neuer Schädling trat auf, der angeblich den Bootsektor infizierte: Sinowal alias Mebroot alias StealthMBR. Viele AV-Lösungen sind immer noch nicht in der Lage, ihn zu erkennen, geschweige denn die befallenen Rechner zu desinfizieren. Dieses Rootkit – oder besser: Bootkit, da es während der Bootsequenz ausgeführt wird – basiert auf dem Code von eEye Bootroot. Im Grunde ist es weniger ein eigenständiges Schadprogramm, als vielmehr ein Tool zum Verbergen von Trojanern jeglicher Art. Das lässt vermuten, dass Sinowal im Cyber-Underground (wahrscheinlich gegen eine gewisse Gebühr) verbreitet und möglicherweise zukünftig in vielen anderen Schadprogrammen eingesetzt werden wird.

Wenn auch weniger beachtet, so handelt es sich auch bei dem Tool „CmRegisterCallback“ um eine wichtige neue Technik. Die Funktionen des Tools wurden von Microsoft erstellt, um Entwicklern das Verbergen von Objekten in der Registry zu erleichtern. Eine Reihe technisch ausgefeilter Programme, unter anderem Bulknet, macht sich diese Technik zunutze.

Fazit

Rootkits machten dieselbe Entwicklung durch wie Spyware. Zunächst wurden Rootkits als separate Malware-Klasse identifiziert. Dann gab es einen großen Medienhype, der die Veröffentlichung einer Vielzahl von Anti-Rootkit-Tools nach sich zog und bewirkte, dass AV-Unternehmen auf diese Entwicklung reagierten. Mittlerweile haben sich beide, Rootkits sowie Spyware, in den allgemeinen Malware-Strom eingereiht und verursachen keine besondere Aufregung mehr. Dennoch ist das Konzept, Systemfunktionen zu umgehen, um etwas Offensichtliches zu verbergen, immer noch aktuell und höchstwahrscheinlich werden Anwender und AV-Unternehmen immer wieder mit neuen Bedrohungen konfrontiert werden, die Tarnkappentechniken verwenden.

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.