• norsk
    • English
  • norsk 
    • norsk
    • English
  • Logg inn
Vis innførsel 
  •   Hjem
  • Fakultet for informasjonsteknologi og elektroteknikk (IE)
  • Institutt for informasjonssikkerhet og kommunikasjonsteknologi
  • Vis innførsel
  •   Hjem
  • Fakultet for informasjonsteknologi og elektroteknikk (IE)
  • Institutt for informasjonssikkerhet og kommunikasjonsteknologi
  • Vis innførsel
JavaScript is disabled for your browser. Some features of this site may not work without it.

Enforcing memory protection with hardware virtualization

Everett, Jon
Master thesis
Thumbnail
Åpne
Everett - thesis.pdf (2.285Mb)
Permanent lenke
http://hdl.handle.net/11250/143962
Utgivelsesdato
2010
Metadata
Vis full innførsel
Samlinger
  • Institutt for informasjonssikkerhet og kommunikasjonsteknologi [2768]
Sammendrag
ENGELSK: A monolithic operating system (OS) - such as Windows or Linux - distinguish between executing

in restricted user mode or privileged kernel mode. Third party device drivers and modules

are executing in kernel mode alongside the code of the OS, thus has direct access to memory,

hardware devices and execution state. Limitations in memory protection makes it possible to

modify any memory, including read-only. This is exploited by kernel malware to manipulate

the code and workflow of the OS. Security software such as integrity checkers, anti-virus and

host-firewalls attempt to mitigate this threat, but are also prone to subversion. It is arguably

impossible to implement effective security on a privilege level equal to the malicious code, and

implemented in the very environment to be protected.

Hardware virtualization indroduces a new privilege level superior to the OS. This technology

is designed to utilize ample computational resources by collocating several operating systems

on one physical machine. A hypervisor manage and monitor virtual machines by intercepting

privileged instructions and events. The idea behind this work is to leverage the hypervisor to

protect kernel memory in a way the OS itself is not able to.

This thesis investigates whether the hypervisor provides a suitable environment for preventing

unwanted memory modifications. Memory management, kernel attack surface and hardwareassisted

virtualization are addressed to enumerate protection limitations and opportunities. Based

on this, a set of techniques to prevent modification of memory in need of protection is

presented. The hypervisor is used to intercept and deny attempts to write to memory defined as

protected. A prototype of the proposed protection is demonstrated in a simulated attack scenario.

The malicious modification attempts are successfully prevented, thus protecting the kernel from

a known design vulnerability.
 
NORSK: Monolittiske operativsystemer som Windows og Linux opererer med to privilegienivåer for eksekvering

av kode. Begrensede user mode eller priviligerte kernel mode. I arbeidsminnet i kjernen

finnes operativsystemkode side om side med ekstern kode for maskinvaredrivere og andre

tredjeparts moduler. Disse har direkte tilgang til minne, øvrig maskinvare og operativsystemets

tilstand. Svakheter i implementasjonen av minnetilgang og isolasjon muligjør modifikasjon av alt

arbeidsminne, også minne med kun lesetilgang. Dette kan utnyttes av ondsinnede kjernemoduler

for å manipulere tilstand og funksjonsflyt i operativsystemet. Sikkerhetsprogramvare som for

eksempel antivirus, host-brannmur og integritetssjekker forsøker å beskytte mot denne trusselen,

men er også utsatt for subversjon. Implementasjon av effektive sikkerhetsmekanismer på samme

privilegienivå, og i samme system, som trusselen man skal beskyttes mot er i beste fall vanskelig,

kanskje umulig.

Virtualisering av maskinvare er en relativt ny teknologi som introduserer et nytt privilegienivå

overordnet operativsystemets kernel mode. Denne teknologien er tiltenkt å utnytte et overskudd

av maskinkraft ved å konsolidere flere operativsystemer på en enkelt fysisk maskin. En hypervisor

kontrollerer og organiserer virtuelle maskiner ved å overta eksekvering ved priviligerte instruksjoner

eller spesielle hendelser. Konseptet denne oppgaven bygger på er å utnytte en hypervisor

til å beskytte operativsystemkjernens arbeidsminne, noe kjernen selv har begrensede muligheter

for å gjøre.

Masteroppgavens målsetning er å undersøke hvorvidt en hypervisor egner seg til å implementere

beskyttelsesmekanismer mot uønskede minnemodifikasjoner. Minnehåndtering, operativsystemets

angrepsflate og prosessor-støttet virtualisering blir innledningsvis introdusert. Basert på

denne teorien blir begrensninger og muligheter for minnebeskyttelse synliggjort. Et sett av beskyttelsesmekanismer

blir deretter foreslått. Hypervisoren benyttes til å avskjære og forhindre

forsøk på å modifisere minneområder som er merket for beskyttelse. En prototyp av mekanismene

er implementert og demonstrert i et simulert angrepsscenario. Et ondsinnet forsøk på å

manipulere kjernens funskjonsflyt ved bruk av en kjent angrepsteknikk kan forhindres.
 

Kontakt oss | Gi tilbakemelding

Personvernerklæring
DSpace software copyright © 2002-2019  DuraSpace

Levert av  Unit
 

 

Bla i

Hele arkivetDelarkiv og samlingerUtgivelsesdatoForfattereTitlerEmneordDokumenttyperTidsskrifterDenne samlingenUtgivelsesdatoForfattereTitlerEmneordDokumenttyperTidsskrifter

Min side

Logg inn

Statistikk

Besøksstatistikk

Kontakt oss | Gi tilbakemelding

Personvernerklæring
DSpace software copyright © 2002-2019  DuraSpace

Levert av  Unit