Slijede razlike između dviju inačica stranice.
Starije izmjene na obje strane Starija izmjena Novija izmjena | Starija izmjena | ||
racfor_wiki:virtualizacija:hypervisor [2020/01/09 14:38] kceh [Sigurnosni izazovi] |
racfor_wiki:virtualizacija:hypervisor [2024/12/05 12:24] (trenutno) |
||
---|---|---|---|
Redak 10: | Redak 10: | ||
===== Uvod ===== | ===== Uvod ===== | ||
- | Hipervisor (engl. // | + | Hipervisor (engl. // |
- | Računalo na kojem se izvode virtualni strojevi često se još naziva računalo/ | + | Računalo na kojem se izvode virtualni strojevi često se još naziva računalo/ |
Upravo zbog logičke odvojenosti različitih virtualnih strojeva hipervizor se danas koristi sve više. | Upravo zbog logičke odvojenosti različitih virtualnih strojeva hipervizor se danas koristi sve više. | ||
Redak 25: | Redak 25: | ||
Prednosti ovakve vrste hipervizora su: efikasnost, odnosno performanse zbog direktnog izvođenja na fizičkom hardveru, pojačana sigurnost zbog toga što nema nekog sloja između hipervizora i hardvera kojeg bi napadač mogao ugroziti poput operacijskog sustava. | Prednosti ovakve vrste hipervizora su: efikasnost, odnosno performanse zbog direktnog izvođenja na fizičkom hardveru, pojačana sigurnost zbog toga što nema nekog sloja između hipervizora i hardvera kojeg bi napadač mogao ugroziti poput operacijskog sustava. | ||
- | Mane tipa 1 su: kompliciranije postavljanje za krajnjeg korisnika, potreba za dodatnom upravljačkom logikom (upravlja se sa gostima, ali i hardverom domaćina). | + | Mane tipa 1 su: kompliciranije postavljanje za krajnjeg korisnika, potreba za dodatnom upravljačkom logikom (upravlja se sa gostima, ali i hardverom domaćina). |
- | Primjeri ovakvog tipa hipervizora su: Oracle VM Server for SPARC, Oracle VM Server for x86, Microsoft Hyper-V, Xbox One sistemski softver (koji je zapravo varijacija Microsoftovog Hyper-V rješenja) i VMware ESXi. | + | Primjeri ovakvog tipa hipervizora su: [[https:// |
Na slici je prikazana shema računala koje koristi tip 1 {{ : | Na slici je prikazana shema računala koje koristi tip 1 {{ : | ||
Redak 35: | Redak 35: | ||
Prednosti ove izvedbe su: jednostavno korištenje za krajnjeg korisnika (pogotovo ako korisnik nije stručnjak), | Prednosti ove izvedbe su: jednostavno korištenje za krajnjeg korisnika (pogotovo ako korisnik nije stručnjak), | ||
- | Također ovakva izvedba ima i mane, neke od koji su: performanse zbog posredništva operacijskog sustava, sigurnosne prijetnje ako napadač ovlada operacijskim sustavom domaćina može ugroziti i sve goste. | + | Također ovakva izvedba ima i mane, neke od koji su: performanse zbog posredništva operacijskog sustava, sigurnosne prijetnje ako napadač ovlada operacijskim sustavom domaćina može ugroziti i sve goste. |
- | Primjeri ovakvog tipa hipervizora su: VMware Workstation, | + | Primjeri ovakvog tipa hipervizora su: [[https:// |
Na slici je prikazana shema računala koje koristi tip 2 {{ : | Na slici je prikazana shema računala koje koristi tip 2 {{ : | ||
- | Valja napomenuti da ponekad razlika između tipova hipervizora nije jasna. Primjerice virtualni stroj zasnivan na jezgri (izvorno engl. // | + | Valja napomenuti da ponekad razlika između tipova hipervizora nije jasna. Primjerice virtualni stroj zasnivan na jezgri (izvorno engl. // |
Redak 48: | Redak 48: | ||
Treba naglasiti da svi hipervizori ne rade na jednak način te da se za rješenja koja nisu otvorenog koda (engl. //open source//) ni ne zna kako rade. Primjer takvog rješenja je Microsoftov Hyper-V hipervizor. Ali za razumijevanje rada hipervizora postoji referenti model koji je generalizacija općenitih principa na kojima rade hipervizori. | Treba naglasiti da svi hipervizori ne rade na jednak način te da se za rješenja koja nisu otvorenog koda (engl. //open source//) ni ne zna kako rade. Primjer takvog rješenja je Microsoftov Hyper-V hipervizor. Ali za razumijevanje rada hipervizora postoji referenti model koji je generalizacija općenitih principa na kojima rade hipervizori. | ||
- | Referentni model se sastoji od 3 glavna modula: dispečer, interpretator i alokator. Skica ovakvog referentnog modela dana je dolje. | + | Referentni model se sastoji od 3 glavna modula: dispečer, interpretator i alokator. Skica ovakvog referentnog modela dana je dolje. |
Dispečer prima i preusmjerava naredbe od virtualnog stroja (VMa) jedom od preostala dva modula. | Dispečer prima i preusmjerava naredbe od virtualnog stroja (VMa) jedom od preostala dva modula. | ||
Redak 56: | Redak 56: | ||
Interpretator se zovi svaki put kada virtualni stroj izvrši privilegirane naredbe (naredbe koje operacijski sustav izvršava u jezgrinom načinu rada). Primjerice prilikom mijenjanja konteksta programa ili isključivanja prekidanja. | Interpretator se zovi svaki put kada virtualni stroj izvrši privilegirane naredbe (naredbe koje operacijski sustav izvršava u jezgrinom načinu rada). Primjerice prilikom mijenjanja konteksta programa ili isključivanja prekidanja. | ||
- | {{ : | + | {{ : |
===== Upotreba ===== | ===== Upotreba ===== | ||
Redak 70: | Redak 71: | ||
Hipervizor se može primijeniti i u ugradbenim računalnim sustavima. Ali valjda imati na umu da su ti sustavi često ograničeni računalnom snagom, memorijom, brzinom kojom mogu komunicirati s mrežom itd. Stoga prije implementacije hipervizora u takav sustav treba procijeniti ako benefiti (sigurnost i robusnost na greške) mogu nadmašiti negativne strane (potreba za dodatnim sklopovljem, | Hipervizor se može primijeniti i u ugradbenim računalnim sustavima. Ali valjda imati na umu da su ti sustavi često ograničeni računalnom snagom, memorijom, brzinom kojom mogu komunicirati s mrežom itd. Stoga prije implementacije hipervizora u takav sustav treba procijeniti ako benefiti (sigurnost i robusnost na greške) mogu nadmašiti negativne strane (potreba za dodatnim sklopovljem, | ||
- | Zanimljiva primjena hipervizora može se pronaći u Microsoftovoj igraći konzoli Xbox One, odnosno njezinom softveru. Softver se zasniva na modificiranom hipervisoru Hyper-V (koji se naziva NanoVisor). Iznad hipervizora se izvode dva odvojena operacijska sustava na virtualnim strojevima. Oba operacijska sustava zasnivaju se na Windows 10 jezgri, ali imaju drugačiju namjenu. Prvi virtualni stroj namijenjen je za zahtjevne aplikacije (u ovom slučaju video igre), dok je drugi namijenjen za izvođenje drugih aplikacija (primjerice web preglednika) i korisničkog sučelja. Ovim rješenjem se jednostavno postiže upravljanje resursima te razvijatelj neke zahtjevne aplikacije ne mora brinuti ako se neke manje zahtjevne aplikacije izvode u pozadini. Također ovim rješenjem se povećava sigurnost sustava. Ako korisnik želi aktivirati neki program koji bi mu na primjer pomagao u varanju u nekoj igri to neće biti lako moguće zbog odvijenosti virtualnih strojeva za igre i aplikacije. Također korištenje hipervizora omogućuje laku detekciju i ne izvršavanje nepotpisanog kod. To za posljedicu ima povećanje sigurnosti sustava na zlonamjerne napade kao i sprječavanje pokretanja piratskog softvera. | + | Zanimljiva primjena hipervizora može se pronaći u Microsoftovoj igraći konzoli Xbox One, odnosno njezinom softveru. Softver se zasniva na modificiranom hipervisoru Hyper-V (koji se naziva NanoVisor). Iznad hipervizora se izvode dva odvojena operacijska sustava na virtualnim strojevima. Oba operacijska sustava zasnivaju se na Windows 10 jezgri, ali imaju drugačiju namjenu. Prvi virtualni stroj namijenjen je za zahtjevne aplikacije (u ovom slučaju video igre), dok je drugi namijenjen za izvođenje drugih aplikacija (primjerice web preglednika) i korisničkog sučelja. Ovim rješenjem se jednostavno postiže upravljanje resursima te razvijatelj neke zahtjevne aplikacije ne mora brinuti ako se neke manje zahtjevne aplikacije izvode u pozadini. Također ovim rješenjem se povećava sigurnost sustava. Ako korisnik želi aktivirati neki program koji bi mu na primjer pomagao u varanju u nekoj igri to neće biti lako moguće zbog odvijenosti virtualnih strojeva za igre i aplikacije. Također korištenje hipervizora omogućuje laku detekciju i ne izvršavanje nepotpisanog kod. To za posljedicu ima povećanje sigurnosti sustava na zlonamjerne napade kao i sprječavanje pokretanja piratskog softvera. |
===== Sigurnosni izazovi ===== | ===== Sigurnosni izazovi ===== | ||
+ | |||
Tehnologija hipervizora se može koristiti i u zlonamjerne svrhe. Prije ulaženja u detalje valja imati na umu da je hipervizor koji se izvodi direktno iznad hardvera (tip 1) izuzetno sigurna okolina. Budući da nema nikakvog dodatnog softvera između hipervizora i hardvera, potencijalni napadač ima malo prostora za napade. Također takav tip hipervizora može dodatno nadzirati operacijski sustav budući da sve naredbe prije izvršavanja na hardveru idu kroz njega. Pa je napad na operacijski sustav također teže provesti. Međutim neki napredniji napadi su još uvijek mogući i za ovakvo rješenje. Napadi na hipervizor tipa 2 su lakši zbog toga što se može prvo ugroziti operacijski sustav domaćina pa se onda može ovladati hipervizorom. | Tehnologija hipervizora se može koristiti i u zlonamjerne svrhe. Prije ulaženja u detalje valja imati na umu da je hipervizor koji se izvodi direktno iznad hardvera (tip 1) izuzetno sigurna okolina. Budući da nema nikakvog dodatnog softvera između hipervizora i hardvera, potencijalni napadač ima malo prostora za napade. Također takav tip hipervizora može dodatno nadzirati operacijski sustav budući da sve naredbe prije izvršavanja na hardveru idu kroz njega. Pa je napad na operacijski sustav također teže provesti. Međutim neki napredniji napadi su još uvijek mogući i za ovakvo rješenje. Napadi na hipervizor tipa 2 su lakši zbog toga što se može prvo ugroziti operacijski sustav domaćina pa se onda može ovladati hipervizorom. | ||
- | // | + | // |
- | {{ : | + | {{ : |
Ove vrste napada je teško detektirati klasičnim metodama, jer operacijski sustav nije svjestan da je računalo kompromitirano na način da se ispod operacijskog sustava izvodi zlonamjerni hipervizor. Taj hipervizor može zatim zapisivati i pratiti sve radnje na računalu, poput unošenja lozinki ili praćenja web prometa. Možemo reći da u sustavima koji koriste hipervizor, taj isti hipervizor predstavlja jedinstvenu točku kvara (engl. //single point of failure//). | Ove vrste napada je teško detektirati klasičnim metodama, jer operacijski sustav nije svjestan da je računalo kompromitirano na način da se ispod operacijskog sustava izvodi zlonamjerni hipervizor. Taj hipervizor može zatim zapisivati i pratiti sve radnje na računalu, poput unošenja lozinki ili praćenja web prometa. Možemo reći da u sustavima koji koriste hipervizor, taj isti hipervizor predstavlja jedinstvenu točku kvara (engl. //single point of failure//). | ||
Redak 84: | Redak 86: | ||
Valja primijetiti da se i postavljanje zlonamjernog hipervizora na računalo kojega ga nema također može smatrati opasnim napadom. | Valja primijetiti da se i postavljanje zlonamjernog hipervizora na računalo kojega ga nema također može smatrati opasnim napadom. | ||
- | Međutim postoje jednostavne smjernice koje bi trebale smanjiti mogućnost uspjeha napada ovog tipa. Komunikacija i upravljanje s hipervizorom ne bi trebale biti na istoj komunikacijskoj mreži kao i ostatak prometa. Hipervizor bi se redovno trebao osvježavati novim softverskim nadogradnjama. Te operacijski sustav gosti ne bi trebao imati mogućnost upravljanja hipervizorom. Odnosno s hipervizorom bi se trebalo upravljati s posebnog računala. Također danas već postoje i anti-rootkit softveri koji brinu da rootkit ne bi izvršio zlonamjerne instalacije. Hooksafe je primjer takvog softvera stvorenog upravo za zaštitu hipervizora. | + | Međutim postoje jednostavne smjernice koje bi trebale smanjiti mogućnost uspjeha napada ovog tipa. Komunikacija i upravljanje s hipervizorom ne bi trebale biti na istoj komunikacijskoj mreži kao i ostatak prometa. Hipervizor bi se redovno trebao osvježavati novim softverskim nadogradnjama. Te operacijski sustav gosti ne bi trebao imati mogućnost upravljanja hipervizorom. Odnosno s hipervizorom bi se trebalo upravljati s posebnog računala. Također danas već postoje i anti-rootkit softveri koji brinu da rootkit ne bi izvršio zlonamjerne instalacije. |
===== Zaključak ===== | ===== Zaključak ===== | ||
Redak 95: | Redak 98: | ||
===== Izvori ===== | ===== Izvori ===== | ||
- | [1] [[http://books.google.hr/books? | + | [1] [[https://www.ibm.com/cloud/ |
+ | |||
+ | [2] [[https:// | ||
+ | |||
+ | [3] [[https:// | ||
+ | |||
+ | [4] Pariseau, Beth, [[http:// | ||
+ | |||
+ | [5] Bisht, Namrata, [[https:// | ||
- | [2] [[http://www.google.com/books? | + | [6] [[https://www.giantbomb.com/forums/ |
- | [3] [[http://www.cogtech.usc.edu/publications/ | + | [7] McKay, Dimitri, |