您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 轻量级虚拟机管理器及其安全应用研究
华中科技大学硕士学位论文轻量级虚拟机管理器及其安全应用研究姓名:李敏申请学位级别:硕士专业:计算机应用技术指导教师:赵峰2011-01华中科技大学硕士学位论文I摘要虚拟化技术的出现带来了计算机系统结构的变化,也为传统的安全问题提出了新的解决方案。传统的虚拟机管理器可以同时提供多个可执行环境,并保证相互之间的隔离性,因此安全级别不同的应用可以分部到不同客户操作系统中运行。同时由于虚拟机管理器特权级的提升,安全组件可以部署到虚拟机管理器中,通过在虚拟机之外的方式监控虚拟机内部的事件。然而传统的虚拟化技术应用于客户端会遭遇明显的问题。虚拟化技术带来的性能开销,尤其是全虚拟化技术将造成至少20%性能下降,将造成客户端用户体验下降,即使在使用虚拟化之后可以提高安全性,用户也不一定会使用。同时虚拟机管理器其功能强大导致代码量庞大,因此其本身就存在大量安全漏洞。轻量级虚拟机管理器被用于解决上述问题。轻量级虚拟机管理器使用硬件辅助虚拟化技术只为单个操作系统服务,不提供设备驱动程序也不具备创建其他虚拟机的功能,因此代码量较传统虚拟机管理器将大为减小,同时提供按需植入,按需退出的功能以昀大限度地保障用户体验。同时,轻量级虚拟机管理器也拥有高于操作系统内核的特权级并集成了影子页表技术,因此根据硬件虚拟化技术的特性可以透明地对操作系统内部的事件进行监控。根据不同的安全需求监控不同的事件,以达到同时提供安全保障和保证用户体验的目的。昀后,为了验证轻量级虚拟机管理器的有效性,结合常见的安全应用,在Linux下轻量级虚拟机管理器用于对内核级攻击进行检测和查杀;在Windows下,即便操作系统已经被内核级键盘记录器攻击,轻量级虚拟机管理器仍旧可以用来保证键盘操作不被监听。关键字:轻量级虚拟机管理器,硬件辅助虚拟化,影子页表,安全应用华中科技大学硕士学位论文IIAbstractTheemergingofvirtualizationtechnologychangesthecomputerarchitectureandbringnewsolutiontotraditionalsecurityproblems.CommonvirtualmachinemonitorlikeXencanprovidemultipleexecutableenvironmentsandkeeptheisolationbetweeneachother.Soapplicationsofdifferentsecuritydemandcanbedeployedintodifferentguestoperatingsystem.Withtheenhancementoftheprivilegeofthevirtualmachinemonitor,securitycomponentscanbesetupinthevirtualmachinemonitor,andmonitortheinnereventshappenedinthevirtualmachine.However,traditionalvirtualmachinemonitorwillsufferobviousproblemswhenitisappliedinclientends.Performancepenaltyofvirtualizationtechnology,especiallyfullvirtualizationcostingatleast20%performancedegradation,leadstolowuserexperienceonclientend.Evenvirtualizationcanbringbettersecurityguarantee,clientuserswillnotadoptit.Targetingonthisproblem,theconceptoflightweightedvirtualmachinemonitorisproposed.Light-weightedvirtualmachinemonitorutilizesthehardware-assistanttechnology,andserversforonlyoneoperatingsystem.Itdoesn’tprovidedevicedriversandcan’tcreatemorevirtualmachines,sothecodesaremuchlessthancommonvirtualmachinemonitor.Atthesametime,light-weightedvirtualmachinecanimplantedintotheoperatingandrevokeddynamicallywhichmaximumllymaintaintheuserexperience.Light-weightedvirtualmachinemonitorownshigherprivilegethantheoperatingsystemwithshadowpagetablemechanismintegrated,accordingtothecharacteristicsofhardware-assistantvirtualization,transparentlymonitorseventshappenedintheguestoperatingsystem,andachievethegoalsofmaintainingsecurityanduserexperienceatthesametime.Inordertotestifytheefficiencyoflight-weightedvirtualmachinemonitor,thisthesisaimesoncommonsecurityproblems,keepingtheintegrationofLinuxkernelandprotectingtheI/OofkeyboardsonWindowsoperatingsystem,eventheOSkernelhasbeenattackedbykernel-levelkeyboardrecorder.Keywords:Light-weightedvirtualmachinemonitor,Hardware-asistedvirtualization,Shadowpagetable,Securityapplication独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到,本声明的法律结果由本人承担。学位论文作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。保密□,在_____年解密后适用本授权书。不保密□√。(请在以上方框内打“√”)学位论文作者签名:指导教师签名:日期:年月日日期:年月日本论文属于华中科技大学硕士学位论文11绪论本章首先介绍了轻量级虚拟机管理器(Light-weightedVirtualMachineMonitor,LVMM)的研究背景和意义,概述了LVMM的设计特点,然后列举了国内外LVMM类似系统的实现方法和特点,并与本文的LVMM系统进行比较,昀后介绍了本论文的组织结构。1.1研究背景根据IDC的权威报告,虚拟化技术已经成为IT基础架构中的核心技术。虚拟化软件市场在2009年已经超过27亿美元,并在未来5年还将继续激增。虚拟化技术已经成为计算机系统软件的发展趋势,并显著地改变着IT世界。图1-1说明了从传统架构到虚拟机架构的过渡过程。在传统架构中,操作系统对整个硬件具有管理权限;在虚拟机架构中,虚拟机管理器(VirtualMachineMonitor,VMM)代替了传统操作系统的管理功能,而为多个虚拟机提供了访问真实硬件的接口并保证相互之间隔离。硬件平台(CPU、内存、外设)操作系统(Windows,Linux...)进程1进程N进程2……传统架构硬件平台(CPU、内存、外设)虚拟机管理器(VMM)进程1进程M...进程1进程N...虚拟机虚拟机……虚拟机架构图1-1从传统架构到虚拟机架构的过渡虚拟化技术在服务器端和客户端都用相应的应用。虚拟化在服务器端应用主要包括资源共享(服务聚合、负载均衡、节能)和隔离性(性能隔离、安全隔离);虚拟化在客户端的应用主要包括为用户提供多操作系统的使用环境和利用虚拟化技术的资源隔离性为用户提供不同安全级的隔离区域。虚拟化的安全技术主要包括两个方面:(1)虚拟化架构本身存在的安全问题。(2)华中科技大学硕士学位论文2利用虚拟化架构或者虚拟化技术来解决传统架构下所存在的安全问题。由于本文主要讨论客户端的应用安全,所以主要就第二点展开讨论。就系统监控的方面,虚拟化架构的出现可以提高监控系统自身的安全性。基于虚拟机架构的监控方法可以分为2大类:虚拟机外部监控和虚拟机内部监控。虚拟机外部监控是指将监控工具部署在被监控系统外部(通常是在虚拟机管理器中),然后在一个可信赖的虚拟机(TrustedVM)中观测被监控系统的行为。TalGarfinkel和MendelRosenblum首次在Livewire系统中提出在虚拟机外部进行入侵检测,这种方法被称为虚拟机自省机制(VirtualMachineIntrospection)[1]。VMscope是基于虚拟机的蜜罐(Honeypot),它通过在虚拟机外部部署感应器来分析系统内部行为[2]。VMwatcher则是通过在虚拟机外部观测恶意进程行为,从而实现检测工具与被监控系统相分离[3]。总之,虚拟机外部监控将安全工具完全部署在被监控系统外部,不会被恶意软件篡改,但是需要屏蔽在虚拟机管理器层观测的语义差距(SemanticGap)。虚拟机内部监控是指通过虚拟机管理器保护监控工具,从而提高监控工具自身的安全性。Lares是在被监控系统中插入一些钩子(Hook),当特定事件触发后跳转到安全虚拟机(SecureVM)中执行,这些钩子函数通过虚拟机管理器来保护[4]。SIM是将安全工具与被监控系统隔离在不同的地址空间,通过虚拟机管理器来保护安全工具的虚拟地址空间[5]。总之,这种方法获取的是操作系统级语义,方便监控工具进行有效地处理,但是需要插入内核模块或者修改内核代码,与被监控系统密切相关。通过进一步分析可以发现,上述系统均是在传统的虚拟机管理器上实现,并在服务器端可以得到广泛的应用。本文关注的是客户端的安全问题,而传统的虚拟机管理器用于客户端安全存在一些问题。如图1-1所示,在客户操作系统启动之前,需要在硬件之上假设虚拟机管理器,然后由虚拟机管理器启动客户操作系统。然后虚拟化技术的引入带来了不可避免的性能下降,特别是客户端用户大量使用的Windows操作系统,只能使用全虚拟化解决方案,其性能下降尤为明显(如编译程序和图形图像类程序),因此大大降低了客户端的用户体验。经过调研,客户端用户通常只在某些特殊的时刻需要高安全的环境,如网游登陆、网银付款、IM登陆等,因此也只需要对某些特殊的应用提供安全保护,对于其他应用程序用户更关注的是用户体验而不是安全华中科技大学硕士学位论文3性,如普通网页浏览、游戏等。因此本文研究的核心问题就是如何能利用虚拟化技术提高客户端用户的同时,又尽量不影响用户体验。1.2国内外研究现状1.2.1BluePillProjectBluePill项目是基于x86虚拟化技术的首创的CPURootkit[6]。在2006年8月的黑帽大会上由InvisibleThingLabs(
本文标题:轻量级虚拟机管理器及其安全应用研究
链接地址:https://www.777doc.com/doc-1269706 .html