聚类算法在面向 SOA蜜罐系统入侵行为数据分析中的应用
2017-10-12康潆允
◆康潆允
(沈阳理工大学信息科学与工程学院 辽宁 110159)
聚类算法在面向 SOA蜜罐系统入侵行为数据分析中的应用
◆康潆允
(沈阳理工大学信息科学与工程学院 辽宁 110159)
随着互联网技术的飞速发展,SOA在成为当今流行的架构体系的同时,其首选的Web服务也日益成为黑客攻击的新目标。针对SOA的安全问题日益突出,现在通常使用被动的防御方式,旨在保证SOA系统的安全性,在SOA系统中,以第三代蜜网部署拓扑为基础,构建面向SOA的蜜罐系统,采用聚类算法,对系统中sebek回传的数据进行分析。本文通过搭建网络平台,对面向SOA蜜罐系统捕获到的数据,在检测率和误报率方面进行实验验证。
SOA;蜜罐;聚类算法
0 引言
面向服务架构Service Oriented Architectures(SOA),能够满足人们对敏捷的、不受限制的集成业务流程的需求,近年来逐步成为当今网络应用的潮流[1]。但由于网络空间行为的对抗性日益凸显,SOA系统会受到传统及新型的攻击。对于这些攻击,现在所采用的防御方式是被动防御方式。
作为一种基于主动防御方式的网络安全防御模型,蜜罐能够很好改善并提高 SOA系统的安全性。蜜罐是一种以检测、监视并捕获攻击行为,最终实现保护真实主机为目标的安全资源,它通过模拟一个或多个易受攻击的主机,为攻击者提供一个容易攻击的目标,拖延攻击者对有价值目标的攻击。
在蜜罐技术用于网络安全研究方面,国内外有学者有以下研究:利用蜜罐系统与入侵检测系统联动,来增强防护能力[2];利用蜜罐检测僵尸网络[3];利用蜜罐建立安全事件行为特征库[4]等。
1 面向SOA蜜罐系统的设计
以第三代蜜网部署拓扑为架构,结合传统网络安全防御技术,在面向SOA蜜罐系统的服务提供端,设计面向SOA的蜜罐系统,系统结构如图1所示。
图1 面向SOA蜜罐系统结构
面向 SOA蜜罐系统系统拟设置数据诱捕模块、数据控制模块、数据捕获模块以及数据分析模块,处理流程如下:首先,在虚拟SOA服务蜜罐主机中,部署面向SOA蜜罐系统的服务提供端能够提供的服务,但是虚拟 SOA服务蜜罐主机中有一些能够被入侵者发现的特定漏洞,从而能够诱使入侵者优先访问;其次,等待经过伪装的入侵者访问面向 SOA蜜罐系统提供的服务,在此过程中,入侵者发现蜜罐所在网段存在的漏洞,针对这些漏洞进行攻击,而数据捕获系统捕获相关攻击数据,将数据进行一定处理和存储,并不断地进行数据分析。
2 实验验证及结果分析
2.1 仿真软件选取
本部分测试主要使用weka软件,weka是用Java语言编写的数据挖掘机器学习软件,也是一套完整的数据处理工具。学习算法和评价方法,包含数据可视化的图形用户界面。Weka软件既能够满足多系统平台的需求,又能够很好地验证算法效率,同时该环境还可以比较和评估不同的学习算法的性能。
2.2 实验数据选取
2.2.1 数据集数据的选取
本文从已有的攻击数据集中,抽取10000的样本进行测试,其中攻击样本数据与正常样本数据的比例为 4:1,攻击样本数为8000,正常样本数为2000。这里选取数据描述中的9个关键特征值用作实验,这些特征是网络攻击事件在时间上关联特性。
2.2.2 面向SOA蜜罐系统的网络入侵数据选取
面向SOA蜜罐系统中采用sebek软件进行数据捕获。sebek是一个数据捕获工具,可以作为面向 SOA蜜罐系统的网络入侵主动防御安全模型中数据捕获的一种方式,用在蜜网组建中。
利用蜜网系统外部的三台电脑,对虚拟 SOA服务蜜罐主机中,提供的面向 SOA蜜罐系统的相关服务进行正常的访问,并对蜜罐系统存在的漏洞进行攻击。从sebek捕获的数据记录中连续选取了5000条数据记录,用作测试集,其中攻击样本数据与正常样本数据的比例为4:1,攻击样本数为4000,正常样本数为1000。
2.3 经典K-means聚类算法性能的度量标准
实验中采用经典K-means聚类算法,对数据进行处理,本文采用检测率和误报率作为算法性能的度量标准。检测率定义为,算法正确检测到的攻击样本数目,和数据样本中总的攻击数目的比例。误报率定义为,算法中被误判为攻击样本的正常样本,和数据样本中总的正常样本数目的比例。
2.4 实验过程
在weka平台中选择K-means聚类算法。
在实际运算过程中,我们事先不知道初始聚类个数k值,k值的不同对聚类效果的影响也不尽相同,但目前还没有一种公认的可以确定最合适初始聚类个数的绝对合理的方法。因而本文中的实验对K分别取不同的值,使用K-means聚类算法对实验数据进行处理。
将K-means算法对数据集聚类结果和对面向SOA蜜罐系统的网络入侵数据聚类结果用折线图表示,K值代表聚类数目,其中检测率与聚类数目的关系如图2所示,误报率与聚类数目的关系如图3所示。
图2 检测率与聚类数目的关系
图3 误报率与聚类数目的关系
检测率,能反映算法对攻击行为分类能力的大小,从图2中可以看出,K-means聚类算法对面向SOA蜜罐系统的网络入侵数据的聚类结果,在检测率略优于对数据集的聚类结果。误报率,则能反映算法对正常访问行为分类能力的大小,从图3中可以看出,K-means聚类算法对面向 SOA蜜罐系统的网络入侵数据的聚类结果,在误报率方面,优于对数据集的聚类结果,而当K值过大时,二者的聚类结果相当。虽然真实的网络情况收集到的数据较整理后的数据集数据为复杂,但 K-means聚类算法对面向SOA蜜罐系统的网络入侵主动防御安全模型具有较好的适用性。
3 结束语
针对 SOA的安全问题日益突出,为弥补传统的入侵检测技术存在的不足,改善并提高面向 SOA蜜罐系统的安全性,以第三代蜜网部署拓扑结构为基础,结合包括防火墙与入侵检测系统在内的传统安全防御技术,在SOA系统中构建面向SOA蜜罐系统,并将经典K-means聚类算法用于对系统捕获到的数据进行分析。在提高面向 SOA蜜罐系统的安全防护能力的同时,为面向SOA蜜罐系统的应用和 K-means聚类算法的性能评估提供了一定参考。
[1]舒振,马建威,罗雪山.基于SOA的新型指挥控制系统体系框架及开发方法[J].兵工自动化,2010.
[2]何祥锋.浅谈蜜罐技术在网络安全中的应用[J].网络安全技术与应用,2014.
[3]崔嘉.蜜罐技术用于网络安全的分析与研究[J].网络空间安全,2016.
[4]付强,刘青华.蜜罐技术在网络安全领域中的应用[J].中国高新技术企业,2016.
[5]刘永庆.一种基于 SOA架构的访问控制安全服务模型研究[J].网络安全技术与应用,2016.
[6]王鹏.互联网防御DOS/DDOS攻击策略研究[J].邮电设计技术,2012.