电信科学_云计算安全浅析V07

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1云计算安全浅析朱源,闻剑峰(中国电信股份有限公司上海研究院,上海,200122)摘要:云计算是近年来互联网讨论最为热烈的技术,被认为是互联网发展趋势。随着云计算的深入应用,云计算安全问题成为最引人关注的焦点之一。本文结合云计算的特点,重点介绍了数据安全、应用安全,以及虚拟化安全在云计算环境下面临的威胁,以及相应的对策。关键字:云计算;基础设施即服务;平台即服务;软件即服务;应用安全;云服务提供商1云计算概述云计算是一种新兴的共享基础架构的方法,由“资源池”化的计算、网络、信息和存储等组成的服务、应用、信息和基础设施等的使用。这些组件可以迅速策划、置备、部署和退役,并且可以迅速扩充或缩减,提供按需的、效用计算类似的分配和消费模式。云计算具有按需自服务、宽带接入、虚拟化资源池、快速弹性架构、可测量的服务和多租户等特点,这些特点直接影响到了云计算环境的安全威胁和相关的安全保护策略。云计算具备了众多的好处,从规模经济到应用可用性,云计算绝对能在应用环境带来一些积极的因素。如今,在广大云计算提供商和支持者的推崇下,众多企业用户已开始跃跃欲试。然而,云计算也带来了一些新的安全问题,由于众多用户共享IT基础架构,安全的重要性确实非同小可。2云计算安全参考模型从IT网络和安全专业人士的视角出发,我们可以用统一分类的一组公用的、简洁的词汇来描述云架构对安全架构的影响,在这个统一分类的方法中,云服务和架构可以被解构,也可以被映射到某个安全、可操作控制、风险评估和管理框架等诸多要素的补偿模型中去,进而符合合规性标准。2IAAS抽象层核心连接层硬件层物理环境层集成和中间层接口层数据内容元数据应用层接口层展现模式展现平台PAASSAAS云模型安全控制模型合规模型应用信息管理网络可信计算计算和存储物理物理平台安全,闭路电视,安保基于主机的防火墙、HIDS/HIPS.文件日志管理、加密软件和硬件腐蚀、接口NIDS/NIPS、防火墙、DPI、Ant-DDos、QOS.DNSSEC、oauthGRC.IAM、VAM、补丁管理、配置管理、监控DLP、CMF、数据库活动监控、加密软件开发什么周期管理、二进制分析、扫描、web应用防火墙找到差距图1云计算安全参考模型云计算模型之间的关系和依赖性对于理解云计算的安全非常关键,IaaS(基础设施即服务)是所有云服务的基础,PaaS(平台即服务)建立在IaaS之上,而SaaS(软件即服务)又建立在PaaS之上,之间关系如图1所示。IaaS涵盖了从机房设备到其中的硬件平台等所有的基础设施资源层面。PaaS位于IaaS之上,增加了一个层面用以与应用开发、中间件能力以及数据库、消息和队列等功能集成。PaaS允许开发者在平台之上开发应用,开发的编程语言和工具由PaaS支持提供。SaaS又位于底层的IaaS和PaaS之上。SaaS能够提供独立的运行环境,用以交付完整的用户体验,包括内容、展现、应用和管理能力。云安全架构的一个关键特点是云服务提供商所在的等级越低,云服务用户自己所要承担的安全能力和管理职责就越多。本文针对云计算安全领域中的数据安全、应用安全和虚拟化安全进行了重点阐述,如表1所示。3安全层次内容数据安全数据传输、数据隔离、数据残留应用安全终端用户安全、SaaS安全、PaaS安全、IaaS安全虚拟化安全虚拟化软件安全、虚拟服务器表1云安全内容矩阵另外,需要特别指出的是,本文在论述云计算安全内容矩阵的时候,始终遵循CIA三要素相结合的原则,即保密性、完整性和可用性。3数据安全云用户和云服务提供商应避免数据丢失和被窃,无论是使用哪种云计算的服务模式(SaaS/PaaS/IaaS),数据安全变的越来越重要。以下会针对数据传输安全、数据隔离和数据残留等方面展开讨论。3.1数据传输安全在使用公共云时,对于传输中的数据最大的威胁就是不采用加密算法。通过Internet传输数据,采用的传输协议也要能保证数据的完整性。如果采用加密数据和使用非安全传输协议的方法也可以达到保密的目的,但无法保证数据的完整性。3.2数据隔离加密磁盘上的数据或生产数据库中数据很重要(静止的数据),这可以用来防止恶意的云服务提供商、恶意的邻居“租户”及某些类型应用的滥用。但是静止数据加密比较复杂,如果仅使用简单存储服务进行长期的档案存储,用户加密他们自己的数据然后发送密文到云数据存储商那里是可行的。但是对于PaaS或者SaaS应用来说,数据是不能被加密,因为加密过的数据会妨碍索引和搜索。到目前为止还没有可商用的算法实现数据全加密。4PaaS和SaaS应用为了实现可扩展、可用性、管理以及运行效率等方面的“经济性”,基本都采用多租户模式,因此被云计算应用所用的数据会和其他用户的数据混合存储(如Google的BigTable)。虽然云计算应用在设计之初已采用诸如“数据标记”等技术以防非法访问混合数据,但是通过应用程序的漏洞,非法访问还是会发生,最著名的案例就是2009年3月发生的谷歌文件非法共享。虽然有些云提供商请第三方审查应用程序或应用第三方应用程序的安全验证工具加强应用程序安全,但出于经济性考虑,无法实现单租户专用数据平台,因此唯一可行的选择就是不要把任何重要的或者是敏感的数据放到公共云中。3.3数据残留数据残留是数据在被以某种形式擦除后所残留的物理表现,存储介质被擦除后可能留有一些物理特性使数据能够被重建。在云计算环境中,数据残留更有可能会无意中泄露敏感信息。因此云服务提供商应保证云用户能鉴别信息所在的存储空间被释放或再分配给其他云用户前得到完全清除,无论这些信息是存放在硬盘上还是在内存中。云服务提供商应保证系统内的文件、目录和数据库记录等资源所在的存储空间被释放或重新分配给其他云用户前得到完全清除。4应用安全由于云环境其灵活性、开放性、以及公众可用性这些特性,给应用安全带来了很多挑战。提供商在云主机上部署的Web应用程序应当充分考虑来自互联网的威胁。4.1终端用户安全对于使用云服务的用户,应该保证自己计算机的安全。在用户的终端上部署安全软件,包括反恶意软件、防病毒、个人防火墙,以及IPS类型的软件。目前,浏览器已经普遍成为云服务应用的客户端,但不幸的是所有的因特网浏览器毫无例外地存在软件漏洞,这些软件漏洞加大了终端用户被攻击的风险,从而影响云计算应用的安全。因此云用户应该采取必要措施保护浏览器免受攻击,在云环境中实现端到端的安全。云用户应使用自动更新功能,定期完成浏览器打补丁和更5新工作。随着虚拟化技术的广泛应用,许多用户现在喜欢在桌面或笔记本电脑上使用虚拟机来区分工作(公事与私事)。有人使用VMwarePlayer来运行多重系统(比如使用Linux作为基本系统),通常这些虚拟机甚至都没有达到补丁级别。这些系统被暴露在网络上更容易被黑客利用成为流氓虚拟机。对于企业客户,应该从制度上规定连接云计算应用的PC机禁止安装虚拟机,并且对PC机进行定期检查。4.2SaaS应用安全SaaS应用提供给用户的能力是使用服务商运行在云基础设施之上的应用,用户使用各种客户端设备通过浏览器来访问应用。用户并不管理或控制底层的云基础设施,例如网络、服务器、操作系统、存储、甚至其中单个的应用能力,除非是某些有限用户的特殊应用配置项。SaaS模式决定了提供商管理和维护整套应用,因此SaaS提供商应最大限度地确保提供给客户的应用程序和组件安全。客户通常用只需负责操作层安全功能包括用户和访问管理。所以选择SaaS提供商特别需要慎重,目前对于提供商评估通常的做法是根据保密协议,要求提供商提供有关安全实践的信息。该信息应包括设计、架构、开发、黑盒与白盒应用程序安全测试和发布管理。有些客户甚至请第三方安全厂商进行渗透测试(黑盒安全测试),以获得更为详实的安全信息;不过渗透测试通常费用很高而且也不是所有提供商都同意这种测试。还有一点需要特别注意的是SaaS提供商提供的身份验证和访问控制功能,通常情况下这是客户管理信息风险唯一的安全控制措施。大多数服务,包括谷歌都会提供基于Web的管理用户界面。最终用户可以分派读取和写入权限给其他用户。然而这个特权管理功能可能不先进的,细粒度访问可能会有弱点,也可能不符合组织的访问控制标准。用户应该尽量了解云特定访问控制机制,并采取必要步骤,保护在云中的数据。应实施最小化特权访问管理,以消除威胁云应用安全的内部因素。所有有安全需求的云应用都需要用户登录,有许多安全机制可提高访问安全性,比如说通行证或智能卡,而最为常用的方法是可重用的用户名和密码。对于6密码的强度最小(例如需要的长度和字符集过短),也没有密码管理(过期,历史)很容导致密码失效,而这恰恰是攻击者获得信息的首选方法,从而容易被猜到的密码。因此云服务提供商应能够提供高强度密码;定期修改密码,时间长度必须基于数据的敏感程度;不能使用旧密码等可选功能。在目前的SaaS应用中,提供商将客户数据(结构化和非结构化数据)混合存储是普遍的做法,通过唯一的客户标识符,在应用中的逻辑执行层可以实现客户数据逻辑上的隔离,但是当云服务提供商的应用升级时,可能会造成这种隔离在应用层执行过程中变得脆弱。因此,客户应了解SaaS提供商使用的虚拟数据存储架构和预防机制,以保证多租户在一个虚拟环境所需要的隔离。SaaS提供商应加强在软件安全性和实践的安全措施,这些措施应贯穿于整个软件生命开发周期。4.3PaaS应用安全PaaS云提供给用户的能力是在云基础设施之上部署用户创建或采购的应用,这些应用使用服务商支持的编程语言或工具开发,用户并不管理或控制底层的云基础设施,包括网络、服务器、操作系统或存储等,但是可以控制部署的应用,以及应用主机的某个环境配置。PaaS应用安全包含2个层次:PaaS平台自身的安全;客户部署在PaaS平台上应用的安全。SSL是大多数云安全应用的基础,目前众多黑客社区都在研究SSL,相信SSL在不久的将来将成为一个主要的病毒传播媒介。PaaS提供商必须明白当前的形势,并采取可能的办法来缓解SSL攻击,避免应用被暴露在默认攻击之下。用户必须要确保自己有一个变更管理项目,在应用提供商指导下进行正确应用配置或打配置补丁,及时确保SSL补丁和变更程序能够迅速发挥作用。PaaS提供商通常都会负责平台软件包括运行引擎的安全,如果PaaS应用使用了第三方应用、组件或WEB服务,那么第三方应用提供商则需要负责这些服务的安全。因此用户需要了解自己的应用到底依赖于哪个服务,以及对第三方提供商的风险评估。到目前为止,云服务提供商借口平台的安全使用的信息会被黑客利用而拒绝共享;尽管如此,客户应尽可能地要求云服务提供商增加信息透明度7以利于风险评估和安全管理。在多租户PaaS的服务模式中,最核心的安全原则就是多租户应用隔离。云用户应确保自己的数据只能有自己的企业用户和应用程序访问。提供商维护PaaS的平台运行引擎的安全,在多租户模式下必须提供“沙盒”架构,平台运行引擎的“沙盒”特性可以集中维护客户部署在PaaS平台上应用的保密性和完整性。云服务提供商负责监控新的程序缺陷和漏洞,以避免这些缺陷和漏洞被用来攻击PaaS平台和打破“沙盒”架构。云用户部署的应用安全需要PaaS应用开发商配合,开发人员需要熟悉平台的API,部署和管理执行的安全控制软件模块。开发人员必须熟悉平台特定的安全特性,这些特性被封装成安全对象和WEB服务。开发人员通过调用这些安全对象和WEB服务实现在应用内配置认证和授权管理。对于PaaS的API设计,目前没有标准可用,这对云计算的安全管理和云计算应用可移植性带来了难以估量的后果。PaaS应用还面临着配置不当的威胁,在云基础架构中运行应用时,应用在默认配置下安全运行的概率几乎为零。因此,用户最需要做的事就是改变应用的默认安装配置,需要熟悉应用的安全配置流程。4.4IaaS应用安全IaaS云提供商(例如亚马逊EC2,GoGrid等),将客户在虚拟机上部署的应用看作是一个黑盒子,IaaS提供商完全不知道客户应用的管理和运维。客户的应用程序和运行引擎,无论运行在何种平台上Java、.NET、PHP、RubyonRail

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功