Kombinerer Xen og Linux i virusfritt pc-OS

Ledige IT-stillinger

Kombinerer Xen og Linux i virusfritt pc-OS

«Éngangs virtuelle maskiner» gjør Joanna Rutkowskas Qubes OS helt enestående.


I august 2006 vakte en ung polsk IT-sikkerhetsekspert, Joanna Rutkowska, oppsikt ved å lansere Blue Pill, en «rootkit» som smyger seg gjennom pc-ens operativsystem for å legge seg kloss inntil maskinvaren som allmektig hypervisor, der den gjør det opprinnelige operativsystemet om til gjest, uvitende om sin nye status. Blue Pill ble presentert på en sikkerhetskonferanse i Oslo i april 2008 (se artikkelen «Blue Pill» er hackernes ultimate våpen).

De siste månedene har Rutkowska og hennes selskap Invisible Things Lab konsentrert seg om en mer konstruktiv oppgave: Et operativsystem for pc-er, døpt Qubes OS, som skal utnytte virtualisering for å tilby vanlig brukere langt høyere sikkerhet enn noe annet system.

Qubes OS bygger på Xen-hypervisoren, og vil implementeres i åpen kildekode. Rutkowska sier de planlegger kommersielle utvidelser, og at én mulighet er støtte for virtuelle maskiner som er i stand til å kjøre Windows-applikasjoner.

Joanna Rutkowska kan bringe pc-sikkerheten en stor tjeneste hvis hun lykkes med sin Qubes OS.
Joanna Rutkowska kan bringe pc-sikkerheten en stor tjeneste hvis hun lykkes med sin Qubes OS.
Hovedideen med Qubes OS er at pc-en deles opp i et antall virtuelle maskiner som hver kan kjøre én eller flere applikasjoner.

For ikke å overbelaste de virtuelle maskinene med nødvendige felles funksjoner, som grafisk brukergrensesnitt, er Qubes mer enn bare en pakke rundt Xen. Den har blant annet en egen infrastruktur for virtuelle maskiner, og en egenutviklet virtualisering av brukergrensesnittet.

De ulike virtuelle maskinene som kjører samtidig på en pc, er strengt atskilt fra hverandre. Rutkowska forklarer at «sikkerhet gjennom isolasjon» er det grunnleggende prinsippet i Qubes.

Når en Qubes-pc startes, viser start-menyen kombinasjoner av applikasjoner og virtuelle maskiner. De virtuelle maskinene kan døpes etter oppgave: Demomaterialet til Qubes viser virtuelle maskiner som «random» for surfing, «work» for arbeid, «bank» for surfing til nettbank, «personal» for oppgaver som personlig e-post, «vault» for spesielle sikkerhetsfunksjoner som passordhåndtering og så videre..

Startmenyen er applikasjonsorientert, men viser samtidig hvilken virtuell maskin hver applikasjon starter i.
Startmenyen er applikasjonsorientert, men viser samtidig hvilken virtuell maskin hver applikasjon starter i.

Applikasjoner som kjører i én virtuell maskin er avskåret fra å kommunisere med applikasjoner i andre virtuelle maskiner. Qubes har et mellomlager for klipping og liming: Det er tilgjengelig for brukeren, men ikke for noen applikasjon.

Slik de er implementert i den nåværende alfa-utgaven av Qubes, nøyer de virtuelle maskinene seg med rundt 400 megabyte minne hver, og at det er tilstrekkelig til å kunne kjøre for eksempel Firefox (nettleser), Thunderbird (klient for e-post, kontakter og kalender) og kontorpakken OpenOffice samtidig.

– Smart bruk av Xen delt minne gjør vår grensesnittimplementasjon svært effektiv, slik at virtualiserte applikasjoner flest opplever det som om de ble kjørt i sitt egentlige miljø, heter det på FAQ-sidene til Qubes. Det forsikres at vanlig video kjører som normalt, og at Qubes også håndterer akselerert OpenGL-grafikk. 3D-grafikk kan derimot ikke kjøres.

Et prinsipp Rutkowska har vært opptatt av lenge, og som er implementert i Qubes, er «nøstede virtuelle maskiner», det vil si at en hypervisor skal kunne kjøre en hypervisor som gjest. Evnen til å kjøre virtuelle maskiner inne i hverandre kan blant annet utnyttes til å heve sikkerheten i maskinen.

I et bloginnlegg lagt ut tidligere denne uken, beskriver Rutkowska en ny egenskap som hun og hennes kollegaer har funnet på: «Disposable VMs», eller «éngangs virtuelle maskiner».

En éngangs virtuell maskin er et særtilfelle av en nøstet virtuell maskin: Den har et svært begrenset omfang, den opprettes kun for midlertidige oppgaver, og den forsvinner helt straks oppgaven er utført.

Et typisk brukstilfelle for en éngangs-VM, ifølge Rutkowska, er visning av vedlegg til e-post. Slike vedlegg er den typiske måten å spre ondsinnet kode på. For å unngå dette, ordner man e-postklienten slik at den aldri viser vedlegg i sin egen virtuelle maskin, men sørger for å opprette en midlertidig virtuell maskin for å kjøre den aktuelle dokumentleseren eller mediespilleren. Da spiller det ingen rolle om dokumentet er infisert eller ikke: Maskinen den kjører i har svært begrensede rettigheter, den kommuniserer ikke med andre virtuelle maskiner på pc-en, og den tilintetgjøres straks man lukker vinduet den vises i.

Ifølge Rutkowska, er dette en klar «killer feature» ved det kommende pc-operativsystemet Qubes OS.

En første allment tilgjengelig utgave av Qubes er ventet innen utgangen av året.

Når, eller hvorvidt, en utgave av Qubes vil kunne kjøre Windows-applikasjoner, er uvisst. Kanskje Microsoft kunne interesser seg for ideen, og yte et lite bidrag?

    Les også:

Les mer om: operativsystem, sikkerhet, virtualisering

Diskutér denne artikkelen