Das Dateisystem NTFS ermöglicht das Speichern von Daten in alternativen Datenströmen (auch Data-Streams, Alternate Data Streams bzw. ADS). Mit solchen Data-Streams lassen sich Daten so in einer Datei verbergen, dass diese für den Windows Explorer nicht sichtbar sind. Allerdings gibt es Programme, die solche Data-Streams anzeigen und löschen können.
Normalerweise werden Daten in den unbenannten Data-Stream einer Datei geschrieben. Dazu muss nur der Name der Datei angegeben werden, etwa "readme.txt". Mit jedem Texteditor kann diese Datei dann geöffnet und angezeigt werden. Möchte man auf einen bestimmten Data-Stream einer Datei zugreifen, muss - ohne Verwendung spezieller Programme - der Name dieses Data-Streams bekannt sein. Der Name des Data-Streams wird mit einem Doppelpunkt vom Dateinamen getrennt. Ist der Dateiname beispielsweise "readme.txt" und die Daten sollen in den Stream mit dem Namen "secret" geschrieben werden, lautet der Dateiname "readme.txt:secret".
Gefällt dir meine Webseite, meine Freeware-Programme oder Online-Tools?
Dann spende bitte per PayPal und hilf mit, den Inhalt weiterhin kostenlos anbieten zu können - jeder Betrag ist willkommen!
Das Erstellen eines alternativen Data-Streams ist denkbar einfach. In der Konsole reicht eine Ausgabeumleitung, um einen eigenen unsichtbaren Data-Stream zu erstellen. Möchte man an die Datei "readme.txt" einen Stream mit dem Namen "secret" anhängen, genügt die Umleitung der Ausgabe des ECHO-Befehls.
echo Das ist ein geheimer Text > readme.txt:secret
Hier wurde mit dem Befehl ECHO der Text "Das ist ein geheimer Text" ausgegeben. Das Größer-Zeichen bewirkt, dass dieser Text nicht am Bildschirm gedruckt wird, sondern in die Datei "readme.txt", als Data-Stream mit dem Namen "secret" geschrieben wird.
Damit können jedoch nur kurze Texte in einen Data-Stream geschrieben werden. Abhilfe schafft hier die Möglichkeit, auch ganze Dateien mit dem Befehl TYPE auszugeben.
type secret.txt > readme.txt:secret
Dieser Befehl gibt den Inhalt der Datei "geheim.txt" in den Stream "geheim" der Datei "readme.txt" aus. Aber Vorsicht: Der Befehl TYPE kann nicht mit Data-Streams arbeiten. TYPE gibt den Inhalt der Textdatei lediglich aus, das Schreiben dieser Daten in den Stream übernimmt der Befehlsprozessor ("cmd.exe"). Wenn die Informationen in einem Data-Stream ausgegeben werden sollen, muss dazu der Befehl MORE verwendet werden, der im Gegensatz zu TYPE mit Streams umgehen kann. Um nun die Streams wieder auszugeben, verwendet man den Befehl
more < readme.txt:secret
Da im Stream "secret" der Inhalt einer anderen Datei steht, könnte eine Umleitung dafür sorgen, dass die geheimen Daten in eine neue Datei geschrieben werden. Dies geschieht z.B. mit dem Befehl
more < readme.txt:secret > secret.txt
Der Befehl MORE kommt mit Binärdateien nicht zurecht. Daher muss zum Extrahieren eines solchen Data-Streams ein anderes Programm verwendet werden. Hier bietet sich das Programm "CAT" aus dem Programmpaket "UnxUtils" an.
Damit sehen die Kommandos zum Schreiben von binären Data-Streams wie folgt aus:
type secret.zip > readme.txt:secret
oder
cat secret.zip > readme.txt:secret
Und zum Auslesen:
cat readme.txt:secret > secret.zip
Gefällt dir meine Webseite, meine Freeware-Programme oder Online-Tools?
Dann spende bitte per PayPal und hilf mit, den Inhalt weiterhin kostenlos anbieten zu können - jeder Betrag ist willkommen!