Rootkit


Rootkits (deutsch: Wurzel-Baukasten, Administratorenbausatz) sind eine Klasse von schadhafter Software (Malware), die die Präsenz eines Angreifers auf einem kompromittierten System verschleiert. Rootkits nutzen häufig die untersten Ebenen eines Betriebssystems, um das Vorhandensein von Spyware, Viren oder Trojanern zu verdecken und dem Angreifer durch das Zusammenspiel verschiedener Programme ein gewisses Maß an Kontrolle über das System zu geben. Angreifer gelangen über Bugs und Sicherheitslücken in das System und können mit einem Rootkit ihre Anwesenheit verdecken, ohne dass der Nutzer des System dies bemerkt. Das Rootkit ist jedoch nur der Teil des Angriffes, der zur Tarnung dient. Es soll die Ausführung von Aktionen und Anwendungen durch den legitimen Nutzer nicht verhindern, sondern vielmehr dafür sorgen, dass der Angriff des Hackers nicht entdeckt wird – unabhängig davon, ob der Angreifer Anmeldevorgänge durchführt, Prozesse verändert oder Dateien kopiert. Rootkits werden auch als Tarnviren und teilweise auch als Trojanische Pferde bezeichnet.

Allgemeine Informationen zum Thema

Der Begriff Rootkit geht auf eine Sammlung von Tools und Anwendungen zurück, die Zugriff auf einen Computer oder ein Netzwerk auf der Ebene eines Administrators ermöglichen. Root bezieht sich dabei auf das Adminkonto von unix- und linuxbasierten Betriebssystemen, während Kit die Komponenten bezeichnet, die die Implementierung auf dem System vornehmen.[1] Da Unix- und Linuxbetriebssysteme auf einem Baukastenprinzip fußen, wurden einzelne Komponenten und Kommandos bereits in den Neunziger Jahren für Angriffe verwendet. Unix-Befehle wie Ps (Prozessstatus) und Passwd (Passwortänderung) geben dem Angreifer zum Beispiel einen Überblick über alle laufenden Prozesse und erlauben eine Passwortänderung, wenn sie entsprechend modifiziert wurden. Diese klassischen Rootkits werden auch als Application-Rootkits bezeichnet, da sie auf den Programmbibliotheken von Unix und Linux basieren und sich stets auf einzelne Anwendungen oder Systemkomponenten konzentrieren.

Ein Angreifer greift auf diese Weise gezielt in das System ein und nutzt diese in der Systemarchitektur vorhandenen Elemente für einen Exploit. Weil der Angriff auf den unteren Ebenen eines Systems stattfindet und der Angreifer sich als Admin ausgibt, bleiben Rootkits meist unentdeckt, falls sie nicht von spezialisierter Software aufgespürt werden können. Mittlerweile existieren Rootkits für viele verschiedene stationäre und mobile Betriebssysteme – inklusive Android und iOS. Doch nicht alle Rootkits zeichnen sich durch die Absicht aus, ein System zu kompromittieren und diese Infiltration zu verdecken. Im Rahmen des Digital Rights Managements gab es zum Beispiel Fälle, in denen Hersteller verschiedene Rootkits benutzten, um Kopierschutz und Copyright-Mechanismen vor dem Nutzer zu verstecken und unbemerkt DRM-Mechanismen im System zu implementieren.[2] Und offizielle Belastungs- und Sicherheitstests von Computern, Software und Netzwerken können ebenso gut mit Rootkits umgesetzt werden. Hier ist das Ziel jedoch das Finden der Sicherheitslücke und nicht deren böswillige Ausnutzung.

Funktionsweise

Rootkits bestehen in der Regel aus mehreren Komponenten, die spezielle Aufgaben übernehmen und an das jeweilige Betriebssystem angepasst sind. Im Folgenden ein möglicher Ablauf:[3]

  • Eine Trojaner-Software verschafft sich Zugang zu einem System, um das Rootkit dort zu installieren. Via Spoofing, Mal- und Spyware versucht der Angreifer (engl.: Cracker) zunächst einen normalen Zugang zu bekommen, um sich anschließend die Adminrechte für das System zu sichern. Auch über Email-Anhänge, herkömmliche Software und Website-Besuche (Drive by Download) können Rootkits auf ein System gelangen.
  • Mithilfe eines Sniffers (deutsch: Lauscher) wird der Netzwerkverkehr belauscht und die systemkritischen Zugangsdaten werden selektiert. Tools wie Keylogger können zusätzlich die Tastaturanschläge und Mausbewegungen erfassen, bevor Eingaben wie PIN oder Passwörter vom System verschlüsselt werden.
  • Dank der Zugangsdaten kann der Angreifer sich eine Hintertür (engl.: Backdoor) anlegen und Systemdateien so verändern, dass er unentdeckt bleibt. Er hat einen sogenannten Remote-Access: Ein Fernzugriff auf das Betriebssystem. Oft kommen hier API-Aufrufe und Betriebssystemfunktionen zum Tragen, die vom Angreifer umgewandelt und umgekehrt werden - unter anderem zu Tarnungszwecken.
  • Je nach Zweck des Angriffes kann der infiltrierte Rechner nun für weitere Aktionen verwendet werden. Beispielsweise für den massenhaften Versand von Spammails und das Pharming, für größer angelegte DDoS-Attacken oder zur Speicherung von sensiblen Daten.

Arten von Rootkits

Grundsätzlich werden Rootkits danach unterschieden, in welchen Bereichen eines Systems sie wirksam sind und wie gut sie sich verstecken können.[4]

  • Application Rootkits: Application Rootkits haben aufgrund veränderter Programmdateien Zugriff auf Systemprogramme. Solche Rootkits lassen sich relativ einfach identifizieren und werden heutzutage kaum noch verwendet.
  • Cache Rootkits: Cache Rootkits sind lediglich im Arbeitsspeicher eines Systems wirksam. Sobald das System neugestartet wird, wird der Arbeitsspeicher und somit das Rootkit gelöscht.
  • User Mode Rootkits: Diese Rootkits benötigen keinen Zugriff auf die unteren Ebenen des Systems. Sie führen stattdessen eine DLL-Datei aus, die durch den Aufruf von API-Funktionen den Datenverkehr des Systems manipuliert. Dies wird auch als DLL Hijacking oder DLL Injection bezeichnet.
  • Kernel Mode Rootkits: Kernel Rootkits ersetzen Codebestandteile des Systems durch manipulierte Dateien. Der Kernel ist der innere Kern des Betriebssystem mit Zugriff auf die Hardware. Deshalb werden diese Rootkits anhand von Ringen (Ring 0, Ring 1, 2, 3) unterschieden, die sich auf die verschiedenen Ebenen des Systems beziehen.[5] Auf der untersten Ebene sind tiefgreifende Veränderungen des Systems möglich. Kernel Rootkits werden ebenfalls als Loadable Kernel Module (LKM) beschrieben, weil derartige Modifikationen oft durch Nachladen der Kernelmodule realisiert werden.
  • Virtual Machine Based Rootkits: Virtuelle Maschinen simulieren das Vorhandensein eines physischen Prozessors. Die meisten modernen Computer nutzen virtuelle Maschinen und Prozessoren zu Optimierungszwecken in Sachen Multitasking und Leistungsausbeute. Virtual Machine Based Rootkits transportieren ein Betriebssystem in eine virtuelle Umgebung, sodass das Rootkit mitsamt virtueller Umgebung nicht oder nur schwer entdeckt werden kann.

Bedeutung für die Suchmaschinenoptimierung

In den meisten Fällen ist es schwer, Rootkits zu identifizieren. Antiviren-Software, Firewalls und verschiedene Detection-Tools können zwar schadhafte Software ausmachen. Aber das Rootkit als solches versteckt sich im System und versucht dem Benutzer vorzutäuschen, dass es Teil des Systems ist. Aus diesem Grund sind Detection-Tools (Intrusion Detection System; IDS) darauf angewiesen, dass sie speziell für das Aufspüren von Rootkits konzipiert wurden. Das bedeutet auch, dass eine Reinigung des Systems erst nach der Installation eines Rootkits stattfinden kann. Rootkit-Detection-Tools werden von vielen Herstellern angeboten. Eine unvollständige Auswahl:

  • Windows Tool zum Entfernen böshafter Software
  • Rootkit Hunter für Mac
  • OSSEC
  • CHKrootKIT
  • Gmer

Diese Scanner und Analyselösungen können Rootkits identifizieren, allerdings säubern sie nicht immer das befallene System. Das wirksamste Mittel gegen Rootkits ist deshalb eine Neuinstallation des Betriebssystems im gesicherten Modus. Unter Umständen muss sogar das BIOS bereinigt werden.

Zudem empfehlen Sicherheitsexperten ein gewisses Maß an Skepsis seitens der Nutzer sowie aktuelle Software: Emailanhänge, Pishingversuche und Websites sollten nicht ohne einen kritischen Blick auf die Seriosität des Angebotes geklickt werden und jegliche Schutz- und Betriebsprogramme sollten unbedingt auf dem neuesten Stand sein. Nur so werden Bugs und Sicherheitslücken, über die Rootkits in das System gelangen, von vorneherein vermieden.[6]

Einzelnachweise

  1. Rootkit: What is a Rootkit? veracode.com. Abgerufen am 16.08.2016
  2. Rootkit searchsecurity.de. Abgerufen am 16.08.2016
  3. Rootkits finden admin-magazin.de. Abgerufen am 16.08.2016
  4. Meister der Tarnung: Was man über Rootkits wissen sollte zdnet.de. Abgerufen am 16.08.2016
  5. Was ist ein Rootkit und welche Arten gibt es? was-ist-malware.de. Abgerufen am 16.08.2016
  6. 10 Dinge, die Sie über Rootkits wissen sollten diagramm.net. Abgerufen am 16.08.2016

Weblinks