作者:张毅
目前,云计算的安全性已经成为用户选择的首要考虑因素。针对此问题各国都在积极建设研发云计算安全平台,构建自己的云计算防御体系,以此来解决云安全的相关难题。
对于云计算系统而言,其最大的特征是具有不同的安全级别,而多级安全( MLS)思想的提出能很好地解决云系统中信息安全等级保护的问题。
多级安全思想提出于20世纪60年代末期,其中包括BLP模型和Biba模型。BLP模型是最早提出的以防止信息泄露为主要目的的机密性模型,其通过“不上读,不下写”的规则来有效地防止信息由高密级用户泄露给低密级用户,BLP模型实现了MLS。而Biba模型的提出主要是为了防止信息被恶意修改从而破坏其完整性。在描述形式上,Biba模型与BLP模型基本对偶。由于Biba模型采用与BLP模型相似的方法来保护信息的完整性,因此Biba模型也实现了MLS。
2000年康奈尔大学的MYERS等人提出了适用于分布式计算环境的信息流控制方法( Decentralized Information Flow Control,DIFC)。该方法通过用户对自己的数据进行自主授权实现了对部分环节的信息流控制,如网络通信、文件读写等。由于DIFC是通过对分布式系统中的信息流进行控制来增强分布式系统的隐私安全,因此可以将其应用到具体的云计算平台中。
文献[8]提出了一个多信任源信任传递模型一一虚拟机树形信任链模型TCTVM,其基本思想是:将一个位于系统特权域中的TPM_Creator组件加入到物理可信平台模块( TPM)与虚拟机的信任链之间,采用虚拟化技术为每个用户虚拟机创建虚拟TPM(yTPM),让其向虚拟机提供可信计算功能。文献[9]提出了一个虚拟机间信息传递的完整性模型。虽然该模型在TCTVM模型的基础上,解决了虚拟机的动态完整性问题,但其仅讨论了信息流传递的安全与否,并没有解决进程之间的安全访问问题。
文献[10]提出了一个分布式多级安全保护核心架构一一分布式可信计算基( Distributed Trusted Computing Base,DTCB),每层可信计算基(TCB)分别实施不同粒度的多级安全控制,用组合无干扰模型证明组件组合的安全性。然而此模型主要是针对普通的操作系统而言,对
于较为复杂的云计算系统,文中提及的分层方式并不能很好地为其服务。
文献[12]提出了一个模型,该模型构建了多级安全网络的安全策略和需求机制,以确保信息能够安全地在计算机网络系统中不同安全等级的实体之间流动。文献[11]提出了在一个分区管理的系统中对资源进行扩展性保护以确保其安全性的流控制策略。本文借鉴了文献[12,13]的部分思想提出一种基于云平台的多级安全模型,对云系统中的进程进行安全等级的划分。根据DIFC-B访问控制方法对进程之间的访问进行安全控制,以确保系统运行时的安全性。最后,运用无干扰理论作为模型的理论框架,对其进行了形式化描述和安全性分析。
1无干扰理论
无干扰思想最早是由GOGEUN和MESEGUER在1982年提出的。文献[16]建立了一个系统模型,其中包括用户、状态、命令、输出等元素,并给出了无干扰定义:在安全系统中,一个用户不能发现任何不由他支配的其他用户的操作。HAIGH、YONG则对无干扰进行了新的应用,在文献[17]中首先提出用无干扰的语义对访问控制以及MLS进行解释,并研究了其在SAT系统中的实现。1992年,Rushby在引入域的概念的基础上提出了基于状态机的无干扰模型。该模型系统地描述了无干扰对访问控制和通道控制的解释,并定义了系统关于传递和非传递无干扰的安全策略。
1.1基本符号与定义
公式(1)中a代表的是一个操序列,根琚具长度可以采用数学归纳法进行证明。
证明当a的长度为0,即时,公式(1)成立。
当a的长度不为0,则考虑操作序列a'=aoa,则公式(1)左边有
对公式(1)右边,分两种情况讨论。
根据以上无干扰的相关定义与定理可知,对于系统而言只要确保进程间的通信是无干扰的,那么就可以说明整个系统是安全的。因此,可以将该思想应用到云计算环境中。对于云计算环境而言,为了确保整个系统环境的安全性,可以首先将这个复杂的系统进行层次划允并对系统中的程序进行安全等级划分。根据划分的层次与设定的安全等级分析进程间的通信,若在程序通信的过程中,云计算系统中程序之间的通信是无干扰的,则可以说明整个云计算系统是安全的。
2云计算中的多级安全模型设计思想
云计算本身是一个复杂的系统环境,为了方便对其进行安全分析,需要对其进行简化,因此本文提出了_一个基于虚拟机系统的三层划分方式。由于多级安全技术不仅可以有效地防止不同信息级别之间的非授权泄露,而且可以通过继承多个级别的信息来共同完成一项任务。因此,可将多级安全思想与系统的层次划分相结合,将其应用到云平台中。文章从云计算的虚拟化技术出发,在虚拟机系统中实现多级安全,从进程的角度保证系统运行的安全。
2.1云计算多级安全模型介绍
对于云计算而言,在虚拟机系统中实现多级安全是有必要的。其原因在于虚拟化技术可以将进程分属于不同的虚拟机,而属于不同组织或部门(通常具有不同的安全等级)的虚拟机可能运行在同一台虚拟机监控器之上。根据这一特性,可以构造一个基于云平台的三层结构的多级安全访问控制模型。将虚拟机监视器作为顶层,运行在同一台虚拟机监视器上的虚拟机作为中间层,而在虚拟机中运行的进程作为最底层,如图1所示。
2.2 DIFC-B访问控制方法
1) DIFC-B访问方法介绍
针对DIFC模型中数据所有者能自主地对自己的数据进行授权这一特点,使用自主授权的访问控制方法对云计算系统实施数据安全性保护。本文在现有的DIFC模型理论的基础上提出了一种改进的访问控制方法DIFC-B。该方法将DIFC模型和Biba模型及BLP模型相结合,对进程间的访问进行完整性和机密性验证。
DIFC-B使用标签对来标注数据的安全性等级,进程的机密性和完整性等级是由其本身的标签和输人数据的标签决定的。为了在云计算环境下实施数据安全保护,要设计相应的DIFC-B标签机制和访问控制策略。在2.1的多级安全模型中,DIFC-B定义的进程既可以作为主体出现,也可以是系统中的客体。
2)相关术语定义
这里借鉴了文献[6]相关术语定义及其符号表示。
主体( Subject):一个主动实体,即一个操作的执行者。主体既可以是用户也可以是实体(如进程、任务),但这些实体是代表用户执行操作的。使用subj ect,来表示一个主体及其安全标记。
客体( Object):一个被动实体,即一个操作的被执行者。客体可以是被用来操作的信息、资源、对象等,但在本文中将客体定义为被访问的进程。使用objec tj来表示一个客体及其安全标记。
安全级(C&I):多级安全系统中所有实体的基本安全属性,本文主要是对实体的机密性(C)和完整性(I)进行讨论。安全级是确定所有主体对客体访问的基础。
标签对( Lable):表示被标注对象的安全等级,包括完整性和机密性。每个标签对L都是由标识所组成的集合表示被标注实体所含的各个安全信息的类型及安全等级,如L(C。,10,其中C:是指对象的机密性,I,是指对象f完整陛。在本文中标签对不仅定义进程的安全性,也用于虚拟机的安全性。
2.3系统访问控制过程
为了明确描述访问控制的过程,进行如下基本定义。并在这些定义的基础上,以读访问为例具体描述了该访问的执行过程。
1)基本操作
(1)读操作
2)执行过程f以读访问为例)
3云计算中MLS模型的可信性
3.1云计算中MLS模型的形式化
系统的运行过程可以看成是在一系列输入序列作用下造成的状态转移。而对于云计算系统而言,最大的特点是分布式,即使进程访问过程中可能涉及多个安全域。因此可以理解系统的运行就是系统处理一系列的输入,在输入的作用下状态转移并输出结果的过程。
从而可达状态S1是可信的,即此状态为可信状态。
定义6可信云系统当云系统满足下面两个条件时,称该系统为可信云系统。
1)对于云系统而言,其初始状态so是可信的。
2)在云系统运行过程中每一个可达状态都是可信的。
此定义可以作为云系统可信的判定条件,即为云系统可信的充分条件。
定理3若云系统具备以下三个条件,则系统是可信云系统。
1)云系统的运行基于可信根,即其初始状态s。可信。
2)云系统中的进程间满足无干扰属性。
3)云系统的运行结果具有输出一致性。
证明由定义6可知,若云系统满足其定义中的两个条件,则说明该云系统是可信的。
根据条件1)可知系统的启动状态是一种无条件的可信,其是由系统设计者通过密码技术和物理方法实现的。
由条件2)、3)可知其满足定理2,即系统的每个可达状态都是可信的,从而说明整个系统是可信云系统。
3.2云计算中MLS模型可信性证明
若云计算中的MLS模型满足定理3的三个条件,则说明其是可信的,即完成了证明。
证明云系统设计者运用密码技术和物理方法保证系统的可信,这就保证了云系统从可信根开始运行。条件1)满足。
由于本文设计的模型采用的是DIFC-B访问控制方法,利用Biba模型和BLP模型保证云计算系统中信息的完整性与机密性,其对所有的访问都有一个检查的过程,只有操作符合相应的访问控制规则,才能允许该访问的执行。由此可知,模型是通过禁止非法访问的方式来解决云系统的安全性问题。所以无论是对输入序列a还是purge(a)而言,其效果都是一样的。即模型满足无干扰性。条件2)满足:
由于系统对于非法操作采取的是拒绝访问请求的方式,所以它们的输出相同,也就是说满足输出一致性。条件3)满足。
4模型在云计算中的实现与应用
4.1模型在云计算中的实现
如图2所示,将用户终端中的进程作为主体,即为访问者;将云端的服务器中的进程看作是客体,即为被访问者,图2反应了这两类实体的访问过程。
从用户的角度讲,进程权限的限制主要包括两个方面。首先,为了使进程具有对云系统的最小访问权限,用户根据具体访问权限的要求对其做进一步的细化。其次,由于进程具有时效性,因此在基于进程的访问控制中,进程对系统资源的访问也具有时效性,以此来进一步限制进程的权限。
从云服务器角度来说,根据DIFC-B模型提供的自主授权的数据控制能力,云服务器可以为其系统内核中的进程设置访问控制权限。根据多级安全模型( MLS)和访问控制规则对访问请求进行仲裁,拦截不安全的访问请求,放行安全的访问请求,从而确保了云系统运行过程中的安全性。
4.2模型的具体应用过程
在此例中,客户端只具有输入、输出功能,其自身的资源以及需要访问的资源都存放在云端。模型的具体应用主要分为如下四个阶段(图3所示)。
1)初始化阶段
本模型是在初始状态可信的基础上进行安全性验证的。因此,就云系统而言,其是从可信根开始运行的,即初始状态下进程可信。
2)用户认证阶段
用户终端在访问云端时必须进行身份认证,因此采用U-Key身份认证的方法,将用户终端和U-Key绑定,写入策略文件。在用户终端对云端提出访问请求时,云端先通过U-Key对用户终端进行身份认证,认证通过后才对访问请求进行处理。
3)授权阶段
云端虚拟机监视器( VMM)中的DIFC-B模块对其控制的虚拟机及虚拟机中的进程进行自主授权,确定其机密性和完整性的安全级别。对于用户终端的进程而言,进程本身的标签和输入数据的标签决定其机密性和完整性级别。
4)安全性验证阶段
具体验证的过程描述如下:在授权阶段对云端主体进行安全级别自主授权后,以2.3节中的读访问执行过程为例,对其访问过程进行安全性验证。若返回的结果是“rej ect”,则说明拒绝本次读访问,对于云系统而言,表明云终端不能读取云端的相关资源;否则说明通过了该读访问的安全验证,最终返回云端所需要读取的资源:
从以上分析可以看出:模型通过这四个阶段的过程,可以很好地实现云计算系统中资源访问控制的安全性。对于云系统而言,其满足简单安全属性,从机密性和完整性两个方面实施多级安全保护。
5结束语
本文在云平台的基础上提出了一个三层结构的多级安全模型,通过虚拟机监视器、虚拟机和进程间的协作,实现了多级安全访问控制:将DIFC模型与Biba模型和BLP模型相结合,提出了一种在云计算系统中数据安全性保护的访问控制方法DIFC-B,对进程间的访问进行完整性和机密性的验证。最后,用无干扰方法描述和分析了该模型,并形式化证明其满足无干扰属性,由此说明从进程的角度出发此多级安全模型可以为云环境系统提供安全访问。
6摘要:针对云计算中信息的完整性问题,文章提出了一个基于云平台的多级安全模型。该模型将系统划分为三层:以虚拟机中的进程为基础层;将运行在同一台虚拟机监视器上的各虚拟机作为中间层;以该虚拟机监视器作为顶层,按自底向上的顺序进行安全性比较。结合这种安全模型,提出相配套的基于分布式计算环境的信息流控制( Decentralized Information FlowControl, DIFC)的访问控制方法(Decentralized Information Control Flow Based on Biba andBLP, DIFC-B)。该方法将虚拟机及其中的进程进行安全等级划分,再根据Biba模型和BLP模型的性质对进程间的访问进行验证,以确保系统运行时信息的完整性与机密性。最后,结合无干扰理论对基于云平台的多级安全模型进行了安全性分析,进而说明了模型的实用性。
下一篇:返回列表