Vi har vært så heldig å få med oss Derek Granito, Product manager i avdelingen Enterprise Security, med hovedfokus på virtualiseringsbasert sikkerhet (VBS), da særskilt rundt funksjonene «memory integrity». Les intervjuet eller følg med videointervjuet for ekstra krydder!
Hei Derek, kan du fortelle litt om deg selv og hva du gjør?
Jeg og teamet mitt har som ansvar å bebygge nye funksjoner og muligheter rundt disse sikkerhetsfunksjonene slik at vi gjør dem tilgjengelig for andre team i Windows og maskinvareleverandører.
Hva gjør memory integrity?
Det er et relativt komplekst samspill hvor vi benytter hypervisoren til å skape et eget dedikert miljø for operativsystemets kjerne å operere. På denne måten hindrer vi ondsinnet kode å skrive til Windows kjernen og manipulere områder den ikke skal gjøre endringer på.
Før memory integrity blir aktivert gjør operativsystemet en sjekk for applikasjoner, da særlig drivere, som ikke vil fungere sammen med memory-integrity. Ofte er dette drivere som ikke har sjekket avstøtte for de korrekte parameterne, men noen ganger hender det at driverne er kodet dårlig og prøver å skrive til områder i minnet det ikke skal. Dette er ofte en av grunnene til at blåskjerm oppstår, når drivere ikke følger spillereglene og Windows stenger ned for å beskytte integriteten til kjernen.
Stiller VBS noen spesielle krav til maskinvaren den skal kjøres på?
I det store og hele – nei. Har maskinen din støtte for Hyper-V så vil den også ha støtte for Memory Integrity. Den er også Platform uavhengig, så du kan aktivere denne funksjonaliteten på både Windows 10 og Windows Server, noe som er verdt å ha i bakhodet for administratorer.
Men, og dette er litt essensielt, det er gjort en del forbedringer gjennom de senere årene. Dette gjelder både hypervisoren vel som maskinvareforbedringer. Dette gjør at stadig flere enheter som kommer ut fra fabrikk nå, har disse funksjonene aktivert fra start.
Så funksjonene har beslaglagt litt for mange ressurser på ytelsen i tidligere maskinvarekomponenter?
Det er litt av grunnen, men det er også aspektet ved at nye sikkerhetsfunksjoner stiller nye samsvarskrav til både maskinvare- vel som det helhetlige økosystemet til maskinen som leveres. Noe av dette er applikasjonskrav, slik at vi ikke ødelegger applikasjonene som kjører på Windows- maskinene til brukerne (Red anm: eksempelvis virtuelle printere og virtuelle maskinvarer).
Enheter som Surface Book 3 og Surface Pro 7+ leveres med disse sikkerhetsfunksjonene fra fabrikk, er det en signifikant risikoforskjell om dette aktiveres et år ut i enhetens levetid?
Selv om det beste er å ha memory integrity og øvrige VBS funksjoner aktivert fra fabrikk, er det en enorm gevinst å slå på denne funksjonen – selv om en enhet har vært i produksjon over lengre tid. Kombinerer du memory integrity med Firmware protection er du sikret fra noen av de mest utspekulerte angrepsformene vi står ovenfor.
Virtualiseringsbasert sikkerhet er et konsept som begynner å bli stadig mer innarbeidet, men hvor kommer idéen fra? Har vi noen fortellinger fra teknologiens barndom?
Mye av teknologien kommer fra utfordringen vi hadde knyttet til ondsinnet angrep som gav forhøyede rettigheter etter å ha misbrukt rettighetene til kjernen. I praksis betyr dette at ondsinnet kode hadde administrator- eller systemrettigheter som følge av at de kjørte i kontekst av kjernen til operativsystemet, og dette ønsket vi å bryte.
En av de beste måtene å styrke kjernen til Windows på var å opprette et nytt rettighetsnivå som omgikk kjernen til operativsystemet som er den mest privilegerte sonen til maskinvaren – altså – det er ikke kjernen til operativsystemet som innehar den høyeste rettigheten til plattformen, men det egne dedikerte området til minnet i en egen dedikert virtuell maskin.
Vi som står på utsiden av Microsoft, opplever at virtualiseringsbasert sikkerhet fungerer i flere nivåer og flere lag. Ett av dem er «Credential guard» som beskytter brukerens identitet og passord på maskinen, er det noe poeng i å beskytte kjernen til operativsystemet hvis de får tak i identiteten?
Det er et flott spørsmål, og det inngår som en løsning på et komplekst problem. Så VBS er et konsept med flere elementer, som blant annet Credential Guard består av.
Ta en versjon av Windows hvor denne funksjonen ikke er aktivisert, så vil brukeridentiteten, eller legitimasjonen om du vil, ligge lagret på en spesifikk plass i Windows. Med Credential Guard aktivert lagrer vi denne informasjonen i en sikret del av minnet til maskinen slik at det er mer utfordrendende for et angrep å uthente informasjonen som ligger der, men du har rett. Dersom en angriper klarer å få tilgang til identiteten din vil de også mulig kunne autorisere tilganger i systemet som du ikke er klar over.
For de som ikke har dette aktivert, finnes det en enkel måte å slå dette på i økosystemet?
For den enkelte maskin kan du skrive inn «core isolation» (kjerneisolering på Norsk) og slå på den bryteren som finnes her. Operativsystemet vil da lete etter applikasjoner og drivere som ikke er støttet i kjerneisoleringen og ber deg gjøre tiltak her før den kan aktiveres.
For administratorer i større miljøer er dette noe du kan aktivere i Group Policy og med MDM verktøyer.
Hva er den neste store, kule, tingen innen VBS som du kan dele med oss?
Så jeg vet ikke om du har hørt om konseptet «Secure core»? Det er en sett med funksjoner i VBS konseptet hvor alt er aktivert. En av disse er noe vi ikke har snakket så mye om enda, men er Firmware protection. Dersom du går til sikkerhetsinstillingene og leter etter denne så vil det være avhengig av din maskinvare om du ser den eller ikke. Dette er en av de store nye sikkerhetsfunksjonene som er kommet den siste tiden og som vil gi en betydelig sikkerhetsforbedring for enhetsflåten.
Memory integrity er veldig avhengig av noe som heter «Secure boot» og hele sikkerhetskjeden som skjer under oppstarten av maskinen. Når det gjelder Firmware protection, det denne funksjonen gjør, konseptuelt, er at også firmwaren ikke har vært tuklet med siden sist maskinen kjørte, eller utenfor kontekst av Operativsystemet.
Er ikke dette noe som kommer fra Xbox?
Jo, det er helt riktig, og sikkerhetskonseptet kommer fra spillkonsollen vår. Det som gjorde dette noe lettere var at vi eide hele økosystemet. Både maskinvaren, operativsystemet og samtlige applikasjoner som har lov til å kjøre på Xbox plattformen. Windows er en helt annen historie med et mange tiår gammet programvarebibliotek.
Finnes det en enkel måte å få en oversikt over hvilke av disse sikkerhetsfunksjonene som er aktivert?
Det er et par steder, men den enkleste av dem er å skrive inn «msinfo32» i søkevinduet til Windows hvor du kan se etter attributtet «Tilgjengelige funksjoner for virtualiseringsbasert sikkerhet». Dette vil vise hvor mange av de virtualiseringsbaserte sikkerhetsfunksjonene som er aktivert.
Til sist
Ja! Dersom du oppdager applikasjoner eller drivere som ikke er støttet i memory integrity – gi oss en melding om dette i tilbakemeldingsappen! Vi får jevnlige rapporter over hvilke applikasjoner og drivere som ikke fungerer og vi gjør vårt ytterste for å tilrettelegge for en smidigere implementasjon eller vi samarbeider med maskinvareleverandørene for å oppdatere driverne til å være støttet.
- Redaksjonen ønsker å takke Derek for hans tid og for deling av hans eminente kunnskap rundt virtualiseringsbasert sikkerhet!