Da bi jedan računar bio sasvim siguran, trebalo bi da bude bez napajnja, bez flopi-diska i zaključan u sefu. Ako stavimo šalu o sefu na stranu, ostaje problem flopi diska, sigurnosna "crna rupa" svih operativnih sistema na PC računarima. Ni Windows NT nije izuzetak.
Opasni flopi
Zašto je flopi tako opasan? Zamislite da neko restartuje NT mašnu i stavi DOS sistemsku disketu, zatim startuje tzv. Trojanskog konja, odnosno DOS program koji bi izgledao kao logon procedura na NT-u. Kod NT-a se pritiskom na CTRL-ALT-DEL dobija task manager, tako da je odmah jasno da nešto nije u redu. Pod DOS-om bi mogao da se napravi program koji "skupi" vašu lozinku, na neki način je pošalje preko mreže, i onda simulira ono što zovemo "plavi ekran smrti", uz blokiranje računara. Zbunjenom korisniku preostaje reset, nakon čega će se startovati NT i sve će teći normalno... osim što vam je lozinka kompromitovana. Dakle, ako vas je sačekao upaljen kompjuter i, posle prijavljivanja, plavi ekran, učinite sebi uslugu i posle novog logovanja promenite lozinku.
Desilo mi se jednom da je NT odbio da se startuje uz nezaobilazan "plavi ekran" i poruku "Inaccesible boot device". Kako je poruka ostala ista i nakon nekoliko sukcesivnih resetovanja, paljenja/gašenja kompjutera i provere svih kablova unutar kućišta, bila je otklonjena svaka sumnja da je problem hardverske prirode, pogotovo što je mašina u DOS modu radila sasvim normalno. Posle malo mozganja startovao sam F-Prot i našao boot sector diska zaražen Ripper virusom! NT jednostavno nije hteo da startuje, što je bilo spasonosno, jer je jedino to ukazivalo na postojanje virusa na toj mašini. Doživeo sam slično kasnije i sa tzv. NYB boot virusom, te ako ikada dobijete poruku Inaccessible boot device, startujte antivirus program.
NTFS pruža zaštitu pristupa na nivou fajla, ali su mehanizmi koji obezbeđuju ovu zaštitu ugrađeni u sam NT, a ne u druge operativne sisteme. Znači da NTFS particijama može da se pristupi i bez NT, potrebna vam je mašina sa butabilnim flopi diskom i program NTFSDOS (postoji i u verziji za Linux). On omogućava da zaobiđete sve sigurnosne mehanizme, čak je sposoban da čita podatke sa NTFS kompresovanih particija.
Svemu ovome nekako doskočiti, a da flopi ipak ostane na mestu? Može, mada na način koji ne odgovara svima: NT podržava mehanizme mirroringa i softverske emulacije RAID disk kontrolera, čime se podaci sa jednog diska verno kopiraju na drugi (mirroring) ili po posebnoj šemi raspodeljuju na više drugih (RAID). Ako uključite neku od ovih opcija, bićete razmerno sigurni da niko neće moći da pristupi vašim podacima uz pomoć DOS sistemske diskete i nekog programa kakav je na primer NTFDOS. Štaviše, particije koje su u mirroring-u mogu biti i obične FAT, kojima se ipak ne može pristupiti ako se mašina jednostavno podigne u DOS modu. Ovako gubite slobodan prostor na vašim diskovima, ali dobijate na sigurnosti: kako od havarije, tako i od neovlašćenog pristupa vašim podacima.Generalna preporuka je da u BIOS setup-u postavite boot sekvencu na C, A i zatim postavite lozinku za ulazak u Setup. Tako ćete onemogućiti da neko sa diskete podigne neki drugi operativni sistem i time "zaobiđe" NT-ove sigurnosne mehanizme. Naravno, BIOS lozinka može da se resetuje ili diskovi mogu da se izvade i odnesu na drugi računar, ali sve to podrazumeva priličan trud "uljeza" i duže intervale neaktivnosti računara - u standardnim "kancelarijskim" uslovima teško će otvaranje računara i prenošenje diskova proći neopaženo.
Lepa reč i gvozdena vrata ...
Ako NT koristite na kućnoj mašini kao jedini korisnik, sigurno vam je dosadilo da se predstavljate korisničkim imenom i lozinkom. Zato su mnogi podesili da im NT ne traži ove formalnosti koristeći PowerToys ili tako što u Registry bazu stave HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon AutoAdminLogon na 1, uz odgovarajuću vrednost u DefaultUserName i DefaultPassword.
Ako radite u bilo kom drugom okruženju, identifikacija je neophodna i predstavlja prvi uslov za bilo kakvu zaštitu kompjuterskog sistema. Važe sva uobičajena upozorenja da za lozinku ne koristite reči engleskog (ni našeg) jezika, lična imena, da kombinujete brojke i slova, da lozinku povremeneno menjate, da ona bude pristojne dužine itd. Svaki "haker" će prvo probati sa ovakvim kombinacijama, pre nego što startuje program koji po principu nagađanja ("brute force") pokušava da pronađe vašu lozinku.Kada se radi o lozinci, NT razlikuje mala i velikih slova, što treba koristiti, jer tako postižete daleko više mogućih kombinacija. Moguće je postaviti minimalnu dužinu password-a (barem osam karaktera). Koristan mehanizam je onemogućavanje korisnika da se loguje neko vreme u slučaju da je nekoliko puta za redom uneo pogrešnu lozinku. To je rešenje za "brute force" metode provaljivanja, jer se može postaviti da se nakon npr. 3 neuspešna pokušaja prijavljivanja korisnik ne može logovati u narednih pola sata, što onom koji pokušava da neovlašćeno pristupi vašem kompjuteru ostavlja 144 pokušaja za 24 sata. Uz dugačku lozinku, verovatnoća da je neko iz 144 puta pogodi je minimalna, a vi ćete u sistemskim log fajlovima za to vreme primetiti šta se dešava.
Ovakav vid zaštite se ne može postaviti na administratorski nalog, jer bi neko mogao stalno da pokušava logovanje pod tim imenom - čak i ako ne pogodi pravu lozinku, može onemogućiti normalno administriranje računara. Ali, u sklopu NT4.0 Resouce Kit-a nalazi se program PASSPROP koji omogućava ovu zaštitu i za administratore.
Najbolje je administratorov nalog preimenovati u nešto "bezazleno", staviti dugu lozinku i onemogućiti logovanje kroz mrežu. Nije loše sakriti ime korisnika koji se poslednji logovao, pogotovo ako isti ima administratorske privilegije. To se najlakše radi tako što se u Registry bazu u HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon stavi ključ DontDisplayLastUserName i dodeli mu se vrednost 1 (REG_SZ).
NTFS garantuje sigurnost?
Sam po sebi ne, ali pravilno konfigurisan omogućuje da maksimalno zaštitite sistemske fajlove i privatne korisničke podatke, pogotovo ako na jednoj NT mašini radi više korisnika, što nije redak slučaj.
Kako? Pitanje jeste konkretno, ali se bojim da nema konkretnog i jednostavnog odgovora: ono što zadovoljava kriterijume na jednoj mašini, može biti nedovoljno na drugoj ili praviti probleme prilikom instalacije nekih aplikacija na nekoj trećoj. Evo par smernica za razmišljanje na ovu temu:
Za sistemsku particiju (poželjno za sve ostale particije ako ih ima), dakle od samog root-a pa nadalje, postaviti: SYSTEM - Full Control, Administrators - Full Control, Users - Read only (umesto ili pored "Users" mogu biti sve one grupe korisnika koje ste kreirali) onda na %SYSTEMROOT%SYSTEM32CONFIG treba staviti: SYSTEM - Full Control, Administrators - Full Control, Creator Owner - Full Control, Users - Add permisions. Tako korisnici mogu kreirati vlaste profile, ali nemogu da čitaju tuđe, jer oni mogu sadržavati i poverljive podatke.
Na TEMP direktorijum treba postaviti: SYSTEM - Full Control, Administrators - Full Control, Creator Owner - Full Control, Users - read/write/execute (RWX) pristup direktorijumu kao i "no access specified" za fajlove. Tako omogućavate korisnicima da koriste TEMP direktorijum, ali ne i da čitaju temp fajlove koje je ostavio za sobom neki drugi korisnik, jer no access specified znači da korisnik ne može nikako pristupati fajlovima u tom direktorijumu, sem ako mu pravo pristupa nekom od njih nije eksplicitno dato.
Treba izbegavati davanje full-access pristupa korisnicima bilo gde - koristite pravo change, koje dozvoljava korisnicima da dodaju nove, listaju, brišu ili modifikuju postojeće podatke ili direktorijume, što je u 99% slučajeva više nego dovoljno, dok im full-permision dozvoljava i da sami postavljaju prava pristupa pojedinim resursima ili da nad njim preuzmu vlasništvo. Ovo može biti nezgodno ako neki korisnik, slučajno i najčešće iz neznanja, preuzme vlasništvo nad fajlom u nekom direktorijumu koji deli sa ostalim korisnicima, pa mu drugi korisnici posle toga ne mogu pristupiti.
Iako je NTFS vrlo robustan file sistem, dešava se da premeštanjem fajla iz jednog u drugi direktorijum on promeni svoje zaštitne atribute. Preciznije rečeno, ako fajl premestite komandom MOVE, on zadržava sve atribute u skladu sa direktorijumom u kome je nastao, ali ako ga kopirate, on nasleđuje atribute direktorijuma u koji ga smestite. Ovo je prilično logično: neko želi da kopiju fajla iz svog privatnog direktorijuma stavi u javni, gde svi imaju pravo čitanja i pisanja. Pomenuto pravilo važi za kopiranja naredbama COPY i XCOPY, kao i za kopiranja iz Explorer-a, ali ako za kopiranje koristite SCOPY (Secure Copy) utility iz NT Resource Kit-a, kopiranjem fajla kopirate i sve njegove originalne sigurnosne atribute.
Ove osnovne smernice za bezbednost podataka moraćete da prilagodite konkretnoj situaciji. Ako, recimo, koristite pojedine Windows 3.1x aplikacije, možda ćete morati dozvoliti pisanje po pojedinim .INI fajlovima u direktorijumima tih aplikacija, ili čak i u sam root sistemskog diska (%SYSTEMROOT%). Razlog je to što one ne koriste REGISTRY već svoje konfiguracione podatke upisuju u INI fajlove, kao što i mnogi DOS grafički orijentisani programi zahtevaju pravo upisa u %SYSTEMROOT%SYSTEM32CMOS.RAM i sl.
Ako nakon postavljanja ovakvih zaštita imate problema (neko od korisnika ne može da se uloguje, desktop je totalno prazan i slično), što se ranije nije dešavalo, najbolje je da uključite tzv. failure auditing, sistemsko beleženje svih bezuspešnih pristupa pojedinim resursima. Njihovom analizom videćete koja aplikacija/korisnik ne uspeva da pristupi kojim fajlovima, pa ćete shodno tome napraviti odgovarajuće izmene. Takođe, posle instalacije service-pack-ova proverite da li su prava pristupa ostala ista u svim direktorijumima, posebno sistemskim, jer se dešava da se vrate na stanje kakvo je bilo prilikom prve instalacije.
Što se aplikacija tiče - izbegavajte da ih instalirate pod sistemslim nalogom, pošto su im tada celokupna memorija, sve instrukcije procesora, jednom rečju svi resursi na raspolaganju, što može biti opasno ako aplikacija sadrži neki bag, virus ili "trojanac". Ako aplikacija ne zahteva izričito startovanje pod sistemskim nalogom, otvorite neki "običan", odredite mu prava i startujte aplikaciju pod njim, naročito ako je ona orijentisana ka Internetu i koristi TCP/IP protokol.
|