Ein weiteres Problem ist, dass nicht alle Programme mit Dateinamen wie test.txt:Password.txt so gut zurechtkommen wie Notepad. Viele Anwendungen überprüfen einen Dateinamen auf vermeintliche Korrektheit, bevor sie eine Datei öffnen. Das ist – höflich ausgedrückt – eine ungünstige Vorgehensweise.
Programmierer sollten einen Dateinamen zunächst immer, so wie er ist, an das zuständige API wie fopen oder CreateFile übergeben. Wenn das schiefgeht, meldet das Betriebssystem den Fehler "Illegal Filename". Erst danach kann man den Dateinamen untersuchen, um dem Benutzer eine aussagekräftige Fehlermeldung zu präsentieren, warum der Dateiname nicht in Ordnung ist.
Entwickler, die das falsch machen, können sich jedoch darauf berufen, dass auch Microsoft es nicht besser kann. Bild 3 zeigt, dass in der Datei test.txt auch der Stream Test.docx vorhanden ist. Mit dem Kommandozeilenbefehl winword test.txt:Test.docx kann man diesen Stream zwar in Microsoft Office öffnen, jedoch sieht man in Bild 4, dass der Versuch, die Datei zu speichern, fehlschlägt – mit einer unsinnigen Fehlermeldung versteht sich.
Die Änderungen rettet man nur, indem man die Datei wieder unter einem "normalen" Dateinamen abspeichert. Will man eine existierende Datei wieder in einem Stream verstecken, muss man sich einiger Tricks bedienen, da selbst mit der Windows-Kommandozeile nicht alles zu bewerkstelligen ist. Relativ einfach ist es jedoch, eine Datei in einer anderen zu verstecken.
Das macht man beispielsweise mit dem Befehl type Test.docx > Test.txt:Test.docx, siehe Bild 5. Theoretisch müsste der Befehl type test.txt:Test.docx > Test.docx den Stream wieder in eine "normale" Datei kopieren. Das schlägt jedoch fehl, weil auch der Entwickler der Microsoft-Kommandozeile cmd.exe meint, er müsse den Dateinamen zunächst untersuchen, bevor er ihn an das Windows-API übergibt, siehe Bild 6.
Im Falle einer Microsoft-Office-Datei kann man die Datei einfach wieder in Office laden und dann unter anderem Namen abspeichern. Eine allgemeingültige Lösung ist die Verwendung eines Hex- oder Binäreditors wie Frhed. Mit dem Befehl frhed test.txt:Test.docx lädt man die Datei in den Hexeditor, siehe Bild 7. Anschließend wählt man aus dem Menü Edit – Select All und danach File – Save Selection As.
Neueste Kommentare
8 Kommentare zu Dateien sicher verstecken: So findet sie kein Unbefugter
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Passwortdatei verstecken
Ich möchte zu diesen Massnahmen jedem nur abraten, da es keinerlei Schwierigkeit bereitet mit einem entsprechenden Script die Dateien kpl. zu finden.
Auch gehe ich davon auss dass sich in dieser Richtung zukünftig auch mehr in Bezug auf Viren, Schadprogrammen etc. tun wird, und diese ebenfalls betroffen sein werden.
Daher ist der beste Schutz noch immer eine „verschlüsselte Datei“ mit entsprechend festem Kennwort.
Wie erstellen? Wie öffnen?
Die Grundlagen sind ja schön dargestellt. Nur wie erstelle ich eine Versuch.txt:Geheim.txt und wie öffne ich ein Versuch.txt:Geheim.txt?
Dazu finde ich im ganzen Artikel leider überhaupt nichts…
AW: Wie erstellen? Wie öffnen?
Vermutlich indem man Notepad öffnet und eine Datei unter dem Namen ‚Versuch.txt:Geheim.txt‘ speichert. Und genau das funktioniert nicht!
AW: AW: Wie erstellen? Wie öffnen?
Solltest vielleicht mal etwas genauer lesen:
"Das macht man beispielsweise mit dem Befehl type Test.docx > Test.txt:Test.docx"
Analog würdest du bei 2 Texdateien schreiben: type Test.txt > Test.txt:Geheim.txt
Natürlich müssen vorher bereits beide Dateien existieren, also die die versteckt wird und die in die versteckt wird. Anschließend löscht man das nun versteckte Original. Wenn es Probleme mit dem öffnen gibt, brauchst Du wie beschrieben nen Hex-Editor.
LG
AW: AW: AW: Wie erstellen? Wie öffnen?
Danke :-)
AW: Wie erstellen? Wie öffnen?
Das geht leider nur über die Kommandozeile. Steht auf Seite 5 in Absatz 3. Wenn man von der Kommandozeile "notepad Versuch.txt:Geheim.txt" eingibt, dann fragt Notepad nach, ob es diese Datei erstellen soll.
Dabei ist es egal, ob die Datei Versuch.txt vorher schon existiert oder nicht.
Passwortdatei verstecken
Ich setze KeyPass als Passwort-Manager ein und habe gerade versucht, meine Passwort-Datenbank in der License.txt zu verstecken. Da hatte ich dann leider das beschriebene Problem, dass mir die Software beim Speichern sagte, dass der Dateiname ungültig wäre. Schade!
Dateien sicher verstecken
Danke für diesen hilfreichen Beitrag. Sie sollten allerdings noch darauf hinweisen, daß die sichtbare Datei text.txt bei der Nutzung eines Rechners durch mehrere Anwender besonders geschützt werden sollte. Wird diese vermeintlich unwichtige Datei text.txt gelöscht, so ist der Stream text.txt:passwort.txt ebenfalls verloren.
Unklar ist auch, wie sich Backup Software bei diesen Streams verhält.