APP下载

应对系统虚拟化数据安全问题

2014-01-29李善玺杨民强陈文波

中国教育网络 2014年4期
关键词:客户机迈克虚拟化

文/李善玺 杨民强 陈文波

虚拟化为信息中心带来了低廉的运维成本、便捷和灵活的部署与操作及高可用性,由于其技术方案的原因,同时也带来了诸多的安全问题。

服务器虚拟化屏蔽硬件的差异,为数据中心带来更高的可用性、可靠性及可维护性,但同时也带来了诸多安全问题,一类是恶意攻击导致系统不能正常服务的攻击,另一类是以窃取私密信息为目的的攻击。

系统虚拟化为客户机提供分区和隔离,高效整合服务器资源,提高硬件资源利用率,而且极大地降低了管理和运维成本。但是由于共享资源的本质,服务器虚拟化天生存在着诸多安全问题。这些安全问题主要有两类,一类是恶意攻击导致系统不能正常服务的攻击,另一类是以窃取私密信息为目的的攻击。传统物理主机场景下攻击不易取得客户数据,但是虚拟化场景下如果主机遭到入侵,那么运行其上的所有的客户机都处于威胁中。研究并解决这些安全问题对更好地利用虚拟化技术,提供安全可靠服务,具有重要意义。

系统虚拟化概述

虚拟化技术从1965年的IBM System/360 Model 40 VM起,经过了近三十年的沉寂,在近二十年得到快速发展。系统虚拟化是指将一台物理计算机系统虚拟化为一台或多台虚拟计算机系统。每个虚拟计算机系统(简称客户机)都拥有自己的虚拟硬件,提供一个独立的客户机执行环境。提供客户机运行环境的虚拟化层称之为客户机监控器(Virtual Machine Monitor,VMM)。随着X86架构对其虚拟化漏洞的修复,推出VT/AMD-v技术,X86平台的虚拟化技术发展迅猛,出现了诸多的基于硬件辅助虚拟化的VMM,如VMware ESX、XEN、KVM、VirtualBox、Hyper-V等等,也相应诞生了一大批虚拟化商业产品与方案,如VMware ESX、Huawei、 FusionSphere、Citrix XEN、Redhat RHEV、Oracle VirtualBox、Microsoft等。

系统虚拟化技术推进了新一轮的数据中心改造,源于虚拟化技术带来的好处:

1.封装:以客户机为粒度进行封装,可以方便地实现快照(snapshot)、克隆(clone)、迁移(migration)、挂起(suspend)和恢复(resume)。从而大大提供系统可维护性,降低IT管理维护成本。

2.提高资源使用率:多台客户机运行在VMM上进行统一调度,这些客户机可以共享硬件资源,并交替忙闲运行,可以极大提高硬件资源的使用效率。

3.隔离:由于客户机是运行在VMM之上的一个独立的实例,因此一个客户机的故障不会影响到另外一个客户机的运行。但是隔离也不是完全的,也存在一些安全隐患,也就是本文要讨论的问题。

图1 系统虚拟化组件结构图

4.抽象:由于VMM的存在,客户机并不感知硬件的差别,可以自由的在不同的硬件上方面的迁移,屏蔽了硬件的多样性和复杂性,便利服务的提供和部署。

X86平台的虚拟化技术可以分为三类(不包括不同体系结构的虚拟化):

1.软件完全虚拟化

优先级压缩(Ring Compression)和二进制代码翻译(Binary Translation)相结合。基本原理是:将Guest OS运行在较低特权级别上,执行遇到特权指令时被VMM截获进行虚拟化。X86架构下存在虚拟化漏洞,即作特权操作却没有触发异常的这些指令需要特殊处理,即动态扫描执行代码,如果发现这些指令便将其替换为支持虚拟化的指令块。

2.硬件辅助完全虚拟化

为了解决虚拟化漏洞的问题,处理器生产商推出相应的虚拟化解决方案,即Intel VT/AMD-v技术。与软件完全虚拟化不同,硬件辅助虚拟化将客户机运行在一个新的模式下(non-root mode),该模式具有一套完全的运行环境,当运行到特权指令时被处理器截获并报告给VMM。VMM进行处理并反馈给客户机运行环境。

3.半虚拟化

半虚拟化是指通过修改操作系统的内核代码从而避免虚拟化漏洞。在现在的虚拟化系统中,也利用半虚拟的思想优化I/O路径。

系统虚拟化架构相关安全问题

硬件辅助虚拟化是现在虚拟化主要采用的虚拟化方案,如VMware、XEN、KVM等VMM都属于该类型(XEN也有半虚拟化架构)。

由图1可以看出,VMM将Guest OS作为自己的应用实例运行在其之上,提供Guest OS运行所需的资源,如运行时资源(内存、相关寄存器)、存储、I/O(如网络)等,另外为了提升效率或可管理性,也提供了一个PV Tools安装在Guest OS中,并在VMM中有对应的后端。这些资源对于Guest OS来说是透明的,不过对于VMM来说是完全感知的。

存储

Guest OS的磁盘在VMM看来是一个文件,即镜像文件,这个文件具有多种格式,常见的有VMDK、VHD、VDI、QED、QCOW2、RAW等。这些镜像文件都可以通过VMM平台的工具进行挂载读取。若Guest OS在安装时未作磁盘加密,那么这些镜像文件在挂载后,Guest的磁盘文件就可以被读取。而为了管理方面虚拟化方案提供商往往提供未加密的磁盘镜像文件。比较传统主机,虚拟化场景下的虚拟主机的磁盘文件更容易被窃取和攻击。

内存

无论是使用影子页表还是EPT/NPT等内存虚拟化技术,HOST都掌握着Guest OS的内存信息。以KVM为例,Guest OS的内存都是通过qemu用户进程分配。HOST OS1若遭到入侵,无论是HOST所用的内存区域还是Guest所用的内存区域遭破坏都会影响系统的服务,且数据可能被泄露,这对一些运行关键应用的Guest来说是具有风险的。

网络

现在主流方案中使用HOST的软交换实现Guest之间,Guest与HOST之间的IP交换,例如Bridge、Openvswitch等开源组件或vNetwork Standard Switch (vSS)等商业组件。不像传统主机模式下,每个物理服务器都有一套安全防护产品,外部设有防火墙,且通信直接和二、三层的网络硬件通信,不易被侵入。而虚拟化环境下的网络交换完全通过软件实现,主机一旦被侵入,所有的客户机通信数据也很容易被捕获。PV Tools

这里的PV Tools是虚拟化方案中对Guest OS增强或管理需要,而安装的一些组件的统称。不同的厂商对该工具有不同的名称,如VMware Tools、 Oracle Virtualbox Guest Additional。这些工具包含两类组件,一类是为了加强性能的虚拟化工具,另一类是为了管理监控等用途的工具。无论是哪类工具,都是从HOST到Guest建立了通信通道,并自定义了通信协议。这些通道和工具的漏洞也可能成为恶意客户机“租户”进行攻击的通道。

客户机迁移、HA等特性

客户机在物理服务器间进行迁移,是通过同步存储和内存数据到一致状态,然后进行暂停、恢复客户机的操作完成的。迁移是通过物理网络传输的。这个迁移过程也存在安全风险。而HA(High Availability)是在不同的物理机上运行同一客户机的相同实例,当一个虚拟机出现故障时,业务系统迅速切换到另一台实例上,从而保证高可用性。HA往往时在不同的物理机上提供,运行过程中需要时刻同步运行信息,这些运行时刻的信息都通过网络传输,信息传输过程迁移特性一样也带来安全风险。

应对策略

现有的云计算方案都是通过核心虚拟化系统之外的安全组件完成。本文主要针对虚拟化技术方案,通过底层的安全加强和设计增强安全,针对上一小节提出的安全问题,提出以下应对策略。

严格控制权限等级和接口,采用加密存储(可考虑GPU加密)

现在架构下超级管理员对HOST/VMM有完全的控制权限,而且HOST上也装有读取客户机磁盘镜像文件的工具,获得管理员口令或绕开登录认证后即可获取客户机所有的磁盘文件信息。因此严格控制管理员权限,控制管理员可访问的接口,设计应用程序间的认证和鉴权策略,避免人为干预。另外,操作系统在安装时选择加密选项,从策略层面规避安全隐患。为了进一步避免存储丢失的风险,也可以考虑加密存储。

加强内存虚拟化完整性设计

虚拟化VMM的内存管理延续了传统操作系统的内存管理机制,内核对应用程序的内存具有读写权限。虚拟化场景下,客户机的内存都暴露给VMM或HOST,客户机的用户私密性得不到保证。为了保护客户机内存数据的私密和安全性,需要进一步加强HOST内存完整性和安全设计。

调整传统安全组件结构,新型网络和安全框架融合

引入软件交换和软件定义网络(SDL)之后,传统网络的物理边界已经消失,传统的单一防火墙结构已经不适用虚拟化架构的安全需求,需要有整体的安全框架统一规范虚拟化环境下的网络。规范PV、监控协议

目前虚拟化解决方案厂商的半虚拟化驱动、监控组件都没有统一的规范和标准,客户机运行在高危状态下(如果含有不合法或恶意的程序段),用户服务和数据没有丝毫安全可言。因此需要统一规范半虚拟化驱动和监控程序的统一规范,制定统一标准,使得这些工具能够被客户机安全软件所监控,而不像现在的方案中,这些工具完全不受客户机安全软件的限制。

加密传输迁移、HA数据

虚拟机迁移、HA给虚拟化带来了更高的可操作性和可用性,这些功能都依赖网络传输操作系统的运行时数据。采用加密数据传输可很大程度上避免信息泄露风险。

虚拟化为信息中心带来了低廉的运维成本、便捷和灵活的部署与操作及高可用性,由于其技术方案的原因,同时也带来了诸多的安全问题。不解决这些安全问题,虚拟化仍然不能被安全相关的关键应用所接受。本文针对系统虚拟化的存储、内存、网络、PV Tools以及迁移和HA等特性的现有方案讨论了这些方面信息泄露相关的安全问题,并给出初步的应对策略。虚拟化安全不光是个别安全技术的堆砌,而是整体的考虑和设计。作者下一步着手虚拟化的存储加密模型的设计和实现,并陆续展开对其他安全问题的研究。

迈克菲发布报告揭露“高规格”数据泄露

近日,迈克菲实验室(McAfee Labs)发布《2013 年第四季度威胁报告》。报告显示,“黑暗网络”(dark web) 恶意软件行业在 2013 年秋季嚣张的“销售点 (POS) 攻击和数据泄露事件中起了重要作用;在线购买 POS恶意软件、在线出售窃取的信用卡号和其他个人数据变得越来越简便。迈克菲实验室还发现,带数字签名的恶意软件样本数量在 2013 年增长了两倍,这主要是由于滥用自动内容分发网络 (CDN) 所致,这些网络可将恶意二进制代码隐藏在带数字签名、看似合法的安装程序中。迈克菲实验室认为,这一加速趋势会对验证“安全”软件所惯用的证书授权(CA)模式构成重大威胁。

移动恶意软件

迈克菲实验室 2013 年采集了 247万个新移动样本,仅第四季度就发现了744,000 个。与 2012 年末相比,移动恶意软件 “动物园”里的样本数量惊人地增长了 197%。

勒索软件

2013 年,新勒索软件样本量增长100 万个,第四季度同比增长了一倍。

可疑 URL

2013 年,迈克菲实验室记录的可疑URL 数量增长 70%。

恶意软件激增

2013 年,迈克菲实验室每分钟发现200 个新恶意软件样本,也就是说,每秒发现 3 个以上新威胁。

与主引导记录相关

迈克菲实验室在 2013 年发现了 220万个新“主引导记录”(MBR) 攻击。

猜你喜欢

客户机迈克虚拟化
嗨,迈克
基于OpenStack虚拟化网络管理平台的设计与实现
对基于Docker的虚拟化技术的几点探讨
隔山亦能打牛,本本巧变远控利器
迈克和宝宝
迈克和宝宝
浅析虚拟化技术的安全保障
H3C CAS 云计算管理平台上虚拟化安全防护的实现
特别佣金
升腾瘦客户机借神码翱翔“云端”