Sicherungsmaßnahmen zur Systemwiederherstellung






Aufspüren von Rootkits

Aufgrund der Zunahme der Nutzung von Viren-, Malware- und Autostartscannern und Programmen zum Untersuchen des Autostarts, wie z.B. HijackThis, versuchen Malwareautoren ihre Erzeugnisse vor dem Entdecken zu schützen. Dies geschieht mit sogenannten Rootkits (Root ist der Admin bei Unix/Linux) d.h. ein Programm wird installiert, dass in Interaktion zwischen Windows-API (Aplication Program Interface = Programmschnittstelle) und den Anwendungen tritt und größtenteils die Informationen filtert und nur solche durchlässt bzw. generiert, die jeglicher Software, also auch Viren- und Malwarescannern ein "gesundes" System vortäuschen.

Unrühmliches Beispiel dazu war das Rootkit, das von einigen Audio-CDs der Marke Sony installiert wurde, um eigene Schnüffelaktionen zu verstecken und den Anwender vom illegalem Kopieren abhalten sollte. Malwareautoren sprangen schnell auf den Zug auf und benutzten das Rootkit, um eigene Schadsoftware zu verstecken.

Rootkits installieren sich nicht selbstständig, sondern werden über eine Sicherheitslücke des Betriebssystems oder einer installierten Software oder durch Täuschung des Users installiert, indem man ihn dazu bringt, eine ausführbare Datei zu starten. (Mailanhang, Crack, etc.) Das muss noch nicht einmal der Rootkit selbst sein. Es reicht ein Trojan-Downloader aus, der dann aus dem System heraus, unbemerkt von jeglicher Sicherheitssoftware, den Schadcode nachladen kann.

Rootkits, die sich im Systemkern verankern, bezeichnet man als Kernel-Rootkits, die die auf Anwendungsebene laufen, werden User-Rootkits genannt und sind nicht so gefährlich, da sie nicht alle Systemanfragen filtern. User-Rootkits sind es auch, die den Taskmanager ausblenden, um den eigenen Prozess vor dem Entdecktwerden zu schützen.

Nun ist niemand dagegen gefeit, dass man ihm Schadsoftware unterschieben kann.
Also muss es auch Möglichkeiten geben, sich zu vergewissern, dass sein System nicht mittels eines Rootkits kompromittiert worden ist. Vorher sollte man sich aber Gedanken machen, wie man einem Rootkitbefall begegnet, was einen "worst case" (Software-GAU) gleichbedeutet.

Dazu gibt es folgende Möglichkeiten: (eigene Beobachtungen und Erfahrungen)
  1. Nach jeder Onlinesitzung ein sauberes Image der Systempartition aufspielen.
    Das ist aber für die meisten User nicht zu realisieren, weil dazu ein aktuelles Image bereitstehen sollte, damit man nicht nach jeder Wiederherstellung Programme neu installieren, Änderungen und Aktualisierungen usw. nachholen muss. Also eine recht unbequeme Methode, sich Malware vom Hals zu halten.
  1. Mit Virtualisierungssoftware online gehen, wie z.B. VMWare, mit der eine virtuelle Installation geladen wird, wobei beim Beenden Schädlinge nicht überleben.
    Dazu kann man auch den Onlinegang mittels Knoppix- oder anderen "Live-CDs" zählen. (Eine CD von der ein komplettes Betriebssystem mit Anwendungen usw, gebootet wird.)
    Das ist allerdings mangels Zeit, Ressourcen und Kenntnissen für die meisten User auch kaum zu realisieren.
  1. Eine Parallelinstallation des Betriebssystems installieren und damit online gehen.
    Das hört sich erst einmal gut an, weil es nur zu Onlinezwecken genutzt wird. Da diese Installation aber genauso anfällig ist, wie die ursprüngliche, wird das Risiko nur verlagert und das mit einem erhöhten Aufwand, da man ja mehrere Betriebssysteme parallel patchen und aktuell halten muss. Dazu kommt ja noch der unweigerliche Datenaustausch, der dazu führen kann, dass eine Infektion von einem Betriebssystem auf das andere überspringt.
  1. Hintergundscanner, die ständig den RAM und die Registry scannen.
    Kann eine Hilfe sein, wird aber bereits bei systembedingten Änderungen Alarm schlagen und damit zur Geduldsprobe; solange, bis der User den Scanner entnervt abschaltet oder in den "Silent-Modus" schaltet und dann von einer möglichen Infektion gar nichts mitbekommt, bzw. erst dann, wenn Log-Files nachgeprüft werden; wenn es also bereits zu einer Infektion gekommen und damit zu spät ist. Dazu kann Fehlbedienung oder Schadcode, der gezielt solche Scanner abschaltet oder umgeht, den Schutz wirkungslos machen, während der User sich in einer trügerischen Sicherheit wähnt.
  1. Eine Kombination von Sicherheitsscanns, Systemsicherungen und Sicherungungen persönlicher und wichtiger Daten.
    Dies ist eine Methode, die ich für jeden User für zumutbar halte, da er selbst abwägen kann, worauf er den Schwerpunkt legt. Wird viel am System verändert, liegt der Schwerpunkt bei häufigen Sicherungen, wobei diese mindestens einen Monat abdecken sollten; also ca. 4 Images, jeweils eines pro Woche.
    Wer wenig installiert, kann mit 3 Images einen Zeitraum von 3 Monaten abdecken, wenn z.B. nach jedem MS-Patchday ein Image erstellt wird.

    Vor dem Backup, sollte stets eine gründliche Reinigung des Systems und vollständige Scanns mit aktuellen Viren- und Malwarescannern erfolgen.

    Wer sich noch nicht mit Imagesicherung befasst hat, kann dazu das Tutorial Sicherungsmaßnahmen zur Systemwiederherstellung durchlesen, um erste Anregungen zu erhalten.

    Perönliche und wichtige Daten müssen hingegen regelmäßig, bei Veränderungen gesichert werden.
    Das kann man auch nicht schleifen lassen, da es einen mit Sicherheit trifft, wenn zufällig eine Sicherung ausgelassen wurde.

    Dazu gibt es Tools, die das automatisch übernehmen, z.B. wenn ein Imageprogramm lediglich inkrementielle Sicherungen zu einem Grundimage bei jedem Systemstart, bzw. Runterfahren anfertigt. (Es werden nur Veränderungen gesichert.) Im Grunde ist das das Funktionsprinzip der Systemwiederherstellung von Windows XP, nur dass bei einem Imageprogramm die Sicherungen nicht im anfälligen System verbleiben, sondern auf anderen Laufwerken/Partitionen, relativ sicher vom Umfeld geschützt, abgelegt werden.

Scannen nach Rootkits

Ich persönlich habe das nur mal aus reiner Neugierde gemacht, aber leider nichts schädliches finden können.
Im allgemeinen sollte man es mit der Sicherheit nicht übertreiben, sondern lieber auf plötzlich auftauchende Unregelmäßigkeiten im Verhalten des Betriebssystems achten.
Treten solche auf, sollte man aber direkt reagieren.

Folgende Reihenfolge hat sich bewährt:
  1. Onlineverbindung sofort beenden, notfalls den Netzwerkstecker/USB-Anschluss des Modems ziehen, falls das System nicht mehr reagiert. Den Stromstecker zu ziehen, halte ich für zu riskannt, da dann Datenverlust droht, der sich in einer Meldung äußern kann, dass wichtige Systemdateien fehlen oder beschädigt sind und Windows nicht mehr startet.
  1. Überlegen, was die letze Aktion gewesen war, bevor der PC sich seltsam verhalten hat. Wenn man das weiß, stehen die Chancen gut, dass man die Ursache einer möglichen Infektion oder Fehlers eingrenzen und der Gefahr in Zukunft aus dem Wege gehen kann.
  1. Beweise sichern, z.B. mit Imagesicherung auf DVD. Falls wichtige Daten, wie Kreditkartennummern etc. gestohlen wurden und es zu einem Schaden kommt, hat man dann Belege in der Hand, womit man bessere Karten bei einer Anzeige hat.
  1. Folgende Software eignet sich zum Aufspüren von Rootkits:

    Es wird kein Anspruch auf Vollständigkeit erhoben. Auch wird darauf hingewiesen, dass deren Einsatz auf Risiko des Nutzers geschieht. Falls mit diesen Tools etwas Verdächtiges gefunden werden sollte, sollte man vor weiteren Massnahmen sicherheitshalber googlen und falls dabei keine zufriedenstellenden Infos erlangt worden sind, in einschlägigen Foren nachfragen. Vor dem Posten bitte auch nochmal die Forensuche benutzen, um Mehrfachpostings zum gleichen Problem zu vermeiden.


    Sysinternals Prozess Explorer (Alternative zum Task-Manager)

    Ja, der gute, alte Taskmanager kann bereits einen Hinweis liefern, denn er zeigt die laufenden Prozesse an. Erste Anlaufstelle bei Unregelmäßigkeiten, da ein Rootkit als Prozess läuft. Manche Kits schalten den Taskmanger einfach ab. Die übliche Meldung die dann erscheint lautet in etwa: "Taskmanager ist von einem Administrator abgeschaltet worden". Das ist dann verwirrend, wenn der User bereits unter Adminrechten arbeitet, ist aber korrekt, da jegliche Software im Adminkonto Adminrechte hat, so auch der Rootkit. Windows macht da keinen Unterschied.

    Wer in einem eingeschränkten Benutzerkonto arbeitet, hat somit bereits einen Grundschutz vor Schadsoftware, die Adminrechte braucht, um sich festsetzen zu können.
    Schadcode, der sich im Benutzerkonto einnisten konnte, bleibt darin isoliert, außer er gelangt an höhere Rechte, was i.d.R. durch Ausnutzen von Sicherheitslücken geschehen kann. Dies kann man vermeiden, indem stets aktuelle Versionen einer Software benutzt, sowie Sicherheitslücken direkt nach dem Bekanntwerden geschlossen werden.

    Von Software, die trotz bekannter Sicherheitslücken nicht oder nur schleppend gepatched wird, muss man sich allerdings trennen, oder das Risiko bewußt eingehen. Zumindest kennt man das Risiko und kann sich entsprechend besonders vorsichtig bei dessen Gebrauch verhalten, z.B. indem dabei keine Onlineverbindung betrieben wird.

    Der Prozess-Explorer kann zusätzlich auch verschiedene Prozesse von Rootkits anzeigen, die im User-Mode laufen. Zudem ist eine Übersicht über wichtige Systemparameter jederzeit möglich. Weiterhin bietet der Prozess Explorer auch die gezielte Suche nach nachgeladenen DLL Dateien und Zugehörigkeit zur auslösenden Programmdatei.

    Spätestens mit Erscheinen von Windows Vista wird es allerdings schwierig, unbekannte Prozesse aufzuspüren, da standardmäßig bereits über 60 Prozesse direkt nach der Installation laufen. Bei Windows 2000 / XP bleibt es aber mit 20-30 Prozessen noch überschaubar.


    Sysinternals Autoruns

    Listet Autostart- und Programme, die per Login gestartet werden auf. Es ist auf den ersten Blick sehr verwirrend. Wenn man es aber erlernt hat, ist es ein mächtiges Werkzeug, mit dem man Prozesse durchleuchten kann, indem man z.B. direkt in google suchen oder in den Prozess-Explorer wechseln kann.


    Sysinternals Diskmon und Sysinternals FileMon

    Mit diesen beiden Tools können Zugriffe auf Laufwerke und einzelne Dateien in Echtzeit festgehalten werden. Da damit Zugriffe auf Systemdateien protokolliert werden können, eignen sie sich auch, um Rechte von Software anzupassen, die in eingeschränkten Benutzerkonten nicht laufen will.


    Sysinternals Stream

    Damit können ADS "Alternate Data Streams" auf NTFS-Partitionen gesucht werden. In ADS werden erweiterte Dateiinformationen, wie Sicherheitseinstellungen angelegt. Darin lassen sich aber auch Schädlinge verstecken, die im Explorer oder mit dem DIR-Befehl nicht sichtbar gemacht werden können. Man kann sich aber recht einfach solcher Streams entledigen, indem die Datei auf eine FAT-Partition verschoben wird. ADS gibt es nur unter NTFS. Die Sicherheitseinstellungen der Datei gehen dabei auch verloren, nehmen aber die des übergeordeten Verzeichnisses beim Zurückkopieren wieder an. Einige Programme nutzen aber auch Streams, um Informationen abzulegen (vergleiche Scanergebnisse mit RootkitRevealer). Manche Virenscanner sind aber noch nicht einmal in der Lage Streams zu scannen.

    ADS sind ausführbar. Allerdings wird dies mit großer Sicherheit von einem Hintergrundwächter eines Antivirenprogramms bemerkt, vorausgesetzt dass der Schädling bekannt ist.


    Sysinternals AccessNum

    Damit lässt sich ermitteln wer und was Zugriff auf das Dateisystem, Dateien und Registry-Schlüssel hat. Es dient zum Einkreisen verdächtiger Dateien in Verbindung mit anderen Tools.


    Sysinternals RegMon

    Es zeigt an, welche Datei auf Registry-Schlüssel und Werte zugreift, welche Änderungen durchgeführt und ob neue Schlüssel angelegt wurden. Man kann damit Zugriffe von verdächtigen Dateien über längere Zeit protokollieren.


    NTUtility ActivePorts und Sysinternals PortMon (Konsolenbefehl netstat ergänzende Tools)

    Zeigen in Echtzeit Zugriffe auf Ports, oder horchende Ports an. Damit können Verbindungsversuche von Trojanern und Rootkits aufgedeckt werden.
    Ich habe es mir zur Gewohnheit gemacht, gleich nach dem Installieren von neuer Software solche Tools einzusetzen, um Netzwerkaktivitäten festellen zu können. Einige Programme sind danach gleich wieder deinstalliert worden. Diese Methode ziehe ich den Protokollfunktionen und diversen Meldungen von Desktopfirewalls vor, da dazu nichts installiert werden muss und kein zusätzlicher Code die Registry und das System gefährden kann.


    RootkitRevealer und StriderGhostBuster

    Sie können Rootkits im User- und Kernel-Mode erkennen. Erkennbar sind Rootkits, die Dateien mit einer bestimmten Zeichenfolge tarnen (z.B. HackerDefender). Nicht erkennbar sind Rootkits, die die Windows-API kontrollieren und jede Systemanfrage abfangen.

    Mit RootkitRevealer habe ich mich etwas näher beschäftigt, so dass ich hier ein paar Hinweise dazu geben möchte: Es wird mit Adminrechten gestartet.
    Dann führt man den Scan aus und speichert das Ergebnis ab. Bei mir wurden über 20.000 Einträge gefunden, was mich zuerst schockierte. Beim näheren Betrachten, waren es aber lediglich zwei verschiedene Arten, die sich als gutartig herausstellten.

    Art 1: Backup von fdik (Script Windows-Dienste abschalten) Beispiele:

    HKLM\SOFTWARE\fdik\Windows-Dienste abschalten\Backup\telnet 19.05.2005 11:53 0 bytes Security mismatch.
    HKLM\SOFTWARE\fdik\Windows-Dienste abschalten\Backup\telnet\DefaultIcon 19.05.2005 11:53 0 bytes Security mismatch.
    HKLM\SOFTWARE\fdik\Windows-Dienste abschalten\Backup\telnet\shell 19.05.2005 11:53 0 bytes Security mismatch.
    HKLM\SOFTWARE\fdik\Windows-Dienste abschalten\Backup\telnet\shell\open 19.05.2005 11:53 0 bytes Security mismatch.
    HKLM\SOFTWARE\fdik\Windows-Dienste abschalten\Backup\telnet\shell\open\command 19.05.2005 11:53 0 bytes Security mismatch.

    Art 2: von Kaspersky-Antivirus (Version 5) angelegte Streams Beispiele:

    C:\Dokumente und Einstellungen\********\Anwendungsdaten\Macromedia\Flash Player\macromedia.com\support\flashplayer\sys\#local\settings.sol:KAVICHS 07.01.2006 14:29 100 bytes Hidden from Windows API.
    C:\Dokumente und Einstellungen\********\Favoriten\Hard- und Softwareunterstützung\Sonst. Hardware\Lumberjacker.de - Hardware, Modifikationen, Workshops.url:KAVICHS 07.01.2006 14:30 132 bytes Hidden from Windows API.
    C:\Dokumente und Einstellungen\********\NTUSER.DAT:KAVICHS 07.01.2006 17:47 36 bytes Hidden from Windows API.

    ******** Usernamen ist editiert.


    WinDiff

    Bestandteil der Support-Tools der Windows CD. Damit lassen sich Änderungen zwischen einem normalen und einem sauberen Systemstart (von Systemstartdiskette) feststellen. Bei Unterschieden, kann man mit hoher Wahrscheinlichkeit davon ausgehen, dass ein Rootkit aktiv ist, da von einer sauberen Systemstartdiskette keine Rootkits geladen werden.


    Windows Kernel Debugger

    Damit können Veränderungen am System Kernel festgestellt werden. Das Tool ist allerdings sehr kompliziert und nur in englisch. Kenner können damit aber Manipulationen am Kernel erkennen, die auf Rootkitaktivitäten hindeuten können.

    Das sind eine Menge Tools, mit denen man Rootkits aufspüren kann. Keines ist aber in der Lage einen zu entfernen!

    Zu erwähnen wäre noch ein Tool, das den Anspruch erhebt, Rootkits nicht nur erkennen zu können, sondern auch zu entfernen. Darüberhinaus soll Microsoft selbst an einem solchen Tool arbeiten.


    F-Secure Blacklight

    Eine eigenständige Beta-Version kann runtergeladen werden, ist aber laufzeitbegrenzt. Blacklight ist Bestandteil der F-Secure Internet Security Suite 2006. Ein kurzer Test bei dem 7 von 10 Rootkits gefunden wurden bei Testticker.

    Außerdem will MS selbst gegen Rootkits vorgehen, was sich in deren Tools wie "Entfernen bösartiger Software" (wird per Windows Update jeden Monat aktualisiert) und Antispyware Beta widerspiegelt, sowie in weiteren Projekten.
    Ob sie erfolgreich sein werden, wird die Zukunft zeigen.

    Erfolg verspricht auch das Scannen von einer Boot-CD aus, da das Betriebssystem von Aussen untersucht werden kann und keine Rootkits aktiv sind, die Systemzugriffe verhindern können.
    Gute Erfahrungen habe ich mit der PE Builder CD gemacht, wobei ein komplettes Windows XP von CD gebootet und damit auch diverse Plug-In Programme, wie Viren-, Malware- und Autostartscanner gestartet werden können, die allesammt vollständigen Zugriff auf die Bereiche des "Problemkandidaten" haben. Damit kann man dann sogar Imagesicherungen erstellen und zurückschreiben, CDs und DVDs brennen und die Hardware testen. Das Einsatzspektrum einer solchen CD ist universell, so dass sie zu den wichtigsten Analysetools eines Kenners gehört. Für Anfänger ist sie weniger geeignet, da neben der komplizierten Herstellung, meist auch die sinnvolle Anwendung fehlt. Auch ist so eine CD nicht lange aktuell, da ein altes Servicepack oder eine abgelaufene Lizenz (z.B. bei einem enthaltenen Virenscanner) den Nutzwert stark einschränken können.
    Es kann deshalb sinnvoller sein, die Notboot-CD eines Virenscanners bei Bedarf auf einem sauberen PC für eine anstehende Untersuchung mit aktuellen Signaturen neu zu brennen. Man muss da abwägen, welchen Aufwand man betreiben kann.

    Das Entfernen eines Rootkits heißt aber noch lange nicht, dass damit die Gefahr beseitigt worden ist. Es wird nur eine Hürde genommen, um den weiteren Schaden begutachten zu können, der unter diesem "Schutz" stattgefunden hat.

    Man kan auch Hinweise auf Rootkits erlangen, wenn man gefundene Malware, wie Trojan-Downloader, Droper und ähnliche nicht bedenkenlos löscht und sich dann zurücklehnt, sondern auf einschlägigen Seiten, wie sie z.B. von Sophos bereitgestellt werden, nach deren Auswirkungen sucht. So kann man weitere Informationen erhalten, wie z.B.: "lädt Backdoor XY" oder "Rootkit Z" nach und dann gezielt nach diesen weitersuchen.

  1. Hat man die Gewissheit oder einen begründeten Verdacht, dass ein Rootkit aktiv war/ist, kann die Konsequenz nur heißen: Formatieren und Neuaufsetzen. Sicherheitshalber von allen Festplatten, um eine Reaktivierung des Rootkits zu vermeiden.

    Die weitere Suche sehe ich als "sportliche Betätigung" an, da ein Neuaufsetzen meistens nicht so zeit- und nervenintensv ist und mehr Erfolg verspricht, Schädlinge endgültig wieder loszuwerden. Nach tage- oder gar wochenlangem "Herumdoktorn" am System steht sowieso das Neuaufsetzen. Manchmal kann es aber heilsam sein, wenn ein Betroffener erst einmal mühevoll unter fachkundiger Anleitung versucht, sein System zu desinfizieren, um dann schlussendlich die Sinnlosigkeit seiner Bemühungen zu erkennen.

    Das Neuaufsetzen kann durch Wiederherstellen von sauberen Images beschleunigt werden.
    Die noch zu installierenden Programme sollten dann aber von Originaldatenträgern oder sicheren Quellen installiert werden. Persönliche Daten hat man ja vorsorglich auf externen Datenträgern gesichert und können davon wiederhergestellt werden. Wichtige Daten sowieso, denn sonst wären sie ja nicht wichtig.

    Kennwörter, Zugangsdaten usw. gelten auch nicht mehr als geheim. Man sollte sie schleunigst ändern, bzw. sperren, um einem Identitätsdiebstahl vorzubeugen. Dies ist ein vorrangiges Ziel von Malware.

Der Spruch "nicht gesicherte Daten sind verlorene Daten" passt hier wie die Faust aufs Auge. Damit ende ich. Es gäbe sicher noch weitere Verhaltensregeln. Diese werden aber bereits in anderen Sicherheitsartikeln genannt und gelten themenübergreifend.

Quelle: © deoroller, Januar 2006

Weiterführende Links:
Urheberrechtliche Hinweise!

- nach oben -
Letze Aktualisierung: 13.02.2006