本文提出一种可信赖云计算平台(TCCP),可以确保外包给基础设施服务(IaaS)的计算的保密性和完整性.TCCP为用户VM提供了一个封闭的执行环境,避免云服务商的特权用户窥视或者篡改内容,在执行VM申请前,用户可以远程判断服务后台运行的TCCP是否可信.该方法拓展了整体服务验证的概念,使用户能够预估计算执行安全性.
狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务.这种服务可以是IT和软件、互联网相关,也可是其他服务.云计算(Cloud Computing)是网格计算(Grid Computing )、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物.
1 相关知识
1.1 基础设施服务(IaaS)
当前众多云服务商提供不同的软件层级服务,在较低层可以提供客户访问服务商控制的整体虚拟机,客户和系统用户需要配备虚拟机上运行的软件;在较高层级可以完全在线运行,无需客户干预;在高软件层级运行服务更难保证计算的保密性,因为服务本身需要操作客户数据的软件.本文主要研究低层级IaaS云服务商,此时更容易保证客户虚拟机安全运行.
如图1所示,以Eucalyptus为例,系统包含一个或多个运行客户虚拟机的镜像(典型的如Xen)的节点簇,而Eucalyptus拥有一系列组件来管理这些簇.简言之,需要将所有这些组件集中到一个云管理者CM(Cloud Manager).
从客户角度,Eucalyptus提供了一个可执行、可管理和可终止VM的Web服务接口,虚拟机镜像VMI运行VM,而CM负载VMI.VM启动以后,用户可以利用普通工具登录,如ssh.除了用户接口,CM还提供管理服务,如添加或删除VMI或用户.Xen支持热迁移,允许VM在执行时更换物理主机,而过程对用户透明,这种迁移对于簇内资源整合和负载平衡有重要意义.
1.2 攻击模型
云服务商的系统管理员拥有控制后台的特权,可以实施多种攻击以访问客户虚拟机内存.IaaS提供商不会允许某人拥有全部特权,而且也部署了严格的安全设施,严格访问权限策略,保护硬件的物理安全.可以认为服务商能够阻止对机器物理访问的攻击,但系统管理员还是需要簇内机器的访问特权来管理机器上运行的软件.因此TCCP必须做到以下两点:(1)确保虚拟机在安全保护域内运行;(2)任何时候,拥有根权限的系统管理员远程登录运行虚拟机的机器,都不能访问虚拟机内存.
1.3 可信赖计算
可信赖计算是一个长期的、依靠集体协作完成的计划,它可以为每个人带来更安全、保密和可靠的计算体验. 它是 Microsoft 公司的技术,并会指导我们所做的每一件事情.
可信赖计算主要包括以下四个组成部分: 软件、服务和产品中的"安全性"、"保密性"以及"可靠性",还有业务惯例中的"诚信".
可信赖平台[2-4]改进了TPM集成特性,使其可以远程识别.在启动时,主机计算一个由启动软件序列哈希值组成的测度列表ML,启动软件即BIOS、启动项、软件执行平台等.ML安全载入主机TPM,远程一方利用当前nU挑战运行在主机的平台,平台调用TPM生成包含ML和nU的应答信息,并用TPM的私钥加密,主机将信息反馈给远程方,远程方利用对应的EK公钥解密,这样就完成了对主机的.通过核验ML和nU,远程方可以鉴别主机上运行的平台是否可信赖.
可信赖平台如Terra[3],执行瘦VMM,即强制使用封闭执行环境,这样拥有主机全部特权的用户也无法窥视和篡改客户VM,即使机器重启VMM也可以保证自身的完整性.因此远程方可以通过验证主机上运行的平台,证实VMM的可信性,如此即可保证其客户VM的计算是安全的.
假设传统可信赖平台能够保证单台主机上的计算安全性,保证IaaS服务的自然的想法就是在服务后台每个节点都部署平台,然而这样是不够的,不论VM载入时(通过操作CM)还是运行时(通过迁移),系统管理员都可以将客户VM转移到没有运行平台的节点上.所以平台验证机制并不能保证远程方得到的测度列表ML就是VM运行(或即将运行)主机的真实信息.因此,TCCP需要设计远程验证方法,保证后台平台资源持久安全.
2 可信赖云计算平台
可信赖云计算平台TCCP加强了IaaS后台,使其可以在不改变结构的情况下提供封闭执行环境,如图2所示.TCCP可信赖计算的基础包含可信赖虚拟机映像(TVMM)和可信赖协调者(TC)两个方面.
后台每个节点运行掌控客户VM的TVMM,并防止被特权用户窥视和篡改.TVMM可以保护自身安全性并遵守TCCP协议,节点被嵌入经验证的TPM并通过安全启动进程加载TVMM.
TC管理一系列可以安全运行客户VM的节点,称为可信赖节点,节点必须位于安全域内并运行TVMM,这要求TC保存节点安全域的记录,并判断该节点是否运行着可信赖TVMM.TC管理诸如簇中添加或移除节点、由于维修或升级需临时关闭节点等事件.通过TC验证,用户可以判断IaaS是否安全.
假设由外部可信赖实体(ETE)来管理TC,并为TC更新部署在IaaS域中一系列节点和可信赖配置的信息,重要的是管理IaaS的系统管理员在ETE内部没有特权,因此不能篡改TC.本文假设ETE由没有与IaaS服务商共谋动机的第三方维护.
通过虚拟机软件,你可以在一台物理计算机上模拟出一台或多台虚拟的计算机,这些虚拟机完全就像真正的计算机那样进行工作,例如你可以安装操作系统、安装应用程序、访问网络资源等等.对于你而言,它只是运行在你物理计算机上的一个应用程序,但是对于在虚拟机中运行的应用程序而言,它就是一台真正的计算机.因此,当我在虚拟机中进行软件评测时,可能系统一样会崩溃,但是,崩溃的只是虚拟机上的操作系统,而不是物理计算机上的操作系统,并且,使用虚拟机的"Undo"(恢复)功能,我可以马上恢复虚拟机到安装软件之前的状态.
在实时迁移[5]中,运行中的VM的状态信息在源节点Ns和目标节点Nd间迁移.为保证操作的安全性必须使两个节点互信,而且VM状态必须可信并且在完成迁移前是不可修改的.图5所示是参与VM安全迁移的消息队列,首先Ns请求TC检验Nd是否可信,消息3中,Ns向Nd发起VM迁移申请并附加会话密钥KS.Nd验证Ns是否可信.如果两个节点都成功,Nd通知Ns接受KS,在消息7中Ns终将VM状态哈希值加密发送给Nd,VM迁移成功.
企业普遍应用云计算的主要阻力源自对数据和计算的保密性和完整性的担心,本文提出一种可信云计算平台TCCP,它可以为IaaS服务提供一个封闭执行环境,保证了客户VM执行的机密性,允许用户验证IaaS提供商并在装载其虚拟机前先判断服务是否安全.
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。