黄龙
摘要:随着虚拟化技术的广泛运用,虚拟化环境的安全问题也越来越受到关注。虚拟化环境不仅面临着传统的安全威胁,还面临着其他的关键应用的新的安全问题。本文分析了虚拟化环境面临的应用安全需求,介绍了一种应用安全监测方法,并提出了从静态评估、动态评估、制度评估三个方面综合评价的指标体系。
关键词:虚拟化环境;应用安全;监测
虚拟化技术具有节省信息化投入成本、提高资源的利用效率、降低能耗和管理成本等优势。在虚拟化环境中,数据中心采用通用技术平台,资源库共享,架构简单,易于系统管理和配置新的工作量,随需应变且灵活。
然而虚拟化可以带来多项优势的同时,它并不完美,安全上面临很多问题。在运行虚拟基础架构时,物理服务器变为可以归入到资源池的计算资源,而虚拟机成为了服务器提供主体。虚拟化环境面临着虚拟机管理器(VMM)安全、虚拟机迁移带来的安全威胁[1]、虚拟机逃逸和拒绝服务攻击[2]等。因此,虚拟化环境下应用安全既要考虑虚拟系统的安全,又要考虑虚拟化内部及虚拟机所处的主机的安全。
一、虚拟化环境面临的应用安全需求
(一)传统风险依旧,防护对象扩大
一方面,传统安全风险并没有因为虚拟化的产生而规避。虽然单个物理服务器上可以运行多个虚拟机,但是每个虚拟机,传统模型下的服务器所面临的安全问题虚拟机也同样会遇到。另一方面,服务器虚拟化的出现,扩大了需要防护的对象范围。例如,除了考虑虚拟机的安全性,还要重点关注虚拟机管理器。
(二)虚拟化环境的正常运作风险
为了确保应用系统的安全可用,CPU调度、内存分配等资源管理工作、虚拟机的迁移、共享虚拟化资源池等功能都需要正常运作,合理安排策略。
(三)虚拟化环境下的网络安全
传统的网络边界划分方式并不直接适用于虚拟化环境。虚拟化环境内部的网络流量能否得到有效监控与审計,直接关系到虚拟化环境中的应用服务能否安全可用。
二、虚拟化环境的应用安全监测方法
要对虚拟化环境的应用安全进行监测,首先要考虑监测组件的部署位置。监测组件需要从目标系统和虚拟机管理器(WMM)中收集信息,显然需要部署在虚拟化环境内。否则很难判断和解决一些问题。例如,一台宿主机上的多个虚拟机里的多个应用都同时在使用一个物理网络端口,当一个应用出现网络拥堵时,势必会影响到其他应用的正常访问。这就需要虚拟化环境内的监测组件收集相关信息,帮助定位故障应用所在位置。对于重点目标系统或者虚拟机管理器难以收集到目标系统内某些信息数据时,可以考虑将监测组件安装在目标系统内。
监测组件主要是收集信息。而一个安全监测系统,除了具备日志采集外,还具备对日志事件关联分析、网络流量监控、风险评估等功能[3]。在部署时,不能直接把监测系统放在目标系统内。这是因为:
(1)监测系统与目标系统具有不同的安全背景。不仅在部署监测系统时,而且在整个虚拟化部署时都要考虑到这个问题。例如把具有不同安全背景的虚拟机连接到同一个物理适配器上,可能引发安全数据通信泄露到不安全的网络上。
(2)监测系统和目标系统之间没有隔离性,增加了受攻击的风险。只要有一个系统受到相应的攻击,就会影响到另一个系统。
(3)如果要监测许多的目标机器,那么每一台机器都需要部署一个监测系统。这样做不仅管理和维护这些监测系统成了一个难题,而且占用了过多的计算资源、存储资源。
监测系统可以部署在专门的虚拟机上。一方面便于监测其他虚拟机运行情况,另一方面通过虚拟机管理器监测网络流量、主机状态等。监测系统通过两种渠道获取相关信息。一种是通过虚拟机管理器,获得主机运行状态、资源分配情况、网络流、其他目标系统状况等信息;另一种是通过安装在目标系统上的监测组件,将所需信息发送给监测系统。监测系统对信息数据日志进行关联分析,如果有必要,那将通知管理员。
该监测框架如下图所示。
采用上述监测框架的特点有:
(1)安全性。监测系统部署在虚拟机上,整个日志、信息的获取都是在虚拟环境内部。外部很难捕捉到数据信息,不易泄漏;虚拟机本身的隔离,确保监测系统不容易遭受内部攻击。
(2)有效性。借助多种途径,监测系统能够有效把握虚拟化环境的运行状态、重点目标系统状况等。例如当重点目标系统上的关键应用故障,管理员可及时得到通知。监测系统收集各类信息,并做关联分析,为快速地判断和解决故障问题提供有力支撑。
(3)易维护性。监测系统独立存在,在维护和升级时只需要针对这个监测系统进行维护和升级。
三、虚拟化应用安全检测的评价指标体系
从运维管理人员角度看,不仅关心安全事件、警报,而且希望知道整个虚拟化环境是否安全。因此,监测系统需要对虚拟化环境的应用安全进行总体评估。但如果进行评估,那么就需要评价指标体系。
对虚拟化应用安全检测的评价指标,不应该局限于安全监测系统之类的功能,而应该从应用安全的角度考虑,从更大的范围考虑。从技术和管理上评估虚拟化应用安全,可以包括三个方面,一是对虚拟化环境的安全防护进行静态评估,二是对虚拟机进行实时的动态评估,三是信息安全管理制度建设评估。
(一)静态评估
静态评估是对虚拟化环境的安全防护进行总体评估,其目的是帮助识别虚拟化环境总体安全状况。因为采取的安全防护措施相对而言比较固定,一定时间内不会发生改变,所以称为静态评估。它包括:关键应用、物理防护、操作系统增强、信息的访问管理、外围访问管理、备份与灾备等。
(二)动态评估
动态评估是对虚拟机进行实时的评估,其目的是帮助识别虚拟机分安全状况,分析判断其价值、存在的脆弱性和面临的安全威胁,从而获得该虚拟机的安全风险情况,继而可以采取针对性的安全防护措施。评估的模型设定了评估的三要素:虚拟机价值、优先级、可靠性。分值=风险(虚拟机价值,优先级,可靠性)。
(三)信息安全管理制度评估
信息安全管理制度建设的具体要求,如下表所示,分值仅供参考。
四、结语
随着云服务的发展,虚拟化技术的研究与应用不断深入,虚拟化环境的安全一直受到关注。既要借鉴传统的安全解决方案,又要根据虚拟化环境的特点,将传统方案与虚拟化环境下应用安全需求结合,适应虚拟化发展需要,完善虚拟化环境下的安全解决方案。
参考文献:
[1]Huang YuLun,Chen B.,Shih MingWei,et al.Security Impacts of Virtualization on a Network Testbed[C].Gaithersburg,MD:Software Security and Reliability(SERE),2012 IEEE Sixth International Conference,2012:7177.
[2]The center for internet security.Virtual Machine Security Guidelines[EB/OL].
[3]李晨光.UNIX/Linux网络日志分析与流量监控[M].机械工业出版社,2015.