基于异类数据挖掘的网络潜在威胁检测方法研究

2020-07-31 01:52白玲玲
太原学院学报(自然科学版) 2020年2期
关键词:异类信息熵数据挖掘

白玲玲

(安徽省中共阜阳市党校 教务处,安徽 阜阳 236000)

0 引言

网络已经深入千家万户,随着网络的不断发展,越来越多的不法分子通过攻击网络、传播网络病毒等不正当的恶劣行为来谋取利益。网络时刻面临各种各样的威胁,相比网络入侵、病毒入侵等可以实时监测并使用相关技术预防的威胁行为,散布不法信息、非法获取数据等行为带来的网络潜在威胁,是近年来网络安全研究领域的重点研究方向[1]。

传统的网络威胁检测方法只能从大量的数据流中筛选出异常数据,筛选过程中需要对实验数据进行迭代检测,不仅影响检测效率,还会导致网络潜在威胁检测精度不高。数据挖掘能够按照设定的标准,应用算法快速地搜索大量数据中隐藏的信息[2],还能够对挖掘信息进行自动化分析,做出归纳性的总结,找出数据间的潜在联系,提高数据搜索的效率。网络的快速发展使得网络潜在威胁数据不再是以前的单一类型,异类数据挖掘是在原有的数据挖掘基础上提出的。异类数据挖掘算法能够针对不同类别数据同时进行挖掘,提高了数据搜索的效率。

为此,本文引入了异类挖掘技术,对网络潜在威胁进行检测。为验证本文方法具体效果,设计对比实验,得到了与预测符合的结果,证明了本文方法的有效性。

1 基于异类数据挖掘的网络潜在威胁检测方法

1.1 潜在威胁数据预处理及映射

从庞大的网络中,使用异类数据挖掘获取了网络潜在威胁的相关数据。这些数据种类不同,采集的数据中可能包含大量的重复数据以及一些与网络潜在威胁无关的正常数据[3]。因此,在检测网络潜在威胁之前,需要对异类数据挖掘获取的威胁数据进行预处理。根据数据集合中数据量的大小,设定数据过滤器的参数,使用数据过滤器对挖掘的网络潜在威胁数据进行过滤,过滤出网络潜在威胁中的冗余数据。数据过滤后使用聚类算法对数据属性进行聚类,以此实现将网络潜在威胁数据和网络正常运行数据分离[4]。数据分离流程图如图1所示。

图1 数据分离过程Fig.1 Data separation process

从过滤器筛选出的数据集合中随机抽取n个完全不相似的数据,将其作为聚类算法的聚类中心,将数据集合中的数据依次与n个聚类中心做相似度比较。将数据归至与其相似度较大的聚类中心所在簇中。相似度就是两个数据间的距离,具体计算公式如下:

(1)

式中,p为相似度计算的参数,xi为聚类时的聚类中心数据,yi为待聚类处理的数据。sim(x,y)数值越小,说明两个数据越相似[5]。由于数据聚类时选取的聚类中心是随机抽取的,生成数据簇后,计算每一簇的均值来重新选取数据聚类中心。重复迭代选取聚类中心,直至出现最优聚类结果。计算所有聚类中心数据之间的距离,将与其它数据相似度最低的聚类中心数据所在簇分离。被分离出的数据集合即为使用异类数据挖掘时,误采的网络运行正常数据。

对数据集合聚类后,为了便于后续利用数据实现网络潜在威胁检测,将数据归一化。若聚类处理后的数据集合为X,X={x1,x2,…,xm},按照下式转换为[0,1]区间上的数值:

(2)

式中,xmin为数据集合中的最小数值,xmax为数据集合中的最大数值,x′为归一化处理后的数据[6]。数据归一化处理后,将数据按照聚类中心形成对应的数据集合。为便于对网络潜在威胁检测,将数据集合按照图2所示的数据映射规则,映射到网络潜在威胁检测空间中。

图2 数据映射规则Fig.2 Data mapping rules

由于网络潜在威胁种类过多,在检测空间中生成网络潜在威胁森林,使预处理后的数据映射到对应威胁树的节点上。

1.2 建立网络潜在威胁森林

为更好量化处理大规模的网络潜在威胁,建立网络潜在威胁森林。将网络威胁数据映射至网络威胁树的节点上,多个威胁树组成威胁森林。为避免因异类数据挖掘的网络威胁潜在数据过多,导致威胁树的数目随之增加,使得处理、检测网络潜在威胁的资源消耗过多,建立如图3所示的多层次网络潜在威胁树。

图3 网络潜在威胁树关系示意图Fig.3 Network potential threat tree relationship diagram

上图中,网络潜在威胁树T1被威胁树T2完全覆盖后,威胁树T1成为威胁树T2的一个子树。同时,威胁树T2与威胁树T3之间只有两个节点重叠,说明威胁树T2与威胁树T3是部分重叠的关系。按照上图中的关系组成威胁森林后,在实际的网络潜在威胁检测时会出现较高的数据冗余,从而导致检测效率低下[7]。因此,利用潜在威胁树之间存在重叠的关系,将威胁树合并如下图的形式,生成威胁森林。

图4 威胁森林示意图Fig.4 Illustration of threat forest

如上图所示的结构能够节省存储空间,可以描述多种网络潜在威胁行为。建立这种网络潜在威胁森林,在生成一个根节点后,可以拥有多个子节点,这些子节点每一个都代表不同的网络潜在威胁行为或者状态[8]。每一子节点下方可以再次分出多个子节点,将相同类型的网络潜在威胁映射至子节点上。如此,能够获得不同网络潜在威胁序列中出现相同的威胁状态。若异类数据挖掘搜索到的网络潜在威胁数据过多,可以增加威胁树的层次,不仅减少了逐层描述网络威胁需要生成使用的数据存储节点,还在保证网络威胁描述完整效果的前提下,节省了运行基于异类数据挖掘的网络潜在威胁检测方法的存储空间。

为生成上述的威胁森林,将2.1处理后的网络潜在威胁数据分割成由若干个威胁步骤连接组成的序列,每一个威胁步骤之间都存在一定的因果关系[9]。威胁森林中每一树上的节点根据这种因果关系相互连接,并将异类数据挖掘的威胁行为分割、组成和转化。之后在连接关系的基础上,将生成的威胁树集中间的冗余,即重叠节点部分去掉,生成威胁森林。

生成威胁森林后,根据最小子树的生成原则,威胁森林会在网络潜在威胁匹配时,解析再聚合,生成网络潜在威胁的聚合集合[10]。之后再对聚合集合处理,以实现对网络潜在威胁的检测。

1.3 网络潜在威胁匹配

将威胁森林解析再生成的数据集合进行处理,根据网络潜在威胁的特征元素,生成威胁匹配矩阵。

(3)

公式(3)中,a、b分别表示网络潜在威胁的特征元素,max{|a|,|b|}表示取特征元素a、b之中字符较长的字符长度[11]。由此定义威胁匹配矩阵如下:

(4)

公式(4)中,Svu为匹配元素特征,并且Svu满足Svu=sim(ev,eu)。建立网络潜在威胁匹配矩阵后,使用网络匹配算法,实现对网络潜在威胁的检测[12]。

(5)

公式(5)中,wip表示节点在匹配模版图中节点i关联的属性,wjp在待匹配的网络潜在威胁数据图中节点j关联的属性,h和p分别为节点在模板图和待匹配的网络潜在威胁数据图中关联属性的数目。当图中的拓扑关系相同并且语义近似时,判定为相似性值最高。

由此,可以分析出图匹配就是将模板图中的某一节点与待匹配的网络潜在威胁数据图中某一节点匹配。具体匹配算法的执行步骤如图5所示。

图5 匹配算法的执行步骤Fig.5 Steps of the matching algorithm

图6 根节点匹配对图Fig.6 Pair graph of Root node matching

生成匹配对之后,计算邻居根节点分值。分值越高的根节点越先匹配。当所有匹配模板图中的节点都匹配完成后,输出原待匹配图中已被匹配的节点。将节点上的数据经过网络威胁森林,输出对应网络潜在威胁数据。至此,完成了基于异类数据挖掘的网络潜在威胁检测方法的设计。

2 方法验证

本文设计了基于异类数据挖掘的网络潜在威胁检测方法,为验证该检测方法的性能,选择仿真实验。通过实验测试,验证本文设计的检测方法具有一定的优越性。

2.1 验证准备

实验采用对比实验的方式,实验的参考组为基于序列分析的网络潜在威胁检测方法,测试组为本文设计的基于异类数据挖掘的网络潜在威胁检测方法。选用DARPA2000数据集合作为测试集合。数据集合放置在由25台主机拓扑连接组成的模拟网络环境中。实验对比指标为误测率,即两个检测方法检测的网络威胁行为事件中被误判为网络威胁的网络正常行为事件的总占比。严格按照验证步骤,完成实验验证,得出相关结论。

2.2 实验指标

2.2.1 信息熵对比

数据冗余去除效果能够影响网络潜在威胁检测效率。因此,需要对数据冗余去除效果进行检验。信息熵能够表述网络数据的信息量,检测去冗余处理后的网络数据的信息熵可以获得数据冗余去除情况,信息熵越小,检测所用的时间也就越短,效率越高。反之,信息熵越大,检测用时就会越长,检测效率也就越低。

为此,本文通过检测出不同方法下的网络数据信息熵情况来体现数据冗余去除效果。信息熵计算公式为:

H(x)=-∑P(xi)log(2,P(xi)),i=1,2,3,…,n

(6)

其中,P(x)表示输出概率函数,x随机变量,i表示时间。

2.2.2 潜在威胁数据归一化对比

在上述基础上对去除冗余数据后的潜在威胁数据进行归一化处理。归一化结果越接近实际值,网络潜在威胁的检测精准度越高;反之,检测精度也就越低。

2.2.3 误测率

误测率能够直接体现检测准确性。误测率越低,说明网络潜在威胁检测准确率越准确;反之,检测结果越差。

2.3 验证结果

2.3.1 信息熵对比

为了验证不同方法的去冗余效果,对基于异类数据挖掘的方法、基于ACK序号步长的方法以及基于IPv6的方法进行信息熵计算,实验结果如下所示。

根据图7可知,用不同的方法对网络数据进行处理,获得的信息熵不同。当时间为0.5 s时,基于IPv6的方法信息熵为0.04,基于ACK序号步长的方法信息熵仅为0.12,而基于异类数据挖掘的方法(即本文方法)的信息熵仅为0.01,信息熵最小,也就是说信息量最低,冗余数据的去除效果也就越好。当时间增加到5 s时,网络信息量随之增大,三种方法的信息熵都会增大,但两种传统方法的信息熵明显超过0.60,而本文方法的信息熵仅增加到0.06,不足传统方法的1/10。这说明用本文方法能够在大量数据中提取到有效信息,冗余去除率最佳,能够有效提升网络潜在威胁检测效率。

2.3.2 潜在威胁数据归一化结果对比

为了验证本文方法的网络潜在威胁数据检测精度,以基于ACK序号步长的网络潜在威胁检测方法(以下简称为传统方法)与本文方法为例,获得数据归一化结果,如图8所示。

图8 不同方法下数据归一化结果Fig.8 Data normalization results under different methods

分析图8,对比两种方法下的数据归一化结果。在2.0 s、3.0 s、4.0 s以及5.0 s下,分别对比此时实验归一化值与实际值,明显本文方法与实际结果更加接近,而传统方法归一化结果与实际结果不符。总体来看,传统方法与实际结果偏差较大,本文方法能够获得与实际结果基本一致的归一化值。这是因为本文方法通过构建网络潜在威胁树,将检测结果进行了潜在威胁匹配,获得了较为精准的检测结果。

2.3.3 误测率对比

将实验数据随机均匀分为10组,10组数据组成数据子集,每一子集中都包含不同比例的网络潜在威胁数据记录数据。将归一化处理后的数据输入至实验验证的模拟网络中,获得不同检测方法下的检测误测率并记录。对实验数据分析,完成实验验证。实验验证结果如下表所示。

表1 检测方法误测率Table 1 Detection method error rate

分析表1中的数据,本文方法的误测率整体低于传统方法的误测率。在进行第4、7、9组数据子集的检测时,本文方法的误测率仅为0.01%,文献[2]方法的误检率最低为0.32%,文献[4]方法的误检率最低为0.37%,均远远超过本文方法。综合分析上表可知,本文方法误测率最高为0.05%,不超过0.1%,说明本文方法能够保证连续高精度的检测。计算两个检测方法平均误测率,本文方法的平均误测率为0.028%,文献[2]方法的平均误测率为0.416%,文献[4]方法的平均误测率为0.385%,综上所述,本文设计基于异类数据挖掘的网络潜在威胁检测方法的误测率更低,精准度更高。

3 结束语

网络的广泛应用使其面临众多威胁,为此本文研究了基于异类数据挖掘的网络潜在威胁检测方法。该方法利用异类数据挖掘技术,获取网络潜在威胁数据,经过一系列的处理,最终实现对网络潜在威胁的检测。通过与传统检测技术的对比实验,证明了本文设计的基于异类数据挖掘的检测技术具有优越性。

1)信息熵较低,除冗余效果好,能够在大量数据中提取到有效信息,能够有效提升网络潜在威胁检测效率。

2)通过构建网络潜在威胁树,匹配潜在威胁数据检测结果,获得了与实际结果基本一致的归一化值,提升了检测精度。

3)基于异类数据挖掘的网络潜在威胁检测方法的误测率更低,平均误测率仅为0.028,精准度更高,应用性更强。

本文方法未考虑网络传输干扰,今后将对此进行深入研究。

猜你喜欢
异类信息熵数据挖掘
改进支持向量机在特征数据挖掘中的智能应用
基于信息熵可信度的测试点选择方法研究
探讨人工智能与数据挖掘发展趋势
基于事故数据挖掘的AEB路口测试场景
近似边界精度信息熵的属性约简
一种基于信息熵的雷达动态自适应选择跟踪方法
软件工程领域中的异常数据挖掘算法
基于信息熵和未确知测度理论的供应链风险系数定量测度模型研究
毛毛虫中的异类
鱼中的异类