| 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 
 
 |