CN110149347A - 利用拐点半径实现动态自适应聚类的网络入侵检测方法 - Google Patents
利用拐点半径实现动态自适应聚类的网络入侵检测方法 Download PDFInfo
- Publication number
- CN110149347A CN110149347A CN201910526742.0A CN201910526742A CN110149347A CN 110149347 A CN110149347 A CN 110149347A CN 201910526742 A CN201910526742 A CN 201910526742A CN 110149347 A CN110149347 A CN 110149347A
- Authority
- CN
- China
- Prior art keywords
- cluster
- node
- nodes
- corner radius
- data record
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 56
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 37
- 239000013598 vector Substances 0.000 claims abstract description 33
- 230000002159 abnormal effect Effects 0.000 claims abstract description 22
- 230000009467 reduction Effects 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims description 15
- 238000006116 polymerization reaction Methods 0.000 claims description 4
- 210000003127 knee Anatomy 0.000 claims description 3
- 238000005259 measurement Methods 0.000 abstract description 11
- 238000005457 optimization Methods 0.000 abstract description 9
- 238000012795 verification Methods 0.000 abstract description 8
- 239000000523 sample Substances 0.000 description 24
- 238000012360 testing method Methods 0.000 description 18
- 238000007689 inspection Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 9
- 241000208340 Araliaceae Species 0.000 description 6
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 6
- 235000003140 Panax quinquefolius Nutrition 0.000 description 6
- 235000008434 ginseng Nutrition 0.000 description 6
- 230000009545 invasion Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000003064 k means clustering Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 241001269238 Data Species 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000002790 cross-validation Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Complex Calculations (AREA)
Abstract
本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,包括如下步骤:对多维数据记录进行降维操作;对降维后的数据记录的特征向量进行标准化变化;将标准化后的数据记录视作一个节点,应用欧几里得算法计算节点间的距离以表示节点间的关联度,依据节点间的关联度进行初始聚类,将初始聚类中所有簇的中心作为抽象节点,重复聚类过程,完成最终聚类;判断各个簇中的节点是否正常,若簇中正常节点的比例大于异常节点的比例,则将此簇的所有节点划为正常类;否则将此簇的所有节点划为异常类。本发明方法可以实现网络行为数据的自动聚类以及优化,其在检测率与稳定性方面具有明显优势。
Description
技术领域
本发明属于网络安全技术领域,涉及利用拐点半径实现动态自适应聚类的网络入侵检测方法。
背景技术
互联网技术的飞速发展深刻影响着人类的生产生活方式,上网活动已经成为人类日常生活的重要组成部分。然而,这种全球性的网络高度普及也引发了一系列的安全问题。计算机网络协议的开放性与灵活性使得信息系统更容易受到入侵者的攻击,由此需要针对计算机网络进行持续监控和保护。用户身份验证、数据加密与防火墙便是用于保护计算机安全的传统技术。后来出现的入侵检测系统(Intrusion Detection Systems,IDS)则使用了特定的分析技术来检测攻击、识别攻击源并向网络管理员发出警报。对于异常检测,入侵检测系统往往使用行为模式来指示恶意活动,通过分析过去的活动以识别观察到的行为是否正常。早期的入侵检测系统主要使用特征码技术检测满足其特征码数据库标识的所有攻击,具有一定的滞后性,并且漏报率较高。基于行为建模是新出现的检测方法之一,需要综合利用数据挖掘、统计分析以及人工智能等多种技术。
事实上,客户机针对Web服务器的访问具有时间随意性,也因此自然而然地产生大量流量。每个网络连接都可抽象可视化为一组属性,网络传输数据以此种方式记录下来,并作为数据基础用来研究和分类正常及异常传输。对于NSL-KDD数据集,该数据集是其前身KDD'99数据集的改进版本,其中包含有完整的KDD数据集基本记录,但信息维数更多,网络连接描述更为细致,并且删除了其中原有的冗余记录以便使分类更为精确。
众多学者借助NSL-KDD数据集开展了针对网络入侵检测更为深入广泛地研究。例如,L.Dhanabal等分析了NSL-KDD各维度信息的具体含义,论述各种分类算法在网络流量异常检测中的有效性,并归纳总结出常用网络协议栈中的可用协议与入侵者异常网络攻击之间的关系;Wei-Chao Lin等则提出了CANN(Cluster Center And Nearest Neighbor)算法[3],基于一维距离的特征测量,利用K-最近邻(kNN,k-NearestNeighbor)分类算法实现入侵检测。然而,现有研究大部分都属于监督类型的检测算法,对于没有类别标记以及数据识别特征不明显的网络访问连接,无法准确训练入侵检测模型,从而造成检测准确度不高。
发明内容
本发明的目的是提供利用拐点半径实现动态自适应聚类的网络入侵检测方法,可以实现网络行为数据的自动聚类以及优化,其在检测率与稳定性方面具有明显优势。
本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,包括如下步骤:
步骤1:对网络连接的多维数据记录进行降维操作;
步骤2:对降维后的数据记录的特征向量进行标准化变化;
步骤3:将标准化后的数据记录视作一个节点,应用欧几里得算法计算节点间的距离以表示节点间的关联度,依据节点间的关联度进行初始聚类,将初始聚类中所有簇的中心作为抽象节点,重复聚类过程,完成最终聚类;
步骤4:判断各个簇中的节点是否正常,若簇中正常节点的比例大于异常节点的比例,则将此簇的所有节点划为正常类;否则将此簇的所有节点划为异常类。
在本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法中,所述步骤1具体为:
在多维度中挑选一个维度的特征向量作为分类依据,利用SVM向量机分类出训练集中的正常、异常簇,然后计算此维度的特征向量对应的Fisher评分,循环上述过程,直到多个维度的Fisher评分计算完成。
在本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法中,所述步骤2具体为:
每个数据记录f按公式(1)计算其特征值的平均绝对偏差:
其中,Eif是数据记录f的i个属性特征向量,Pf是f的平均特征向量,即:
按照公式(3)求得数据记录f各维度特征值标准化后的特征向量。
其中,Sif表示标准化后的特征向量。
在本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法中,所述步骤3包括:
步骤3.1:将数据集中的每个数据记录视作一个节点,基于欧几里得距离计算每个节点Xi与其他节点Xj的距离dij;
步骤3.2:累加每个节点Xi与其他节点Xj的距离dij,得到该节点临边距离之和,即
步骤3.3:将临边距离之和Di值最小的节点Xmin作为簇的初始中心,即Ci=Xmin;
步骤3.4:计算初始簇中心Ci的拐点半径dmax;
步骤3.5:将以Ci为圆心,将拐点半径dmax范围内的节点与Ci聚合为一个簇;
步骤3.6:去除已聚合的节点,循环步骤3.2至步骤3.5,直到簇数不再变化;
步骤3.7:将剩余未聚合的节点同其距离最近的簇中心聚合,完成所有节点的初始聚类划分;
步骤3.8:将初始聚类中所有簇的中心作为抽象节点,替代原有簇,并将这些抽象节点作为新一轮聚类迭代的节点;
步骤3.9:再一次循环步骤3.1至步骤3.7,结束最终聚类过程。
在本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法中,所述步骤3.1中根据下式计算两个节点Xi和Xj的欧几里得距离:
其中,xin为节点Xi的第n维的特征值,xjn为节点Xj的第n维的特征值。
在本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法中,所述步骤3.4包括:
步骤3.4.1:首先将初始簇中心与其他节点的距离集从大到小排序,得到新的距离集;
步骤3.4.2:根据新的距离集作二维曲线图,距离对应的序号代表横坐标,距离代表纵坐标;
步骤3.4.3:忽略曲线上明显的离群数值点,基于最小二乘法拟合原理,利用三次方程对二维曲线图进行拟合;
步骤3.4.4:通过二阶求导计算出曲线拐点对应的横坐标值以及对应纵坐标的值,纵坐标的值即为拐点半径。
本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,至少具有以下有益效果:
1)、智能的检测操作及较低的聚类成本
改进MajorClust算法在忽略明显的离群点后,能够动态自适应计算出拐点半径作为聚类半径,不要求进行经验性调参,入侵检测消耗的成本更少。而传统的无监督型算法,将其应用于入侵检测时,为了提高检测率和聚类准确度,往往需要去除离群点后再进行经验性调参,在数据预处理和聚类模型优化处理上消耗大量成本。
2)、良好的检测能力与稳定性
离群点仅在计算拐点半径时被忽略,不影响它们在算法的入侵检测环节中被检测,保证入侵检测全覆盖。改进MajorClust算法具有全检能力及较高的自适应性,检测能力与稳定性也优于传统聚类算法。
附图说明
图1是本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法的流程图;
图2是利用三次方程对二维曲线图进行拟合的曲线图。
具体实施方式
随着网络攻击日益频繁,传统安全防护产品也存在着漏洞,网络入侵检测作为信息网络安全的重要防护手段可弥补防火墙的不足,提供了有效的网络安全防护措施。
对于监督型算法,其严重依赖训练数据集,在检测已知入侵行为的能力较强,但对未知入侵行为的检测能力较差,在实际入侵检测中的应用能力不够全面,适用性不强。对于无监督型算法,将其应用于入侵检测时,为了提高检测率和聚类准确度,往往需要去除离群点后再进行经验性调参(如Kmeans算法和DBSCAN算法),在数据预处理和聚类模型优化处理上消耗大量成本,并且对于被去除的离群点没能继续检测它们是否异常。
MajorClust是1999年由Benno Stein与Oliver Niggemann发明的基于密度的聚类算法,目前已发展成为无监督文档聚类中最有前途和最成功的算法之一。MajorClust能够自动地对数据进行分类,不必像K-Means算法那样事先给定簇的数目,而是通过计算簇间节点的联结度,进而改变簇的形状以提升聚类效率。自动聚类在文本型数据集中基于文本相似度就容易实现。但对于NSL-KDD等数值型数据集,其样本间及簇间相似性难以确定。目前学界常用的确定方法是利用已知数据集先验确定相关参数阈值,不是纯粹的自适应计算相似度,因此纯自动聚类还是难以实现的现实问题。
为此,本发明提出一种利用拐点半径实现动态自适应聚类的网络入侵检测方法,依据簇中心与其他节点的距离分布特点通过拟合曲线确定聚类半径,并将簇抽象为节点重新进行聚类迭代,进而实现网络行为数据的自动聚类以及优化。
如图1所示,本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,包括如下步骤:
步骤1:对网络连接的多维数据记录进行降维操作;
各种文本型或者数值型数据集都可适用本入侵检测方法,但需要经过数据预处理,使各个数据间的关联度能用一维数值表示。首先对多维数据记录进行降维操作。
具体实施时,在多维度中挑选一个维度的特征向量作为分类依据,利用SVM向量机分类出训练集中的正常、异常簇,然后计算此维度的特征向量对应的Fisher评分,循环上述过程,直到多个维度的Fisher评分计算完成。Fisher评分的定义为:
其中,Sb为两个簇间的距离,Sw为簇内距离。
其中,分别为正常簇中所有节点的均值、异常簇中所有节点的均值、所有节点的均值。
其中,x∈+1和x∈-1的+1、-1分别表示正常簇、异常簇,x表示节点特征值。而Sw的定义为:
Sw=S1+S2
其中,N1是正常簇中的节点数,N2是异常簇中的节点数;σ1、σ2分别为正常簇、异常簇内距离方差。
例如:NSL-KDD数据集中的每条数据记录代表一个由41维特征向量(不包含类型特征)表示的网络连接,其中前9个特征为基本类型(描述协议类型、连接时长、连接状态等),10到22这13个特征为内容类型(主要说明登录状态、权限、文件创建等),其余19个特征为流量类型(包括目标地址相同的连接数量、源地址相同的连接数量、端口号相同的连接数量、出错数据包百分比等)。作为高维数据集,NSL-KDD在实际处理时通常需要进行降维操作。以往针对NSL-KDD的研究多基于序号7、9、11、18、20、21这6维特征,为进一步强化入侵检测需要,本发明基于向量机的入侵检测,利用Fisher评分由高到低进行选择,同时剔除其中的非数值向量,选出特定的17维数据作为聚类依据,从而滤除非代表性特征。选取的17维特征中不含离散型变量,可以更为方便地进行数值运算。
步骤2:对降维后的数据记录的特征向量进行标准化变化;
降维后的数据记录的各个特征向量的量度标准不同,极容易出现“大数吃小数”问题,导致整体特征被该特征向量所掩盖。为此,需要对数据记录的特征向量进行标准化变化。
每个数据记录f按公式(1)计算其特征值的平均绝对偏差:
其中,Eif是数据记录f的i个属性特征向量,Pf是f的平均特征向量,即:
按照公式(3)求得数据记录f各维度特征值标准化后的特征向量。
其中,Sif表示标准化后的特征向量。
步骤3:将标准化后的数据记录视作一个节点,应用欧几里得算法计算节点间的距离以表示节点间的关联度,距离越短说明相似度越高,依据节点间的关联度进行初始聚类,将初始聚类中所有簇的中心作为抽象节点,重复聚类过程,完成最终聚类,具体包括:
步骤3.1:将数据集中的每个数据记录视作一个节点,基于欧几里得距离计算每个节点Xi与其他节点Xj的距离dij;
具体根据下式计算两个节点Xi和Xj的欧几里得距离:
其中,xin为节点Xi的第n维的特征值,xjn为节点Xj的第n维的特征值。
步骤3.2:累加每个节点Xi与其他节点Xj的距离dij,得到该节点临边距离之和,即
步骤3.3:将临边距离之和Di值最小的节点Xmin作为簇的初始中心,即Ci=Xmin;
步骤3.4:计算初始簇中心Ci的拐点半径dmax,具体包括:
步骤3.4.1:首先将初始簇中心Ci与其他节点Xj的距离集{j=1,…,n(j≠i)|dij}从大到小排序,得到新的距离集{1≤m≤(n-1)|dm};
步骤3.4.2:根据新的距离集{1≤m≤(n-1)|dm}作m-dm二维曲线图,即由距离dm对应的序号m代表横坐标,距离dm代表纵坐标;
步骤3.4.3:忽略曲线上明显的离群数值点,基于最小二乘法拟合原理,利用三次方程对二维曲线图进行拟合;
步骤3.4.4:通过二阶求导计算出曲线拐点对应的横坐标值x以及对应纵坐标的值y,纵坐标的值y即为拐点半径。
图2中的曲线即为根据距离集合拟合出的三次方程:y=15.02×x3-309.69×x2+2024.02×x+96.96,此时的拐点半径为4293.29。
拐点半径的设计想法是由簇中心与其他节点的距离分布特点产生的。聚类过程中,算法需要找到这样一个聚类半径,能在合理区间内把相似度大的节点归属到簇中心所在的簇。通过观测簇中心与其他节点距离分布,发现这些距离由小到大排列时,类似一条三次方程或二次方程曲线。通过多次曲线拟合实验分析,最终确定使用三次方程的拟合效果更好。同时,曲线拟合三次方程而计算出的拐点半径,不仅可以有效的减少时间消耗,还可以保证较好的准确度。
若以二次方程拟合,由于二维曲线图呈快速递增趋势,二次方程曲线拟合后,截点对应的y值过小。用于聚类时,只能将很少的相似度大的节点划分出来。同时,耗时是采用拐点半径时的十倍以上(使用Python自带函数拟合),效率过低,且精度并不高。
步骤3.5:将以Ci为圆心,将拐点半径dmax范围内的节点与Ci聚合为一个簇;
步骤3.6:去除已聚合的节点,循环步骤3.2至步骤3.5,直到簇数不再变化;
步骤3.7:将剩余未聚合的节点同其距离最近的簇中心聚合,完成所有节点的初始聚类划分;
步骤3.8:将初始聚类中所有簇的中心作为抽象节点,替代原有簇,并将这些抽象节点作为新一轮聚类迭代的节点;
步骤3.9:再一次循环步骤3.1至步骤3.7,结束最终聚类过程。
步骤4:判断各个簇中的节点是否正常,若簇中正常节点的比例大于异常节点的比例,则将此簇的所有节点划为正常类;否则将此簇的所有节点划为异常类。
因为训练集的所有节点数据是否异常都是已知的,可以利用这些已知节点作为标记。在检测入侵行为记录时,将待检测的入侵行为记录与已知节点混合成一数据集,然后对此数据集进行预处理和聚类,聚类后将数据集节点划分为几个簇。若簇中的已知的正常节点的比例大于已知的异常节点的比例,则将此簇的所有节点划为正常类;否则将此簇的所有节点划为异常类。
本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,在数据集预处理方面,首先对数据进行降维操作,从而滤除非代表性特征。选取不含离散型变量,可以更为方便地进行数值运算。同时,数据节点各个向量的量度标准不同,极容易出现“大数吃小数”问题,导致整体特征被这该特征向量所掩盖。为此,对数据特征进行标准化变化。采用曲线拟合方法和拐点半径计算算法,并以拐点半径作为节点关系的判定标准。若少部分节点关系无法用拐点半径判定时,将其自动划分到距离最近的簇中。
聚类操作包含有两次迭代过程,原因在于第一次迭代后,节点数多的簇较少,节点数少的簇较多,正常类与异常类的簇数均不止一个。为了更高效地检测正常和异常节点,使用第二次迭代继续对第一次迭代后的簇进行聚类,最终实现正常节点和异常节点的划分。第二次迭代中依据抽象节点的距离关联度聚合第一次迭代的簇,而抽象节点是否正确地反映第一次迭代的簇在空间所处的位置,将直接影响着第二次迭代的效果。尝试过两种产生抽象节点的方法:第一种是,全部簇节点的坐标均值化出抽象节点;第二种是,选取第一次迭代中的簇中心作为抽象节点。聚类结果显示,第二种产生抽象节点的方法更能正确地反映簇在空间中所处的位置,使得后续迭代更好地实现正常节点和异常节点的划分。
为了验证本发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法,在相同实验环境下,选用K-means聚类算法和DBSCAN聚类算法,从聚类准确度、检验率、平均查准率、误警率4个评估指标进行比较,并共同使用十折交叉验证法评估各自的性能。
算法验证过程分为两部分,一是选用NSL-KDD训练集中20%样本作为训练集,构建本文算法、K-means算法和DBSCAN算法的聚类模型,并对这三个模型的进行优化或调参,如:确定DBSCAN算法的扫描半径eps和邻域密度阈值minPts,记录训练结果;二是在NSL-KDD测试集中用十折交叉验证法的抽样方法,选出10个测试集,每个测试集包含1万个样本,并对三种聚类算法进行测试评估,最后记录10次测试结果的平均值,并进行结果分析。
从划分正常和异常的角度评估算法性能,将聚类样本集按其真实类别与聚类模型预测类别的组合分为真正例(TP)、假正例(FP)、真反例(TN)、假反例(FN),存在关系:TP+FP+TN+FN=聚类样本数。聚类划分结果的“混淆矩阵”如表1所示。
表1聚类划分结果的混淆矩阵。
聚类准确度:正确检测出的正常和异常样本数除以测试集的全部样本个数的百分比RI,其中RI为聚类准确度。
检验率:检测出的异常样本数除以测试集中所有异常样本数的百分比I,其中I为检验率。
查准率:测试集中正常(或异常)的样本被检测为正常的样本数除以检测出的正常(或异常)样本数的百分比,这个百分比称为查准率。
平均查准率:正常样本的查准率与异常样本的查准率之间的平均数Pavg,其中Pavg为平均查准率。
误警率:测试集中正常的样本被检测为异常样本的个数除以测试集中所有正常样本个数的百分比F,其中F为误警率。
按照步骤3实现本发明方法模型的构造,并使用训练集对聚类程序进行校正和优化。受离群点影响,曲线拟合误差率显著升高,造成簇中心对应的拐点半径过小,降低了聚类的速度和准确度。因此在曲线拟合时,需要忽略明显离群点以提升拟合效果,从而确保拐点半径的合理大小。
由于K-means聚类算法的中心点更新依靠簇样本均值化实现,簇中明显的离群点会使样本均值点偏向离群点,造成簇内分布较集中的部分样本点在新一轮迭代中被划分到其他类簇,降低了聚类准确度。因此在构建K-means聚类模型时同样要进行去除明显离群点的优化操作。
DBSCAN算法中的扫描半径eps和邻域密度阈值minPts需要手动输入,才能进行聚类。DBSCAN算法对扫描半径eps和邻域密度阈值minPts非常敏感,不同的数值大小及输入组合都可能导致差异巨大的聚类结果。这两个值的选择需要依靠经验确定,通过使用训练集多次实验,确定当eps=80、minPts=80时,DBSCAN聚类模型性能较好。表2三种聚类算法的训练/测试结果.
根据表2的训练效果与测试效果进行对比发现,本发明方法的聚类准确度降低0.07%、检验率降低0.23%、平均查准率降低0.13%、误警率提高0.04%;K-means算法的聚类准确度提高0.22%、检验率降低1.67%、平均查准率降低0.64%、误警率提高0.75%;DBSCAN算法的聚类准确度降低0.50%、检验率降低1.36%、平均查准率降低0.72%、误警率提高0.09%。本发明方法在效果稳定性方面优于优化后的K-means与DBSCAN算法。
本发明方法的聚类准确度和平均查准率均高于其他两个算法,且误警率比其他两个算法小得多,但检验率略小于其他两个算法。高聚类准确度(High RI)代表着“聚类后,簇内节点相似高且簇间节点相似度低”,而低聚类准确度(Low RI)代表着“聚类后,簇内节点相似低且簇间节点相似度高”。因此,本发明方法的聚类性能最优,DBSCAN算法次之N算法次之,而K-means算法最差。
K-means和DBSCAN算法在维持高检验率的情况下,却大幅增加了误警率,将较多的正常节点错误划分为异常类,大幅削弱各自在入侵检测上的准确性,这种缺点集中体现在算法较低的聚类准确度和平均查准率上。相反,本发明方法维持高检验率的情况下,也保持相对低得多的误警率,体现出良好的入侵检测性能,较准确地划分正常类与异常类。
综上,发明的利用拐点半径实现动态自适应聚类的网络入侵检测方法的聚类性能及入侵检测性能均优于优化后的K-means与DBSCAN算法。
表3本发明方法对已知和未知入侵的检测率情况。
表3展示了本发明方法在第一至第四个测试集中的入侵检测率结果。所谓已知入侵,是指在训练集和测试集中都有的入侵攻击(如DOS类别中的Neptune攻击);未知入侵指训练集中没有但在测试集中存在的入侵攻击(如DOS类别中的Apache2攻击)。全部类别则包含了DOS、Probe、R2L、U2R全部四种类型。测试结果表明,DOS、Probe和R2L等攻击类型能够被改进MajorClust算法稳定地检测,且检测率较高。而对U2R攻击的检测却表现较差,究其主要原因在于两点:一是训练集和测试集中U2R的样本量少,只占异常样本的0.5%;二是U2R样本和正常样本在空间分布上较接近[14],较大比例的U2R样本被划分为正常节点。但总体而言,本发明方法在检测率与稳定性方面的优势较为明显。
本发明方法与监督型算法相比,在未知入侵的检测上更有优势。对于传统的无监督型算法,我们将其应用于入侵检测时,为了提高检测率和聚类准确度,往往需要去除离群点后再进行经验性调参,在数据预处理和聚类模型优化处理上消耗大量成本,且去除的离群点没能继续检测它们是否异常。本发明方法,在忽略明显的离群点后,能够自适应计算出拐点半径作为聚类半径,不要求进行经验性调参,在入侵检测中消耗的成本更少。同时,离群点仅在计算拐点半径时被忽略,不影响它们在算法的入侵检测环节中被检测,具有全检能力,保证入侵检测全覆盖。本发明方法具有全检能力及较高的自适应性,且在入侵检测领域有良好的检测能力及稳定性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明的思想,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,包括如下步骤:
步骤1:对网络连接的多维数据记录进行降维操作;
步骤2:对降维后的数据记录的特征向量进行标准化变化;
步骤3:将标准化后的数据记录视作一个节点,应用欧几里得算法计算节点间的距离以表示节点间的关联度,依据节点间的关联度进行初始聚类,将初始聚类中所有簇的中心作为抽象节点,重复聚类过程,完成最终聚类;
步骤4:判断各个簇中的节点是否正常,若簇中正常节点的比例大于异常节点的比例,则将此簇的所有节点划为正常类;否则将此簇的所有节点划为异常类。
2.如权利要求1所述的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,所述步骤1具体为:
在多维度中挑选一个维度的特征向量作为分类依据,利用SVM向量机分类出训练集中的正常、异常簇,然后计算此维度的特征向量对应的Fisher评分,循环上述过程,直到多个维度的Fisher评分计算完成。
3.如权利要求1所述的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,所述步骤2具体为:
每个数据记录f按公式(1)计算其特征值的平均绝对偏差:
其中,Eif是数据记录f的i个属性特征向量,Pf是f的平均特征向量,即:
按照公式(3)求得数据记录f各维度特征值标准化后的特征向量。
其中,Sif表示标准化后的特征向量。
4.如权利要求1所述的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,所述步骤3包括:
步骤3.1:将数据集中的每个数据记录视作一个节点,基于欧几里得距离计算每个节点Xi与其他节点Xj的距离dij;
步骤3.2:累加每个节点Xi与其他节点Xj的距离dij,得到该节点临边距离之和,即
步骤3.3:将临边距离之和Di值最小的节点Xmin作为簇的初始中心,即Ci=Xmin;
步骤3.4:计算初始簇中心Ci的拐点半径dmax;
步骤3.5:将以Ci为圆心,将拐点半径dmax范围内的节点与Ci聚合为一个簇;
步骤3.6:去除已聚合的节点,循环步骤3.2至步骤3.5,直到簇数不再变化;
步骤3.7:将剩余未聚合的节点同其距离最近的簇中心聚合,完成所有节点的初始聚类划分;
步骤3.8:将初始聚类中所有簇的中心作为抽象节点,替代原有簇,并将这些抽象节点作为新一轮聚类迭代的节点;
步骤3.9:再一次循环步骤3.1至步骤3.7,结束最终聚类过程。
5.如权利要求4所述的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,所述步骤3.1中根据下式计算两个节点Xi和Xj的欧几里得距离:
其中,xin为节点Xi的第n维的特征值,xjn为节点Xj的第n维的特征值。
6.如权利要求4所述的利用拐点半径实现动态自适应聚类的网络入侵检测方法,其特征在于,所述步骤3.4包括:
步骤3.4.1:首先将初始簇中心与其他节点的距离集从大到小排序,得到新的距离集;
步骤3.4.2:根据新的距离集作二维曲线图,距离对应的序号代表横坐标,距离代表纵坐标;
步骤3.4.3:忽略曲线上明显的离群数值点,基于最小二乘法拟合原理,利用三次方程对二维曲线图进行拟合;
步骤3.4.4:通过二阶求导计算出曲线拐点对应的横坐标值以及对应纵坐标的值,纵坐标的值即为拐点半径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910526742.0A CN110149347B (zh) | 2019-06-18 | 2019-06-18 | 利用拐点半径实现动态自适应聚类的网络入侵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910526742.0A CN110149347B (zh) | 2019-06-18 | 2019-06-18 | 利用拐点半径实现动态自适应聚类的网络入侵检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110149347A true CN110149347A (zh) | 2019-08-20 |
CN110149347B CN110149347B (zh) | 2021-07-09 |
Family
ID=67591786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910526742.0A Expired - Fee Related CN110149347B (zh) | 2019-06-18 | 2019-06-18 | 利用拐点半径实现动态自适应聚类的网络入侵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110149347B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110826492A (zh) * | 2019-11-07 | 2020-02-21 | 长沙品先信息技术有限公司 | 一种基于行为分析的敏感区域人群异常行为检测方法 |
CN111222540A (zh) * | 2019-11-22 | 2020-06-02 | 江苏省环境监测中心 | 基于聚类的无监督学习的异常判断二噁英检测方法 |
CN111224984A (zh) * | 2020-01-06 | 2020-06-02 | 重庆邮电大学 | 一种基于数据挖掘算法的Snort改进方法 |
CN111259985A (zh) * | 2020-02-19 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 基于业务安全的分类模型训练方法、装置和存储介质 |
CN117978543A (zh) * | 2024-03-28 | 2024-05-03 | 贵州华谊联盛科技有限公司 | 基于态势感知的网络安全预警方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688955A (zh) * | 2016-08-03 | 2018-02-13 | 浙江工业大学 | 一种基于自适应dbscan密度聚类的城市商业圈群簇划分方法 |
CN108664995A (zh) * | 2018-04-18 | 2018-10-16 | 宁波工程学院 | 基于DBScan的多粒度城市公共自行车调度方法及系统 |
-
2019
- 2019-06-18 CN CN201910526742.0A patent/CN110149347B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688955A (zh) * | 2016-08-03 | 2018-02-13 | 浙江工业大学 | 一种基于自适应dbscan密度聚类的城市商业圈群簇划分方法 |
CN108664995A (zh) * | 2018-04-18 | 2018-10-16 | 宁波工程学院 | 基于DBScan的多粒度城市公共自行车调度方法及系统 |
Non-Patent Citations (3)
Title |
---|
HUDAN STUDIAWAN 等: "Graph Clustering and Anomaly Detection of Access Control log for Forensic Purposes", 《DIGITAL INVESTIGATION》 * |
刘胜会: "聚类分析在入侵检测中的应用研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
陈善雄 等: "一种基于偏最小二乘的网络入侵检测方法分析", 《信息网络安全》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110826492A (zh) * | 2019-11-07 | 2020-02-21 | 长沙品先信息技术有限公司 | 一种基于行为分析的敏感区域人群异常行为检测方法 |
CN111222540A (zh) * | 2019-11-22 | 2020-06-02 | 江苏省环境监测中心 | 基于聚类的无监督学习的异常判断二噁英检测方法 |
CN111224984A (zh) * | 2020-01-06 | 2020-06-02 | 重庆邮电大学 | 一种基于数据挖掘算法的Snort改进方法 |
CN111224984B (zh) * | 2020-01-06 | 2022-01-11 | 重庆邮电大学 | 一种基于数据挖掘算法的Snort改进方法 |
CN111259985A (zh) * | 2020-02-19 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 基于业务安全的分类模型训练方法、装置和存储介质 |
CN117978543A (zh) * | 2024-03-28 | 2024-05-03 | 贵州华谊联盛科技有限公司 | 基于态势感知的网络安全预警方法及系统 |
CN117978543B (zh) * | 2024-03-28 | 2024-06-04 | 贵州华谊联盛科技有限公司 | 基于态势感知的网络安全预警方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110149347B (zh) | 2021-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110149347A (zh) | 利用拐点半径实现动态自适应聚类的网络入侵检测方法 | |
Fahad et al. | A survey of clustering algorithms for big data: Taxonomy and empirical analysis | |
Li et al. | On cluster tree for nested and multi-density data clustering | |
Min et al. | Automatic determination of clustering centers for “clustering by fast search and find of density peaks” | |
Jabbar | Local and global outlier detection algorithms in unsupervised approach: a review | |
Li et al. | A robust clustering method with noise identification based on directed K-nearest neighbor graph | |
Pan et al. | Network intrusion detection model based on PCA+ ADASYN and XGBoost | |
Yu et al. | Filtering and refinement: A two-stage approach for efficient and effective anomaly detection | |
Rahman et al. | An efficient approach for selecting initial centroid and outlier detection of data clustering | |
Grira et al. | Fuzzy clustering with pairwise constraints for knowledge-driven image categorisation | |
Hooi et al. | Branch and border: Partition-based change detection in multivariate time series | |
Zhao et al. | Anomaly detection of aircraft lead‐acid battery | |
Hu et al. | Fuzzy clustering validity for spatial data | |
Zhang et al. | A new outlier detection algorithm based on fast density peak clustering outlier factor. | |
Yang et al. | An adaptive clustering algorithm based on CFSFDP | |
Taha et al. | A proposed outliers identification algorithm for categorical data sets | |
Wang et al. | δ‐Open set clustering—A new topological clustering method | |
Qiao et al. | Boundary detection-based density peaks clustering | |
Sreenivasulu | Evaluation of cluster based Anomaly detection | |
Huang et al. | Outlier detection method based on improved two-step clustering algorithm and synthetic hypothesis testing | |
Wang et al. | Exploiting fuzzy rough entropy to detect anomalies | |
He et al. | An improved kernel clustering algorithm used in computer network intrusion detection | |
Shou et al. | Outlier detection based on local density of vector dot product in data stream | |
Wu et al. | Interval type-2 fuzzy clustering based association rule mining method | |
Zimek et al. | Outlier Detection in High-Dimensional Data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210709 |