APP下载

浅析云计算带来的安全挑战

2015-04-23何晓晗

科技视界 2015年11期
关键词:防病毒中间件木桶

何晓晗

(中国移动通信集团福建有限公司莆田分公司,福建莆田351100)

2006年,谷歌提出“云计算”(Cloud Computing)的概念,它让用户使用计算资源变得非常便利。打个比方,就好比每个用户自己从采购发电机自己发电、供电转向了电厂,用户按需付费的模式。云计算意味着计算能力也可作为一种商品进行流通,像水电一样,取用方便,费用低廉。

按照云计算提供的服务层次来区分,一般可分为IaaS、PaaS、SaaS三种模式,笔者在此大胆的预测,随着人工智能的发展,人工智能和云计算在不远的未来会不会结合起来,产生新的模式RaaS(需求即服务,Requirement as a Service)。当然,这里不做过多的讨论。

我们在享受云计算带来便利的同时,也不能忽视由云计算带来的安全挑战。我们来看一下云计算带来了哪些改变,这些改变又出现了哪些安全挑战及如何去解决这些挑战。

1 操作系统独立控制硬件资源的模式被颠覆

在传统的计算架构中,每台物理计算机上只能同时运行一个操作系统。无论这个操作系统是Windows还是Linux或者Unix,计算机的所有硬件资源如CPU、I/O、存储、网络等统一由这个操作系统调度分配,不存在多个操作系统争抢同一台计算机的硬件资源。但是,在云计算模式下,它提供底层支持的虚拟化技术改变了这一切。这种技术使得同一台物理计算机上运行了多个虚拟操作系统,这些虚拟操作系统共享了同一台物理计算机的CPU、I/O、存储、网络等资源。这些虚拟操作系统不再直接调用底层物理计算资源,操作系统和物理计算机之间多了一层中间层,即虚拟化系统的核心HyperVisor层,HyperVisor层实现了对物理计算机的硬件资源的调度、分配。

实际上,HyperVisor层从某些方面来看就是个中间件系统。不过我们常说的中间件协调的是底层软件资源,如数据库资源等,提供上层应用系统统一调用的接口。而HyperVisor协调的是底层硬件资源,提供给操作系统统一调用的接口。

分析到这里,问题就来了,我们知道在编写应用软件的时候,如果需要用到某种中间件软件,我们需要遵循它的标准来编码并编译。那么,我们在HyperVisor上运行的操作系统及应用软件本质上是否也应该如此去做?实际上,目前的做法是,虚拟化的厂商做了这种适应,他们推出的虚拟化底层软件适应了常见的一些操作系统软件。这样,在这些虚拟操作系统上运行的应用软件基本不会受到虚拟化架构改变带来的影响。但是,对于安全软件,事情就没有这么简单了。因为安全软件(尤其是防病毒软件)的权限非常高,在某些方面基本和操作系统一致的。就是说,在这些虚拟操作系统上运行的安全软件在某种程度上可以直接请求I/O、存储、网络等资源。显而易见,安全软件挑战了HyperVisor这个“硬件中间件”的权威,它的存在足以引发虚拟化架构最常见的一个问题——“I/O资源冲突”。

我们可以做一个实验,在一台物理计算机上虚拟出10~15个操作系统,在这些虚拟操作系统上安装防病毒软件,在某个时刻同时执行防病毒软件的“本地扫描”功能。我们可以看到,整个虚拟化系统的性能变得非常慢,甚至接近停滞。这个现象我们通常称之为“防病毒风暴”。

为了解决这个问题,目前有两种做法,一种是绕开这个问题。简单的说,就是在防病毒软件内部强制设定,不能同时扫描、不能同时更新等。但这个做法除了可能带来的安全隐患外(如多个虚拟操作系统同时中病毒时无法应对),更大的问题是带来了管理的难题,如安装、管理、策略跟随虚拟机漂移、引擎更新等。另外一种就是重新设计一种防病毒软件,在软件设计之初就遵循HyperVisor这一“硬件中间件”的标准,防病毒软件只需要安装一套在HyperVisor上,不需要在每台虚拟操作系统上都安装,从根本上解决这一问题,也完全解决了上述的管理难题。

2 安全边界的改变

我们在讨论网络安全的时候,有一个必然的命题--安全边界,安全边界是我们设计及实施网络安全的很重要的一个因素。在传统的网络体系架构中,安全边界非常清晰,我们只需要根据应用防护等级、使用者权限等级等策略来设计我们的网络安全。但云计算及虚拟化改变了这一切。在虚拟化的体系中,我们常常谈到的是“主机虚拟化”、“存储虚拟化”、“网络虚拟化”。我们来看看主机虚拟化改变了什么,前文我们提到HyperVisor,实际上,有了HyperVisor,在同一台物理计算机上虚拟出来的多台虚拟机之间的互相通信是完全被封装在HyperVisor层中的,也就是说,我们在传统的网络边界部署的防火墙、IDS/IPS、审计设备等等完全成了摆设!虚拟化技术新生成了一层虚拟交换层,我们的传统安全软件或设备对发生在这个虚拟交换层的事情无能为力。

谈到网络安全,几乎所有接触过网络安全的人都知道一个非常有名的原理——木桶原理,决定这个网络的安全级别的是组成这个网络的最不安全的一个单元。在传统物理机时代,通过安全域的划分,通过一些隔离手段,我们可以把我们的网络看成一个个“小木桶”,一个网元的安全问题可能影响的是它所在的一个“小木桶”。云计算及虚拟化的时代,我们的网络已经融合成了一个“大木桶”(虚拟化的标准化、资源池化、资源融合),任何一个网元的安全问题可能影响的就是整个“大木桶”。

要解决这些问题,我们需要具备对虚拟化HyperVisor的虚拟交换层做安全管理的能力,即我们的防火墙、IDS/IPS、审计系统等要具备管理这个虚拟交换层的能力。只有将防火墙、IDS/IPS、审计系统等部署于HyperVisor,我们才能真正管理这个安全边界,才能像管理传统网络一样具备将网络划分成一个个安全级别、防护级别等不同的“小木桶”,才能从网络安全层面真正管理好虚拟化及云计算系统的所有网元。

3 网络安全可视化的挑战

我们讨论网络安全,网络安全的“可视性”是必不可少的话题。就像我们的“平安城市”建设第一步是部署摄像头一样,网络安全的基本要求也是“可视性”。

APT(高级持续性威胁)是目前最新的攻击方式,APT具备几个主要特征,如攻击代码新颖(用传统的防病毒软件、IPS等无法识别)、攻击一般由潜入目标内部网络开始(如邮件夹带第一段代码潜入用户网络以绕过用户的防火墙、IPS等,区别于以往的破解边界防护来攻击)、攻击行为潜伏性极强等。前文我们提到云计算及虚拟化带来了新的边界,其实,云计算的发展还模糊了边界,云计算使得使用者可以分布于任何地方。这种改变也增加了APT攻击潜入网络的入口。

APT攻击作为一种威胁性极强的安全威胁,国家从战略高度已经重视并研究这一议题。2013年国家发改委发布的一份文件中明确提出了防范APT攻击的要求,并明确提示防范APT攻击需要用到虚拟沙盒系统。

要防范APT及其他网络安全威胁,我们需要做的第一步就是实现可视性,传统的IDS可以识别网络层的攻击,但对于应用层的识别及分析非常不足。有鉴于此,国际上的一些网络安全研究组织在前些年提出了一个“进阶IDS”的概念。进阶IDS就是可以完全识别并分析网络2~7层协议的系统。进阶IDS可以使得网络中的通信及内容对于网络安全管理者完全可视,并可以自动分析其中的攻击、病毒、威胁等行为。这种进阶型IDS如果附带“虚拟沙盒”(Sandbox)系统,就可以在整个云计算网络中实时分析包括APT在内的安全威胁。

云计算带来了IT的又一次革命,我们都在享受云计算带来的便利、环保等优点。但是,我们不能忽视云计算带来的安全挑战,在云计算带来的颠覆性革命中,我们也需要在深入了解云计算的体系架构的基础上,用新的角度、新的技术来管理网络安全问题。让我们一起拥抱安全的云计算的时代。

猜你喜欢

防病毒中间件木桶
科学戴口罩方能防病毒
木桶兄弟
RFID中间件技术及其应用研究
基于VanConnect中间件的设计与开发
高速公路信息安全系统防病毒和终端管理技术应用
浅谈计算机防病毒软件的作用机制
中间件在高速公路领域的应用
一种支持智能环境构建的中间件