虚拟化平台的安全问题与看法

1.       虚拟化热潮:
在大数据、云平台的热潮席卷全球的时代,我国IT架构虚拟化速度也快速跟进,大多数企业正在实施或者已经完成虚拟化,将传统硬件服务器系统迁移到虚拟化平台中,逐步向企业私有云方向迈进,这与十几年前各行各业搭建企业信息化平台的潮流似曾相识,刚开始搭建平台时,并没有把安全建设作为必要条件,一方面是先解平台和架构的问题,实现从无到有,然后从有到优,分步实施逐步开展,另一方面也会有一种看法以为虚拟化平台都放在一个服务器大黑盒子里,里面的东西看不见、摸不着,一夫当关、万夫莫开(如下图所示),当然还有观点认为虚拟化安全与传统安全的实施和架构大同小异照搬即可。然而安全领域博大精深,除了挖洞爆破、渗透搞鸡,作为一名从事安全产品领域的攻城狮,想吐槽一下关于对虚拟化安全的看法,由于时间和经验的局限性,主要谈谈在虚拟化安全架构和安全解决方案层面的经验进行讨论,以此来引发大家对虚拟化平台安全问题的重视和思考,如有有疏漏和笔误,权当抛砖引玉,众看官任意拍砖。
虚拟化平台的安全问题与看法 - 第1张  | Sec-UN 安全圈

2.       虚拟化安全现状
任何新业务的部署都会引入新的风险,业务系统无论是基于传统硬件摊大饼架构,还是当前虚拟化大集中平台,其在安全风险面前都旗鼓相当,如下左图所示,我们在传统网络架构中能看到的安全风险,在虚拟化架构中一样都不少,从底层HyperVisor到虚拟操作系统层(OS)以及应用层(APPs),甚至包括离线的虚拟镜像文件,所以虚拟化平台安全问题比传统架构面临的风险更甚。如果不采取任何安全措施,那整个虚拟化架构就犹如传统IT平台一样没有任何防御措施,无异于裸奔于广大如狼似虎的黑阔白帽之前,如右图。

虚拟化平台的安全问题与看法 - 第2张  | Sec-UN 安全圈

3.       传统安全方案解决问题吗?
不出问题时,也许不会意识到虚拟化平台安全的重要性,只有发现问题后,才会想到,当前虚拟化平台存在的安全问题,如果套用传统硬件环境的安全方案,并不能适用于虚拟化平台反而会给业务系统的稳定运行带来灾难性的后果,那虚拟化安全应该如何看待,怎么应对呢?

4.       虚拟化的种类
首先谈谈虚拟化平台的种类,主要两大类,

服务器虚拟化(Server Virtualization): VMWARE ESXi\Citrix Xen Server\MicroSoft
Hyper-V\KVM,桌面虚拟化(VDI):  VMWARE View\Citrix
XenDesktop\

谈不同的虚拟化平台,是因为选择安全解决方案也有不同之处,比如虚拟化环境下防病毒,有些平台能支持,有些平台下有些方案就支持不好,所以在选择方案时应该明白该方案对自己虚拟化服务器或者虚拟桌面环境能否支持。

5.       虚拟化平台的安全风险
虚拟化平台的风险包括HyperVisor架构层安全风险、虚拟操作系统安全风险、物理和环境安全、变更控制、权限分配、性能风险等,下面简单谈谈个人理解和看法。

5.1       架构安全风险:

这就包括了HyperVisor自身软件层漏洞、硬盘镜像安全、存储安全、虚拟平台网络与系统安全,底层虚拟化平台软件的安全直接关乎上层虚拟主机系统和业务应用的安全,所谓根基不牢、地动山摇,类似平台的漏洞互联网上是大把大把的有啊,所以定期升级HyperVisor补丁到最新版本是架构安全的基本。

虚拟化平台的安全问题与看法 - 第3张  | Sec-UN 安全圈

5.2       物理和环境风险,

这方面包含的内容主要有,自然环境威胁,人为威胁等,供应系统威胁,自然环境威胁比如地震、洪灾等,人为威胁主要就是人的主观恶意动机或行为。供应系统威胁比如防火、防盗、防水、电源冗余、通风、温湿度、电压以及设施安全等,去年某行数据中心机房起火的事件就是物理安全存在的隐患导致数据中心起火。

5.3       变更控制风险

由于虚拟化管理平台使用的便利性,因此admin用户很容易对虚拟化资源的分配进行变更,不必要的变更往往会导致系统资源分配不均,影响主要业务,因此准备完整的变更控制流程是非常必要的,变更之前也需要认真的对风险进行评估,完成风险评估后,要获得管理层变更授权,并做好文档记录,变更失败后的回退以及补偿控制措施也事先有所准备。

5.4       权限分配风险

权限分配包括HyperVisor层面的权限,以及虚拟操作系统的权限,HyperVisor层面权限是对整个虚拟化平台的管理,严格控制好admin权限和普通用户权限分配、防止未授权创建、删除、重启、关闭等更改虚拟操作系统配置的权限,防止管理员不当操作或者恶意删除等行为。

5.5       性能瓶颈风险

虚拟化平台节省了硬件资源,提高了利用效率,但资源池也是有限的,虚拟化平台上线前,
通过资源分配计算公式得出合理的性能指标,防止系统上线后系统资源无限扩张,引发主机争取系统资源,导致业务稳定性出现问题。

5.6       虚拟系统层安全风险

虚拟化系统是为了应用交付,因此离不开操作系统、应用服务以及数据库,当然还包括存储等,从这些方面展开存在的安全风险有如下方面:

5.6.1    系统层安全

防病毒、防入侵、脆弱性管理、补丁管理、未知威胁防护(APT)

5.6.2    数据层安全

应用安全、数据防泄密、应用白名单、数据库安全

5.6.3    风险与合规评估

脆弱性扫描以及相关安全合规评估、安全事件集中管理、

6.       虚拟环境的安全对策
上面谈了一些常见的安全风险,有些风险是需要制度和管理手段来解决的比如变更控制、权限分配等这里不重复,对于需要通过技术或产品来处理的风险,下面就虚拟化安全解决方案的部署进行分享,

6.1       HyperVisor架构层安全风险

在管理网段对HyperVisor前端部署安全防护,比如IPS、硬件防火墙,以及做带外管理,做管理IP访问控制限制等,对业务网段的安全防护需要深入到虚拟化系统进行,下面列举防火墙、防病毒、IPS等主流虚拟化安全技术手段,

6.2       虚拟系统层安全对策

虚拟系统层是虚拟化平台的主要场景,可能会出现Windows、Linux、各种平台虚拟机、上面运行各种应用,部署虚拟化平台安全方案,不仅要保障业务系统安全性,更要保证业务系统稳定性,主要是不影响业务系统性能和功能。下面从网络边界虚拟防火墙、虚拟化防病毒、虚拟化IPS以及其他虚拟化平台下的安全解决方案进行讨论。

6.2.1    内部边界逻辑域划分

在传统网络架构中,安全边界是可以感知的,有着清晰的界定。在虚拟化网络中,边界是逻辑存边界看不见也摸不着,没有逻辑拓扑,还真不好识别,如下图所示,传统架构中边界是由防火墙隔离,有着清晰的边界,然而虚拟化环境中,防火墙做逻辑隔离,在物理位置上并不能清楚的体现,而是在内部通过虚拟交换机和Vlan标记等方式来支配防火墙保护特定的区域。

虚拟化平台的安全问题与看法 - 第4张  | Sec-UN 安全圈

6.2.2.    虚拟化防病毒对策

在传统安装防病毒的主机系统中,即使单个主机出现病毒扫描或者升级的性能瓶颈导致系统变慢,也不会影响到其他主机,但是当业务系统被迁移到虚拟环境后,不再跟传统硬件平台一样拥有独立的资源配置,众多虚拟机同时更新病毒特征库或者进行按需全盘扫描可能导致内存、存储和 CPU 使用会出现峰值,导致这些虚拟机在这段时间内都无法正常提供服务。这种情况通常称为“防病毒风暴”(AV‐Storming)。曾经就碰到过有客户采用传统平台的防病毒软件,在每台虚拟系统上安装扫描引擎,在扫描引擎同时工作时,引发资源耗尽HyperVisor系统崩溃的问题。新式虚拟化防病毒平台一定是无客户端或者是轻量客户端的,可以与虚拟化厂商的安全模块集成实现无客户端,也可以通过轻量客户端调度扫描流量,这些措施主要的目的就是解决虚拟化平台防病毒导致的“防病毒风暴”问题。

虚拟化平台的安全问题与看法 - 第5张  | Sec-UN 安全圈

在真实部署场景中,通过导入支持虚拟化平台的扫描引擎OVF文件,配置相应的IP和管理服务器,当然与虚拟化集成可以依靠虚拟化厂商组件比如Vshiled, 或者使用防病毒厂商自由通信协议进行扫描流量调度。如今,最常见的做法是使按需扫描调度随机化,不过,这种做法也不理想,更好的办法是建立一套更加有效的虚拟环境实时防病毒和感知Hypervisor按需全盘扫描的自动调度系统,通过感知HyperVisor当前的资源利用率状态,安排病毒扫描引擎灵活安排扫描。因此虚拟化环境下的防病毒还需选对方案才行。

虚拟化防病毒还存在容易忽视的2方面,

1.       虚拟化平台一般会后接存储,存储中的文件也面临病毒的威胁,选择适用的存储防病毒解决方案也有助于安全级别的提升。存储的防病毒一般分为与存储厂商集成的病毒方案,或者适用外置扫描器对存储文件系统进行扫描和实时进入存储的文件进行病毒检测。

2.       没有使用的虚拟化镜像文件,也就是offline的OVF文件,有专门针对ovf格式文件的病毒以及该镜像之前已经被病毒感染,因此虚拟化防病毒系统对离线文件的病毒检测也是需要有所考虑的。

虚拟化平台的安全问题与看法 - 第6张  | Sec-UN 安全圈

最后,不得不说的是由于目前虚拟化厂商各分天下,打的火热,安全厂商的虚拟化防病毒方案也各有特长,比如有的厂商擅长服务器虚拟化防病毒,但不支持桌面虚拟化防病毒,有的厂商兼容性好能做到服务器、桌面甚至各平台虚拟化都支持,当我们虚拟化场景复杂,包括服务器虚拟化、桌面虚拟化甚至应用交付、抑或用到多厂商的虚拟化平台,那如何选择虚拟化防病毒,并不需仅靠一家,可以根据厂商具体优势博采众长,找到一个所谓业界黄金方案为虚拟化安全保驾护航,为业务增值加分。

6.2.3    虚拟化平台防入侵对策

目前部署虚拟化防入侵主要还是依靠硬件设备,因为无法在虚拟化平台内部进行数据引流,具体是将虚拟机中流量引出进行清洗后回送到虚拟环境中。
如下图所示,如果客户按照 VLAN 对相似的系统进行分组,而且传感器位于网络上的汇集位置,则最常使用 VLAN 子接口。显然,如果相关的流量标记为中继 VLAN,则可以仅使用 VLAN 子接口。您可以创建多个子接口,并为这些接口分配策略。如下图所示,有Vlan桥接方式就是通过在IPS接口上配置VLAN 标记来进行流量识别和防护。

虚拟化平台的安全问题与看法 - 第7张  | Sec-UN 安全圈

6.2.4    虚拟化平台增值安全

前面介绍完安全方案的三大件之后,从安全增值和加分的角度来看,我们还有其他方式能够提升虚拟化平台安全等级,比如数据防泄密、数据库安全、脆弱性评估、安全事件管理,等等这些技术方案,实现虚拟化安全平台的尽量全面的防护,如下图所示;

虚拟化平台的安全问题与看法 - 第8张  | Sec-UN 安全圈

6.2.4.1  虚拟化平台数据防泄密

在虚拟化平台数据防泄密手段个人认为应该是意识培训为主,技术手段为辅,推荐使用网络数据防泄密,一方面是基于性能考虑,避免在虚拟操作系统上部署任何防泄密客户端,另外虚拟环境中主要防泄密的需求应该是服务器,比如邮件服务器、文件服务器等,网络数据防泄密技术基本支持上述协议的防泄密,而且部署方便,导入OVF文件后进行相关配置即可启用。

6.2.4.2   应用与数据库安全防护

基于虚拟化平台的应用系统大多数基于B/S架构,交付到客户桌面基本上通过WEB

协议进行访问,所以应用层安全威胁是虚拟化环境面临的主要安全问题,当然应用层安全可以通过Web应用防火墙解决针对HTTP/HTTPS的安全问题,使用未知威胁防御产品能解决类APT攻击的威胁,而且这两种针对应用层防御的方案都能很好的集成到虚拟化环境中。

数据库在虚拟化平台使用也非常广泛了,数据库安全因此也称为虚拟化环境中非常重要的部分,数据库安全技术实现有2种形式,用硬件产品,或者软件模式,虚拟化平台中采用软件方式更灵活,通过数据库审计,主要实现数据库活动监视,数据库入侵防御、数据库漏洞发现,保护数据库本身和数据的安全性。

6.2.4.3   脆弱性评估

由于虚拟化环境所使用的系统、应用于传统环境相似,因此将脆弱性评估软件部署在虚拟化系统中也适用于该平台而且能覆盖到传统IT环境,这个方案能覆盖网络协议、操作系统、数据库、网络设备、无线等基础设施的安全漏洞,另外也可以用来作为合规符合性的评估做差距分析,通过合规检测模板识别当前安全状态与合规要求的差距,并及时整改。

6.2.4.4   安全事件分析管理平台

内部运行的系统多了,安全解决方案也多了,因此信息安全事件的日志量也就大了,这些海量的日志可是宝贵的资源,用当前流行的大数据还对比,我们可以做信息安全事件的大数据分析平台,通过syslog或者SNMP把系统、网络、HyperVisor、防火墙、防病毒、IPS等系统的日志收集起来,汇总到安全事件分析平台,根据关联规则和归并后提取和识别关键威胁的前因后果,把整个安全事件的证据链展现出来,实现从日志大数据中提取出安全事件的规律、特征,帮助管理员识别虚拟化平台或传统架构的关键安全威胁。

7.       总结
上文从架构层、系统层、应用层,分析了虚拟化场景的安全方案,事实上,这些还并不足以覆盖虚拟化安全的所有领域,比如渗透测试、安全加固、代码审计、安全合规评估(ISO27001\PCI-DSS\等级保护)等,这些都可以应用到虚拟化安全平台,这些对虚拟化平台安全性也会带来更大帮助,另外,由于作者经验和精力有限,方案还有缺陷,也希望大家能拍砖提供更多意见,后续能完善到虚拟化安全建设方案中。

(上文图中引用了”Intel Security”的部分图片和并加上自己配图文字,在此表示感谢,但并不代表作者就赞同该公司的观点,仅就技术观点发表看法,没有任何商业目的。)


作者:ChrisChen世雄

浪迹安全的江湖10多年,一直静静地做一个专注安全的攻城狮,别看资料,看聊效。CISSP/CISA/PMP/CCSM/ISO27k1-LA 现在要开始吐槽……

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Bitnami