Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Razlike

Slijede razlike između dviju inačica stranice.

Poveznica na ovu usporedbu

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. //Hypervisor//) ili monitor virtualnog stroja (engl. //Virtual machine monitor//, VMM) je najčešće dio softvera koji omogućuje izvođenje jednog ili više virtualnih strojeva (engl. Virtual machine, VM) na računalu. Virtualni stroj je emulacija računala koja pruža sve funkcionalnosti kao pravo, fizičko računalo. Uz softversku implementaciju hipervizor može biti izveden kao firmware ili hardver.+Hipervisor (engl. //Hypervisor//) ili monitor virtualnog stroja (engl. //Virtual machine monitor//, VMM) je najčešće dio softvera koji omogućuje izvođenje jednog ili više virtualnih strojeva (engl. Virtual machine, VM) na računalu. Virtualni stroj je emulacija računala koja pruža sve funkcionalnosti kao pravo, fizičko računalo. Uz softversku implementaciju hipervizor može biti izveden kao firmware ili hardver. [[https://www.vmware.com/topics/glossary/content/hypervisor|[2]]]
  
-Računalo na kojem se izvode virtualni strojevi često se još naziva računalo/stroj domaćin, dok se virtualni strojevi nazivaju računala/strojevi gosti. Gosti (virtualni strojevi) koji se izvode uz pomoć hipervizora na domaćinu dijele iste fizičke resurse tog domaćina. Hipervizor se brine da se gosti izvode neometano jedni pored drugih. Svaki gost (VM) je logički odvojen od ostalih i to tako da mu hipervizor dodijeli dio računalne snage, memorije i diska domaćina. Logička odvojenost sprječava moguće interferencije gosti (VMa). To za posljedicu ima da nepopravljiva greška na jednom gostu (VMu), na primjer greška u memoriji ili sigurnosna kompromitiranosti, ne mora uzrovati grešku na ostalim gostima ili domaćinu.+Računalo na kojem se izvode virtualni strojevi često se još naziva računalo/stroj domaćin, dok se virtualni strojevi nazivaju računala/strojevi gosti. Gosti (virtualni strojevi) koji se izvode uz pomoć hipervizora na domaćinu dijele iste fizičke resurse tog domaćina. Hipervizor se brine da se gosti izvode neometano jedni pored drugih. Svaki gost (VM) je logički odvojen od ostalih i to tako da mu hipervizor dodijeli dio računalne snage, memorije i diska domaćina. Logička odvojenost sprječava moguće interferencije gosti (VMa). To za posljedicu ima da nepopravljiva greška na jednom gostu (VMu), na primjer greška u memoriji ili sigurnosna kompromitiranosti, ne mora uzrovati grešku na ostalim gostima ili domaćinu. [[https://www.ibm.com/cloud/learn/hypervisors|[1]]]
  
 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). [[https://www.ibm.com/cloud/learn/hypervisors|[1]]][[https://www.dnsstuff.com/what-is-hypervisor|[3]]]
  
-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://www.oracle.com/virtualization/vm-server-for-sparc/|Oracle VM Server for SPARC]][[https://www.oracle.com/virtualization/vm-server-for-x86/|Oracle VM Server for x86]][[https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/|Microsoft Hyper-V]], Xbox One sistemski softver (koji je zapravo varijacija Microsoftovog Hyper-V rješenja) i [[https://www.vmware.com/products/esxi-and-esx.html|VMware ESXi]].
  
 Na slici je prikazana shema računala koje koristi tip 1 {{  :racfor_wiki:virtualizacija:tip1.png?400  }} Na slici je prikazana shema računala koje koristi tip 1 {{  :racfor_wiki:virtualizacija:tip1.png?400  }}
Redak 35: Redak 35:
 Prednosti ove izvedbe su: jednostavno korištenje za krajnjeg korisnika (pogotovo ako korisnik nije stručnjak), mogućnost lakog i brzog isprobavanja novih okolina ili operacijskih sustava (tip 2 se često koristi kod isprobavanja programa na različitim platformama ili kod provjera nekih sigurnosnih izazova bez ugrožavanja vlastitog računala). Prednosti ove izvedbe su: jednostavno korištenje za krajnjeg korisnika (pogotovo ako korisnik nije stručnjak), mogućnost lakog i brzog isprobavanja novih okolina ili operacijskih sustava (tip 2 se često koristi kod isprobavanja programa na različitim platformama ili kod provjera nekih sigurnosnih izazova bez ugrožavanja vlastitog računala).
  
-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. [[https://www.ibm.com/cloud/learn/hypervisors|[1]]][[https://www.dnsstuff.com/what-is-hypervisor|[3]]]
  
-Primjeri ovakvog tipa hipervizora su: VMware Workstation, VMware Player, VirtualBox, Parallels Desktop (Mac).+Primjeri ovakvog tipa hipervizora su: [[https://www.vmware.com/products/workstation-pro.html|VMware Workstation]],[[https://www.vmware.com/products/workstation-player.html| VMware Player]][[https://www.virtualbox.org/|VirtualBox]][[https://www.parallels.com/eu/products/desktop/|Parallels Desktop (Mac)]].
  
 Na slici je prikazana shema računala koje koristi tip 2 {{  :racfor_wiki:virtualizacija:tip2.png?400  }} Na slici je prikazana shema računala koje koristi tip 2 {{  :racfor_wiki:virtualizacija:tip2.png?400  }}
  
-Valja napomenuti da ponekad razlika između tipova hipervizora nije jasna. Primjerice virtualni stroj zasnivan na jezgri (izvorno engl. //Kernel-based Virtual Machine//, KVM) je modul jezgre (engl. //kernel//) Linuxa koji omogućava jezgri operacijskog sustava da se ponaša poput hipervizora. KVM zahtjeva hardversku podršku za virtualizaciju kako bi jezgru efektivno pretvorio u hipervizor tipa 1. Ali ipak Linux jezgra je dio operacijskog sustava gdje se aplikacije natječu za iste resurse računala koje koristi i VM pa se KVM također može kategorizirati kao hipervizor tipa 2.+Valja napomenuti da ponekad razlika između tipova hipervizora nije jasna. Primjerice virtualni stroj zasnivan na jezgri (izvorno engl. //Kernel-based Virtual Machine//, KVM) je modul jezgre (engl. //kernel//) Linuxa koji omogućava jezgri operacijskog sustava da se ponaša poput hipervizora. KVM zahtjeva hardversku podršku za virtualizaciju kako bi jezgru efektivno pretvorio u hipervizor tipa 1. Ali ipak Linux jezgra je dio operacijskog sustava gdje se aplikacije natječu za iste resurse računala koje koristi i VM pa se KVM također može kategorizirati kao hipervizor tipa 2. [[https://searchservervirtualization.techtarget.com/news/2240034817/KVM-reignites-Type-1-vs-Type-2-hypervisor-debate|[4]]]
  
  
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. [[https://www.geeksforgeeks.org/hypervisor/|[5]]]
  
 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.
  
-{{ :racfor_wiki:virtualizacija:referentni-model.png?400 |}}+{{  :racfor_wiki:virtualizacija:referentni-model.png?400  }} 
  
 ===== 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, bilo za hardversku podršku virtualizacije ili dodatnu memoriju koju hipervizor treba). Također za neke sustave treba razmotriti da hipervizor ne bi ugrozio zahtjeve za rad u stvarnom vremenu. 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, bilo za hardversku podršku virtualizacije ili dodatnu memoriju koju hipervizor treba). Također za neke sustave treba razmotriti da hipervizor ne bi ugrozio zahtjeve za rad u stvarnom vremenu.
  
-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. [[https://www.giantbomb.com/forums/xbox-one-8450/why-does-the-xbox-one-have-a-hypervisor-and-what-i-1437760/|[6]]]
  
  
 ===== 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.
  
-//Hyperjacking// je naziv za skupinu napada kojima je cilj ili ovladati originalnim hipervizorom pomoću malwarea ili postaviti svoj hipervizor kako bi se ovladalo originalnim hipervizorom na računalu. Jednom kad se ovlada originalnim hipervizorom, može se upravljati i sa virtualnim strojevima. Glavni načini kako ovaj napad može biti izveden su: postavljanje vlastitog hipervizora ispod originalnog hipervizora, preuzimanje kontrole originalnog hipervizora, izvođenjem vlastitog hipervizora iznad originalnog. Postavljanje vlastitog hipervizora se često provodi uz pomoć malwarea ili rootkitova. Slika ispod skicira napad. +//Hyperjacking// je naziv za skupinu napada kojima je cilj ili ovladati originalnim hipervizorom pomoću malwarea ili postaviti svoj hipervizor kako bi se ovladalo originalnim hipervizorom na računalu. Jednom kad se ovlada originalnim hipervizorom, može se upravljati i sa virtualnim strojevima. Glavni načini kako ovaj napad može biti izveden su: postavljanje vlastitog hipervizora ispod originalnog hipervizora, preuzimanje kontrole originalnog hipervizora, izvođenjem vlastitog hipervizora iznad originalnog. Postavljanje vlastitog hipervizora se često provodi uz pomoć malwarea ili rootkitova. Slika ispod skicira napad. [[https://www.securityweek.com/deep-dive-hyperjacking|[7]]]
  
-{{ :racfor_wiki:virtualizacija:hyperjacking.png?400 |}}+{{  :racfor_wiki:virtualizacija:hyperjacking.png?400  }}
  
 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. [[https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/hooksafe-ccs09.pdf|Hooksafe]] je primjer takvog softvera stvorenog upravo za zaštitu hipervizora. 
  
 ===== Zaključak ===== ===== Zaključak =====
Redak 95: Redak 98:
 ===== Izvori ===== ===== Izvori =====
  
-[1] [[http://books.google.hr/books?id=mFJe8ZnAb3EC&printsec=frontcover#v=onepage&q&f=false|PlassJan L., Roxana Moreno, and Roland BrünkenCognitive Load TheoryCambridge University Press2010.]]+[1] [[https://www.ibm.com/cloud/learn/hypervisors|Hypervisors]]8.5.2019., pristupljeno 28.12.2019. 
 + 
 +[2] [[https://www.vmware.com/topics/glossary/content/hypervisor|Hypervisor]], pristupljeno 28.12.2019. 
 + 
 +[3] [[https://www.dnsstuff.com/what-is-hypervisor|What Is a Hypervisor? Hypervisor Definition, Types, and Examples]], 28.102019pristupljeno 28.12.2019. 
 + 
 +[4Pariseau, Beth, [[http://searchservervirtualization.techtarget.com/news/2240034817/KVM-reignites-Type-1-vs-Type-2-hypervisor-debate|"KVM reignites Type 1 vs. Type 2 hypervisor debate"]]. SearchServerVirtualization, TechTarget, 15.4.2011., Pristupljeno: 29.12.2019. 
 + 
 +[5] Bisht, Namrata, [[https://www.geeksforgeeks.org/hypervisor|Hypervisor]], pristupljeno 29.12.2019.
  
-[2] [[http://www.google.com/books?id=duWx8fxkkk0C&printsec=frontcover#v=onepage&q&f=false|MayerRichard EThe Cambridge handbook of multimedia learningCambridge University Press, 2005.]]+[6] [[https://www.giantbomb.com/forums/xbox-one-8450/why-does-the-xbox-one-have-a-hypervisor-and-what-i-1437760/|Why does the Xbox One have a hypervisorand what is it?]], pristupljeno 30.12.2019.
  
-[3] [[http://www.cogtech.usc.edu/publications/kirschner_Sweller_Clark.pdf|Kirschner, P. A, Sweller, Jand Clark, RE. Why minimal guidance during instruction does not work: An analysis of the failure of constructivistdiscoveryproblem-based, experiential, and inquiry-based teachingEducational psychologist 41, no2, pp 75-86, 2006]]+[7McKay, Dimitri, [[https://www.securityweek.com/deep-dive-hyperjacking|A Deep Dive Into Hyperjacking]]3.2., 2011pristupljeno 30.12.2019.
  
  
racfor_wiki/virtualizacija/hypervisor.1578580704.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0