李红娇,魏为民,田秀霞,孙超超
(上海电力学院 计算机科学与技术学院,上海 200090)
云计算是一种新的网络服务模式,它将计算任务分布在由大量计算机构成的资源池上,使用户能够按需获取计算能力、存储空间和信息服务.云计算最基本的特征是在互联网上将资源作为服务提供,包括应用程序、计算能力、存储容量、联网、编程工具,甚至通信服务和协作工具等.国际商用机器公司(International Business Machines Corporation,IBM)、美国加州大学伯克利分校[1]、美国国家标准与技术研究院(National Institute of Standards and Technology,NIST)[2]均给出了云计算的定义.从服务层面看,云计算是一种新的商务模式,服务商利用虚拟化技术为用户提供优质廉价的专业化、规模化的信息服务;在应用层面,云计算是一种新的应用,用户就像用水用电般使用互联网服务,像在银行存钱一样在网络上存储自己的信息.可以预见,云计算的发展会给网络服务商、设备制造商带来新的发展机遇,也将对人们的生活和工作方式产生巨大的影响.但随着云计算的不断普及,安全问题的重要性呈逐步上升趋势,已成为制约其发展的重要因素[3].
本文针对云计算安全需求,基于可信计算平台的关键部件,探讨可信计算技术对云计算安全的支持.
从目前云计算的发展来看,用户数据的安全、隐私信息的保护、数据的异地存储、云计算自身的稳定性,以及云计算监管方面的问题,直接关系到云计算业务被用户接受的程度,进而成为影响云计算业务发展的最重要因素.
基于采用的云服务模型、运行模式及提供云服务的技术,与传统信息系统安全解决方案相比,云计算可能面临不同的风险.在云计算环境中,多数安全问题起源于缺乏数据控制、缺乏信任(机制)、多租户等[4]因素.
云计算安全联盟(Cloud Security Alliance,CSA)给出了在云计算环境下需要关注的12种安全关键领域,即:治理和企业风险管理;法律和电子证据发现;合规性和审计;信息生命周期管理;可移植性和互操作性;传统安全、业务连续性和灾难恢复;数据中心运行;事件响应、通告和补救;应用安全;加密和密钥管理;身份和访问管理;虚拟化等.
在云计算时代,一方面用户享受服务带来的便捷性,另一方面可能由于引入外包服务而带来新的安全风险.在云计算服务平台上的秘密性、完整性、可用性、可靠性、可审计性、可控性,都是用户需要担心的问题.
(1)机密性 云计算资源中属于不同属主的信息应该对可信客体开放.未授权的人或其他实体应该被阻止访问.
(2)服务的动态性 云计算系统应该给用户提供动态服务,该动态机制可使用户方便地使用云计算环境中的服务和资源,因此安全也被看做动态服务之一.
(3)参与者之间的信任 参与者,包括用户、本地公司以及分布式资源,应该在实体之间构建信任关系,这些参与者之间可能有相互操作.信任关系根据认证来建立.
(4)动态构建信任域 在云计算系统中,需要动态组织参与者.例如,用户和各种资源被用于解决不同的问题.参与者之间的关系也动态变化.因此,虚拟机监视器需要动态构建跨多个组织或系统的信任域,其核心问题是可信性问题.
云计算环境中的信任包括:体系结构可信;行为可信;资源配置可信;用户数据存储可信.在云计算时代,以可信为基本条件,将为用户提供更优质、更廉价、更全面的安全服务,充分体现云计算的服务聚合、大众开放、低成本、高效率的特性.
国际性的非盈利机构可信计算工作组(Trusted Computing Group,TCG)对可信的定义为:可信是一种期望,在这种期望下设备按照特定目的以特定方式运转.
TCG针对不同的终端类型和平台形式制订了一系列完整性规范,例如个人电脑、服务器、移动电话、通信网络、软件等,这些规范所定义的可信平台模块(Trust Platform Module,TPM)通常以硬件的形式被嵌入各种计算终端,用于提供更可信的运算基础.
总体来看,可信计算平台就是在整个计算设施中建立一个验证体系,通过确保每个终端的安全性来提升整个计算机系统的安全性.因此,可信计算创建了一个安全的计算环境.
(1)可信平台模块 TPM是可信计算平台的核心,其体系结构如图1所示.它是一个含有密码运算部件和存储部件的小型SoC芯片系统,由中央处理器、存储器、密码运算处理器、随机数产生器和I/O等部件组成.完成可信度量的存储、可信度量的报告、密钥产生、加密与签名、数据安全存储等功能,以及系统启动、用户认证、系统监控、加密签名等安全信任功能.它是物理可信的.TPM仅在非虚拟化环境下工作,因此云服务中TPM需要被虚拟化.
图1 TPM体系结构
(2)可信存储 TCG的可信存储规范提供了一个可管理的、企业级的方法实现全磁盘加密,使用的驱动器是自加密驱动器,它简化了企业处理敏感数据的加密过程,因为所有数据、应用和驱动程序都在驱动器内部加密,密钥管理是整体设计的一部分.利用TPM实现基于硬件的加密,可信存储通过自加密驱动实现加密和认证功能.
(3)可信网络连接 可信网络连接(Trust Network Connect,TNC)是提供网络安全和网络安全访问的工业标准架构.根据TNC标准,管理员能够根据用户身份和设备状况控制网络访问,监视网络运行状况,一旦发生问题可以立即响应.目前,可信计算组已经开发了针对云计算多租户特点的IFMAP架构,如图2所示.它是传统的网络安全设备(如防火墙、入侵检测、流量控制等)与可信网络连接组件之间信息交互与共享的平台.
图2 IF-MAP架构
可信计算技术提供了一种方式来建立一个安全环境.可信计算模型的初始设计是在个人平台上提供隐私和信任,而随着网络计算成为主流计算,可信计算模型也用来支持分布式环境下的云计算.因此,可以集成可信计算技术来解决云计算的安全问题[5,6].
用户认证是访问控制的主要基础.云计算环境中包括大量的实体,例如用户以及不同来源的资源.不同的实体加入云,云及其所有的数据任何用户都可以访问.这些实体必须向云计算系统管理者证明其身份,因此在云计算环境中认证和访问控制比以往更重要.可信计算平台可以用来辅助处理云计算中的认证,它能够提供比用户名、口令更强的认证,包含一个专用的主密钥,对存储在云计算系统中的其他信息进行保护.硬件证书存储在TPM中.因此,基于可信计算技术进行客户机以及其他设备的认证,对确保云计算的安全非常关键.
云计算系统中,会有大量用户访问云服务,而每个用户都有自己的目标和行为.为降低访问控制模型的复杂性,可将用户进行若干分类并对这些分类制定访问控制准则.用户需要注册进入一个或几个分类,获得代表其身份的信任状.为达到可信计算目标,用户应该来自可信计算平台,并采用该平台上的安全机制获取自身的隐私和安全.用户从基于TPM的可信计算平台登陆云计算系统,从证书权威处获取证书,当希望同远程实体进行通信时,其信息传送通过会话密钥得到保护.
对于存储在云中的重要数据可以使用TPM产生的密钥进行加密.加密密钥存储在TPM中,使得针对这些密钥的攻击非常难于实施.对于传输中的数据,可以使用加密技术来确保数据的安全.认证和完整性保护可以确保数据不被修改.当需要访问云中的数据时,用户或应用程序首先需要进行基于TPM的认证.
云计算系统中每个用户都有关于其身份的完整信息,需要使用相应的机制追踪用户行为.在可信计算平台上,用户身份通过个人密钥证明,并且该机制集成到BIOS和TPM等硬件中,用户很难隐瞒其身份信息.当用户登陆云计算系统时,其身份信息被记录和验证.云计算系统中的每个站点都会记录访问者的信息,如果可信计算平台集成进云计算系统,参与者,包括用户和其他资源都会被云计算系统的追踪机制监视.
云计算环境中,由于缺乏透明性,将数据搬到云端是令人担忧的,而可信计算技术可以解决该问题.在云服务端安装可信监视器,实施访问控制策略,并执行监视或审计云服务器的操作.可信监视器能够向数据属主提供合规性证明.为了产生合规性证明,监视器代码使用数字签名,监视器也产生合规性描述.数据属主接收到合规性证明后,就能验证监视器代码是否正确运行.
CSA将多租户识别为云的一个重要元素.云服务模型中的“多租户”意味着满足不同客户场景对策略驱动的安全增强、分段、隔离、监管、服务水平,以及相应的计费/返款等模型的不同需求.用户可能会使用公共云服务提供商的服务产品或者是同一家组织内部的云服务,例如不同的业务单元,属于完全不同的商业组织,它们之间依然需要分享基础设施.可信计算技术提供对虚拟机监视器和虚拟网络分离安全性的改进.首先,TPM能够提供基于硬件的超级用户和虚拟机监控器的完整性验证;其次,TNC架构和标准能够提供强劲的网络分离和安全来为可信多租户服务.
作为对不可预期事件响应的一部分,客户需要规划云提供商安全策略违反或者用户的恶意行为.自动响应或者自动通知是较好的解决方案.TNC的IF-MAP架构支持不同安全系统及集成,并且对突发事件和用户恶意行为提供实时通知.为了确认云服务商有很强的策略和实践解决法律以及监管问题,研究者需要考虑的问题包括数据安全、输出、合规、审计、数据保留和销毁,以及法律发现.在数据保留和删除方面,可信存储和TPM对限制数据的访问起重要作用.
本文根据云计算的特点分析了云计算环境下的安全需求,基于可信计算平台,扩展可信计算技术到云计算系统,基于可信计算技术辅助实现云计算系统的一些重要安全功能,如身份认证、数据安全、访问控制、远程证明、虚拟化安全、应急响应、用户行为追踪、法律监管等,以实现可信云计算.下一步的工作是基于可信计算平台开发可信云计算模型系统,以期为用户提供灵活安全的服务.
[1]ARMBRUSH Michael,ARMANDO Fox.Above the clouds:a berkley view of cloud computing[R].EECS Department University of California Berkeley Tech Rep UCBEECS200928,2009:25.
[2]MELL Peter,GRANCE Timothy.NIST special publication 800 -145,the NIST definition of cloud computing[S].Gaithersburg,MD:NIST,2011.
[3]冯登国,张敏,张妍,等.云计算安全研究[J].软件学报,2011,22(1):71-82.
[4]SINGH Amardeep,VERMA Monika.Attacks and security in cloud computing[J].International Journal of Advanced Engineering & Application,2011(1):300-302.
[5]SHEN Zhi-dong,LI Li,YAN Fei,et al.Cloud computing system based on trusted computing platform[C]//Proceedings of the International Conference on Intelligent Computation Technology and Automation,2010:942-945.
[6]AHAMED B Bazeer,MOHAMED S Syed Sabir.Implementation of trusted computing technologies in cloud computing[J].International Journal of Research and Reviews in Information Sciences,2011(1):7-9.