分析:企业不应该继续忽视五项云中风险

不管人们是否喜欢美国前国防部长唐纳德·拉姆斯菲尔德,在听到他那段著名的"未知的未知"发言时还是肯定会忍俊不禁:

有些事情属于已知的已知;这些事情我们知道我们知道了。我们还知道已知的未知是存在的;也就是说,我们知道有些事情我们不知道。但未知的未知也是存在的——那些就属于我们不知道我们不知道的事情。”

尽管拉姆斯菲尔德因为这段发言而受到公众的嘲笑,但它确实属于一个政治家在不小心下说出实话的典例;实际上,我觉得任何了解计算机安全的人都会很快就明白他到底是在说什么。毕竟,我们就经常面临着三种类型的风险:已知的已知、已知的未知、未知的未知。

对于公共云计算应用部署工作来说,最大的障碍之一就是所有未知、已知等方面额外风险的计算。在过去几年的时间里,作为一名公共云供应商以及客户,我己经对这些问题进行过大量深入思考。文章下面所列出的五项风险,就是所有企业客户在选择采用公共云服务时都会面临到的问题。

头号云风险:共享访问模式

在公共云计算中,重要原则之一就是多重租赁。这就意味着,尽管不同客户之间通常都属于毫无关联的情况,但依然会共享相同的计算资源:CPU、存储、内存、命名空间以及物理建筑。

对于我们中的绝大多数人来说,多重租赁就属于一种巨大的已知的未知。它并不仅仅意味着我们的机密数据面临着意外泄露给其它租户的威胁,而且还造成了资源共享方面的额外风险。由于只要一处漏洞出现就能够导致其它租客或者攻击者看到所有其它数据或者掌握其它客户的真实身份,因而多重租赁所面临的严峻风险确实会令人非常不安。

实际上,安全漏洞方面新出现的几种类别就源自于云的共享性质。现在,已经有研究人员可以做到从本来应该是新存储空间的地方恢复出其它租户的数据来。其它研究人员则实现了查看其它租户的内存与IP地址空间。还有几位甚至能够通过对IP或者MAC地址的分配情况进行简单预测来达到控制其它租户整体计算资源的目标。

对于我们中的绝大多数人来说,多重租赁所带来的安全问题正变得越来越严峻,其中存在的薄弱环节需要立即加以探讨。从实际上,如果从历史上的情况来看,最好的例子就是一个与其它数百甚至几千个毫无关联的网站放在相同网络服务器上的站点。如果历史能够作为指导经验的话——通常情况下,确实是这样——从长远来看,多重租赁将会变成为一个很大的问题。

二号云风险:虚拟技术导致的漏洞

如果从虚拟化技术角度来看的话,所有大型云供应商本身就属于一名超级用户。当然,这就意味着除了物理设备上已经存在的所有风险外,它还有自身面临的独有威胁需要加上。这其中就包括了针对虚拟服务器主机以及客户的攻击。换句话说,我们经常面对的风险中,有四种主要是虚拟漏洞带来的:这就是,仅仅针对服务器主机、客户对客户、主机对客户以及客户对主机等情况。在绝大多数人的风险模型中,这些风险在很大程度上都属于未知类型,因而也没有进行过精确计算。

当我向公司相关高层提及虚拟技术导致的风险问题时,他们总是会显得毫无兴趣。很多人都对我说,所谓的风险是被夸大了,甚或认为这样的攻击属于闻所未闻的情况。而我通常就会告诉他们去看一下自己虚拟化软件供应商的修补程序列表。那里的实际情况可是一点也不轻松。

为了营造出足够的气氛来,我再透露一点严峻的现实:通常情况下,云客户对于所选虚拟化产品的实际型号或供应商正在运行的管理工具是什么一无所知。大家如果不相信其中的风险会这么大,也可以选择向自己的供应商提出下面的几个问题:公司目前使用的虚拟化软件是什么类型?当前的版本是什么?何人负责虚拟主机的补丁安装工作,更新频率如何?哪些人可以拥有登录进每台虚拟主机或者以用户身份进行浏览的权限?

三号云风险:身份认证、授权以及访问控制

显而易见,云供应商对于使用的身份认证、授权以及访问控制机制的选择是非常重要的,但它的实际效果在很大程度上往往要依赖于具体实施过程。他们搜索并删除过时账户的具体间隔是多长时间?有多少特权账户可以访问他们的系统——以及用户的数据?特权账户采用了什么类型的身份验证措施?我们是否与供应商或者间接地与其它租户共享了一个公共命名空间?毕竟,如果单从生产力的角度来看,共享命名空间以及身份验证措施的单一登录(SSO)模式效率会非常高;但与此同时,这也会导致数据面临的风险程度大幅上升。

数据保护则是另一项非常受关注的功能。如果供应商部署并使用了数据加密措施的话,租户之间是否需要共享私人密钥?在云供应商的团队中,有多少人能够看到我们的数据,他们都是谁?我们的数据存储在哪里的物理设备之上?一旦实际需求消失,它们会被如何处理?当然,我并不知道有多少云供应商愿意给出这些问题的详细答案;但是,如果我们希望找出已知与未知的情况都有哪些的话,就必须向他们提出问题。

四号云风险:可用性

如果我们选择成为云供应商的客户,冗余以及容错方面的问题就再也不受到自己控制了。糟糕的是,通常情况下,这些要求具体如何实现以及达到多高等级等情况都属于语焉不明的问题。实际上,这就属于完全不透明的项目。尽管所有云供应商都声称自己拥有梦幻般的容错性以及可用性,但经年累月之后,我们会发现即便是最大最好的服务也出现过中断数小时甚至数天的故障。

此外,我们需要更加关注的问题就是:极少数情况下或许会出现的客户数据丢失。实际上,导致如此后果出现的原因可能属于云供应商自身出现错误,也许是恶意攻击者造成破坏。通常情况下,云供应商采取的数据备份方式是极为出色的三重保护模式。但即便在供应商声称备份数据安全坚如磐石的情况,依然会出现数据丢失的现象——而且是完全彻底无法找回的情况。因此,如果有可能的话,公司应该坚持对通过云共享的数据进行备份,或者至少坚持保留在数据出现彻底丢失事故时提出起诉以获得必要赔偿的权利。

五号云风险:所有权

对于很多云客户来说,这条风险可能有些出乎意料;但是,现实中确实经常会出现客户往往不是数据唯一拥有者的情况。包括最大最有名在内的很多公共云服务供应商都会在合同中用专门条款明确指出,存储的数据属于供应商——而不是客户的。

云供应商之所以喜欢拥有这些数据,是因为这样在出现问题的时候就能够获得法律的更多保护。此外,他们还可以对客户数据进行搜索与挖掘等处理,为自身创造出带来额外收入的机会。我甚至还看到过这样的情况,一家云供应商倒闭了,客户的机密数据被作为其资产的一部分卖给了接手的买家。这样的现实情况的确令人非常震惊。因此,我们在作出选择之前,就应该确保明确了已知的未知问题:谁拥有我们的数据,以及云服务供应商到底都可以用它来做些什么?

云可见性

即便云计算中所面临的风险都属于众所周知的类型,它们依然非常难于进行真正的精确计算。目前,我们根本无法提供足够的历史经验与现实根据来确定出安全性或可用性故障的概率;尤其是在面对一家具体供应商的时间,以及这样的风险是否会导致客户出现大量流失的结果。实际上,我们目前能做到的最好程度就是学习拉姆斯菲尔德,至少做到对已知的未知部分进行亲自管理。

当然,这里的第一步工作就是努力减少未知的未知的数量。我们必须确保供应商的透明度能够变得尽可能高;如果没有什么意外的话,就应该获得至少一次相关成功审计报告的副本。在供应商介绍相关策略的时间,我们就应当询问上一位数据出现问题的租户都遭遇了哪些损失,以及最终是如何获得解决的。尽一切可能将云供应商需要承担的具体责任控制下来。毕竟,只通过询问难以回答的问题,我们才能开始认识到公共云计算会面临到的总体风险情况。

尽管从表面上来看,我好象是在对公共云计算进行极力贬低;但实际上,我就属于这项服务的一名铁杆支持者。我相信,相比起自己的客户,绝大部分公共云供应商在数据安全方面的工作都更为出色。但是,相比自身可以独立实现的效果,我们依然需要掌握云供应商的具体标准以及为降低风险而采取的实际措施。