基于相似度计算的网络攻击分类方法

2021-01-06 09:53贾志淳辛民栋李彦谚韩秋阳
关键词:攻击者集群次数

贾志淳,辛民栋,李彦谚,韩秋阳,郑 行,邢 星

(渤海大学信息科学与技术学院,辽宁锦州121013)

0 引言

随着基于网络的计算机服务和应用程序在网络系统上运行的大量增长,对网络系统安全的威胁来自许多方面,这些威胁伴随着时间的推移也在不断的更新和进化.从宏观角度来看,这些威胁可以分为人为威胁和自然威胁.自然威胁来自各种自然灾害、不利的场地环境、电磁干扰、网络设备的自然老化等.这些威胁是漫无目的的,但会对网络通信系统造成破坏,危害通信安全.然而,人为威胁则是通过寻找系统的弱点,对网络信息系统进行有目的性的攻击.例如,以未经授权的方式破坏、欺骗和窃取数据信息.与自然威胁相比,精心设计的人工攻击威胁是很难防止网络信息或数据的被破坏.如何正确地对网络攻击进行适当的分类已成为一个关键问题.

目前,研究人员[1]和服务提供商[2]越来越重视对攻击[3]的检测.文献[4-25]提出了一些攻击检测的方法,这些方法以异常监督的方式得到了广泛的应用.文献[26,27]使用支持向量机(SVM)的方式(使用KDD数据集[28])检测异常.文献[29,30]建立了基于人工神经网络的IDS模型,并使用相同的数据集检测异常.即使这些异常分布不均匀,它们也可以应用级联分类器来检测和分类KDD数据集的异常.与此同时,一些学者对攻击的分类也很感兴趣.但是这些工作[31,32]只关注使用机器学习模型进行异常分类的总体精度和准确性.

此外,一些常用的数据集用于检测和分类攻击,如KDD、CAIDA[33]、UNSW[34,35]、ISOT[36]、CDX[37]和IS⁃CX[38].ISOT和CAIDA只考虑一种单一类型的攻击——僵尸网络和DDoS攻击.ISCX和CDX并不像[39]中声称的那样,它并非实际的流量.KDD数据集已经被广泛地应用于建立异常检测与分类模型.KDD数据集包括四种类型的攻击,它们具有完全不同的流量行为.本文提出了一种基于数据的属性,计算相似度并且二次过滤对网络攻击进行分类的技术,先将数据集分成5个集群,分别是受到四种攻击(U2R,R2L,Dos,Backdoor)的集群和未受攻击的集群,并且提取每个集群的相关属性值,根据集群的属性(连接时长)先进行判断,进行排序,过滤数据后,再通过另一属性(连接次数)计算相似度,对数据进行二次过滤,得到最终结果,判定数据是否受到攻击或者受到哪种攻击.实验结果表明,该方法比文献[40]方法快速、准确.

1 攻击类型信息

如今,随着网络功能变得越来越复杂,网络攻击的类型也变得多样化.在本节中,首先重新定义和分类攻击的类型.然后,对这些网络攻击的特征和形式进行分析.最后,解释了使用U2R,R2L,Dos和Back⁃door这四种攻击进行分类的原因.

拒绝服务攻击(Dos)是目前最常见的一种攻击类型.这种攻击的终极目标是使服务器拒绝接受用户的访问请求,破坏系统内部的正常运行,以达到阻断用户网络连接的结果.由于攻击者不断地给服务器发送请求,服务器接收和处理数据包的能力达到上限,这个时候服务器将丧失处理数据的能力,导致服务器系统的相关服务崩溃,系统资源耗尽.最平常的DOS攻击是攻击者给服务器发送大量的合理请求,占用服务器的大量内部空间和消耗系统大量资源,导致合法用户发送的请求难以进入服务器,以及服务器无法给予用户合理响应,最终,合法用户将无法获得服务.DOS攻击的过程基本如下:攻击者将给服务器发送大量的请求,而这些请求的地址都是假的,将不会给予服务器的合理相应,也就导致服务器接收到这些请求的时候,服务器对这些地址发送应答,但不会得到这些地址的响应,服务器长时间将处于等待的状态,在服务器长时间得不到响应的时候,将由于连接超时而断开服务,攻击者将持续这种行为,大量占用服务器空间,导致服务器系统内部占用的资源无法释放,最终服务器系统的相关服务崩溃,服务器也就无法分配资源接收合法用户的请求.这类攻击在现实生活中是非常常见的,因为它不需要像其他攻击一样,它不需要获得网络访问权限,也不需要更改合法用户的网络信息,它只是大量的占用服务器的内部空间,消耗系统或者应用程序的相关服务的资源,导致合法用户的服务请求无法得到响应.

分布式拒绝服务(DDoS),是一种基于DoS的特殊形式的分布、协作式的大规模拒绝服务攻击.也就是说不再是单一的服务攻击多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击.而分布式,就是在传统的攻击模式进行无规律的攻击.由此可见,它的攻击力度更大,危害性当然也更大了.它主要瞄准比较大的网站,比如商业公司,搜索引擎和政府部门的Web站点.

蛮力攻击,如:Backdoor.在经典术语里,后门被叫做用来维持持久交互的工具,而后门攻击这类攻击类型,通常都是攻击者获得网络访问权限,入侵应用程序的系统使用户与它的服务器连接.蛮力攻击的基本过程如下:攻击者将入侵应用程序系统,获取对系统资源的访问权限,这样它将拥有着对正常用户开放的系统,攻击者将在应用程序的原有基础上创造一个后门,使正常用户将不需要更改任何有关于账号和密码的信息,直接按照原来的程序访问攻击者创造的后门服务器,来对用户信息进行操控,获取利益.

IP地址欺骗攻击,如SQL注入攻击.攻击者将对所受信任的主机进行模拟,而这种主机的IP地址是需要能够在特定资源的访问位置受到外部信任的的IP地址,攻击者将口令或者数据输入到客户机或者应用程序系统中,将用户的连接与自己模拟的数据流相连,实现双向通信,攻击者将更改自己所欺骗的IP地址的所有路由表,这种攻击将可以实现欺骗防火墙,进行远程攻击,这种攻击的破坏强度大,用户如果受到攻击将很难退出应用程序,用户的网络信息也将被盗取,也是几类攻击中手段最恶劣,破解难度比较大的攻击类型之一.

端口扫描攻击,端口扫描攻击利用套接字编程和目标主机的一些端口来建立TCP连接、传输协议验证等.目的是检测目标主机扫描端口的活动状态、主机提供的服务、服务的缺陷等.它们常用的扫描方法是连接扫描和碎片扫描.

在本文中,我们使用KDD数据集对攻击进行分类.在KDD数据集中,有四种类型的攻击:U2R、R2L、Dos和Backdoor.这些类型的攻击是完全不同的网络流量和行为.因此,我们使用U2R、R2L、Dos和Backdoor对攻击进行分类.

2 框架

本文提出了一种基于计算训练数据和对象数据之间的相似性来对网络攻击进行分类的方法.将数据属性与网络中四种类型的攻击的属性进行比较.根据获得的匹配结果,该方法可以对这些攻击进行分类.根据匹配结果,该方法可以对这些攻击进行分类.

首先,我们对数据集进行分类,并将数据集中的数据划分为5个集群,模型如图1所示.我们需要提取每个集群中的每个对象的连接时长和连接次数,以及这些数值的平均值.

这个分类模型主要目的是将被测试的数据集中的对象进行分类,为后续的分类计算做准备.

我们将传入的数据集进行特征提取(即提取数据集中每个对象的连接时长),将所提取的数据带入我们设定的公式(1)-(5)中,进行第一级相似度的计算,输出第一级相似度值(包括U2R,R2L,Dos,Backdoor和Normal)(图2).

对第一级分类模型中获得的数据进行过滤,即对第一级所得的相似度值进行降序排列,选出排名前三的值,进入到第二级相似度计算,同样将进行特征提取(即提取数据集中每个对象的连接次数),将所提取的数据带入设定的公式(6)中,进行第二级相似度计算,根据相似度值,可以最终确定数据受到哪种攻击或属于正常数据(图3).

3 方法

3.1 第一级相似度分类

集群C包括5种小集群,C=()CDos,CBackdoor,CU2R,CR2L,CNormalData,集群C包括N个对象,其中N=N1+N2 +...+Ni,CDos,CBackdoor,CU2R,CR2L,CNormalData这5个小集群分别包括{N1,N2,...,Ni}个对象,每个小集群中每个对象连接时长为Ti,i=1,2,3,4,5.每个小集群中对象的平均连接时长为其中y,y是新传入的数据集Y中的任意一个对象,y=0,1,...,i,j是集群C中的任意一个对象,Cj≤j≤N,而T(Dos,j)便是CDos中的第j个对象的连接时间,M表示数据集的属性,M A,A表示5类集群的属性,A=(1,2,3,4,5).

公式中的符号意义如下:M表示数据集的属性,C表示的是数据集中的总集群,C=表示的是集群C中的5个集群,A表示5类集群的属性,Y表示为新传入的数据集表示每个小集群中对象的平均连接时长,Sim(Y,C5clusters)是数据集和5个集群之间基于连接时间的相似度,T表示的是每个集群中对象的连接时长,y表示的是数据集Y中的任意对象,j表示的是集群C中的任意对象,T(x,j)表示CDos中的第j个对象的连接时间,如T(Dos,j),T(U2R,j)等.第一级相似度分类公式如下:

根据Sim的数值,我们可以判断它是否受到5种主要类型的攻击.我们为了保证数据的精确性,我们的第二级模型对数据进行了二次过滤.

3.2 第二级相似度分类

根据一级相似度分类模型得到的数据,我们对数据进行降序排序,然后选择前三个,并使用三个数据的连接次数进行第二级相似度计算,并且计算结果的最大值是通过确定数据集所属的集群,对攻击进行分类.C3clusters是在第一级相似度降序排名前三名的3个集群,其中每个集群包括Ni个对象,其中i=1,2,3,4,5…,i是每个集群中的对象的连接次数表示为Si,i=1,2,3,…,每个集群中对象的平均连接次数为=1,2,3,Yi是集群中任意的对象,i=1,2,3,…,yj是集群C3clusters中任意的对象,是子集群中的任意对象的连接次数,M表示数据集的属性,M≤A,A表示5类集群的属性.

公式中的符号意义如下:M是数据集的属性,A表示5类集群的属性,C3clusters是在第一级相似度所得的值进行降序排名所得的前三名的集群,Ni是每个集群中的对象,C是数据集中的集群,Y是新传入的数据集,S是集群中对象的连接次数,yj是集群Y中的对象,表示每个集群中对象的平均连接次数,是小集群中的任意对象的连接次数是数据集和3个集群之间基于连接次数的相似度.

第二级相似度分类公式如下:

将以上所得的值进行比较,根据结果的最大值,我们可以确定数据是否受到攻击和受到哪个类型的攻击,并根据其属性对数据进行分类.

4 实验

为了评估我们的方法,建立了一个模拟环境实验.在实验中,随机选择数据集中的集群,标记集群中的点,将对象标记为攻击对象或不攻击对象,并确定群集是否受到攻击以及攻击类型.使用数据集和第一级模型和第二级模型的计算,获得表3中的数据并获得这四种攻击的相似系数.将来,可以根据此数据对属于U2R、R2L、Dos和Backdoor的攻击还是属于Normal Data进行分类,更重要的是判断该模型的准确性.

我们分别标记正常点和攻击点并进行测试,方法如下:在实验结果的基础上,我们根据三个参数进行分析:计算分类模型的计算真正类率(TPR)和误报率(FAR)和召回率(RR),这对于分类模型的性能测量非常重要.真正类率(TPR)是正常数据被模型正确分类为正确数据的百分比(方程式7).FAR是正常数据被模型错误分类为异常数据的百分比(方程式8).RR与FAR相反,是正常数据被模型错误分类为异常数据的百分比(方程式9).TTE为总误差,由(方程式10)给出.这里,TP是正常数据被检测为正常数据的数量,FP是异常数据被检测为正常数据的数量,TN是异常数据被检测为异常数据的数量;FN是正常数据被检测为异常数据的数量.

单一类型的攻击模型训练仅仅具有正常流量的攻击数据.例如,Dos攻击模型将考虑Dos攻击和正常流量.表1给出了不考虑其他攻击的分类模型的结果.我们可以从表2中发现,我们的模型控制了集群遭受的攻击类型的分类FAR在1%以内,RR在13%以内.它证明我们的实验方法和模型仍然非常可行.

表1 相似度

表2 分类结果

5 结束语

本文提出了一种基于数据的属性,计算相似性和二次过滤的技术,分别是Dos、U2R、R2L、Backdoor和Normal data.提取数据中每个对象和五个集群中的每个对象的连接持续时间和平均持续时间,并计算相似性.并且对数据进行二次过滤,提取第一层所得数据中每个对象和五个集群中的每个对象的连接次数和平均连接次数,进一步的,保证了结果的准确性.

该方法利用相似性对攻击进行分类,告别单一检测攻击,并对攻击分类进行深入研究;改进了单层分类模型,并创新了四类攻击的分类方法.扩展到不同类型攻击的特征分类和分类准确性.选择在我们的模型中使用KDD数据集,因为它是最新且最全面的公开数据集.实验结果表明,相似性分类技术在分类检测中可以达到99%的准确率.我们建立了两种分类技术模型,传统的分类和我们自己的两种分类算法相比,结果表明,该方法的性能优于传统方法.然而,由于功能相似性和数据不平衡,并没有计算和分类相似系数和对更多类型攻击的期望.最后,我们强调需要更多数据或功能来区分这些攻击.

猜你喜欢
攻击者集群次数
基于贝叶斯博弈的防御资源调配模型研究
2020年,我国汽车召回次数同比减少10.8%,召回数量同比增长3.9%
功能性新材料产业集群加速形成
最后才吃梨
俄罗斯是全球阅兵次数最多的国家吗?
海上小型无人机集群的反制装备需求与应对之策研究
培育世界级汽车产业集群
正面迎接批判
正面迎接批判
勤快又呆萌的集群机器人