Gefahr aus der Schattenwelt
Microsofts NTFS-Dateisystem unterstützt Alternate Data Streams zum zusätzlichen Speichern von Informationen zu einer Datei. Auch Schädlinge können sich in solchen Streams verstecken. Nicht alle Virenscanner erkennen Malware darin zuverlässig.
- Daniel Bachfeld
Bereits seit Windows NT 3.51 unterstützt das von Microsoft entwickelte Dateisystem NTFS (NT File System) sogenannte Alternate Data Streams (ADS) [1]. Darin kann das Betriebssystem zusätzliche Informationen zu einer Datei ablegen, beispielsweise die mit Service Pack 2 eingeführten ZoneIDs, um Dateien als aus dem Internet stammend zu kennzeichnen. Auch Windows-Applikationen nutzen solche Streams seit langem und speichern dort etwa Miniaturbilder für die Vorschau [2]. Jede Datei kann prinzipiell beliebig viele Streams besitzen, die Notation sieht folgendermaßen aus:
Dateiname:Stream-Name
Ăśber die Windows-Eingabeforderung kann der Anwender relativ einfach Streams anlegen und beschreiben:
echo "gemeingeheim" >> beispiel.txt:teststream.txt
Allerdings lässt sich der Stream weder mit dem DOS-Kommando dir noch mit dem Windows Explorer anzeigen. Alles was man sieht, ist die Datei beispiel.txt, der Stream ist quasi unsichtbar. Selbst wenn der Anwender oder eine Applikation mehrere MByte in den Stream schreibt, bleibt die Größe der Datei unverändert. Sogar an ein Verzeichnis lässt sich ein ADS binden. Streams eignen sich so hervorragend, um Daten zu verstecken. Inkonsistenzen der Summe der gespeicherten Dateien und dem noch verfügbaren Speicherplatz auf der Festplatte können auf versteckte Streams hinweisen.
Simsalabim
Um zumindest den Inhalt eines Streams mit Windows-Bordmitteln wieder sichtbar zu machen, ist Notepad nĂĽtzlich -- sofern der Name des Streams bekannt ist.
notepad beispiel.txt:teststream.txt
Allerdings muss man dazu wissen, an welcher Datei der Stream überhaupt hängt. Genau diese Informatonen liefern diverse frei verfügbar Tools, die alle vorhandenen ADS eines Verzeichnisses auflisten [3,4,5,10].Da Streams beliebige Daten aufnehmen können, sind sie auch geeignet, um ausführbare Dateien zu verstecken:
type geheimes_tool.exe > c:\boot.ini:foo.exe
Mit dem simplen Befehl
start c:\boot.ini:foo.exe
erwacht das Programm zum Leben. Der Aufruf kann über ein Programm oder Skript (WSH) erfolgen. Sogar der Aufruf durch die Run-Keys in Registry, bespielsweise beim Neustart, ist möglich. Diese Möglichkeit nutzen auch Viren, Würmer und Trojaner, um sich beim Hochfahren des Systems zu aktivieren. Dass sich Schädlinge in ADS einnisten können, wissen die Hersteller von Antivirensoftware seit mehreren Jahren [6,7]. Der im August 2003 aufgetauchte und immer noch aktive Mass-Mailing-Wurm W32.Dumaru nutzt diese Möglichkeit auch praktisch aus, ebenso wie einige Agobot-Varianten [8] sowie Ad- und Spyware, etwa der IE-Hijacker.