文献标识码:A
文章编号: 0258-7998(2015)01-0122-03
0 引言
目前私有云网络中大量采用了xen虚拟化技术,将虚拟机部署在物理硬件上并共享硬件资源,而应用程序和操作系统则运行在虚拟机中,从而大大提供了资源的使用率。虚拟机间的强隔离性[1]保证了虚拟机之间进程的信息安全,此外虚拟机管理器对虚拟机的管理过程是透明的,攻击者无法确认自己攻击的是否为真正的主机。xen虚拟机的结构如图1,VMM可以创建的多个虚拟机,可以运行不同的操作系统和应用程序。xen包括服务域Domain0和虚拟域DomainU,Domain0具有最高特权级,可以管理其他的虚拟域。虚拟机的VMI技术将虚拟机与安全监测工具相互隔离,增强了监测工具的安全性。
虚拟化技术中存在的大量恶意行为给网络信息安全[2]带来了隐患,本文通过部署蜜网可以有效地检测到网络上的恶意攻击,分析这些恶意行为的攻击方式,以便进行有效的防范。蜜网由一系列蜜罐组成,蜜网的内容包括:数据控制、数据捕获和数据分析,它的主要功能是标记所有进出系统的可疑流量[3]。虚拟机的引入对虚拟蜜网有两方面的影响:一方面, 由于虚拟机的特性,可以构建基于虚拟机的数据捕获和采集装置(xebek),使得现有的反蜜网技术无效化;另一方面, 由于系统规模更加庞大,虚拟机会给攻击者更多的提示,而采用VMI技术从蜜网外部进行监控,提高蜜网的安全性。
1 相关研究
Abe[4]提出一种基于DoS检测IP数据包的熵的方法,IP数据包熵的改变用来检测可能存在的DoS攻击,攻击产生时,数据包的大小与从受害者获得的响应是相同的,缺点是没有对其他数据特征的熵进行分析。Thonnard和dacier[5]提出一种基于集群的方法来分析蜜网数据的攻击模式,采用时间签名来收集蜜网的数据,对从世界各地的蜜罐收集的大型数据集进行研究,但这种数据采集规模太大,实际执行过程有一定的难度。吴文洁、葛昕[6]等人使用低交互蜜罐在VMware中构建分布式蜜网体系,采用了XMPP技术进行数据共享,使用carniwwhore框架实现了数据统计和可视化输出,但是这种低交互蜜罐对手工攻击行为识别率较低;王海峰、陈庆奎等人[7]在建立蜜网欺骗量化模型的基础上提出两种智能算法,通过仿真实验证明其具有提高蜜网伪装的能力,但缺乏对新攻击行为的适应能力。
目前的私有云网络安全产品虽然能检测一定的网络隐患,但仅仅是检测单一的网络特征并进行处理。与以往蜜网监控系统不同,本系统采用BP神经网络对网络流量数据进行训练,确定数据的五元组特征,然后分析流量数据的五元组特征熵值,判定蜜网中的异常行为,当网络再出现类似的异常行为时,可立即进行处理。通过实验表明,模型可以有效地检测私有云网络中蜜网的多种异常,提高云环境的安全性。
2 相关技术
2.1 BP神经网络算法
BP神经网络[8]是通过输入和输出的样本集(即网络的阈值和权值)对网络进行训练,从而使网络完成给定的输入/输出映射关系。本文设计的BP网络算法模型是以网络数据流量进行训练的,而这些数据已经根据原始数据流量进行了三级处理。第一级是根据原始数据提取数据包的特征:如目标ip地址、目标端口、源端口、总载荷字节TB、标志位和总数据包数PC等;第二级是量化数据,如各种协议以及没有实质作用的数据,依据网络异常的类型量化为二值向量;第三级是对数据进行整理计算,对持续时期的恶意行为数据进行实时分析。
网络由3层组成,如图2,第一层是隐含层,隐含层的节点函数为Sigmoid 函数(f(x)=1/(1+e-x)),节点模式包括正常模式和恶意模式,恶意模式可以检测现有的恶意攻击和新型的攻击。第一层的作用是计算输入向量X={X1,X2,…,Xl}与模式层的模式(例如第j个模式p=(p1j,p2j,…,pij))的匹配度, 匹配函数(Match(x))为:
BP神经网络的正常模式与异常模式的输出不能同为1,正常模式的输出为1表明输入了正常序列,异常模式输出为1时表明有恶意行为产生。当两种模式输出都为0时表明输入的序列与正常模式和异常模式都不匹配,该序列定义为异常序列。
2.2 信息熵
为了评估上述的异常特征,本文采用熵来具体分析。在信息论中,熵被定义为一种不确定性的度量或是与随机变量相关的随机性。一个大小为n的样本的熵的阈值范围是[0,logn]。数据项没有变化时值为0,当所有的数据项都不相同或变化最大时值为logn。基于熵的检测技术,随机变量X的熵的值有{X1,X2,X3,…,Xn},计算公式如下:
其中H(x)=熵,如果要计算所观察到的流量特征值发生的概率,计算公式:
其中总数据包数是时间T内看到的数据包总数。熵值的规律是:流量特征值的微小变化产生低熵值,而流量特征值的显著变化则导致较高的熵值。
3 VMI的虚拟蜜网系统架构
基于VMI的虚拟蜜网流量检测系统是部署在xen平台上的,如图3所示,该系统中数据捕获模块的主要功能是在不被攻击者发现的前提下捕获所有输入和输出蜜网系统的数据。蜜网流量不同于其他类型的网络流量,因为流入或流出蜜网的每个数据包都被认为是恶意的;语义重构模块的作用是对捕获到的数据进行语义重构,由于VMM处于客户虚拟机的底层,只能识别低级语义,两种之间存在语义鸿沟;BP神经网络的处理速度可以快速响应系统出现的变化,有效识别恶意行为,其固有的自主性、交互性和主动性对数据进行训练,确定其五元组特征,降低了数据处理的复杂性;数据分析模块是通过分析流量数据的五元组特征的熵值,判定蜜网中异常行为,从而对蜜网系统做出相应的控制;数据控制模块是对流进和流出蜜网系统的数据进行控制,防止蜜网被黑客攻破后对其他系统进行大规模的攻击。
该系统中xen虚拟机[9-10]直接运行于硬件系统之上,domain0和多个蜜罐构成虚拟蜜网系统,虚拟机的强隔离性保证了各个蜜罐可以独立运行且互不干扰。系统采用VMI反省机制[11],将数据捕获模块部署在虚拟机监控器VMM内,实现了检测工具和蜜网系统的隔离,增强了数据捕获模块的安全性,提高了数据的可信度;通过语义重构模块对Xebek数据捕获模块收集到的信息进行语义重构后,采用BP神经网络确定数据的五元组特征;数据分析模块通过数据特征的熵值大小,判定蜜网中是否存在异常行为。
4 实验结果
系统的蜜网系统可以采用Linux或Windows操作系统,这两种系统的检测结果基本相同,因为Linux是多用户的操作系统,当攻击者破坏了某个程序后底层的系统依然完好无损,所以Linux的检测效果相对更好。由于篇幅有限,文章以Linux系统为例进行研究。
基于VMI的蜜网流量检测机制,通过五类特征的熵DIP、DP、SP、TB和PC来检测异常的存在。如表1所示,从不同源收集到的蜜网数据的样例表明,正常行为的熵值很少发生变化。如表2所示,当恶意活动存在时,熵值会发生很大变化。经过分析发现,正常流量的熵值变化范围在0~3之间,大于3时就认为是异常流量。
通过比较本文方案的异常事件(包括扫描、系统如期、恶意软件、rootkits下载等)的数目和跟踪的异常事件的数目,可以得出该系统的检测率。图4展示了3种特征熵值的三维图,熵值大于3的点代表扫描蜜网中的恶意活动。
如图5,纵坐标为总数据包数,横坐标为天数,图中第3天末的峰值表明出现了恶意活动。
图6中的时间视图曲线展示事件在5天内的状态,不同的颜色代表不同的时间(。表示第1天,>表示第2天,x表示第3天,*表示第4天,☆表示第5天)。曲线内同一颜色的事件表明它们发生同一时间段,以便根据发生的时间了解黑客攻击蜜网的策略,从而在虚拟机控制端对蜜网做出一定的响应。
表3列出了5天内蜜网的检测结果。蜜网共捕获了13个数据包,但由于某些数据包的时间间隔较大,不能对熵值产生明显的变化,以致无法检测到这些数据,故系统的检测率只有91.67%。
5 结论
私有云网络的安全取决于蜜网能否很好地检测攻击并分析攻击行为,本文提出一种xen下基于VMI蜜网流量检测机制,利用VMI机制将数据捕获模块与蜜网隔离,提高了数据的可靠性。采用BP神经网络算法得到的蜜网流量五元组特征,其流量特征值是与熵值一一对应的,故通过五元组特征的熵值可以判定蜜网中异常行为。实验表明,模型可以快速识别蜜网中的多种异常,但这种机制无法检测到潜伏的攻击和缓慢的攻击,这个缺陷可以通过增加检测此类攻击的能力进行改善。
参考文献
[1] 项国富,金海,邹德清,等.基于虚拟化的安全监控[J].软件学报,2012,23(8):2173-2187.
[2] 梁钢,茅秋吟.云计算IaaS平台的信息安全和运维服务设计[J].电子技术应用,2013,39(7):63-64.
[3] SPITZNER L.The honeynet project:Trapping the hackers[J].IEEE Computer Society,2003,1(2):15-23.
[4] ABE S.Detecting DoS attacks using packet size distribution[C].Proceedings of the 2nd BioInspired Models of Network Information and Computing Systems,2007:93-96.
[5] THONNARD O,DACIER M.A framework for attack patterns′discoverty in honeynet data[C].Digital Investigation,2008:128-139.
[6] 吴文洁,葛昕,胡德敏.基于虚拟化技术的分布式蜜网[J].计算机系统应用,2013,22(3):69-72.
[7] 王海峰,陈庆奎.蜜网智能动态部署算法研究[J].计算机应用研究,2011,28(3):1119-1121.
[8] 邢钰娇,孙昊,杨鹏,等.基于神经网络的四元球面阵空间声源定向系统[J].电子技术应用,2012,38(2):124-126.
[9] SMITH J E,NAIR R.the architecture of virtual machines[J].IEEE Computer,2005,38(5):32-38.
[10] 汤儒,李秦伟.Openstack云环境中KVM虚拟机性能分析[J].微型机与应用,2013,32(23):94-96.
[11] GARFINKEL T,ROSENBLUM M.A virtual machine introspection based architecture for intrusion detection[C].Proc.of the 10th Network and Distributed System Security Symp.Berkeley:USENIX Association,2003:191-206.