一种网络异常行为确定方法、装置、设备及可读存储介质与流程

文档序号:17865578发布日期:2019-06-11 23:11阅读:151来源:国知局
一种网络异常行为确定方法、装置、设备及可读存储介质与流程

本发明涉及计算机技术领域,更具体地说,涉及一种网络异常行为确定方法、装置、设备及可读存储介质。



背景技术:

现阶段,计算机网络已经基本实现全球化,庞大的网络体系方便了信息的交流与传递,但是也对网络黑客提供了更多的便利。如今网络中存在着多种多样的攻击手段,例如:dos攻击、probing攻击、r2l攻击和u2r攻击等。

在现有技术中,一般通过聚类算法对网络中的网络数据流量进行分类,以根据分类结果确定其中存在的异常行为。但是现有技术中使用的聚类算法,采用数据点距离平均值选取聚类中心,该方法导致在处理非球状簇聚类时,聚类效果不明显、容易陷入局部最优解问题,从而影响了聚类结果的准确性,降低了网络数据流量的分类效率和准确率,根据此分类结果也无法准确确定网络中的异常行为。

因此,如何提高网络数据流量的分类效率和准确率,是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种网络异常行为确定方法、装置、设备及可读存储介质,以提高网络数据流量的分类效率和准确率。

为实现上述目的,本发明实施例提供了如下技术方案:

一种网络异常行为确定方法,包括:

获取目标网络中的网络数据流量,并将所述网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;

利用kruskal算法将所述数据完全图优化为最小生成树,并将所述最小生成树的每个节点作为聚类中心;

根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;

根据每个数据元素集合的类型确定所述目标网络中的异常行为,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。

其中,所述得到每个聚类中心分别对应的数据元素集合之后,还包括:

分别计算每个数据元素集合的类内距离与类间距离的比值,并判断所有数据元素集合的类内距离与类间距离的比值是否均小于预设的第一阈值;

若是,则执行所述根据每个数据元素集合的类型确定所述目标网络中的异常行为的步骤。

其中,当存在不小于所述第一阈值的比值时,还包括:

按照目标公式分别更新每个聚类中心,并执行所述根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合的步骤;

其中,所述目标公式为:g’=g(x,y,z),x=(x1m1+x2m2+··+ximi)/m,y=(y1m1+y2m2+··+yimi)/m,z=(z1m1+z2m2+··+zimi)/m;

g’表示更新后的聚类中心,m表示更新前的聚类中心到自身类别中每个数据元素的距离之和,x、y、z分别表示更新后的聚类中心在三维空间中的坐标;

m1、m2··mi表示更新前数据元素集合中的各个数据元素分别到对应的聚类中心的距离,x1、x2··xi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的x坐标值,y1、y2··yi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的y坐标值,z1、z2··zi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的z坐标值。

其中,所述执行所述根据每个数据元素集合的类型确定所述目标网络中的异常行为的步骤之前,还包括:

计算目标函数的函数值,并判断计算得到的函数值与初始函数值的差值是否小于预设的第二阈值;

若是,则执行所述根据每个数据元素集合的类型确定所述目标网络中的异常行为的步骤。

其中,当所述计算得到的函数值与初始函数值的差值不小于预设的第二阈值时,还包括:

将所述计算得到的函数值作为所述初始函数值,并执行所述按照目标公式分别更新每个聚类中心的步骤。

其中,所述根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合,包括:

针对每个聚类中心,按照下述步骤获得每个聚类中心分别对应的数据元素集合:

根据目标聚类中心删减所述网络数据流量包含的数据包,得到目标数据包集合;

计算所述目标数据包集合中的每个数据元素与所述目标聚类中心的距离,并分别判断每个距离是否小于预设的半径值;

若是,则将小于所述半径值的距离对应的数据元素划分至所述目标聚类中心对应的数据元素集合。

其中,还包括:

当目标数据元素和所述目标聚类中心的第一距离,与所述目标数据元素和对象聚类中心的第二距离,均小于所述半径值时,计算所述目标数据元素与所述目标聚类中心对应的数据元素集合中的任意一个数据元素的第一余弦相似度,和所述目标数据元素与所述对象聚类中心对应的数据元素集合中的任意一个数据元素的第二余弦相似度;

判断所述第一余弦相似度是否大于所述第二余弦相似度;

若是,则将所述目标数据元素划分至所述目标聚类中心对应的数据元素集合;

若否,则将所述目标数据元素划分至所述对象聚类中心对应的数据元素集合。

一种网络异常行为确定装置,包括:

获取模块,用于获取目标网络中的网络数据流量,并将所述网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;

优化模块,用于利用kruskal算法将所述数据完全图优化为最小生成树,并将所述最小生成树的每个节点作为聚类中心;

分类模块,用于根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;

确定模块,用于根据每个数据元素集合的类型确定所述目标网络中的异常行为,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。

一种网络异常行为确定设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上述任意一项所述的网络异常行为确定方法的步骤。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的网络异常行为确定方法的步骤。

通过以上方案可知,本发明实施例提供的一种网络异常行为确定方法,包括:获取目标网络中的网络数据流量,并将所述网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;利用kruskal算法将所述数据完全图优化为最小生成树,并将所述最小生成树的每个节点作为聚类中心;根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;根据每个数据元素集合的类型确定所述目标网络中的异常行为,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。

可见,所述方法在对网络数据流量进行分类时,首先构建包含每个数据包的数据完全图,进而利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心,从而避免了数据点距离平均值选取聚类中心带来的聚类效果不明显、容易陷入局部最优解问题;进一步地,根据每个聚类中心分别对网络数据流量进行分类,得到的每个聚类中心对应的数据元素集合,能够准确地确定目标网络中存在的异常行为,从而提高了网络数据流量的分类效率和准确率。

相应地,本发明实施例提供的一种网络异常行为确定装置、设备及可读存储介质,也同样具有上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种网络异常行为确定方法流程图;

图2为本发明实施例公开的另一种网络异常行为确定方法流程图;

图3为本发明实施例公开的一种网络异常行为确定装置示意图;

图4为本发明实施例公开的一种网络异常行为确定设备示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种网络异常行为确定方法、装置、设备及可读存储介质,以提高网络数据流量的分类效率和准确率。

参见图1,本发明实施例提供的一种网络异常行为确定方法,包括:

s101、获取目标网络中的网络数据流量,并将网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;

具体的,网络数据流量包括网络中传输的各种数据包,其中包括具有攻击行为的数据包和正常访问网络的数据包。目前网络攻击种类包括:dos攻击、probing攻击、r2l攻击和u2r攻击等,每种攻击都具备一定的特征,因此对网络数据流量包含的所有数据包进行分类,可以将具有相同或相似特征的数据包划分为一类,从而可确定网络中存在的攻击种类,即网络异常行为。

s102、利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心;

需要说明的是,kruskal算法即克鲁斯卡尔算法,能够求完全图的最小生成树。完全图即连通图。

具体的,利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心,包括:

计算完全图中所有边的权值,寻找权值最小边的点,将权值最小边的两个点存入集合a,将该条边存入集合b。搜索完全图中的所有边,此时集合a和集合b包含完全图中的所有点和边。其中,集合b中的边按照边的权重大小排列。

遍历集合b,将最小权值的边添加到生成树中;若构成回路,则删除当前边和当前边对应的两个点;否则,添加下一条边,直至添加完集合b中的边,得到最小生成树。

逐层查找最小生成树,用每层中的欧式距离最小的两个点的中心点o代替这两个点,并更新集合b和集合a,重复执行上述操作,直到最小生成树只含有k个连接点时,查找结束。将最小生成树的连接点作为网络流量数据的聚类中心。

s103、根据每个聚类中心分别对网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;

其中,所述根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合,包括:

针对每个聚类中心,按照下述步骤获得每个聚类中心分别对应的数据元素集合:根据目标聚类中心删减所述网络数据流量包含的数据包,得到目标数据包集合;计算所述目标数据包集合中的每个数据元素与所述目标聚类中心的距离,并分别判断每个距离是否小于预设的半径值;若是,则将小于所述半径值的距离对应的数据元素划分至所述目标聚类中心对应的数据元素集合。

例如:假设聚类中心包括{a,b,c},网络数据流量包含的数据包组成的初始样本集为a,那么:

对于聚类中心a,目标数据包集合a1=a-a,从a1中删除距离大于半径值的数据元素,得到数据元素集合a;距离为目标数据包集合中的任意一个数据元素与聚类中心a的距离;

对于聚类中心b,目标数据包集合a1=a-b,从a1中删除距离大于半径值的数据元素,得到数据元素集合b;距离为目标数据包集合中的任意一个数据元素与聚类中心b的距离;

对于聚类中心c,目标数据包集合a1=a-c,从a1中删除距离大于半径值的数据元素,得到数据元素集合c;距离为目标数据包集合中的任意一个数据元素与聚类中心c的距离。

如此则可以得到每个聚类中心分别对应的数据元素集合。

其中,还包括:

当目标数据元素和所述目标聚类中心的第一距离,与所述目标数据元素和对象聚类中心的第二距离,均小于所述半径值时,计算所述目标数据元素与所述目标聚类中心对应的数据元素集合中的任意一个数据元素的第一余弦相似度,和所述目标数据元素与所述对象聚类中心对应的数据元素集合中的任意一个数据元素的第二余弦相似度;

判断所述第一余弦相似度是否大于所述第二余弦相似度;

若是,则将所述目标数据元素划分至所述目标聚类中心对应的数据元素集合;

若否,则将所述目标数据元素划分至所述对象聚类中心对应的数据元素集合。

也就是说,当某一数据元素位于类边界时,通过余弦相似度确定其所属的数据元素集合。

余弦相似度的计算公式为:

其中,n表示数据维度,x表示处于类边界处的数据元素,y表示数据元素集合中的任意数据。

s104、根据每个数据元素集合的类型确定目标网络中的异常行为。

其中,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。

需要说明的是,当网络数据流量包含的数据包均为正常访问的数据包时,得到的数据元素集合即为正常数据集合;当网络数据流量包含的数据包为正常访问的数据包和dos攻击的数据包时,得到的数据元素集合即为正常数据集合和dos攻击集合。也就是说,数据元素集合的类型由网络数据流量包含的数据包类型决定。

若网络数据流量包含的数据包类型包括:dos攻击、probing攻击、r2l攻击、u2r攻击和正常数据包,则得到的数据元素集合为dos攻击集合、probing攻击集合、r2l攻击集合、u2r攻击集合和正常数据集合。

可见,本实施例提供了一种网络异常行为确定方法,所述方法在对网络数据流量进行分类时,首先构建包含每个数据包的数据完全图,进而利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心,从而避免了数据点距离平均值选取聚类中心带来的聚类效果不明显、容易陷入局部最优解问题;进一步地,根据每个聚类中心分别对网络数据流量进行分类,得到的每个聚类中心对应的数据元素集合,能够准确地确定目标网络中存在的异常行为,从而提高了网络数据流量的分类效率和准确率。

本发明实施例公开了另一种网络异常行为确定方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。

参见图2,本发明实施例提供的另一种网络异常行为确定方法,包括:

s201、获取目标网络中的网络数据流量,并将网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;

s202、利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心;

s203、根据每个聚类中心分别对网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;

s204、分别计算每个数据元素集合的类内距离与类间距离的比值;

s205、判断所有数据元素集合的类内距离与类间距离的比值是否均小于预设的第一阈值;若是,则执行s207;若否,则执行s206;

s206、按照目标公式分别更新每个聚类中心,并执行s203;

s207、计算目标函数的函数值;

s208、判断计算得到的函数值与初始函数值的差值是否小于预设的第二阈值;若是,则执行s209;若否,则执行s210;

s209、根据每个数据元素集合的类型确定目标网络中的异常行为。

其中,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定;

s210、将计算得到的函数值作为初始函数值,并执行s206。

其中,所述目标公式为:g’=g(x,y,z),x=(x1m1+x2m2+··+ximi)/m,y=(y1m1+y2m2+··+yimi)/m,z=(z1m1+z2m2+··+zimi)/m;

g’表示更新后的聚类中心,m表示更新前的聚类中心到自身类别中每个数据元素的距离之和,x、y、z分别表示更新后的聚类中心在三维空间中的坐标;

m1、m2··mi表示更新前数据元素集合中的各个数据元素分别到对应的聚类中心的距离,x1、x2··xi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的x坐标值,y1、y2··yi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的y坐标值,z1、z2··zi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的z坐标值。

需要说明的是,但是随着维度的增加,运算量也会指数级增长,因此为了降低运算复杂度,提高运算效率,在实际测试中可以只进行x、y二维空间映射。

每个数据元素集合可以看作一个类别,因此每个数据元素集合的聚类中心即为一个类别的聚类中心。为了更清楚地说明目标公式,现举例如下:

假设一个数据元素集合中包括三个数据元素:中心数据元素o、数据元素a1和数据元素a2,其中a1到o的距离为d1,a2到o的距离为d2,a1映射至三维空间的坐标为(x1,y1,z1),a2映射至三维空间的坐标为(x2,y2,z2),那么m1=d1,m2=d2,m=d1+d2,x=(x1d1+x2d2),y=(y1d1+y2d2),z=(z1d1+z2d2),因此更新后的聚类中心在三维空间的坐标为(x,y,z)。如此便获得了更新后的聚类中心。

具体的,类内距离指类簇内所有数据点到聚类中心距离的平均值。若cj为聚类中心,xi是以cj为中心的类簇中的任意数据元素,那么类内距离dwc用公式表示为:

其中,n表示当前类簇中除cj外的数据元素的个数。

类间距离指代当前聚类中心到其他聚类中心距离的平均值。网络数据流量被分为三个数据元素集合,分别为a、b、c。a对应的聚类中心为aj,b对应的聚类中心为bj,c对应的聚类中心为cj,那么a的类间距离为:aj到bj的距离与aj到cj的距离之和的二分之一。

对于分类得到的数据元素集合而言,集合内各数据元素的距离越近越好,不同集合之间的区别越大越好,因此当一个数据元素集合的类内距离与类间距离的比值越小时,说明数据元素集合越准确。

具体的,当所有数据元素集合的类内距离与类间距离的比值均小于预设的第一阈值时,计算目标函数的函数值,并判断计算得到的函数值与初始函数值的差值是否小于预设的第二阈值;若是,则执行所述根据每个数据元素集合的类型确定所述目标网络中的异常行为的步骤;若否,则将所述计算得到的函数值作为所述初始函数值,并执行所述按照目标公式分别更新每个聚类中心的步骤。

也就是说,当得到的所有数据元素集合满足条件时,则再次通过目标函数判断所有数据元素集合是否足够准确。

具体的,目标函数为:

其中,目标函数j表示每个数据元素集合中所有点到当前数据元素集合对应的聚类中心的距离平方之和,当j最小即得到最小均方差时,认为所有足够准确。

例如:若存在三个数据元素集合a、b、c,每个数据元素集合除去聚类中心(xa,xb,xc)后还有两个点a1,a2;b1,b2;c1,c2;a1到xa的距离为da1,a2到xa的距离为da2,b1到xb的距离为db1,b2到xb的距离为db2,c1到xc的距离为dc1,c2到xc的距离为dc2,那么目标函数j的函数值为:da12+da22+db12+db22+dc12+dc22

可见,本实施例提供了另一种网络异常行为确定方法,所述方法在对网络数据流量进行分类时,首先构建包含每个数据包的数据完全图,进而利用kruskal算法将数据完全图优化为最小生成树,并将最小生成树的每个节点作为聚类中心,从而避免了数据点距离平均值选取聚类中心带来的聚类效果不明显、容易陷入局部最优解问题;进一步地,根据每个聚类中心分别对网络数据流量进行分类,得到的每个聚类中心对应的数据元素集合,通过每个数据元素集合的类内距离与类间距离的比值和目标函数判断了聚类结果的准确性,当聚类结果不满足条件时,更新聚类中心并重新聚类,提高了聚类结果的准确率,从而能够根据得到的精准聚类结果准确地确定目标网络中的异常行为。

下面对本发明实施例提供的一种网络异常行为确定装置进行介绍,下文描述的一种网络异常行为确定装置与上文描述的一种网络异常行为确定方法可以相互参照。

参见图3,本发明实施例提供的一种网络异常行为确定装置,包括:

获取模块301,用于获取目标网络中的网络数据流量,并将所述网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;

优化模块302,用于利用kruskal算法将所述数据完全图优化为最小生成树,并将所述最小生成树的每个节点作为聚类中心;

分类模块303,用于根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;

确定模块304,用于根据每个数据元素集合的类型确定所述目标网络中的异常行为,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。

其中,还包括:

第一判断模块,用于分别计算每个数据元素集合的类内距离与类间距离的比值,并判断所有数据元素集合的类内距离与类间距离的比值是否均小于预设的第一阈值;

第一执行模块,用于当所有数据元素集合的类内距离与类间距离的比值均小于预设的第一阈值时,执行所述确定模块中的步骤。

其中,还包括:

更新模块,用于当存在不小于所述第一阈值的比值时,按照目标公式分别更新每个聚类中心,并执行所述根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合的步骤;

其中,所述目标公式为:g’=g(x,y,z),x=(x1m1+x2m2+··+ximi)/m,y=(y1m1+y2m2+··+yimi)/m,z=(z1m1+z2m2+··+zimi)/m;g’表示更新后的聚类中心,m表示更新前的聚类中心到自身类别中每个数据元素的距离之和,x、y、z分别表示更新后的聚类中心在三维空间中的坐标;

m1、m2··mi表示更新前数据元素集合中的各个数据元素分别到对应的聚类中心的距离,x1、x2··xi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的x坐标值,y1、y2··yi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的y坐标值,z1、z2··zi表示更新前数据元素集合中的各个数据元素分别映射至三维空间的z坐标值。

其中,还包括:

第二判断模块,用于计算目标函数的函数值,并判断计算得到的函数值与初始函数值的差值是否小于预设的第二阈值;

第二执行模块,用于当计算得到的函数值与初始函数值的差值小于预设的第二阈值时,执行所述确定模块中的步骤。

其中,还包括:

第三执行模块,用于当所述计算得到的函数值与初始函数值的差值不小于预设的第二阈值时,将所述计算得到的函数值作为所述初始函数值,并执行所述更新模块中的步骤。

其中,所述分类模块具体用于:

针对每个聚类中心,按照下述步骤获得每个聚类中心分别对应的数据元素集合:

根据目标聚类中心删减所述网络数据流量包含的数据包,得到目标数据包集合;计算所述目标数据包集合中的每个数据元素与所述目标聚类中心的距离,并分别判断每个距离是否小于预设的半径值;若是,则将小于所述半径值的距离对应的数据元素划分至所述目标聚类中心对应的数据元素集合。

其中,所述分类模块还用于:

当目标数据元素和所述目标聚类中心的第一距离,与所述目标数据元素和对象聚类中心的第二距离,均小于所述半径值时,计算所述目标数据元素与所述目标聚类中心对应的数据元素集合中的任意一个数据元素的第一余弦相似度,和所述目标数据元素与所述对象聚类中心对应的数据元素集合中的任意一个数据元素的第二余弦相似度;

判断所述第一余弦相似度是否大于所述第二余弦相似度;

若是,则将所述目标数据元素划分至所述目标聚类中心对应的数据元素集合;

若否,则将所述目标数据元素划分至所述对象聚类中心对应的数据元素集合。

可见,本实施例提供了一种网络异常行为确定装置,包括:获取模块、优化模块、分类模块以及确定模块。首先由获取模块获取目标网络中的网络数据流量,并将所述网络数据流量包含的每个数据包作为完全图的节点,构建数据完全图;然后优化模块利用kruskal算法将所述数据完全图优化为最小生成树,并将所述最小生成树的每个节点作为聚类中心;进而分类模块根据每个聚类中心分别对所述网络数据流量包含的所有数据包进行分类,得到每个聚类中心分别对应的数据元素集合;最后确定模块根据每个数据元素集合的类型确定所述目标网络中的异常行为,数据元素集合的类型由所述网络数据流量包含的网络攻击种类确定。如此各个模块之间分工合作,各司其职,从而提高了网络数据流量的分类效率和准确率,能够准确地确定目标网络中存在的异常行为。

下面对本发明实施例提供的一种网络异常行为确定设备进行介绍,下文描述的一种网络异常行为确定设备与上文描述的一种网络异常行为确定方法及装置可以相互参照。

参见图4,本发明实施例提供的一种网络异常行为确定设备,包括:

存储器401,用于存储计算机程序;

处理器402,用于执行所述计算机程序时实现上述任意实施例所述的网络异常行为确定方法的步骤。

下面对本发明实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种网络异常行为确定方法、装置及设备可以相互参照。

一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意实施例所述的网络异常行为确定方法的步骤。

为了更清楚地证明本说明书提供的网络异常行为确定方法的优越性,采用kddcup99数据集进行仿真实验,该数据集是由哥伦比亚大学教授和北卡罗来纳州立大学教授通过数据挖掘技术对darpa数据进行处理形成的。该数据集中包括nomal、dos、probing、r2l、u2r五大类攻击类型的数据,并且又细划分为22种攻击行为数据,其中训练集仅存在8种攻击行为数据,另外14种攻击行为数据在测试集中存在。

为更快的实现数据聚类操作,可首先对数据集进行数据预处理,把数据集中的离散属性数据转换为连续性数据,然后再进行数据点标准化与归一化。

数据点标准化可按照下述公式进行:

其中,x′ij是xij标准化之后的数值,avgj为数据的平均值,stadj为数据的平均绝对偏差。

数据归一化是把标准化的数据归一到[0,1]区间之内,归一化操作可按照下述公式进行:

其中,x″ij是x″ij归一化之后的值,xmin、xmax分别为标准化数据中的最小值与最大值。

从kddcup99数据集中按比例抽取一部分数据作为训练集与测试集,把训练集测试集分为四组进行分别测试。其中每组正常行为数据为4890条,非正常行为条数为110条。其中,异常行为测试数据集如表1所示。

表1

使用检测率与误检率作为评判标准。其中:

采用传统k-means算法和融合高斯随机数的k-means算法分别对测试数据集进行处理,得到的分类结果如表2所示。

表2

采用本发明提供的方法对测试数据集进行处理,得到的分类结果如表3所示。

表3

由表3可以看出,本发明在网络异常行为检测方面有较好的效果。与传统k-means算法和融合高斯随机数k-means算法相比,检测率有明显的提升,均值提升到95.2%,误检率平均值下降到1%以下。

为了更好检验本发明对于网络异常行为的检测效果,可使用k-means算法和本发明对同一攻击类型进行处理,请参见表4。

表4

可见,传统的k-means算法对于u2l、r2l的检测效果不是太理想,这两种攻击类型都是伪装成用户正常行为来实现攻击的,数据特征与正常行为特征具有相似性,并且两种攻击类型数据数目较少。而本发明对于四种攻击都有很好的检测效果,尤其是prohe类型攻击,达到了完全检测。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1