Windows: Alternative Datenströme (ADS)

Mit Hilfe von sogenannten alternativen Datenströme (ADS), können im Dateisystem NTFS, zusätzliche Informationen / Daten zu den Hauptdaten gespeichert werden. Da Windows die alternativen Datenströme nicht standardmässig anzeigt, werden diese auch verwendet um Malware oder Daten zu verstecken.

Erstellen eines ADS

Ein ADS wird mit einem Doppelpunkt an eine Datei angehängt: „Dateiname:AD-Streamname“

Anhängen eines Textes:


echo "Ich bin nicht sofort Sichtbar" > normaler.txt:unsichtbar.txt

Schauen wir mit dem Windows-Explorer das Verzeichnis an, in dem die Datei liegt, können wir nur die Datei „normaler.txt“ sehen. Diese Datei scheint jedoch keine Daten zu enthalten, da sie 0 KB gross ist.

normaler.txt
normaler.txt

Anhängen einer Datei:

Es können beliebige Binär- Asciidateien gespeichert werden. In diesem Beispiel wird die „netcat.exe“ angehängt.


type nc.exe > normaler.txt:security.exe

Ausführen einer Datei im ADS

In den meisten Beispielen, im Internet, wird die angehängte Exe-Datei direkt mit dem Befehl start ausgeführt:


start c:\tmp\ads\normaler.txt:security.exe

Leider funktioniert dies bei mir unter Windows 7 nicht. Wird aber ein Systemlink auf diesen ADS gemacht, kann Netcat ausgeführt werden. Daher erstelle ich zuerst ein Systemlink auf diesen ADS:


mklink happy.exe c:\tmp\ads\normaler.txt:security.exe

Jetzt kann mit dem Befehl start Netcat ausgeführt werden:


start c:\tmp\ads\happy.exe

Anzeigen von AD-Streams

Windows 7 / Windows Vista:

Ab Windows Vista wurde der Befehl dir mit dem Parameter „/R“ erweitert. Dieser listet alle dazugehörigen AD-Streams einer Datei auf.

dir /R
AD-Stream
Auflisten von AD-Streams

Windows XP / Windows 2000:

Bei den früheren Windows Versionen musste ein zusätzliches Tool verwendet werden um die AD-Streams anzuzeigen. Dabei kann das Command-Line Tool Streams 1.56 verwendet werden.

Auflisten von AD-Streams mit dem Command-Line Tool Streams
Auflisten von AD-Streams mit dem Command-Line Tool Streams

Als alternative kann auch die GUI-Basierte Anwendung AlternateStreamView v1.35 verwendet werden.

AlternateStreamView v1.35
AlternateStreamView v1.35

Nützliche Links

ADS Wikipedia
Dissecting NTFS Hidden Streams
Alternate Data Streams als Versteck für Schädlinge

Command-Line
mklink Dokumentation
type Dokumentation
start Dokumentation
echo Dokumentation
dir Dokumentation

Tools
AlternateStreamView v1.35
Streams 1.56