Okruženje podrazumijeva virtualni spremnik (memorijski kontekst u kojem se program izvršava) kreiran od strane korisničke aplikacije - za razliku od okruženja kreiranog od jezgre operacijskog sustava - izoliran od ostatka sustava, koji se naziva i sandbox (pješčanik). Koristi se za odvajanje izvršnog okruženja programa izvršnog okruženja ostatka sustava kako bi se isti zaštitio od mogućih zlonamjernih aktivnosti. Takav spremnik, osim što ne dijeli kontekst izvršavanja s ostatkom korisničkih programa, mora biti odvojen i od sistemskih procesa.
Kako bi se proučavani programi zadržali u spremniku, spremnik nužno mora zadovoljavati sljedeće kriterije:
Opisana funkcionalnost naziva se virtualizacija na razini operacijskog sustava (eng. operating system level virtualization) te podrazumijeva postojanje jedinstvenog operacijskog sustava sa jedinstvenom jezgrom (eng. kernel) unutar kojeg postoje međusobno odvojeni konteksti izvršavanja (eng. user space).
Osim navedene vrste virtualizacije postoji još i sklopovska virtualizacija (engl. platform virtualization, hardware virtualization) gdje se na virtualnom računalu virtualiziranom na poslužiteljskom operacijskom (engl. host OS) sustavu pokreće gostujući operacijski sustav (guest OS). Takvo vrsta virtualizacije može se koristiti u sljedeće svrhe:
Sandboxie je alat koji omogućava izvršavanje programa u ograničenom okruženju tj. kontekstu. Aktualna inačica je 3.54, izdana 24.3.2011., a alat je u aktivnom razvoju. Podržane su sve novije Windows platforme (XP, Vista, 7), ali ne postoje varijante alata za Linux/BSD operacijske sustave. Alat je vlasničkog karaktera (proprietary), ali je besplatan za osobnu uporabu u osnovnom izdanju.
Odabirom opcije Sandbox - Create new sandbox stvara se novi kontekst izvršavanja (na primjeru sa slike stvorena su tri konteksta).
Slika 1. Stvaranje konteksta
Svaki kontekst posjeduje svoje konfiguracijske postavke te je moguće u potpunosti konfigurirati svaki zasebno. Odabirom određenog konteksta i izborom opcije Sandbox settings, moguće je detaljno konfigurirati svaki aspekt rada konteksta.
Važnije postavke su:
Slika 2. Konfiguracija konteksta
Nakon stvaranja konteksta i odabira postavki, pokretanje programa unutar konteksta svodi se na izbor konteksta pokretanja (ukoliko se ne radi o automatskom pokretanju) te izbora programa koji će se pokrenuti.
Slika 3. Pokretanje programa unutar konteksta
Korisnik može prekinuti rad svakog od pokrenutih programa pojedinačno ili svih programa grupno. Ukoliko kao rezultat nekog programa nastane datoteka, ona je također dio konteksta. Svaku takvu datoteku korisnik može, ukoliko zaključi da je sigurna, premjestiti izvan konteksta. Naravno, sve takve datoteke korisnik može i obrisati (zasebno ili grupno). Pregled svih datoteka može se prikazati odabirom opcije View - Files and Folders (na primjeru sa slike datoteka favicon.ico nastala je kao rezultat programa chrome te je kao takva spremljena unutar konteksta).
Slika 4. Pregled datoteka unutar konteksta
Više o alatu možete saznati na službenim stranicama.
Na BSD/Linux operacijskim sustavima postoje mnoga virtualizacijska rješenja (na razini operacijskog sustava), no dva spomenuta nameću se po zrelosti i stabilnosti. Budući da su navedene platforme češće korištene kao poslužiteljska nego korisnička računala, navedena rješenja optimizirana su upravo u tu svrhu pa tako svaki odvojeni kontekst posjeduje:
Navedena svojstva omogućuju da se od jednog fizičkog poslužitelja napravi više virtualnih poslužitelja od kojih će svaki služiti svojoj svrsi (WEB poslužitelj, DNS poslužitelj itd.).
Više o BSD jail alatu i OpenVZ alatu možete saznati na službenim stranicama.
Na Windows platformama, alternativa opisanom alatu je Retnil Virtual System. Alat je također vlasničkog karaktera uz besplatno korištenje za osobnu uporabu. Osim mogućnosti odvajanja konteksta izvršavanja, alat posjeduje još i ugrađeni antivirusni sustav te sustav zapisivanja i povratka sistemskog stanja (system restore).
Više o alatu možete saznati na službenim stranicama.
Posljednje sigurnosne preporuke