7 用户对安全的需求
由于云计算为用户带来的信息技术服务成本的显著降低和信息管理的极大便利,所以推动云计算前进的力量将势不可挡。在推动云计算的进程中,另一个广为关注并让客户担忧的问题是云计算的安全风险问题。由于云计算存在的一些新的特征——特别是计算过程发生在“云”端,所以其安全风险涉及到诸多方面,比如数据隔离、数据隐私、用户特权访问、数据恢复能力、服务商的生存能力等等。服务商的服务转包也可能会导致IT风险、法律问题和一致性风险等新的云计算所特有的问题。
当用户(企业或个人)的敏感数据在云端处理的时候,由于处理过程并不在用户本地进行,所以用户无法对风险进行直接的控制。尽管有些云服务商具有很高的知名度和可信度,但也有可能由于疏忽而雇用了一个恶意的云数据中心管理员,而这个管理员将有能力控制用户的敏感数据。在不同的国家和地区,企业或个人的信息可能还需要符合该国家或地区规定的隐私法规。而在云计算环境下,用户根本无法知道其数据存储在何处,甚至不知道是在哪个国家或地区。云服务商如何担保其数据存储和处理是符合该国家和地区的隐私需求将是一个新的问题。
目前所有云服务商在信息安全上至多使用了通常的网络安全技术如SSL安全通信协议保护端与云之间的数据传输,SSH安全隧道协议让用户安全登陆在云上的平台,并使用加密技术来保护外存磁盘上的数据。但是当用户数据在后端服务器的内存(RAM)中计算处理时,则必须是以明文的形式才能进行处理的。由于现有云计算服务解决方案几乎都使用商用操作系统,这是云计算中一个重大的安全隐患——大量的黑客技术正是通过商用操作系统存在的漏洞来攻击它所服务的应用程序载入内存中的数据。提供内存数据的保护和隔离将是云计算的重要安全需求之一。云服务商不仅需要新的安全技术来提供满足用户需求的安全服务,而且还需要向用户作出担保:服务级别协议(Service Level Agreement, SLA)要求对各种服务(计算、存储、网络和安全服务等)承诺服务质量进行定义并能履行其违约责任。就安全需求而言,云服务商仅仅依靠良好的声誉、违约责任赔偿等通常的商务标准是不够的,这并不能减轻用户对其云端数字财产安全风险的担忧。原因是信息安全的损失往往很难量化。如何保护用户的数字财产免受黑客(包括来自云服务商本身)的攻击,如何做到安全服务SLA的可审计性,这是云计算安全问题必须面临一个的挑战。
EMC中国实验室参与的“道里”研究项目(http://www.daoliproject.org)便是迎接云计算的这个安全挑战。该项目致力于云计算环境下关于信任和可靠度保证的全球研究协作,道里研究团队包括复旦大学、武汉大学、华中科技大学和清华大学这四所中国顶尖技术高校。道里项目结合可信计算技术和硬件虚拟化技术实现用户可验证的安全应用隔离和行为规范,加强对云计算和云存储服务中的用户数字财产的保护。可信计算技术通过增强体系结构的安全来提高计算平台的安全性。可信计算联盟TCG (Trusted Computing Group)是行业中的一个标准组织。TCG技术使用一个称为TPM的安全芯片和一套可信软件栈来实现可信计算平台。在X86平台中,TPM被安装在输入/输出控制器(I/O Controller)总线上,那么它可以“监听”到每一个从外存装载入内存的软件。在平台的启动过程中,TPM能够记录整个启动过程中按序装载的所有软件。TPM记录软件加载过程是为了向关心该平台软件状况的人进行报告,比如该平台是一台云服务器,而关心者是云服务的用户。可信计算技术的主要优势是能够对平台的启动过程进行度量,将数据保护与平台的身份特征进行绑定,并能实现计算平台的相互认证。这里所说的度量,就是一个可以被审计的证据。因为TPM中使用了公钥密码技术,度量的结果是可以被第三方检查的。
硬件虚拟化技术是用一个直接跑在“金属”硬件计算平台上的叫做“虚拟机监控器”Virtual Machine Monitor, VMM的软件(这是我们在本文中第三次遇到虚拟化技术,可见其与云的密切相关性)来模拟“金属”硬件的指令。VMM运行在系统软件栈的最底端,具有最高的执行特权,能主动管理CPU、内存、输入/输出等物理硬件设备。所以VMM在运行时不仅可以抵制其它软件的攻击,实现自身的运行时完整性保护,而且可以管理其他程序的内存空间,防止内存中用户代码数据被未授权篡改或访问。另外,与典型的商用操作系统相比,VMM只需要不到1%的代码量,其提供的功能接口和实现机制也相对简单,所有也有理由认为VMM相对于操作系统可以被更正确地实现。因此,一个正确定制的安全VMM可以作为主动可信计算基(Active Trusted Computing Base, ATCB)对重要服务软件提供主动的保护,对应用程序提供细粒度的安全隔离。
道里研究项目结合可信计算和虚拟化技术来加强计算平台的安全,使得云服务商能够在公共云计算平台中提供虚拟私有云计算服务(Virtual Private Cloud, VPC),这将是云计算安全技术发展的一个重要方向。简单的说,虚拟私有云之于公共云计算有如虚拟私有网络(Virtual Private Network, VPN)之于公共网络。无容置疑,虚拟私有云相比公共云将提供更多的增值服务。但就实现方法而言,虚拟私有云与虚拟私有网络在技术上有很大的差异。我们可以用密码和身份认证技术在公共网络中实现虚拟私有网络。然而,对于虚拟私有云来说,仅仅依赖加密解密和身份认证技术并不能在公共的“云”中虚拟出一片私有的“云”,这是因为云计算服务中计算过程发生在远端,在接受计算服务时数据不能加密,信任问题要比虚拟私有网络复杂得多。虚拟私有云的实现需要对云服务提供者的内存储器和CPU寄存器作一种非加密方式的保护,使得租客的代码和数据在云服务提供者的内存和CPU寄存器中以明文形式被处理时仍然得到私密性及完整性的保护,避免被其它租客或攻击者窃取。道里项目提供的虚拟私有云计算服务为云用户提供应用程序级别的安全隔离,并保证用户代码和数据的私密性和完整性,是从真正意义上降低了云计算的安全风险。