3-09-04 11:14
[MS Windows] ADS - tamna strana datoteke
piše BORIS TROJAN
ADS (Alternate Data Streams) osobina je NTFS datotečnog sustava koja
nije osobito dobro dokumentirana i nedovoljno je poznata aplikativcima
te većini korisnika. Ova osobina omogućava da se podaci pohrane unutar skrivenih datoteka koje su linkane na normalne vidljive datoteke.
Dva su osnovna pravila: streamovi nemaju ograničenje u veličini i na određenu datoteku može biti linkano više od jednog streama.
Razlog da se ADS tehnologija drži rizikom sigurnosti sistema jest u tome jer su potpuno nevidljivi i moguće ih je definirati kao skoro savršeno mjesto za skrivanje unutar sistema - ono što trojanski virusi mogu i sigurno će iskoristiti; streamovi su podložni klasičnim operacijama create/writte/read. Nadalje, dok je ADS vrlo jednostavno iskoristiti, detektiranje je moguće samo korištenjem specijalnog softwarea. Budući su streamovi virtualno nepoznati velikom broju aplikativaca, postoji tek nekoliko programa za zaštitu koji uopće računaju na postojanje ADS-a. Ako se virus implantira unutar ADS streama, vjerojatno ga vaš antivirusni program neće otkriti. Nadalje, streamovi se ne mogu obrisati - mora se obrisati njegov nositelj.
Zašto NTFS podržava streamove?
Glavni, ali ne i jedini razlog je radi (u sadašnjem stanju apsolutno nefunkcionalne - op. ur.) podrške Macintosh datotečnom sustavu
(Hierarchical File System, HFS). Datoteke na Macintosh sistemu sastoje
se od dva dijela (forks) - data forka i resource forka. Unutar Windowsa ekstenzija datoteke predstavlja asocijaciju koja služi izboru aplikacije koja je pokreće, a kod Macintosha je to resource fork - Windowsi ga stavljaju unutar skrivenog NTFS streama dok data fork postaje glavna datoteka nositelj. Nadalje, u stream se može staviti thumbnail slike, audio doatoteka što omogućuje datoteci da bude uistinu multimedijalna.
Opasnosti streamova
- vidljivi su samo pomoću posebnog softwarea
- svijest o njihovom postojanju je mala
- mogu se povezati na datoteku kao i na direktorij
- ne mogu se rutinski obrisati, mora se obrisati datoteka roditelj
- ako su vezani na root direktorij, naprimjer "c::mojStream", ne mogu se obrisati
- "dostupan prostor na disku" ne ubraja prostor potrošen od strane streamova
- maliciozni program može kontinuirano upisivati unutar streama popunjavajući disk a čišćenje učiniti nemogućim
- imena datoteka pokrenutih streamova ne prikazuju se ispravno unutar Task Managera, npr. stream, "c:\test.txt:mojStream" će biti prikazan kao "test.txt"
Stvaranje streama
1.
Notepad je ADS-aware aplikacija i može se koristiti za stvaranje vlastitog streama:
u komandnoj liniji pomoću naredbe notepad c:\test.txt:mojStream biti će stvoren stream mojStream koji je linkan na datoteku c:\test.txt. Windows Explorer ili naredba dir prikazat će datoteku test.txt dužine 0 byte. Modifikacija ove datoteke neće utjecati na linkani stream
kao i u obrnutom slučaju - "mojStream" je skriveni storage i može biti ime datoteke bilo kojeg tipa i dužine skriven unutar naizgled dobroćudnog test.txt fajla:
notepad test.txt:mojStream.txt
2.
U stream se mogu linkati i podaci:
type tekst.txt > test.txt:skriveni.txt
ili
echo "ADS" > test.txt:skriveni.txt
ili
linkanje na direktorij:
echo ?test? > :skriveni.txt
Datoteka tekst.txt sada je stream noseće datoteke test.txt pod imenom skriveni.txt...
3.
... koji sad možemo vratiti u originalni oblik:
more < test.txt:skriveni.txt > tekst.txt
ili pogledati:
notepad test.txt:skriveni.txt
4.
I ono najvažnije, stvaranje ADS izvršne datoteke:
type notepad.exe > test.txt:np.exe
koja se pokreće
start c:\test\test.txt:np.exe
Brisanje strimova
Brisanjem roditeljske datoteke briše se i stream. No, problem se javlja ako
je stream vezan na direktorij a posebno na root direktorij. U biti, posljedice takvog čina su katastrofalne a nezamislive ako je stream datoteka izvršna. Jedino formatiranje diska "rješava" vas streama. Najmanje što se može napraviti je riješiti se nepoželjnih informacija:
echo prazanADS > prenesi.txt
type prenesi.txt > :spam.txt
Pomoću sljedećih programa mogu se dijagnosticirati streamovi:
Lads - http://www.heysoft.de/Frames/f_sw_la_en.htm
CrucialADS - http://www.crucialsecurity.com/downloads.html
TDS-3 - http://tds.diamondcs.com.au
|