首页> 中国专利> 一种云管理行为安全控制方法和系统

一种云管理行为安全控制方法和系统

摘要

本发明公开了一种云管理行为安全控制方法。本方法为:1)云管理中心CMS为每一个节点分配密钥,在每一节点上建立代理域;2)CMS根据节点号查询节点的密钥,并确定授权信息类型;3)CMS生成云管理操作的管理授权信息并签名后发送给代理域;4)代理域将其发送给该节点的虚拟机监控器进行验证,验证通过则将其添加到一安全服务器中,5)CMS发送云管理操作请求给该节点的云平台代理CMP;6)CMP根据该请求向该虚拟机监控器发出超级调用请求;该虚拟机监控器先查询该安全服务器中是否有该云请求的授权项,如果有则验证授权信息类型和时间戳;验证通过则执行该请求;否则拒绝。本发明能降低拒绝服务攻击,恶意窃听发生的风险。

著录项

  • 公开/公告号CN103347073A

    专利类型发明专利

  • 公开/公告日2013-10-09

    原文格式PDF

  • 申请/专利权人 北京大学;

    申请/专利号CN201310273098.3

  • 发明设计人 沈晴霓;周志轩;吴中海;杨雅辉;

    申请日2013-07-02

  • 分类号H04L29/08(20060101);H04L29/06(20060101);

  • 代理机构北京君尚知识产权代理事务所(普通合伙);

  • 代理人余长江

  • 地址 100871 北京市海淀区颐和园路5号北京大学

  • 入库时间 2024-02-19 20:21:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-23

    未缴年费专利权终止 IPC(主分类):H04L29/08 授权公告日:20160427 终止日期:20190702 申请日:20130702

    专利权的终止

  • 2016-04-27

    授权

    授权

  • 2013-11-06

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20130702

    实质审查的生效

  • 2013-10-09

    公开

    公开

说明书

技术领域

本发明涉及一种云管理行为安全控制方法和系统,属于云计算安全领域,主要应用在对云环境中计算节点的安全管控方面。

背景技术

目前,一般来讲云计算是指在一个或多个大规模集群中,使用软件有效管理集群中的计算资源和存储资源,然后用户可以向云提交自己的任务,而不用管云内部是怎样运作的。总体来讲,云计算把整个基于网络互连的计算机集群视为一个统一管理、统一运行的超级计算机。云内部的个人电脑,工作站,移动设备等能共同工作,有效利用海量的处理器和处理空间。

用户可以直接通过Internet来访问云,然后得到完整的硬件基础设施来使用。云计算所提供的这种服务叫做基础设施即服务(Infrastructure as a Service,IaaS)。IaaS包括完整的CPU,内存,存储等各种基础资源。同时,云计算还提供软件级服务(Software as a Service,SaaS)和平台级服务(Platform as a Service,PaaS)。用户可以透过PaaS来开发自己的运行在云上的个性化应用程序,而SaaS则使用户可以直接使用运行在云上的一些可以直接使用的云端程序,比如说个人网盘管理等。

但是,在IaaS中也存在一些安全风险。一般来讲,云服务商是通过虚拟化基础设施来提供给用户一个共享的资源池。因此,对于云服务的用户来说,CPU缓存,GPU等是共同分时分块使用的。这就带来了安全隐患:可能在某个恶意攻击者成功攻陷某个虚拟机或管理平台之后,就获得了云中所有服务器的管理特权。即便在使用了虚拟机监控器的情况下,有些宿主机操作系统也能够不受限的访问一些基础平台。

针对以上的分析,在进行云环境的计算资源的管理过程中,如果某个攻击者成功攻破了管理域,那么云管理中心就已经失去了对该宿主机的完整的敏感管理权限和控制。这时攻击者可以从两个方面攻击整个云计算平台:

1.攻击者可以完全控制在同一宿主机的其他虚拟机,控制它们的运行状态,探测这些虚拟机里的敏感信息,甚至把它们移植到别的不安全的虚拟化环境中去;

2.攻击者可以通过发送虚假的状态报告来欺骗云管理中心中的调度器,以使之做出错误的决策,诱导调度器将更多的主机迁移到该宿主机上,从而攻击者有更多的机会来控制更多的虚拟机。另外,欺骗系统进行更多的迁移也会降低整个云计算平台的效率。

以下是目前可查到的与云计算环境安全管理相关的专利情况。

公开号为102457560A,发明名称为“一种云计算的安全管理方法和系统”的发明公开了一种云计算的安全管理方法和系统,方法包括:对云计算业务系统进行安全域的划分,将具有同一类安全威胁特征的区域划分为同一个安全域,并在划分的安全域中构建相应的安全功能模型;在划分的安全域中,根据业务的安全需求,利用相应的安全功能模型对云计算业务进行安全保护。通过该发明,实现了为不同业务,不同用户提供细粒度、个性化的安全解决方案,达到安全能力按需供给的目的。

该专利虽然也隶属于云计算安全领域,但是其关注的焦点主要放在了根据不同客户对安全威胁特征不同的需求上面,通过划分安全域的方法来实现管理的安全性,但是并没有提高整个平台的安全性。随着云计算服务在互联网上应用的日益火热,提高用户对云管理平台的安全性的信任度的需求迫在眉睫。

发明内容

针对现有技术中存在的技术问题,本发明的目的在于提供一种云管理行为安全控制方法和系统。本发明通过加强云计算中计算平台虚拟机和云管理平台之间的安全衔接,提高平台的安全性。本发明在虚拟机监控器中加入了对敏感管理操作调用的审核机制。让虚拟机监控器能够判断某管理命令是否来自于云管理中心,并建立了一条云管理中心与虚拟机监控器进行通信的可信通路,用来降低通信被恶意的管理域监听的风险。

以下重点阐述发明中的几个要点:

一、云管理中心CMS和虚拟机监控器间的可信通路:

首先,本发明致力于让云管理中心得到整个云平台中宿主机的严格的管理特权的控制,并能够保护整个云计算平台的安全性免受某个被攻破的管理域的影响,并保护在同一宿主机上的其他虚拟机的安全。主要适用于采用第一类虚拟机的云计算平台,第一类虚拟机监控器指的是虚拟机监控器直接作为某个主机的操作系统,因此类虚拟化类型一般效率较高,故采用此种虚拟化类型的商业云计算平台居多。通过在云计算管理平台和基于第一类虚拟机监控器之间建立强联系,该新架构能极大降低被攻陷的虚拟域所带来的风险。而建立强联系(即两方都能验证对方的真实性)的手段就是建立在云管理中心和虚拟机监控器间的可信通路。首先,在正常的管理操作执行之前,我们增加了新的授权操作,云平台中计算节点上的虚拟机监控器在执行来自管理域(DOM0)的管理操作之前,会验证是否已经收到授权操作。而授权操作的授权信息发送过程是通过一系列的公私密钥加密保护该可信通路来保证的,本发明能够在虚拟化平台中管理域被攻陷的情况时,仍能够较好的保障整个云平台的安全性。

在较普遍的虚拟化应用中,计算节点虚拟化的管理实际上是由Dom0管理域来完成的,而且不仅限于此,还有很多操作是需要Dom0来协助完成的,Dom0需要做的任务是相当之多的。但在这些任务的执行过程中,如何保证整个宿主机的安全是一个大问题。以采用半虚拟化的Xen虚拟化平台为例,许多全新的机制已被添加到Xen虚拟化平台之中。例如,为了实现I/O虚拟化而引入的前后端驱动模型,其中Dom0需要处理繁重的后端任务。但是,在Dom0中增加了这么多任务意味着,大量新的代码也被加入到了Dom0中。由于这些代码没有经过多年的使用,因此,这些新的代码存在bug和安全漏洞的可能性非常大。因此,Dom0的安全性是值得高度怀疑的。

而如果Dom0一旦被攻击者捕获,攻击者可以做几乎任何他想要做的事情。在宿主机端,攻击者可以通过无限制地请求虚拟机监控器的服务,来恶意的窃听,控制,乃至篡改该节点上的其他虚拟机。对于整个云来讲,攻击者可以通过提供虚假硬件使用信息来欺骗云管理中心,从而诱导他们做出不恰当的决策。他们甚至可以因而完全控制在其他主机上运行的虚拟机。

为此,我们建立了该可信通路。在平台中,云管理平台和单个计算节点上的虚拟机监控器都有自己的公私钥,来建立严格的公私密钥加密的平台虚拟机和云管理平台之间的可靠通信。同时,为了进一步提高平台的安全性,我们又额外增加了一个新的Dom P代理域,以尽量减少可能存在危害的管理域对授权信息的窃听。在云管理中心需要对某台计算节点进行管理操作时,就先将授权信息发送给Dom P,然后Dom P再将授权信息发送给虚拟机监控器,然后虚拟机监控器会开放对该类型的授权的权限。然后云管理中心将管理请求发送给Dom0中的云管理代理,云管理代理就会向虚拟机监控器发起管理请求,此时虚拟机监控器会判断授权信息是否存在,并验证操作类型,过期时间等信息,来判断是否执行或辅助执行该管理请求。这样虚拟机监控器在接收到来自管理域的服务请求之后能够判断该请求的实际发起者,因为在正常情况下管理域请求虚拟机监控的服务基本上都是收到云管理中心的委托之后来代其执行。因而虚拟机监控器可以根据管理请求的实际发起者来判断管理服务请求是否是恶意的,并确定是否执行。

如附图1所示,本发明在传统的虚拟化节点上又增加了一个新的Dom P代理域,虚拟化节点为使用第一类虚拟机监控器的虚拟化节点,该域Dom P专门用来传递一些管理指令的授权认证。在Iaas的云计算服务中,原则是应当尽量地分散宿主机管理域Dom0负责的权限,从中拿出一部分敏感权限来放到别的管理组件中去。因而管理授权信息传递等功能就最好不要再增加进Dom0中了,于是以一种旁路的方式添加一个新的代理域Dom P,专门用来传递授权信息,并告知虚拟机监控器来处理授权。

本发明的系统如附图2所示,其中,CMS的Key Pool Manager模块为每一个虚拟化节点分配证书和密钥,虚拟化节点的VMM中的Key Manager模块存储CMS的公钥;在新增了上述模块后的执行此种管理操作的一般过程如下:

1.当要执行某云管理操作之前(可以是CMS自发的管理操作,或者用户向CMS请求的管理操作),CMS会发送授权请求(包括虚拟化节点的节点号,操作类型等)给AuthorizeCenter;

2.Authorize Center收到授权请求之后,首先会到Key Pool Manager中根据节点号去查询到生成授权信息所需要的密钥;

3.Authorize Center再对时间戳,授权信息类型,节点号等信息,封包,然后签名,之后将管理操作授权信息(包括时间戳,授权信息类型,节点号)和签名信息等一并发送给DomP;

4.Dom P将接收到Authorize Center发送过来的管理操作信息和签名信息发送给Xen虚拟机监控器中的Verifer模块;

5.在Xen虚拟机监控器中,负责管理操作和签名信息分发的Verifer模块首先会验证该管理操作信息和签名信息是由Dom P发送过来的。

6.如果不是Dom P,会直接返回错误;

7.如果是Dom P发送过来的,则VMM中的Authorizer模块首先会从key manager中获取云管理中心CMS的合法的公钥信息,然后会根据该公钥和时间戳对所收到的签名信息进行验证,以确定管理命令操作的合法性。

9.如果签名信息验证通过,那么Authorizer会将时间戳和管理授权信息添加到虚拟化节点的安全服务器中。

10.Dom P告诉云管理中心该授权信息验证的结果与否,从而CMS能自主决定接下来的操作。

11.云管理中心收到返回来的值后,会判断值的类型。如果授权失败,那么云管理中心可以选择再次发送授权信息;

12.如果授权成功,那么就已经在云管理中心和虚拟机监控器中建立了一条临时的可信通路,然后云管理中心可以安全的进行管理操作。

13.云管理中心接下来发送云管理操作请求给运行在宿主机管理操作系统中的云平台代理(CMP);

14.云平台代理在收到管理操作的命令之后会调用相关的超级调用请求Xen虚拟机监控器的协助。

15.Xen虚拟机监控器在收到请求协助完成管理操作的命令之后,该请求会首先由Verifier截获,截获的原理是钩子;

16.Verifier此时首先会去查询安全服务器,它会首先确认安全服务器中此时是否有该管理操作请求的授权项;

17.然后Verifier会验证授权项中的类型和时间戳等信息;

18.如果确认该管理操作请求是合法地经由云平台代理发起的,那么该操作将会被继续交由功能执行模块去执行;

19.但是如果有一项不符合要求,如果签名信息不对,时间戳过期等,Hypercall的调用将会从Verifier处直接返回,相应的管理操作也就无法执行,从而可以有效避免非法的对管理操作的调用。

为了保障云管理中心所获得的整个系统的状态报告的正确性,以保证做出正确的管理措施的目的,本文主要是限制HOST_STATUS等发起方为宿主机的敏感管理操作类型,在新增了上述模块后的执行此种管理操作的一般过程如下:

1.当需要生成状态信息报告的时候,宿主机(即虚拟化节点)上的云平台代理会请求虚拟机监控器中的Authorizer来进行对该报告生成和签名;

2.Authorizer在收到签名请求之后Authorizer会直接调用虚拟机监控器的相关API,然后获得状态信息生成报告,然后Authorizer会到Key Manager中去查询到生成授权信息所需要的私钥;

3.接着对生成报告加上时间戳,hash,用私钥签名生成授权信息。之后将整个包一并发送给Dom P;

4.Dom P接收到Authorize发送过来的状态信息报告之后,会通过安全的网络连接将之发送给云管理中心;

5.在云管理中心中,负责管理操作和签名信息分发的Verify Center模块首先会验证该状态信息报告是否来自该虚拟化节点的虚拟机监控器,且签名是否有效。

6.如果不是来自该虚拟化节点的虚拟机监控器,会不予采纳该信息,并会进行人工处理,判断该虚拟化节点是否存在安全问题;

7.如果是来自该虚拟化节点的虚拟机监控器,则会将其用作下次虚拟机监控器调度的依据之一。

二、安全授权策略

在传统的安全模型中,安全策略一旦定义之后,它们就基本上不会再有大的变化了。如果一个主体在某个客体之上有某个权限,那么它将在相当长的时间之内在该客体之上继续拥有该权限继,除非有什么意外发生。但是在本文中的安全框架中,云平台管理中心在很多时候还是需要运行在管理域中的云平台代理和其中的一些虚拟化服务的帮助从而完成敏感管理操作。但当这种访问完成后,管理域中的其他软件很有可能滥用管理操作权限,完成一些攻击。所以在这个新的架构中,本文使用的是执行必申请策略。这个策略的核心是指如果某个主体想申请对于某个客体的一些特权操作,那么该主体首先得申请授权。该次申请授权且管理操作执行之后,如果该主体想再次申请该管理特权的执行,那么它必须再次申请,否则,不予执行。因为上一次的授权在执行之后或有效期到之后就失效了。然后,每次想要执行这样的特权管理操作都必须重新申请。由此可以知道,在该种类型授权下,可以有效限制管理域的特权。让它仅能在云平台管理中心的在特定的时间,特定的管理需求下执行相应的管理操作。保证该特权不会在其他不恰当的时间或不必要的操作上被滥用。

例如,在一个时刻,云平台管理中心CMS已经申请授权,并已经在宿主机HM1上停止了虚拟机VMa。然后,在5分钟之后,该平台管理中心想停止在同一宿主机HM1上的另一虚拟机VMb。但是,此时CMS它不能直接要求CMP立刻在HM1上停止VMb,因为此时没有授权,停止虚拟机VMb的请求将会被Xen虚拟机监控器所拒绝。每个存储在安全服务器中的授权记录都只有一个很短的有效期,在5分钟之后,上一个停止虚拟机VMa的授权记录早就失效了,在要求CMP停止VMb的时候。通过这种严格的执行必申请策略,即使攻击者攻陷了宿主机上的管理域,那么该攻击者仍然无法执行一些他想执行的破坏性管理操作。

与现有技术相比,本发明的积极效果为:

本发明有效提高了整个系统的安全性,缩小在云计算平台中的可信计算基,让管理变得更可信。限制了宿主机中管理域的权限,使之不能滥用敏感管理操作执行的权限,同时保障云管理软件所获得的整个系统的状态报告的正确性,以保证做出正确的管理措施,而降低拒绝服务攻击,恶意窃听发生的风险。

附图说明

图1、安全管理架构层次图;

图2、云安全架构组件图。

具体实施方式

本文在云管理中心和虚拟机监控器中建立了一条可信通路,除了非对称密钥的保护之外,本文在虚拟化节点之上还增加了一个单独的代理通信域(Dom P),以减少该链路被监听的风险。同时,为了保证通道的正常稳定运行,本文在云管理中心和虚拟机监控器中新加了一些模块用来对管理信息加密或者认证。主要的做法是减小整个云平台的可信计算基。如图1所示,首先,在本架构中定义一个新的域Dom P作为CMS的代理,所有这些秘密和验证信息传输通过授权代理。此外,为了让CMS能严格控制整个云,本文在Xen虚拟机监控器中已经增加了四个组件:Verifier(验证者),Security Server(安全服务器),Key Manager(密钥管理器)和Authorizer(授权者)。通过这些组件,Xen虚拟机监控器可以验证管理操作的真实性,从而可以选择只执行从CMS发过来的命令。

如图2所示,在虚拟机监控器中所额外增加的这些组件的功能描述如下:

1.Authorizer:负责接收某个命令或请求的授权信息,并从Key Manager中获得云管理中心的证书,判断授权信息是否从CMS发出且授权,从而确定某一个请求是否是合法的。而验证的依据主要是时间戳和签名信息是否正确。如果一个请求是合法的,那么它会告诉SecurityServer增加相应的记录,并记录好失效时间。反之,如果请求是非法的,那么,Security Server将不会有任何修改。

2.Security Server:是一个信息存储中心,用来存储各种授权信息,其他组件可以在里面增加,删除,修改授权信息。一般来讲,Authorizer会在Security Server里存放授权信息,而Verifier则从里面读取信息。

3.Key Manager:存储CMS的公钥,帮助管理证书和密钥等机密信息。而其他组件则可以通过Key Manager来获知这些文件或信息。同时,在某些特殊情况下,云管理中心也可以通过一个更早之前预设进去的根密钥来更新这些组件。从而系统可以在不开机的情况下就更新这些密钥。

4.Verifier:Verifier会抢在超级调用(即Dom P或Dom0发给VMM的调用)等特权命令真正执行之前被调用。它会从Security Server查询是否有相关特权操作的授权信息。如果能够从里面查询到,且时间戳和有效期还没有过期,那么该特权管理操作就会按照正常流程一样被调用。但是,如果没有在Security Server查询到相关授权信息,那么在执行真正的特权命令之前,Verifier会直接返回,从而对特权管理操作的调用将会被拒绝。

为了与Xen虚拟机监控器中的这些模块进行良好的交互,保证整个系统的正常运行。本文在云管理中心CMS中也定义了相应的一些模块:Authorize Center(授权中心),VerifyCenter(验证中心)和Key Pool Manager(密钥池管理器)。具体的作用和功能如下所示:

1.Authorize Center:是在云管理中心增加的一个组件,主要功能用于根据密钥生成授权信息。根据所要执行的操作再加上时间戳,有效期,然后加密,并用私钥签名。生成之后,再将授权信息发送给新增加的DomP,由Dom P去向虚拟机监控器请求超级调用,以存储到虚拟机监控器中的安全管理器中。

2.Verify Center:也是在云管理中心中新增加的一个组件,主要是验证来自于主机端的云管理代理cmp所传送过来的状态报告的签名是否正确,从而判断是否是可信的,即状态信息是否是真的由Xen虚拟机监控器生成,而不是由某个恶意的攻击者所生成的。从而能够做出正确的管理操作判断。

3.Key Pool Manager:是用来管理文中所增加的这些机制所用的证书和私钥。当一个新虚拟化节点添加到云计算平台的时候,Key Pool Manager需要选择在一个安全的时候(一般是指系统刚启动时,或者在机器出厂前就预置在TPM(Trusted Platform Module)安全芯片中)给该计算节点主机分配证书和私钥。同时,Authorize Center和Verify Center在运作的时候,都需要从此Key Pool Manager中查询到相应节点的证书和所需要使用到的私钥。

在传统的安全模型中,安全策略一旦定义之后,它们就基本上不会再有大的变化了。如果一个主体在某个客体之上有某个权限,那么它将在相当长的时间之内在该客体之上继续拥有该权限继,除非有什么意外发生。但是在本文中的安全框架中,云平台管理软件在很多时候还是需要运行在管理域中的云平台代理和其中的一些虚拟化服务的帮助从而完成敏感管理操作。但当这种访问完成后,管理域中的其他软件很有可能滥用管理操作权限,完成一些攻击。所以在这个新的架构中,本文提出了新的安全策略----执行必申请策略。这个策略的核心是指如果某个主体想申请对于某个客体的一些特权操作,那么该主体首先得申请授权。该次申请授权且管理操作执行之后,如果该主体想再次申请该管理特权的执行,那么它必须再次申请,否则,不予执行。因为上一次的授权在执行之后或有效期到之后就失效了。然后,每次想要执行这样的特权管理操作都必须重新申请。由此可以知道,在该种类型授权下,可以有效限制管理域的特权。让它仅能在云平台管理中心的在特定的时间,特定的管理需求下执行相应的管理操作。保证该特权不会在其他不恰当的时间或不必要的操作上被滥用。

例如,在一个时刻,云平台管理中心CMS已经申请授权,并已经在宿主机HM1上停止了虚拟机VMa。然后,在5分钟之后,该平台管理中心想停止在同一宿主机HM1上的另一虚拟机VMb。但是,此时CMS它不能直接要求CMP立刻在HM1上停止VMb,因为此时没有授权,停止虚拟机VMb的请求将会被Xen虚拟机监控器所拒绝。每个存储在安全服务器中的授权记录都只有一个很短的有效期,在5分钟之后,上一个停止虚拟机VMa的授权记录早就失效了,在要求CMP停止VMb的时候。通过这种严格的执行必申请策略,即使攻击者攻陷了宿主机上的管理域,那么该攻击者仍然无法执行一些他想执行的破坏性管理操作。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号