Jeffrey Cross
Jeffrey Cross

NTFS Alternativa dataströmmar - dölja filer i andra filer

NTFS-filsystemet har stöd för ytterligare data, som heter alternativa dataströmmar (ADS), som ska bifogas en fil. Normalt används detta av operativsystemet och filutforskaren för att binda extra data till en fil, till exempel filens åtkomstkontrollinformation, sökbar filmetadata som sökord, kommentarer och revisionshistorik och till och med information som kan markera en fil som att ha har laddats ner från internet. Eftersom den här extra informationen är bunden till filen på filsystemsnivån, kan du flytta filen från en mapp till en annan och alla olika meta-information och tillståndsdata förblir med filen.

Det intressanta är att en fil kan ha 0 till många ADS-gafflar fästade i vilken fil eller katalog som helst. Medan vissa ADS-identifierare används av operativsystemet, finns det inget som hindrar dig från att lägga till andra ADS-gafflar till en fil. Du kan göra detta direkt från kommandoraden, med en enkel kolon ":" notation.

Låt oss säga att du har en fil som heter test.txt. Du kan lagra ett hemligt meddelande i filen så här: echo "This is a secret"> test.txt: secretdata

Om du tittar på innehållet i filen ser du inte någonting märkligt. Om du vet om förekomst av secretdata ADS-inmatning kan du emellertid enkelt extrahera den dolda informationen med följande kommando: mer <test.txt: secretdata> output.txt

När du öppnar output.txt hittar du din hemliga data inuti.

Eftersom det är en OS-funktion på lägre nivå kan du till och med lura de flesta program för att ladda data. I scenariot ovan kan du faktiskt ladda och redigera secretdata-strömmen inuti notepad genom att köra "notepad test.txt: secretdata". Du kan även lagra och exekvera binär data av en viss storlek i en ADS-gaffel. Till exempel kanske du vill flytta solitaire i en av dina textfils ADS-poster:

skriv c: winntsystem32sol.exe> ​​test.txt: timewaster.exe

Att köra filen är lika enkel som "Start . est.txt: timewaster.exe”. Vild, nej?

Så odd sak är att alla dessa dolda strömmar flyter om ditt filsystem och tills Vista / R-flaggan på DIR-kommandot har det inte varit en väldigt bra inbyggd metod att upptäcka dem. För att lösa detta skapade Frank Heyne en applikation som heter LADS vilket är ett utmärkt kommandoradsverktyg som kommer att skanna en katalog och skriva ut namn och storlekar för filer i den.

Det finns också ett verktyg som släpptes i en MSDN-artikel om filströmmar som kommer till en extra flik till filegenskaperna i Utforskaren. Jag har länkat till en FAQ som Frank upprätthåller om ADS som går igenom dig genom att konfigurera DLL och registerposter för att göra detta arbete. När den är aktiverad låter fliken Strömmar i egenskapspanelen skapa, visa, redigera eller ta bort strömdata som är kopplade till en fil, precis i Utforskaren.

Jag kan se hur det här filsystemet kan vara användbart, men det är lite konstigt att det är så gömt från användaren och det verkar vara några problem med konceptet. Självklart är det på grund av ADS: s dolda natur ett antal skadliga användningsområden som kan användas av jerk-o som skriver virii och den sånt. Även om du ignorerar det, finns det också datautbytesproblem, flyttar en fil mellan NTFS och ett annat filsystem orsakar förlust av all den här bifogade informationen. Ring mig gammaldags, men jag gillar mina filer som de brukade vara, med början, ett slut och några byte däremellan.

Frank Heyne - Alternativa dataströmmar i NTFS FAQ LADS - NTFS alternativ dataström lista verktyg Den mörka sidan av NTFS MSDN: En programmerarens perspektiv på NTFS-strömmar och hårda länkar

Del

Lämna En Kommentar