Kako kreirati alternativni ntfs tok datoteka. Kako kreirati alternativni NTFS stream. Aktiviranje funkcije ABE

Windows operativni sistemi su opremljeni sa dvije malo poznate funkcije skrivanja podataka: nitima NTFS podaci(takođe poznat kao alternativni tokovi podataka) i pristup listi resursa zasnovanih na nabrajanju zasnovanom na pristupu (ABE). Alternativni tokovi podaci vam omogućavaju da dodate skrivene informacije u fajl, kao što su informacije o fajlu. Vjerovatno nećete morati koristiti skrivene tokove podataka, ali napadači bi mogli koristiti ovu tehnologiju protiv vas, tako da biste trebali biti svjesni toga i kako bi mogla funkcionirati.

Što se tiče ABE metode, ona može dodati vašem arsenalu. Ova metoda vam omogućava da to učinite nevidljivi folderi i dijeljene datoteke resursa za one korisnike koji nemaju dozvolu da im pristupe.

Evo šta trebate znati o ovim fondovima.

Rijeke koje napajaju more podataka

Alternativni tokovi podataka su karakteristika NTFS sistema datoteka. Nekada su bili uključeni u Windows NT 3.1 kako bi se omogućilo korisnicima NT-a i Macintosha da dijele datoteke.

NTFS datoteka se sastoji od tokova podataka. Ovo je standardni tok podataka $DATA i moguće jedan ili više alternativnih tokova podataka. Svaki korisnik sa potrebnim dozvolama za datoteku može vidjeti postojeći $DATA tok podataka, može ga otvoriti i čitati i pisati podatke u tok.

Alternativni tok podataka je dodatne informacije ili datoteke koje korisnik ili aplikacija mogu dodati NTFS datoteci. Samo korisnik koji ga je kreirao zna za postojanje alternativnog toka podataka. Korisnici obično ne znaju da li je alternativni tok podataka priložen datoteci; Poenta je da ni sadržaj ovog streama ni njegov naziv nisu vidljivi. Osim toga, ne postoji način da vidite promjenu veličine datoteke.

Postoji mnogo načina za korištenje alternativnih tokova podataka. IN Windows sistem ovi tokovi se koriste za pohranjivanje sažetih podataka dokumenata kreiranih od strane aplikacija koje nisu uključene u paket Microsoft Office, kao što su jednostavne tekstualne datoteke (.txt). Možete unijeti sažete informacije, kao što su naslov, predmet i informacije o autoru, na kartici Sažetak dijaloškog okvira Svojstva datoteke. Ovi zbirni podaci se pohranjuju u alternativni tok podataka, SummaryInformation.

Windows aplikacije kao što je šifriranje Sistem datoteka(EFS) i Windows Explorer, koristite alternativne tokove podataka da priložite podatke koji se odnose na određene datoteke datotekama koje su pohranjene na diskovima formatiranim pod NTFS sistemom. EFS dodaje informacije o kodiranju i dekodiranju šifriranim datotekama koristeći alternativne tokove podataka, omogućavajući decentralizirano šifriranje i dešifriranje od strane EFS-a.

Implementirano u Windows XP servisni paket 2 (SP2) Microsoft aplikacija Internet Explorer(IE) koristi alternativni tok podataka Security.Zone da obezbijedi klasifikaciju sigurnosnih zona datoteka zapisanih u NTFS volumen. Kao rezultat toga, IE ima mogućnost da blokira napade eskalacije korisnika koji se mogu dogoditi u situacijama kada korisnik preuzima zlonamjerni kod sa nezaštićenog područja interneta i pohranjuje kod na lokalni tvrdi disk. IE klasifikuje lokalno pohranjeni sadržaj u sigurnosnu zonu lokalnog računara, koja pruža više prava od Internet sigurnosne zone. XP SP2 uvijek provjerava tok podataka Security.Zone prije nego što dozvoli učitanom kodu da preduzme bilo kakvu radnju na lokalnom sistemu.

Kanal za uvođenje zlonamjernog koda

Ono što čini alternativne tokove podataka vrijednim pažnje i opasnošću je to što se njihova imena i sadržaj ne prikazuju u Windows Exploreru. Stoga organizatori raznih vrsta napada takve tokove smatraju pogodnim sredstvom za skrivanje podataka ili zlonamjernog koda koji je ušao u sistem. Primer upotrebe ovih niti je crv VBS.Potok@mm. Hakeri su koristili alternativni tok podataka da prikače više Visual Basic (VB) skripti na postojeću ODBC .ini datoteku.

Kada se aktivira, crv stvara račun sa administrativnim ovlastima i šalje se na adrese koje sam otkrije adresar Microsoft Outlook.

Još jedna opasnost je da se prostor na disku dodijeljen za alternativne tokove podataka ne odražava u veličini (datoteke) Windows Explorera i nedodijeljenim podacima o prostoru na disku. Haker može koristiti alternativne tokove podataka da popuni prostor na disku servera datoteka, ostavljajući administratora da se češe po glavi pokušavajući doći do korijena problema. Dodatno, treba napomenuti da uslužni program Dir komandne linije ne uzima u obzir alternativne tokove podataka prilikom izračunavanja podataka o veličini (datoteke i fascikle). Trenutno postoji samo jedan Microsoftov alat koji može uzeti u obzir alternativne tokove podataka prilikom izračunavanja veličina: uslužni program Chkdsk.

Dodavanje nove teme

Svako ko ima dozvolu za pisanje u NTFS datoteku može koristiti redovne komande operativni sistem da priloži alternativni tok podataka datoteci. Na primjer, sljedeća naredba kreira alternativni tok podataka mystream, dodaje mystream datoteci pod nazivom file.txt i pohranjuje frazu "strogo povjerljivo" u mystream.

echo top secret > file.txt: mystream

Možete pogledati sadržaj mystreama koristeći naredbu

Kao što je gore navedeno, možete dodati alternativnim tokovima podataka izvršne datoteke. Stoga je moguće dodati skrivenu kopiju Windows kalkulatora (calc.exe) u datoteku file.txt. Da biste to uradili, potrebno je samo da unesete komandu

otkucajte calc.exe > file.txt: calc.exe

Da biste pokrenuli skriveni kalkulator, unesite naredbu

start .file.txt: calc.exe

Možete sami provjeriti da se alternativni tokovi podataka i njihov sadržaj ne prikazuju u alata ah Microsoft. Otvori Windows program Explorer i pogledajte svojstva datoteke file.txt. Stvarna veličina datoteke je 112 KB (toliko prostora zauzima ugrađena calc.exe datoteka) - ali program će prikazati veličinu datoteke kao 0 KB: nema informacija o ugrađenoj datoteci u toku podataka $DATA, i Windows aplikacija Explorer nema mogućnost čitanja informacija iz alternativnog toka podataka.

Jasno je da postoje mnoge prijetnje povezane sa alternativnim tokovima podataka, posebno u mrežama u kojima se ne pridaje dužna pažnja poslovima izdavanja dozvola za pristup NTFS resursima i nije uspostavljena stroga kontrola pristupa. Windows serveri. Postoji jednostavan sigurnosni mehanizam koji može spriječiti hakere da pokušaju da iskoriste prednosti alternativnih tokova podataka - NTFS sistem kontrole pristupa. Ako napadači nemaju dozvolu za pisanje podataka u datoteku, neće moći kreirati alternativne tokove podataka i dodati ih u datoteku.

Detecting Changes

Ako smatrate da su hakeri zaobišli vaše dozvole, koristite jedan od alternativnih alata za otkrivanje sadržaja tokova podataka koji su do sada razvijeni. Provjerači integriteta sistema, kao što su Tripwire Enterprise i Tripwire za servere, mogu otkriti sve promjene u sistemu datoteka. NTFS sistem koji se dogodio na Windows sistemu, uključujući dodavanje ili promjenu sadržaja toka podataka.

Sysinternalov program Streams je besplatni uslužni program naredbenog retka koji određuje imena alternativnih tokova podataka priloženih datotekama. Slika 1 pokazuje kako koristiti uslužni program Streams za pregled imena toka podataka calc.exe koji smo prethodno dodali datoteci file.txt. Ovaj uslužni program se može preuzeti sa http://www.sysinternals.com/utilities/streams.html.

Još jedan jednostavan način za otkrivanje alternativnog toka podataka je sa koristeći Windows Explorer će kopirati sumnjivu datoteku na disk sa sistemom datoteka koji nije NTFS (recimo, FAT disk). Drugi sistemi datoteka nisu opremljeni za rukovanje alternativnim tokovima podataka. Dakle, ako pokušate kopirati NTFS datoteku s priloženim alternativnim tokovima podataka da biste je smjestili u drugu sistem datoteka NTFS će izdati upozorenje slično onom prikazanom na slici 2. Ali imajte na umu da ako kopirate ovu datoteku u prozor komandne linije koristeći komandu Copy, Windows će je kopirati u sistem datoteka koji nije NTFS i izbrisati tok podataka bez upozorenje.

Skrivanje zajedničkih resursa korištenjem ABE

ABE je opcija sloja za dijeljenje datoteka koju je Microsoft prvi implementirao u paket Windows Server 2003 SP1. Može se koristiti u bilo kojem Windows dijeljenom direktoriju, bez obzira na sistem datoteka na kojem su pohranjeni zajednički podaci. ABE dozvoljava administratorima da sakriju fascikle i datoteke pohranjene na zajedničkim resursima od korisnika koji nemaju odgovarajuća dopuštenja da im pristupe na NTFS nivou. Drugim riječima, govorimo o obezbjeđivanju sigurnosti na nivou foldera.

U slučajevima kada se ABE ne koristi, korisnici koji se povezuju na zajednički direktorij vidjet će sve datoteke i mape koje se nalaze na dijeljenju, uključujući one za koje nemaju dozvole za čitanje i one kojima je blokiran pristup. Kada korisnik pokuša da otvori datoteku ili fasciklu kojoj nije dozvoljen pristup, sistem prikazuje poruku o grešci koja objašnjava da je pristup odbijen. Ove poruke o grešci mogu biti zbunjujuće za korisnike, tako da omogućavanje ABE može pomoći u smanjenju radnog opterećenja podrške.

Međutim, korištenje ABE također ima svoje nedostatke. Prije vraćanja liste objekata u folderu klijentu povezanom na dionicu, poslužitelj mora provjeriti sve ACL-ove na tim objektima kako bi mogao odrediti koje podatke treba vratiti. Kao rezultat toga, može doći do značajnog smanjenja performansi sistema, posebno kada se pristupa zajedničkim resursima koji sadrže mnogo objekata.

Preporučljivo je koristiti ABE alate, na primjer, za konfiguriranje javnih resursa u korisničkim kućnim direktorijima. Umjesto kreiranja skrivenog dijeljenja za kućni direktorij svakog korisnika, možete kreirati jedan dio koji sadrži kućne direktorije svih korisnika u korijenskom folderu kućnog direktorija. Korisnici će se povezati na ovaj korijenski direktorij, a možete koristiti i ABE NTFS dozvole kontrolirati vidljivost kućnih direktorija svih korisnika.

Aktiviranje funkcije ABE

Ova funkcija koristi novu oznaku nivoa javnog resursa SHI1005_FLAGS_ENFORCE_NAMESPACE_ ACCESS; u trenutku kada su ovi redovi napisani, implementiran je samo u Windows paketi 2003 SP1 i izdanje 2 (R2). Ova zastavica znači da primjenjujete funkciju ABE na jednu od mapa.

Možete koristiti ekstenzije svojstava da postavite zastavu Windows folderi Explorer ili alat za komandnu liniju abecmd.exe. Microsoft distribuira ekstenziju ABE Explorer i abecmd.exe u ABE instalacionom paketu, koji je dodatni modul za Windows Server 2003 SP1 platformu. Instalacioni paket se može preuzeti od Microsofta na adresi http://www.microsoft.com/downloads/details.aspx?FamilyId=04A563D 9-78D9-4342-A485-B030AC442084. Pošto je ABE proširenje servera, može se koristiti bez obzira na sve Windows verzija instaliran na klijentu.

Nakon instaliranja ABE alata na server, možete postaviti ovu zastavicu za određeni folder. Kliknite desnim tasterom miša na fasciklu, izaberite Svojstva, idite na karticu Nabrajanje zasnovano na pristupu i postavite oznaku Omogući nabrajanje zasnovano na pristupu na ovoj deljenoj fascikli, kao što je prikazano na slici 3. Da biste primenili funkciju ABE na sve deljene resurse u sistemu, postavite postavku Primijeni zastavicu ovog foldera na sve postojeće dijeljene foldere na ovom računaru.

Druga metoda je korištenje alata komandne linije abecmd.exe. Da biste primijenili funkciju ABE na javni resurs shareddocs, unesite sljedeću naredbu:

abecmd /enable shareddocs

Možete koristiti opciju /all da omogućite ABE na svim dostupnim resursima ili koristiti opciju /disable da onemogućite ABE.

Kontrola pristupa

ABE je jednostavan alat koji vam omogućava da ograničite korisničke dozvole samo na one datoteke koje su im potrebne za obavljanje posla. Korisnici mogu lako pronaći potrebne datoteke, jer ne moraju prolaziti kroz nepovezane fascikle i ne gnjaviti tim za podršku pitanjima zašto se datoteke za koje nemaju dozvolu za otvaranje ne otvaraju.

Da bi se zaštitili od hakera alternativnih tokova podataka, administratori bi trebali nadgledati svoje postavke kontrole javnog pristupa i koristiti jedan od uslužnih programa koje sam opisao da identifikuju skrivene alternativne tokove podataka, kao i promjene na NTFS sistemu.

Jean De Clercq(declercq @hp.com) - zaposlenik Službe za sigurnost kompanije Hewlett-Packard. Odgovoran je za upravljanje identitetom i sigurnošću Microsoft proizvoda. Autor Windows Server 2003 sigurnosnih infrastruktura (Digital Press).

Nedavno, zbog smanjenja cijene hardvera (u dolarskoj protuvrijednosti), sve veći broj Korisnici računara imaju na raspolaganju resurse sasvim dovoljne za rad operativnog sistema Microsoft Windows NT (i200MMX + 32-64 Mb). Nepouzdanost i nepredvidivost Windows 95/98, kao i njegova nemogućnost upravljanja resursima na odgovarajućem nivou savremenih kompjutera navodi mnoge korisnike na razmišljanje o prelasku na NT.

Istovremeno, mnogi neiskusni korisnici ne pronalaze ništa radikalno novo za sebe. Zaista, nakon što je instaliran Internet Explorer 4 i ne iskorišćavajući brojne mogućnosti NT-a za primjenu sigurnosnih politika i zaštite, najveća razlika u odnosu na Windows 98 može se činiti u prisutnosti dva foldera “Startup” u start meniju ( trenutni korisnik i zajednički za sve korisnike) i odsustvo dodatka/ukloni hardverskog apleta na kontrolnoj tabli. A ako ne formatirate disk sa NTFS sistemom datoteka, možda nećete naći veliku razliku.

Ali ovaj članak samo opisuje neke od razlika između NTFS i FAT, VFAT, FAT16 i FAT32. Dobro poznate razlike: sposobnost samoizlječenja, lijeno pisanje, maksimalni volumen i veličina datoteke do 16 eksabajta ( 1 eksabajt = 1.000.000 GB), sposobnost kompresije odvojeni fajlovi a folderi, postavljanje dozvola i revizija su prilično široko pokriveni u literaturi i dokumentaciji za Windows NT. Ali i dalje postoje malo poznate i malo korišćene karakteristike NTFS-a: tvrde veze (tvrde veze) i višestruki tokovi podataka (množenje tokova podataka ili forks). Dalje ćemo pričati o njima.

Višestruki tokovi podataka. Ovaj termin je poznat korisnicima Macintosha. U ovom sistemu, datoteka može imati dvije vilice: tok podataka i tok resursa. Tok podataka pohranjuje podatke datoteke - ovaj tok se kopira kao jedini prilikom prijenosa datoteke sa Macintosh-a na PC. Drugi tok datoteke je tok resursa koji sadrži podatke operativnog sistema - menije, ikone, fontove, općenito, sve što se obično naziva resursima. Kada Windows NT Server opslužuje Macintosh klijente i pruža im prostor na disku za skladištenje datoteka, sistem datoteka servera mora podržavati format datoteke klijenta. Ovo je jedan od razloga za pojavu višestrukih tokova podataka u NTFS.

Kako se to implementira? Svaka informacija o datoteci, počevši od njenog imena, dozvola i završavajući sa stvarnim podacima pohranjenim u datoteci, sa stanovišta NTFS-a je atribut pohranjen u svom vlastitom toku. Programeri NTFS-a smatrali su da je moguće ne ograničiti se na jedan stream za podatke - neimenovani, i dodali su mogućnost kreiranja nekoliko, pored glavnih, imenovanih tokova. Za kreiranje više niti možete koristiti Win32 API funkciju, ali postoji lakši način.

Još od vremena Kernighana i Ritchieja, programera C jezika i operativnog sistema UNIX sistemi mnogi operativni sistemi postoji mogućnost generalizacije input-output operacija. Sa ove tačke gledišta, svaka I/O operacija se može smatrati operacijom unosa iz toka ili izlaza u tok, bez obzira na to koji je izvor podataka (konzola, tj. tastatura, datoteka ili port) i prijemnik (opet konzola, u ovom slučaju već ekran monitora, štampač ili datoteka). Također je moguće preusmjeriti ulaz - programski izlaz sa ekrana na štampač i unositi komande ne sa tastature, već iz datoteke. U naše vrijeme raširene upotrebe grafike korisnički interfejs Ove mogućnosti se vrlo rijetko koriste, pa ćemo to ilustrirati primjerom.

Naredba echo operativnog sistema Microsoft koristi se za prikaz informacija na ekranu u tekstualnom načinu:

C:>echo Zdravo, svijete!

Komanda echo koristi ekran monitora kao izlazni uređaj. Izlaz ove naredbe može se preusmjeriti s konzole na datoteku (za ovo koristite simbol “>”):

C:>echo Zdravo, svijete! > fajl

Kao što vidite, komanda echo u ovom slučaju nije ništa prikazala na ekranu. Ali u datoteci možete pronaći redak "Zdravo, svijet!". Slično, izlaz naredbe echo može se preusmjeriti na pisač:

C:>echo Zdravo, svijete! >lpt1

Na ekranu opet nema ničega, ali na listu papira u štampaču možete pronaći isti red „Zdravo, svete!“, ako je, naravno, štampač povezan na lpt1 port. Dakle, izlaz bilo kojeg programa u tekstualnom modu može se preusmjeriti na bilo koji uređaj koji podržava streaming informacija ili na datoteku, s izuzetkom onih programa koji u tekstualnom načinu koriste direktnu modifikaciju video memorije i druge nestandardne, od tačke sa stanovišta klasičnog C-a, mogućnosti za izlaz informacija.

Slično, možete preusmjeriti unos programa. Komanda more Microsoft operativnih sistema se koristi za baferovanje izlaza komandi koje prikazuju više informacija nego što stane na ekran. Ali ova naredba se također može koristiti za ilustraciju preusmjeravanja unosa:

C:>više Hello, World!

Datoteka je sadržavala string "Hello, World!", koji je bio usmjeren na ekran.

Slično, koristeći I/O preusmjeravanje, možete kreirati i čitati više tokova podataka:

C:>echo string1 > file:fork1

Ulaz file:fork1 definira tok pod nazivom fork1 u datoteci (pošto još ne postoji, kreira se novi sa ovim imenom) i preusmjerava izlaz naredbe echo na njega. U ovom slučaju, veličina datoteke se ne mijenja prilikom pregleda njenih svojstava, i standardna koristeći Windows NT, bez poznavanja imena niti, njeno postojanje se ne može utvrditi. Ali, znajući njegovo ime, možete koristiti naredbu more da odredite njegov sadržaj:

Na ovaj način možete kreirati i čitati sadržaj tokova podataka datoteke. Broj niti kreiranih u jednoj datoteci ograničen je samo dostupnošću slobodan prostor na disku. Slično, možete kreirati tokove podataka u direktorijima, ali da biste vidjeli sadržaj toka, morat ćete koristiti drugi način prikazivanja toka na ekranu, jer naredba more proizvodi sljedeću grešku:

Ako ne možete pronaći ništa prikladno, možete napisati sljedeći program u bilo kojem C++ kompajleru:

while (cin.get(ch)) cout.put(ch);

Bolje je napraviti ovaj program kao Win32 konzolnu aplikaciju i koristiti ga kao alat za proučavanje tokova direktorija.

Windows NT ne pruža standardnim sredstvima da dobijete informacije o više tokova podataka. Ali šta ako su vam takve informacije i dalje potrebne? U ovom slučaju možete koristiti streams program Marka Russinovicha, koji zajedno sa izvorni kod možete dobiti na www.sysinternals.com. Ovaj program koristi nedokumentirano Windows funkcije N.T. Evo informacija dobijenih pomoću programa streamova o datoteci:

NTFS Streams Enumerator v1.0

Systems Internals - http://www.sysinternals.com

Ovdje možete vidjeti i ime toka podataka i njegovu veličinu u bajtovima (dodatna 3 znaka su razmak nakon znaka “>”, povratak na nosivu i liniju dodana komandom echo). Nažalost, tokovi vam ne dozvoljavaju definiranje više tokova podataka u direktorijima.

Za šta se može koristiti više tokova podataka? Pored upotrebe koju je Apple pronašao za njih, možemo govoriti o najjednostavnijim načinima skrivanja informacija, na primjer, da zapamtite datum instalacije shareware programa. U zoru OLE tehnologije, Microsoft je zamislio korištenje tokova podataka za pohranjivanje informacija o ugrađenim objektima, ali se očito ispostavilo da je pružanje tokova podataka na FAT-u teže od kreiranja dugih imena datoteka i ideja je morala biti napuštena. Kreiranje „datoteke resursa“ za skriptu sa pohranjivanjem svih natpisa na kojima se prikazuju različitim jezicima, mogućnost korištenja niti bi također mogla biti zanimljiva. Pored navedenog, postoji još mnogo zanimljivih aplikacija za više tokova podataka, stoga ih nemojte zanemariti.

Tvrde veze. Korisnici različitih klonova UNIX-a upoznati su sa ovim konceptom. Za razliku od FAT sistema datoteka, koji dozvoljava svakoj datoteci da ima samo jedno ime, UNIX nema takvo ograničenje - svaka datoteka može imati više imena i njeni podaci se ne mogu izbrisati sve dok broj imena datoteke nije 0. U UNIX-u također ima simboličke veze - analogni prečicama u Windows-u, ali prate kretanje objekta na koji se odnose.

Windows NT ima ograničenu usklađenost sa standardom POSIX (Prenosivi operativni sistemski interfejs za računarska okruženja). Jedan primjer ograničenja je podrška za tvrde veze i nedostatak podrške za simbolične. Očigledno je odlučeno da su prečice dostojan analog simboličkih veza.

U NTFS-u, tvrde veze su organizovane na sličan način kao i višestruki tokovi podataka: ako datoteka ima više tokova podataka, zašto ne može postojati više imenovanih tokova? Više imena datoteka mogu biti u različitim direktorijima, ali samo unutar iste particije.

Da biste kreirali čvrstu vezu, potreban vam je program podsistema Windows NT POSIX. Takav program, zajedno sa svojim izvornim kodom, nalazi se na CD-u “Windows NT Resources”. Po analogiji sa UNIX-om, ovaj program se zove ln. Sintaksa za ovu naredbu je:

C:>Ln fajl hardlink1

Pomoću ove komande kreiramo drugo ime ili hard link hardlink1 za fajl fajl, a promenom sadržaja fajla možete promeniti sadržaj hardlink1, tačnije, to je isti fajl, ali sa dva imena. Na sličan način možete promijeniti druge atribute datoteke. Broj imena datoteke nije ograničen, ali kada kopirate ime datoteke, veza se prekida i stvara se druga datoteka. Moguće je kreirati vezu u drugom direktoriju:

C:>Ln fajl ../temp/hardlink2

U ovom slučaju, morate navesti relativno ime direktorija umjesto apsolutnog.

Čvrstih veza ima isto toliko namjena koliko i višestrukih tokova podataka. Na primjer, kreirajte čvrste veze za dll biblioteke da zaštitite svoj program od slučajnog brisanja potreban fajl. Ostale moguće upotrebe tvrdih veza najbolje se mogu naći u literaturi o UNIX-u. I, naravno, korištenje tvrdih veza može se kombinirati s višestrukim tokovima podataka opisanim gore.

Alternativni tokovi podataka u NTFS

NTFS sistem datoteka ima mnogo zanimljivih karakteristika, od kojih je jedna prisutnost alternativnih tokova podataka (Alternate Data Stream, ADS). Njihova suština je da je svaka datoteka u NTFS-u skup tokova u kojima se pohranjuju podaci. Podrazumevano, svi podaci su u glavnom toku, ali ako je potrebno, dodatni, alternativni tokovi podataka se mogu dodati u datoteku.

Napomena. Alternativni tokovi podataka u NTFS pojavili su se davno, još u Windows NT-u. Stvoreni su za kompatibilnost sa HFS sistemom datoteka, a zatim se koriste na MacOS-u. HFS pohranjuje podatke datoteke u poseban tok resursa.

Datoteke u NTFS-u podijeljene su na atribute, od kojih je jedan $DATA ili atribut podataka. Tokovi su dodatna svojstva atributa $DATA. Podrazumevano postoji jedna, glavna nit $DATA:″″. Kao što vidite, nema ime, pa se zove neimenovani. Također možete kreirati dodatne imenovane tokove ako želite, na primjer. $DATA:″Stream1″. Svaka datoteka u NTFS-u može imati nekoliko tokova podataka koji sadrže različite, nepovezane podatke.

Svi podaci upisani u datoteku po defaultu završavaju u glavnom toku podataka. Kada otvorimo datoteku, vidimo da je glavni tok skriven od korisnika i ne prikazuje se uobičajenim sredstvima. Ne mogu se vidjeti koristeći standardne metode, iako neki programi mogu čitati podatke skrivene u njima. Također možete koristiti komandna linija.

Na primjer, otvorimo konzolu i upotrijebimo naredbu echo da kreiramo tekstualnu datoteku streams.txt i upišemo tekst u nju:

echo Ovo je glavni tok>streams.txt

I sa sljedećom naredbom ćemo napisati tekst u alternativni stream stream1:

echo Ovo je alternativni tok>streams.txt:stream1

Ako sada otvorimo datoteku streams.txt u bilo kojem uređivaču teksta, vidjet ćemo samo prvi unos, a tekst “Ovo je alternativni tok” će ostati skriven. Možete pročitati informacije skrivene u stream1 naredbom:

više

Alternativni tokovi se mogu dodati ne samo pojedinačnim fajlovima, već i direktorijumima. Na primjer, dodajmo alternativni stream stream2 koji sadrži tekst “Sakrij prijenos u streamovima” u trenutni direktorij Streams:

echo Sakrij stream u Streams>:stream2

I izbacite stream2 sa sljedećom naredbom:

više<:stream2

Sadržaj alternativnog streama može se otvoriti na više od samo konzole. Na primjer, Notepad također može pristupiti podacima skrivenim u tokovima ako navedete ime alternativnog toka u nazivu datoteke, odvojeno dvotočkom. Ponovimo prethodni primjer, lagano mijenjajući naziv toka u stream1.txt:

echo Ovo je alternativni tok>streams.txt:stream1.txt

I otvorite alternativni stream u notepadu sa naredbom:

notepad streams.txt:stream1.txt

Napomena. Standardni Notepad zahtijeva txt ekstenziju u nazivu toka, inače ga neće moći otvoriti. Napredniji uređivači, kao što je Notepad++, mogu prikazati sadržaj alternativnog toka, bez obzira na njegovo ime.

Prisustvo alternativnih tokova u datoteci se ni na koji način ne prikazuje u Exploreru i drugima. fajl menadžeri. Da biste ih pronašli, najlakši način je korištenje naredbe dir/R(počevši od Windows Vista), koji prikazuje sve tokove podataka, uključujući i alternativne.

Možda mislite da su alternativni tokovi ograničeni na tekstualne podatke. To uopće nije istina, a apsolutno sve informacije mogu se pohraniti u alternativnim tokovima. Na primjer, napravimo sliku.txt datoteku i dodamo joj tok pic1.jpg u koji ćemo smjestiti istoimenu sliku:

echo Slika>slika.txt
upišite pic1.jpg>picture.jpg:pic1.jpg

Dakle, izvana imamo običan tekstualni fajl, ali da otvorimo sliku iz alternativnog toka grafički editor Paint ćemo koristiti naredbu:

mspaint picture.txt:pic1.jpg

Na sličan način možete dodati bilo koji podatak bilo kojoj vrsti datoteke - dodati slike u tekstualne datoteke, dodati tekstualne informacije u medijske datoteke, itd. Zanimljivo je da alternativni sadržaj ne povećava prividnu veličinu datoteke, na primjer dodavanje na 1 kB tekstualnu datoteku 30GB HD video, Explorer će i dalje prikazivati ​​veličinu datoteke kao 1kB.

Također možete sakriti izvršne datoteke u alternativnim tokovima. Na primjer, uzmite test.txt datoteku i dodajte aplikaciju Notepad (notepad.exe) u alternativni tok note.exe:

upišite notepad.exe>test.txt:note.exe

A za pokretanje skrivene notepad koristićemo naredbu:

start .\test.txt:note.exe

Usput, neki ljudi iskorištavaju ovu priliku. malware, dodavanjem izvršnog koda alternativi NTFS tokovi.

Streams utility

Postoji nekoliko uslužnih programa trećih strana za rad sa alternativnim tokovima, kao što je Streams konzolni uslužni program iz Sysinternals. Može otkriti prisustvo alternativnih niti i ukloniti ih. Uslužni program ne zahtijeva instalaciju, samo ga raspakirajte i pokrenite. Na primjer, provjerimo prisutnost tokova u folderu Streams pomoću naredbe:

Streams.exe -s C:\Streams

I uklonite alternativne tokove iz datoteke streams.txt:

Streams.exe -d C:\Streams\streams.txt

PowerShell

PowerShell također može raditi s alternativnim streamovima - kreirati, otkriti, prikazati njihov sadržaj, pa čak ih i izbrisati. Na primjer, napravimo tekstualnu datoteku:

Nova stavka -Tip fajla -Putanja C:\Streams\stream.txt

Dodajmo unos u glavnu temu:

Set-Content -Path C:\Streams\stream.txt -Value ″Main stream″

I na alternativni tok pod nazivom Second:

Set-Content -Path C:\Streams\stream.txt -Vrijednost ″Drugi stream″ -Stream Second

Zatim ćemo ispisati sadržaj glavnog

Get-Content -Path C:\Streams\stream.txt

i alternativni tokovi:

Get-Content -Path C:\Streams\stream.txt -Stream Second

Da biste otkrili prisustvo alternativnih tokova, možete koristiti naredbu:

Get-Item -Path C:\Streams\stream.txt -Stream *

A možete ukloniti nepotrebne niti pomoću naredbe:

Remove-Item -Path C:\Streams\streams.txt -Stream *

Upotreba

Alternativne tokove koristi i sam Windows i neki programi. Na primjer, Internet Explorer dijeli mrežu na 4 sigurnosne zone i prilikom preuzimanja datoteka dodaje im oznake koje sadrže informacije o zoni iz koje su preuzete.

Ove oznake su pohranjene u alternativnom toku i predstavljaju broj od 0 do 4:

Internet (3)
Lokalna mreža (1)
Pouzdane stranice (2)
Opasne lokacije (4)
Lokalni kompjuter (0)

Da bismo se u to uvjerili, idemo u mapu preuzimanja, uzmimo datoteku preuzetu s Interneta i provjerimo je li prisutni alternativni streamovi. Kao što vidite, sadrži nit pod nazivom Zone.Identifier, koji sadrži string ZoneID=3.

To znači da datoteka pripada nepouzdanoj internet zoni i morate biti oprezni kada je otvarate. Neki programi, kao što je Word, čitaju ove podatke kada otvorite datoteku i u skladu s tim izdaju upozorenje.

Takođe, infrastruktura za klasifikaciju datoteka (FCI) je zasnovana na korišćenju alternativnih tokova. Od programi trećih strana neki koriste alternativne tokove antivirusni programi, posebno, Kaspersky Anti-Virus pohranjuje u njih kontrolni zbir dobijen kao rezultat skeniranja.

Međutim, upotreba alternativnih tokova nije ograničena samo na ovo; Na primjer, uz njihovu pomoć možete sakriti lične podatke od znatiželjnih očiju. Fajlovi koji sadrže alternativne tokove mogu se slobodno kopirati ili prenijeti s diska na disk, svi tokovi će se kopirati zajedno sa datotekom.

Pa ipak, kada koristite alternativne tokove, morate zapamtiti da su oni striktno vezani za NTFS sistem datoteka. Da biste ih koristili, datoteke se moraju nalaziti na NTFS diskovima, tako da s njima možete raditi samo iz Windows-a. Ako premjestite datoteku u bilo koji drugi sistem datoteka, svi tokovi osim glavnog bit će izgubljeni. Također, alternativni tokovi se prekidaju prilikom prijenosa datoteka putem FTP-a ili kada ih šaljete kao prilog e-pošte.

Pozdrav dragi čitaoci blog stranice. NTFS sistem datoteka ima zanimljiva prilika podrška za alternativne tokove podataka (Alternate Data Stream, ADS). Tehnologija znači da svaka datoteka u NTFS sistemu datoteka može imati nekoliko niti u kojima se mogu pohraniti podaci. Explorer i većina drugih aplikacija rade samo sa standardnim streamom i ne mogu primati podatke od svojih alternativa. Dakle, koristeći ADS tehnologiju, možete sakriti podatke koji se ne mogu otkriti standardnim metodama.

Podrška alternativni tokovi podataka je dodan u NTFS za kompatibilnost sistema datoteka HFS, koristi se na MacOS-u.

Malo teorije

U NTFS sistemu datoteka datoteke imaju atribute. Jedan od $DATA atributa je atribut podataka. Zauzvrat, $DATA atribut može imati više niti. Podrazumevano postoji jedna glavna nit $DATA:"", koji se naziva neimenovanim. Windows Explorer radi sa ovim streamom. Ako želite, možete dodati nekoliko imenovanih tokova u datoteku (na primjer, $DATA:"potok1"), koji će sadržavati različite nepovezane podatke.

Podrazumevano, svi podaci upisani u datoteku završavaju u glavnom neimenovanom toku podataka. A kada otvorimo datoteku, vidimo samo glavnu nit. Alternativni NTFS tokovi koje datoteka ima skriveni su od korisnika i redovnim sredstvima ne možete ih vidjeti. Stoga, brisanjem datoteke sa tokovima koji sadrže velike podatke, primijetit ćete da je na uređaju za pohranu podataka oslobođeno mnogo više prostora nego što je datoteka zauzeta prema istom Exploreru. Alternativne tokove često koriste virusi, koji se mogu upisati u imenovani tok neke bezopasne datoteke.

Za rad s alternativnim tokovima možete koristiti specijalni programi, ili komandna linija.

Kako kreirati alternativni NTFS stream

Možete kreirati alternativni tok koristeći naredbu echo console.

Prvo otvorite komandnu liniju cmd.exe i koristite naredbu echo da kreirate tekstualnu datoteku example.txt i u nju upišite tekst:

echo Glavna tema>example.txt

Sljedeća komanda će pisati podatke u alternativni tok. Da biste to učinili, nakon naziva datoteke stavite dvotočku (:) i dajte streamu ime:

echo Alternativni tok>example.txt:test

Sada ako otvorite datoteku example.txt u bilo kojem uređivaču testa, bit će vidljiv samo prvi tekst "Glavna nit":

Informacije sadržane u streamu možete dobiti pomoću naredbe more:

više

Možete vidjeti sadržaj toka ne samo na komandnoj liniji. Na primjer, možete otvoriti alternativni stream koristeći sljedeću naredbu:

"C:\Program Files (x86)\Notepad++\notepad++.exe" example.txt:test

Obični Notepad može otvoriti samo streamove čije se ime završava sa ".txt". Na primjer, dodajmo test.txt stream u naš fajl:

echo Alternativni tok za notepad>example.txt:test.txt

I otvorite ga u notepadu:

notepad.exe example.txt:test.txt

Možete staviti ne samo tekstualne podatke, već apsolutno bilo koju vrstu podataka u alternativne tokove. Osim toga, možete dodati bilo koje podatke bilo kojoj vrsti datoteke - dodati video u tekstualne datoteke, a tekstualne informacije u slike.

Na primjer, dodajmo stream sa slikom img.jpg u naš fajl. Da bismo to učinili, koristimo naredbu type:

upišite img.jpg>example.txt:img.jpg

Kao rezultat toga, dobili smo običan tekstualni fajl. Ako ga otvorite na uobičajen način: dvostrukim klikom na istraživač, otvorit će se uređivač teksta sa sadržajem glavne teme:

Da otvorite sliku koja se nalazi u alternativnom toku, na primjer u Paintu, samo koristite naredbu:

mspaint example.txt:img.jpg

Ono što je najzanimljivije je da alternativni tokovi ne povećavaju prividnu veličinu datoteke. Dakle, ako dodate video od 30 GB u tekstualnu datoteku od 1 KB, Explorer će i dalje prikazati veličinu datoteke kao 1 KB.

Također možete dodati streamove za foldere, pa čak i za tvrdih sekcija disk. Sve se radi na isti način kao i za fajlove:

echo Tekst u folderu>c:\test:hide.txt

I otvorite ga u notepadu:

notepad c:\test:hide.txt

Budući da se prisustvo alternativnih tokova ni na koji način ne prikazuje u Exploreru i drugim upraviteljima datotekama, najlakši način da ih otkrijete je korištenje naredbe dir /R:

Sakrijte aplikacije u alternativnim streamovima i pokrenite ih

Postavljanje izvršnih datoteka u alternativne tokove je jednostavno kao i postavljanje običnih datoteka. Na primjer, uzmimo našu datoteku example.txt i smjestimo aplikaciju Notepad (notepead.exe) u nit hideapp.exe:

upišite C:\Windows\system32\notepad.exe>example.txt:hideapp.exe

Da pokrenete skriveni Notepad, koristite sljedeću naredbu:

start .\example.txt:hideapp.exe

Koristeći opisane tehnike, lako možete sakriti informacije od nepripremljenih korisnika. Opća primjena alternativni ADS tokovi podataka ograničeno samo vašom maštom.

To je sve, vidimo se sledeći put!

WiFi