- 云存储安全:大数据分析与计算的基石
- 陈兰香
- 7603字
- 2021-03-31 14:09:33
1.3 云存储安全
因为云存储的安全性、可靠性及服务水平等还存在众多问题亟待解决,所以云存储安全技术也得到了广泛关注。下文将分析云存储服务中为什么存在安全问题,然后详细介绍存在的安全威胁;为了应对这些威胁,需要解决哪些问题;如果解决了这些问题,仍然面临怎样的挑战。
1.3.1 为什么有安全问题
与传统存储相比,云存储,特别是公共云存储为什么会有更多的安全问题?总结起来,认为主要有如下几个原因[12]。
1. 云存储的租用商业模式
在传统存储系统中,数据用户拥有存储系统的完全控制权,而且存储资源完全由用户支配,不需要与其他用户共享。这种情况下,保障安全的重点是防范外部的攻击者。
而在公共云存储中,数据所有权和管理权分离,用户一旦将数据迁移到云上,就失去了对数据的直接控制权。存储资源由服务提供者控制,并且会通过虚拟化的方式将存储资源同时租给多个用户使用。此时不仅要防范外部的攻击者,内部威胁更为严重,比如恶意的云管理员、可利用的安全漏洞、不当的访问接口等。用户的隐私数据不仅可能暴露给云服务提供商,而且还可能暴露给包括竞争对手在内的其他用户。另外,在PaaS和SaaS中,因为对加密数据的处理技术还不成熟,一般以明文形式处理,从而导致其中的敏感数据直接暴露给云服务提供商和同一机器上的其他租户。
2. 虚拟化技术的采用
虚拟化技术是云计算与云存储的关键支撑技术。通过虚拟化,一方面可以将一些零散的资源整合到一个资源池,比如早期Google将成千上万台PC通过集群系统整合到一起,作为他们的后台服务器;另一方面,可以将强大的资源分解成一个个小单元,为不同用户提供服务,比如目前的公共云存储服务,就是将大量的存储资源通过虚拟化分解成一个个逻辑的存储服务器提供给不同用户使用。
虚拟化技术相当于云计算与云存储平台的操作系统,是资源能够动态伸缩并得到充分利用的关键。通过对CPU、内存、硬盘等硬件资源的虚拟化,同一台物理机上可以同时运行多台虚拟机。尽管这些共享着相同硬件资源的虚拟机在虚拟机监控器(Virtual Machine Monitor,VMM)或Hypervisor(虚拟机管理程序)的管理下彼此隔离,但攻击者仍然可以通过旁路侦听、虚拟机逃逸、流量分析等攻击手段从一台虚拟机上获取其他虚拟机上的数据。
作为虚拟化的核心技术,Hypervisor运行在比操作系统特权还高的最高优先级上。它可以捕获CPU指令,为指令访问硬件控制器和外设充当中介,协调所有CPU资源分配。一旦Hypervisor被攻击破解,在Hypervisor上的所有虚拟机将无任何安全保障。
虚拟机动态地被创建、被迁移,其安全措施必须相应地自动创建、自动迁移。因为虚拟机可以在两层网络中任意迁移,在迁移的过程中其安全防护更加困难。虚拟机的安全措施如果没有自动创建,会导致虚拟机的管理密钥被盗而使相应的服务遭受攻击。因此,虚拟化技术带来了极大的安全威胁。因为其权限太大,还没有很好的防护手段。
3. 多租户共享
多租户共享同一云服务提供商的IT资源,也是导致云架构不安全的一大隐患。特别是在SaaS云模型中,如Google Docs中同一个应用进程可以同时为多个租户所用。这些租户的数据一般存放在同一张数据表中,采用标签进行区分。虽然可利用访问控制技术来确保每个租户只能访问自己的数据,但恶意租户利用系统漏洞或旁路攻击等方法仍然可以获得其他用户的数据[13]。另外,在SaaS服务模式中,数据以明文形式处理,云服务器可以读取内存中租户的数据。
4. 云计算的安全悖论
很多中小企业缺乏信息安全管理技术与基础设施,迫切需要寻求一种安全的数据处理与存储平台,那么公共云计算与云存储服务便是一个最佳的选择。因为强大的云计算服务提供商可以利用最先进的安全技术来保障其IT基础设施,包括硬件、系统、软件与网络等的安全,同时为用户数据提供更完备的安全保障。但如上所述,公共云计算与云存储反而带来了更多的安全问题,即有很好的安全却又反而不安全。
同时,恶意的用户也可以利用强大的云计算资源发起攻击,而且还将自己隐蔽在合法的用户中。正如随着互联网和摄像头的普及,一方面让犯罪分子无处遁形,另一方面也让用户的个人隐私暴露无遗。
以上总结了云存储存在安全问题的几个原因,下文将对主要的云存储安全威胁进行介绍。
1.3.2 云存储安全威胁
2010年9月,发现Google员工利用职权查看了多个用户的隐私数据;2011年3月,Google邮箱再曝大规模用户数据泄露;2011年4月,Amazon的EC2云计算服务被黑客租用,对Sony PlayStation网站进行了攻击,造成大规模用户数据的泄露;2012年8月,苹果公司的iCloud云服务受到黑客攻击,黑客暴力破解用户密码后,删除了部分用户资料,而云平台并未备份用户数据,从而导致用户数据的丢失,并致使用户Gmail和Twitter账号被盗;2014年8月,美国版“艳照门”iCloud数据外泄;2014年9月,黑客利用苹果iCloud云端系统的漏洞将其数据外泄;2014年10月,美国资产规模最大的银行——摩根大通由于计算机系统遭到网络攻击,7600万家庭和700万小企业的相关信息被泄露;2015年4月,上海、重庆等超30个省市约5000万用户社保信息被泄露;2015年6月,工商银行快捷支付被曝存在严重漏洞,发生许多工行储户存款被盗事件;2015年9月,亚马逊AWS云服务发生宕机事件,给其数家互联网公司客户带来了巨大的影响;2015年10月,网易邮箱过亿用户信息被泄露;2016年4月,土耳其方面爆发重大数据泄露事件,直接导致近5000万土耳其公民的个人信息遭到威胁;2017年2月,知名云安全服务商Cloudflare被曝泄露用户HTTPS网络会话中的加密数据长达数月……此类事件不胜枚举。
随着金融支付等业务的广泛应用,云存储系统承载了大量的用户金融支付和私人文件等非常敏感的数据。因此,云存储的安全性成为制约其未来发展的关键因素。
如前所述,云存储是一个以数据存储和管理为核心的云计算系统,所以云计算的安全威胁一样适用于云存储。
为了让企业了解云计算的安全问题,以便采取适合的安全策略,云计算安全联盟(Cloud Security Alliance,CSA)发布了“2016年云计算安全的12大威胁”[14]。以下是云安全联盟列出的12个最重要的云安全问题(按照调查结果的严重程度排列)。
1. 数据泄露
数据作为企业的重要资产,很容易成为黑客攻击的目标。它可能涉及任何不适合公开发布的信息,包括个人身份信息、个人健康信息、财务信息、商业机密和知识产权等。一旦发生数据泄露,企业有可能会收到巨额罚款或面临法律诉讼,甚至是刑事指控,也会造成品牌形象下跌和业务流失,会对企业造成持续的不良影响甚至破产。数据泄露风险并不是云计算独有的,但它始终是云计算用户的首要考虑因素。
2. 身份、凭证和访问控制不善
数据泄露和一些攻击通常都是因为身份验证、弱口令和管理松散等问题引起的。云计算安全联盟表示,网络犯罪分子伪装成合法用户、运营人员或开发人员,可以读取、修改和删除数据,获得管理权限,在用户传输数据过程中盗取数据,甚至发布恶意软件。
美国第二大医疗保险公司Anthem数据泄露事件中,超过8千万客户记录被盗,就是用户凭证被盗的结果。Anthem没有采用多因子身份验证,因此一旦攻击者获得了凭证,进出系统如入无人之境。
3. 不安全的访问接口和应用程序接口(API)
云计算提供商提供了一组客户使用的软件用户界面(User Interface,UI)和应用程序接口(Application Programming Interface,API)来方便用户与云服务器的交互。访问接口和API通常都可以从公网访问,因此成为系统的对外接口,也最容易成为被攻击的目标。
不安全的访问接口和有漏洞的API将使企业面临很多安全问题,机密性、完整性、可用性和可靠性都会受到考验。云计算安全联盟称,从身份验证和访问控制,到数据加密和行为监测,都依赖这些访问接口和API,因此这些访问接口和API的安全性至关重要。
4. 系统漏洞
系统漏洞是指攻击者可以用来入侵系统,窃取数据、控制系统或破坏服务操作的程序漏洞。因为云存储的多租户特性,不同用户使用相同的存储基础设施,并且允许访问共享内存和资源,导致存在安全风险。
云计算安全联盟表示,操作系统组件中的漏洞使得所有服务和数据面临的安全风险最大。虽然修复系统漏洞的开支比其他IT支出要多一些,但在部署基础设施的过程中修复漏洞的开支,会比因为漏洞而遭受攻击的损失少得多。
5. 账户劫持
劫持账户是一种常见的攻击方法,比如利用网络钓鱼、诈骗、软件漏洞等劫持合法账户,然后进行一系列的非法操作。比如窃听用户行为,当进行支付动作时,将用户重定向到非法网站。而且,有些云服务还共享访问凭证,从而出现一个服务的账户被劫持,会导致其他的服务也不安全。
另外,在云存储环境下,合法账户被劫持后,攻击者可以访问云存储服务的关键区域。它的目标可能并不是被劫持的用户,而是与之相邻的其他用户,从而危及其他用户数据的机密性、完整性与可用性。
6. 内部威胁[15]
计算机安全应急响应组(Computer Emergency Response Team,CERT)是专门处理计算机网络安全问题的组织。早在2000年,该组织即已开展内部威胁检测项目。根据CERT的定义,内部威胁是指一个或多个现在或以前的公司员工、外包商或合作伙伴,具有对网络、系统或数据的访问权限,故意滥用或误用自己的权限损害公司信息或信息系统的机密性、完整性与可用性[16]。
内部威胁是云计算安全面临的最严重的挑战之一。2013年“斯诺登事件”即由内部人员公开内部数据,从而引起媒体广泛关注,而这只是内部威胁的冰山一角。SailPoint安全公司曾做过一个安全调查,受访者中20%的人表示只要价钱合适便会出卖自己的工作账号和密码。美国计算机安全协会(CSI)和联邦调查局(FBI)在2008年的报告中指出,内部安全事件所造成的损失明显高于外部安全事件。2015年普华永道的调查指出,中国内地与香港特别行政区的企业信息安全事件中50%以上是由内部人员造成的。
云计算安全联盟表示,虽然有些威胁的严重程度是有争议的,但在某一点上是有共识的,即内部威胁是一个真正的威胁。怀有恶意的内部人员(如系统管理员)可以访问潜在的敏感信息,可以更多地访问更重要的系统,并最终访问数据。仅依靠云服务提供商提供安全措施的系统将面临更大的风险。
7. 高级持续性威胁
高级持续性威胁(Advanced Persistent Threats,APT)攻击,也称针对性攻击,是一种寄生的网络攻击方式,它渗透到目标公司IT基础设施中,建立自己的立足点,从中窃取数据。常见的渗透方式包括网络钓鱼、U盘预载恶意软件、通过被黑的第三方网络等。APT混入正常网络流量,因此很难被侦测到。对此,除了云服务提供商要应用高级安全策略阻止APT渗透进他们的基础设施,云用户也要经常检测自己的账户是否存在APT行为。
8. 数据丢失
当出现火灾或地震等自然灾害、遭受攻击和服务器损坏等各种意外情况时,都可能导致客户数据的永久丢失。相应的法律法规通常会规定公司必须保留审计记录和其他文件的时限,若此类数据丢失,就会造成严重的监管后果。
随着云服务技术的成熟,由服务提供商失误导致的永久数据丢失已经比较少见了,倒是恶意黑客会利用删除云端数据的方式来危害公司。对于云服务提供商来说,多地分布式部署其云服务平台,建立好的数据备份与恢复机制,遵循业务持续性和灾难恢复最佳实践,都是最基本的防止永久数据丢失的方法。
9. 对拟采用的服务调研不足
企业在没有完全理解云环境及其相关风险的情况下,就购置云服务,会存在很多商业、金融、技术、法律和合规风险。企业是否需要将其数据和应用迁移到云环境,怎样选择服务提供商,都要进行充分的调研,尤其要仔细审查服务提供商的资质和合同中的责任条款。
云计算安全联盟表示,企业管理层在制定战略时,要对云计算技术和服务提供商进行评估和考量,而且应制定一个良好的考量策略,明确他们要承担的风险。
10. 滥用云服务
云服务可以帮助企业减少初始投资和管理成本,但同时,它也可能被攻击者用来开展违法活动,比如利用云计算资源破解密钥、利用云计算资源来定位用户、发起分布式拒绝服务(Distributed Denial of Service,DDoS)攻击、发送垃圾邮件和钓鱼邮件、托管恶意内容等。
服务提供商要能够识别各种类型的云服务滥用情况,比如通过检测流量识别DDoS攻击,企业也要确保服务提供商拥有服务滥用的报告机制和预防机制。
11. 拒绝服务
这种威胁也属于滥用云服务的一种,恶意用户占用大量的云计算资源,如CPU、内存、磁盘空间或网络带宽,导致合法用户不能正常访问其数据或应用。
针对拒绝服务(Denial of Service,DoS)攻击,需要云服务提供商有较好的攻击检测与预防机制,当出现攻击时,有办法抵御攻击并能快速恢复正常服务。
12. 共享架构中的技术漏洞
云计算服务提供商通过共享基础架构、平台和应用程序来实现多租户共享资源,在节省大量成本的同时,也带来了客户的数据安全风险。在对各类资源进行隔离中可能存在的各类技术漏洞,可能在所有交付模式中被攻击者利用。
2016年4月,欧洲议会投票通过了商讨4年之久的《一般数据保护条例》(General Data Protection Regulation,GDPR)。该法规包括91个条文,共计204页。该条例将于2年后,即2018年5月25日正式生效。新条例的通过意味着欧盟对个人信息保护及其监管达到了前所未有的高度,可称为史上最严格的数据保护条例。非欧盟成员国的公司(包括免费服务)只要满足下列两个条件之一:①为了向欧盟境内可识别的自然人提供商品和服务而收集、处理他们的信息。②为了监控欧盟境内可识别的自然人的活动而收集、处理他们的信息。这些公司就受到GDPR的管辖。这个条例将对中国企业的数据管理和信息安全,以及数据收集、处理和交易产生重大影响。
对于一般性的违法,罚款上限是1000万欧元或企业上一年度全球营业收入的2%(两者中取数额大者);对于严重的违法,罚款上限是2000万欧元或企业上一年度全球营业收入的4%(两者中取数额大者)。
我国于2017年6月1日起施行《中华人民共和国网络安全法》和最高人民法院、最高人民检察院《关于办理侵犯公民个人信息刑事案件适用法律若干问题的解释》,以加强网络安全和个人隐私保护。其中规定,非法获取、出售或者提供公民个人信息5000条以上、违法所得5000元以上可入罪。
针对信息安全领域的法律法规建设是应对云存储安全威胁的一项有力举措。
1.3.3 需要解决的几个问题
综上所述,根据云存储中安全问题的根源和云计算的12大安全威胁,总结出要保障云存储安全需要解决的几个问题。
1. 云存储安全体系结构
安全是一项系统工程,需要系统化的方法和机制来保障全面的安全。云存储提供的是可伸缩的数据服务,无法清晰地定义安全边界及保护设备,这给制定并实施云存储的安全保护措施增加了难度。因此,对云存储安全体系结构要有明确的定义和界限划分,使其能够清晰地描述安全体系结构的层次、各层之间的接口、各层需要采取的安全机制,以及可以保障哪些方面的安全,从而形成一套保障安全的系统化的体系结构。
2. 云存储虚拟化安全
如上所述,虚拟化是安全问题的根源之一。因其权限大,管辖范围广,在云存储安全风险中占据了很大比重。对不同的云用户来说,云存储系统是一个相同的物理系统,而不再像传统网络一样有物理的隔离和防护边界,由此虚拟系统被越界访问等无法保证数据隔离性的问题也就难以避免。因此,云存储虚拟化安全就是要保障数据的安全隔离,防范各类系统漏洞和侧信道攻击。
3. 云存储系统访问控制
云存储服务面临的威胁,首先来自于身份认证和访问控制问题。作为云存储服务的访问入口,它们一旦被攻破,就犹如城门失守,入侵者必将长驱直入,直接威胁到云存储的安全。因此,云存储系统的访问控制,包括系统的认证与授权,需要根据云存储系统的应用需求,有较完备的安全策略和实施方法。
4. 云存储数据机密性保障
在信息安全的三要素中,数据机密性是排在第一位,其重要性不言而喻。在云存储服务中,因为数据存储在云服务器上,用户失去了对数据的完全控制权,那么要保障数据的机密性,通常就是在数据上传到云服务器之前,对数据进行加密处理。云环境下有着海量的数据,因此需要轻量级的快速加密算法;数据加密后,传统的信息检索机制不再适用,需要相应的密文搜索算法;同时也需要支持密文处理的加密算法,因为存在一些诸如密文数据的共享、密文数据挖掘、密文数据去重等问题需要解决。
5. 云存储数据完整性保障
数据上传到云服务器后,怎样保障数据不被篡改或删除?怎样检测到这些不法行为?因此,需要一些数据完整性保障机制,可以实现数据持有性验证,检测到数据是否被篡改;如果篡改,又怎样进行恢复。
6. 云存储数据备份与恢复
云存储系统也要考虑极端情况下的数据安全,比如地震、洪水、火灾等可能的天灾人祸带来的数据安全风险。在灾难发生时如何避免数据服务中断及数据丢失等问题,通常是通过各种备份技术来保障系统的可靠性和数据的恢复。
7. 云存储入侵检测
云存储系统作为一个公共数据中心,具有多客户连接、高交互性、数据安全保障要求高等特点,对入侵、攻击、病毒和恶意软件十分敏感,有必要对云存储中的数据流进行实时、主动的检测和防御。
8. 云存储应用最佳安全实践
要保障云存储应用安全,通常有一些安全规则,它们需要从日常实践中进行归纳与总结,还包括制定云存储服务安全标准,从而实现云存储服务安全、健康地发展。
针对这些需要解决的问题,本书将逐一进行讨论,结合已有的技术和最新的研究成果,提出以上问题的一般解决方案。不过,除了上述需要解决的问题,在云存储服务中仍然面临一些目前还无较好解决办法的挑战。
1.3.4 面临的挑战
上一小节提出的几个问题可以通过各种技术手段来解决,但对于云存储,仍然存在一些目前还没有较好技术手段可以解决的问题。这些人们面临的挑战列举如下(非仅限于此)。
1. 数据的可信删除
云存储服务的用户可能某天不需要这个服务了,怎样保障她/他的数据被完全彻底地删除?对于传统存储,因为用户拥有IT基础设施的完全控制权,可以利用技术手段,将服务器上的数据彻底删除。但在云存储服务中,当某个用户离开该云服务后,她/他使用过的磁盘会租赁给其他用户。如上所述,通常数据删除只是在文件系统中将相应的文件索引删除,而没有进行物理上的数据删除。即当用户删除硬盘上的数据时,并没有将数据真正从计算机的硬盘上删除,只是删除了相应文件的索引。即使对磁盘进行格式化,也只是为操作系统创建一个新的索引,将磁盘的扇区标记为未使用,其之前的数据记录并没有被删除,因此仍然可以恢复磁盘上之前存放的数据。
在云存储环境下,还没有很好的技术手段可以保证云服务提供商会彻底删除离开该服务的用户的数据。
2. 数据外包模式下的内部威胁
当数据外包存储在云上,云服务器的管理员客观上就具备了偷窥和泄露用户数据的能力,如何保证云存储服务的内部管理人员不偷窥、不泄露、不破坏用户的数据,成为一个极具挑战性的问题,也成为近年来学术界和工业界共同关注的热点。
3. 数据迁移风险
经济时代,行业市场瞬息万变,一些云服务提供商可能因为各类原因停止提供云存储服务,或者用户对当前的云服务提供商的服务或用户条款产生不满,希望换一家云服务提供商,这时用户就需要将其数据迁移,那么原来存储在云服务器上的数据便会成为一个极大的安全隐患。
4. 加密数据的处理
在传统的存储系统中,一般采用加密方式来确保存储数据的安全性和隐私性。在IaaS云服务模式中,如果用户只是用来存放数据,那么加密数据是没有问题的;但在PaaS和SaaS云模式中,用户需要在云端对数据进行处理,如果数据被加密,各种处理操作将变得困难。这也是云存储面临的一个安全悖论:加密数据可以保障数据的安全性和隐私性,但却让数据不能在云端进行各类处理操作。