CN113938292A - 一种基于概念漂移的漏洞攻击流量检测方法及检测系统 - Google Patents
一种基于概念漂移的漏洞攻击流量检测方法及检测系统 Download PDFInfo
- Publication number
- CN113938292A CN113938292A CN202111098847.4A CN202111098847A CN113938292A CN 113938292 A CN113938292 A CN 113938292A CN 202111098847 A CN202111098847 A CN 202111098847A CN 113938292 A CN113938292 A CN 113938292A
- Authority
- CN
- China
- Prior art keywords
- node
- vulnerability attack
- sample
- attack flow
- traffic
- 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 158
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 56
- 230000005540 biological transmission Effects 0.000 claims abstract description 19
- 238000013528 artificial neural network Methods 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 description 15
- 230000000694 effects Effects 0.000 description 12
- 238000002474 experimental method Methods 0.000 description 11
- 241000700605 Viruses Species 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- CURLTUGMZLYLDI-UHFFFAOYSA-N Carbon dioxide Chemical compound O=C=O CURLTUGMZLYLDI-UHFFFAOYSA-N 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000004083 survival effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 229910002092 carbon dioxide Inorganic materials 0.000 description 1
- 239000001569 carbon dioxide Substances 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
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/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
-
- 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)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于概念漂移的漏洞攻击流量检测方法及检测系统,步骤一、漏洞攻击流量收集:给每个节点分配控制信息传输频率;根据节点分配的pi向收集中心传输样本的控制信息;依据控制信息,以最小化样本窗口的AoI为目标,收集中心采用调度算法进行流量样本的调度收集;步骤二、构建检测模型:以步骤一形成的流量样本数据集为检测模型的输入,所述的检测模型为全局比对Needleman‑Wunsch算法;步骤三、模型更新:比较当前收集到的新样本窗口与前次的旧样本窗口,检测是否出现了概念漂移;如果出现了概念漂移,对步骤二构建的检测模型进行更新,否则不更新。能够通过流量收集模块更好的收集实时流量用于概念漂移的检测,并更新检测模型提高检测率。
Description
技术领域
本发明属于流量检测领域,具体为一种基于概念漂移的漏洞攻击流量检测方法及检测系统。
背景技术
物联网技术的飞速发展,使得近年来物联网的应用越来越广泛,但同时也带来了一些安全漏洞,这些安全漏洞可能会被别有用心的人通过下载僵尸程序病毒来制造僵尸网络。物联网僵尸网络病毒不同于Windows平台上的普通僵尸网络病毒。它是由易受攻击的物联网设备生成的,并且可以通过庞大的物联网系统感染大型设备。此外,常见的僵尸网络病毒通常用于发送垃圾邮件,但是IoT僵尸网络病毒会通过影响IoT设备周围的物理环境而造成更大的危害。因此,通过检测模型监控网络发现漏洞利用流量,并对应具体设备与漏洞显得尤为重要。
可是提取出来的检测模型并不是永久适用的。现实世界中数据的典型特点是其中包含的特征会随着时间而改变,例如,消费者感兴趣的事物在不断变化,偏好的商家或喜欢的服务类型会变化,这种数据中包含的概念变化称为概念漂移。通过观察发现,针对同一个漏洞的攻击流量特征也会随着时间发生变化,之前的检测模型会存在对概念漂移的漏洞攻击流量检测率下降的问题,所以如何基于概念漂移对检测模型进行更新是一个关键性的问题。
发明内容
本发明的目的是提供一种基于概念漂移的漏洞攻击流量检测方法及检测系统,并通过概念漂移结果对检测模型进行自动化更新,达到提高检测率的效果。
为了达到上述目的,本发明采取的技术方案包括:
一种基于概念漂移的漏洞攻击流量检测方法,包括:
步骤一、漏洞攻击流量收集:
收集中心给每个节点i分配控制信息传输频率pi;
式中,cp表示正比系数;wi表示为节点i的重要程度,取值为1、2或3;Li表示为节点i的样本大小,KB;Lc表示控制信息的大小,取值为0.016KB;Mc表示控制信道的带宽,KB/s;N代表节点的数量,不为0的正整数;
每个节点i依据受到的漏洞攻击产生漏洞攻击流量样本,节点i根据分配的pi向收集中心传输漏洞攻击流量样本的控制信息;依据节点i的控制信息及节点i的调度优先级,收集中心采用调度算法对每个节点i的的漏洞攻击流量样本进行调度收集,形成漏洞攻击流量样本数据集;
步骤二、构建检测模型:
以步骤一形成的漏洞攻击流量样本数据集为检测模型的输入,所述的检测模型为全局算法;
步骤三、模型更新:
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本对步骤二构建的检测模型进行更新,否则不更新。
可选的,所述的检测模型为神经网络模型;所述的神经网络由输入层、两个隐含层和输出层构成。
可选的,构建神经网络检测模型具体包括:
在训练时神经网络的输入为请求方式、请求路径、请求参数名称和请求参数值这四类特征将来自漏洞攻击流量样本数据集的每一条漏洞攻击流量进行字符串编码,提取前50个词作为输入层的50位输入;
两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置;
输出层的每一个节点代表一个类别。
可选的,所述的全局算法具体为全局比对Needleman-Wunsch算法,获得一个漏洞攻击流量的共有字符片段;
具体的,全局算法的输入为根据符号将漏洞攻击流量分为字符段。
可选的,将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离具体包括:
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
当di>ζ则判断发生了概念漂移,ζ为0.2;
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下:
drn=Jaccard(rn1,rn2);
Levenshtein代表字符串之间的编辑距离,Jaccard代表两个集合的集合距离,则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc。
一种基于概念漂移的漏洞攻击流量检测系统,包括:
漏洞攻击流量收集模块:
收集中心给每个节点i分配控制信息传输频率pi;
式中,cp表示正比系数;wi表示为节点i的重要程度,取值为1、2或3;Li表示为节点i的样本大小,KB;Lc表示控制信息的大小,取值为0.016KB;Mc表示控制信道的带宽,KB/s;N代表节点的数量,不为0的正整数;
每个节点i依据受到的漏洞攻击产生漏洞攻击流量样本,节点i根据分配的pi向收集中心传输漏洞攻击流量样本的控制信息;依据节点i的控制信息及节点i的调度优先级,收集中心采用调度算法对每个节点i的的漏洞攻击流量样本进行调度收集,形成漏洞攻击流量样本数据集;
检测模型构建模块:
以漏洞攻击流量收集模块形成的漏洞攻击流量样本数据集为检测模型的输入,所述的检测模型为全局算法;
模型更新模块:
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本对步骤二构建的检测模型进行更新,否则不更新。
可选的,所述的检测模型为神经网络模型;所述的神经网络由输入层、两个隐含层和输出层构成。
可选的,构建神经网络检测模型具体包括:
在训练时神经网络的输入为请求方式、请求路径、请求参数名称和请求参数值这四类特征将来自漏洞攻击流量样本数据集的每一条漏洞攻击流量进行字符串编码,提取前50个词作为输入层的50位输入;
两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置;
输出层的每一个节点代表一个类别。
可选的,所述的全局算法具体为全局比对Needleman-Wunsch算法,获得一个漏洞攻击流量的共有字符片段;
具体的,全局算法的输入为根据符号将漏洞攻击流量分为字符段。
可选的,将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离具体包括:
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
当di>ζ则判断发生了概念漂移,ζ为0.2;
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下:
drn=Jaccard(rn1,rn2);
Levenshtein代表字符串之间的编辑距离,Jaccard代表两个集合的集合距离,则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc。
本发明的优点:
(1)能够通过流量收集模块更好的收集实时流量用于概念漂移的检测,并更新检测模型提高检测率。
(2)基于AoI的收集算法能够在有限的带宽以及大量实时流量的情况下,实现最小化整体AoI的最优算法。
(3)定义了距离函数进行概念漂移的检测并更新检测模型,提高了动态环境下Network-level检测的检测率。
(4)AoI算法对比JUVENTAS提高了10%左右,通过概念漂移实时更新对攻击流量的检测率平均在93%以上。
附图说明
附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为本发明的基于概念漂移的漏洞攻击流量检测方法的整体方案流程图;
图2为本发明的样本队列变化图;
图4为本发明的收集中心的样本队列;
图5为本发明的样本窗口变化图;
图6为本发明采用的神经网络结构图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合实施例对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明中提到的“节点”指的是用于生成样本的物联网设备,例如路由器、摄像头;
“样本”指的是受到的网络级攻击的具体流量内容;
“样本窗口”指的是图5所示,代表收集中心收集到的样本;
“样本的控制信息”代表节点有新样本生成,包括生成时间和样本大小,发送给收集中心让中心知道节点的样本生成情况。
本文通过在概念漂移检测中加入流量收集部分,能够在动态的环境中进行概念漂移检测。除了能够通过概念漂移更新检测模型提高网络层攻击实时检测率之外,还能够通过AoI-drift系统将收集到的漏洞攻击程序与网络层攻击关联起来;由于能够实时在网上收集最新的漏洞攻击程序,再通过实时的攻击与攻击程序关联就可以发现0-day漏洞。针对漏洞的攻击流量随着时间的变化相应的流量攻击特征也会有所变化,先前的检测模型已经不适用,称此为概念漂移现象。如果人工的对概念漂移检测耗费大量的人力物力,本文提出了一种基于信息熵的概念漂移检测技术,并通过概念漂移结果对检测模型进行自动化更新,达到提高检测率的效果。
整个系统分为流量样本收集,概念漂移两部分,如图所示。首先在调度算法收集流量阶段,因为在实际情况下,实时的攻击流量数量巨大,而收集数据的带宽往往是有限的,流量的产生速度远远大于带宽能够传输的速度,因此想要从这些实时的海量流量中收集能够反映当前时间段的流量特征的流量具有一定的困难。本文依据AoI(信息年龄)的概念提出了调度算法,依据节点传输的控制信息以及控制信息的传输频率,能够依据节点的重要程度以及流量样本大小从各个节点进行流量样本的收集,通过该算法得到的流量能够很好的反映当前时间段流量的特征,将这些流量保存在样本窗口中。在概念漂移检测并更新检测模型部分,考虑到针对同一个漏洞的攻击特征可能会随着时间变化,所以需要对比之前的流量特征与当前的流量特征是否发生了改变,因此定义了样本窗口用于存储收集到的流量,依据定义的距离函数将字符特征之间的距离转化为数字距离,通过比较上次更新检测模型时的样本窗口与当前的样本窗口,如果特征变化过大,则更新检测模型从而提高对特征变化的流量的检测率。
本发明的具体技术方案如下:
基于概念漂移的漏洞攻击流量检测方法,包括:
步骤一、漏洞攻击流量收集:
收集中心给每个节点i分配控制信息传输频率pi;
式中,cp表示正比系数;wi表示为节点i的重要程度,通常取值为1-3的整数,比如1、2或3;Li表示为节点i的样本大小,KB,通常取值为2~5KB;Lc表示控制信息的大小,KB,0.016;Mc表示控制信道的带宽,KB/s;N代表节点的数量,不为0的正整数,比如在本发明中通常取212;
每个节点i依据受到的漏洞攻击产生漏洞攻击流量样本,节点i根据分配的pi向收集中心传输漏洞攻击流量样本的控制信息;依据节点i的控制信息及节点i的调度优先级,收集中心采用调度算法对每个节点i的的漏洞攻击流量样本进行调度收集,形成漏洞攻击流量样本数据集;
步骤二、构建检测模型:
以步骤一形成的漏洞攻击流量样本数据集为检测模型的输入,检测模型为全局算法;
步骤三、模型更新:
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本对步骤二构建的检测模型进行更新,否则不更新。
检测模型还可以为神经网络模型;神经网络由输入层、两个隐含层和输出层构成。构建神经网络检测模型具体包括:在训练时神经网络的输入为请求方式、请求路径、请求参数名称和请求参数值这四类特征将来自漏洞攻击流量样本数据集的每一条漏洞攻击流量进行字符串编码,提取前50个词作为输入层的50位输入;两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置;输出层的每一个节点代表一个类别。
全局算法具体为全局比对Needleman-Wunsch算法,获得一个漏洞攻击流量的共有字符片段;具体的,全局算法的输入为根据符号将漏洞攻击流量分为字符段。
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离具体包括:
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
当di>ζ则判断发生了概念漂移,ζ为0.2;
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下:
drn=Jaccard(rn1,rn2);
Levenshtein代表字符串之间的编辑距离函数,Jaccard代表两个集合的集合距离函数,max(len)表示字符串之间的编辑距离的最大值函数,上述公式中的特征小角标表示不同窗口中相同的特征(rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合),则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重,通常取值分别为10、8、3和1;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc。
本发明主要分为三个部分:漏洞攻击流量收集、检测模型生成和检测模型更新。具体如下图1所示:
一、漏洞攻击流量收集:
现实中每时每刻都存在着海量的漏洞攻击流量,想要对他们全体进行分析是难以实现的,如果选取的流量过多,不利于及时发现流量特征的变化,对概念漂移的检测敏感度不高;如果选取的流量过少,受噪声的影响较大,会增加误报的几率。所以希望能够在一定流量数量的情况下,选取最能够体现出新流量特征的流量。为此引入信息年龄的概念。
1.1AoI相关概念
为了量化收集的信息的新鲜度,最近一种名为信息年龄(AoI)的度量方式已经越来越流行,为了能够更好地理解AoI的概念,本节先以收集中心为每个节点保存一个样本为例。
所谓AoI(信息年龄)可以理解为样本在时刻t时的存活时间,即,AoI为样本的一个属性,随着样本的存活时间而增加。对于样本s,本文用As(t)表示样本s在时刻t的AoI,用Us(t)表示样本s在时刻t时的生成时刻,则样本s在时刻t的信息年龄可以表示为,
As(t)=t-Us(t);
考虑到首先以收集中心为每个节点保存一个样本为例,则收集中心对于节点i信息年龄表示的是此刻收集中心为节点i保存的一个样本的信息年龄。假设收集中心本来为节点i保存的是样本s,之后样本(s+1)传输完成替换了样本s,表1。
表1
从上表可以看到当节点i中的新样本传输完成时,才会更新节点i的信息年龄为了更直观地显示出信息年龄随t的变化情况,具体见表1进行表示。可以看出,在t2时刻,节点i中的样本(s+1)传输完成,代替了收集中心为节点i保存的样本s,因此更新变为样本(s+1)的信息年龄,所以发生了突变,从As(t)变成了A(s+1)(t)。
1.2整体AoI优化:
普通的方法只能在流量收集中心为每一个节点保存新鲜度最高的一个样本,考虑到本实验所需要的样本数量较多,需要为每个节点i保存多个样本。此时可以将流量收集中心保存的数据看作一个队列的集合。设定收集中心为每个源节点i保存的样本数量为n,按生成时间从早到晚进行排列,用表示收集中心为节点i保存的第k个样本的信息年龄,最后的模型如图4所示。
考虑到每个节点i的重要程度不一样的情况,本文定义了源节点权重wi,在收集中心对于节点i所有收集的样本信息年龄进行计算,
所以收集中心总的信息年龄可以表示为,所有的N个源节点的和,并以此作为评判数据新鲜度的指标,
通过图2可以得到,节点i中的样本传输完成的下一个时隙,收集中心关于节点i的信息年龄会发生变化,变化大小为,
对于每个时刻t,查看正在传输的样本,如果上一个样本传输未完成,则继续对其传输;如果上一个样本传输已完成,在所有节点中找到具有最大priori(t)的节点i对其最新样本进行传输,并在收集中心删除该节点i具有最大信息年龄的样本。
由于收集中心需要了解节点中样本的产生,所以收集中心需要收集样本的控制信息,这让信道包括数据信道与控制信道。数据信道传输样本,控制信道传输控制信息。然而,由于样本产生较快,如果所有样本的控制信息都被传输,会导致样本传输变慢以及许多控制信息不会被使用。所以收集中心会根据每个节点中样本的平均传输频率为每一个节点分配控制信息的传输频率pi,保证控制信息的利用率较高。
当所有节点的优先级一样时,即prior1(t)=prior2(t)=…=priorN(t);
用pi表示收集中心为节点i分配的控制信息的传输频率。pi可以推导为,
用ps表示pi的和。Lc表示控制信息的大小。cp表示正比系数。Mc表示控制信道的带宽。
ps*Lc=Mc
cp可以推导为,
二、检测模型构建:
在检测模型的更新方面,本文使用了两种方法,全局比对算法与神经网络。全局比对算法具有生成检测模型速度快的优点,但是对于相似度不强的集群会出现检测率较低的情况;神经网络生成的检测模型精确度高,但是训练模型时需要较长的时间。
总结以上特性,使用全局比对算法,能够较快的更新每一个相似度很高的集群的检测模型,及时的对恶意流量进行检测,防止攻击行为的进行,但是这种检测模型不能够很好判断恶意流量属于哪一个大类。当需要确定一个恶意流量的所属类别时,对外部聚类后的集群用神经网络进行检测模型的更新,就可以对恶意流量进行较为准确的预测。
2.1全局比对算法检测模型
对于运用Needleman Wusch算法的检测模型更新,大部分Needleman Wusch算法的每一个最小单位是一个字符,但是考虑到流量数据的特殊性,在本文中,应该先将流量分成最小字符段,如果直接将流量作为Needleman Wusch算法的输入,那么每一个检测模型很可能是短字符的组合,不利于最后的攻击流量检测,当把每一个最小字符段作为输入时,生成的检测模型往往是以不可分割字符段为基础的,极少会有单个或几个字母的情况出现。所以在利用Needleman Wusch算法进行检测模型生成之前,首先应该根据符号将流量分为字符段。
2.2神经网络检测模型
本节使用的神经网络由输入层、两个隐含层和输出层构成。首先将每一条流量进行字符串编码,提取前50个词作为输入层的50位输入。之后设置了两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置。最后输出层的每一个节点代表一个类别。
训练所用的神经网络的结构如图6所示,在训练时神经网络的输入为请求方式、请求路径、请求参数名称、请求参数值这四类特征在训练时对每一个输入的流量向量,通过对隐含层的参数不断地进行调节,使得最后的输出层与流量所属类别的一致性越来越高。在预测时,通过对比输出层的节点分数,取最高分为流量所属类别。其中每一个节点中的wi,j与bi.j分别代表该节点的权重与偏置。
三、模型更新:
3.1检测特征的选取
在概念漂移检测时,我们需要通过特征的变化判断是否发生了概念漂移现象,因此特征的选取是一个至关重要的问题。
我们部署的不同节点有着不同的漏洞,并且每一个节点只有一个漏洞。为了评定我们选取的特征是否能够很好的体现漏洞攻击的特征,我们引入互信息的概念。互信息是信息相关性的一种度量方式,用来衡量两个数据分布的吻合程度。
用X表示攻击流量的特征,比如,请求方式、请求路径或者参数名称。用Y表示攻击的漏洞类别。用MI(X,Y)表示特征X与漏洞Y之间的互信息。则:
通过实验得到,选取请求路径、参数名称、参数值和命令这四个特征用于概念漂移检测效果较好。旧窗口中节点i的第l个流量,新窗口中节点i的第m个流量。
3.2依据特征对样本窗口进行检测
本文依据样本窗口的概念,定义了旧样本窗口与新样本窗口。旧样本窗口是上一次特征模型更新时,收集中心保存的样本;新样本窗口是收集中心当前保存的所有样本。
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下,
drn=Jaccard(rn1,rn2);
则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重,通常取值分别为10、8、3和1;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc;
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
最终,通过窗口之间的距离进行概念漂移的检测,当di>ζ则判断发生了概念漂移,ζ为0.2。
以漏洞攻击流量样本窗口为处理单位,将同节点的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本窗口是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本窗口中的样本对步骤二构建的检测模型进行更新,否则不更新。
三、相关的实验效果验证:
本文使用Python软件搭建仿真验证平台,分别在不同的样本大小、带宽大小、收集中心为每一个节点保存的样本数等参数设置下进行了仿真实验,验证系统的性能优劣。所用计算机的配置参数为:AMD Ryzen 7 4800U 8核16线程处理器;1.80GHz主频;16G RAM;Windows10操作系统。
检测时,部署检测模型,通过监控流量依据检测模型进行攻击检测。
3.1不同调度算法对信息年龄的影响:
Chengzhang Li等人提出过关于信息年龄的调度算法JUVENTAS,但是JUVENTAS算法并不是通过推导得出的最佳调度算法,根据本文的实验,我们的方法具有更好的实验效果,结果对比如表2所示对比。
表2
3.2不同调度算法对概念漂移检测的影响:
将该算法与另外几种常用调度算法进行了对比,比较对概念漂移的检测率。
表4概念漂移检测率(100%)
3.3不同调度算法对恶意流量检测率的影响:
通过窗口的流量生成检测模型进行检测,比较了检测率。
表5恶意流量检测率(%)
3.4控制信道Mc大小以及pi的确定:
传回中心的一个控制信息包的内容(不算包头)平均16bytes。传回中心的流量样本包内容(不算包头)平均3925bytes。通过改变Mc进行了性能测试,得到的结果如表6所示。
表6
Mc(KB/s) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
AoI | 5734 | 5388 | 5336 | 5369 | 5474 | 5518 | 5648 | 5683 | 5706 | 5716 |
经过实验得出,Mc为3KB/s时效果最好,此时Cp为1.28,
3.5检测概念漂移
3.5.1窗口大小对概念漂移检测敏感度的影响
窗口表示流量收集中心保存的所有流量样本,通过改变为每一个节点保存的样本数量(n)可以改变窗口大小。
为了对比窗口大小对概念漂移检测敏感度的影响,进行了如下实验。对于每一个节点,概念漂移次数在1至5之间,概念漂移时间也在收集时间内随机发生。对于每一次实验,概念漂移检测率为当前窗口大小做10次实验的结果。
表7概念漂移检测率(100%)
由表7中的结果可以看到,样本窗口越大,新窗口可能包含有越多的未发生概念漂移的流量样本,所以对概念漂移检测不敏感。样本窗口较小时,可能刚好大部分被未发生概念漂移的流量样本占据,导致概念漂移检测率不高。
3.5.2节点与中心的概念漂移一致性
通过n改变样本窗口进行检测。
表8一致率(100%)
由表8中的结果可以看出,当n仅为1时,偶然性较大,抗干扰性较低,收集到的数据有时不能够很好地反映新流量的特征。当n>1时,一致率基本可以维持在一个较好、较稳定的水平。
3.5.3概念漂移检测阈值ζ的确定
为了测试概念漂移检测阈值ζ的确定对概念漂移检测的影响,进行了实验,结果见表9。
表9
所以当ζ为0.2时效果较好。
3.5.4更新模型并检测
(1)增量更新与非增量更新对比(增量更新指在原有模型基础上更新,非增量更新指抛弃原有模型重新生成检测模型);
为了对比增量学习下更新检测模型的时间消耗与重新训练的时间消耗,本发明选取了10个节点收集得到的流量样本。
表10
通过表10实验数据可以得到,增量学习所用时间远远小于非增量学习,可以明显降低更新检测模型所用的时间。
表11
如表11所示,通过对比两种方法的检测率,可以看到增量学习比非增量学习的检测率稍微低一些,但是结合时间耗费与检测率的整体表现来看,增量学习优于非增量学习。
3.6神经网络与全局比对算法对比
利用全局比对算法可以较快地更新检测模型,但是对于少数相似度不强的集群会出现检测率偏低的情况。神经网络生成的检测模型精确度高,但是训练模型时需要较长的时间。
本文以两种检测模型更新方式对3个数据集做了对比实验。
表12
通过以上实验可以看出,表12,整体神经网络的准确率是要大于Needleman Wusch算法的,但是训练所用时间远大于Needleman Wusch算法,所以在需要较快的对流量检测时,可以使用Needleman Wusch算法快速生成检测模型进行检测,若对检测准确率有较高的要求,使用神经网络更新检测模型进行检测。
3.7更新检测模型与不更新检测模型对比
在检测出概念漂移现象后,通过更新检测模型提高对该漏洞流量的检测率。为了体现出更新检测模型后对漏洞利用流量检测率的优化效果,本实验分别使用旧的检测模型与新的检测模型进行检测,对比检测率体现出新的检测模型的优越性。
表13检测率(100%)
未更新的检测模型 | 0.51 | 0.58 | 0.74 | 0.41 | 0.82 |
更新后的检测模型 | 0.93 | 0.95 | 0.85 | 0.92 | 0.95 |
通过表13的结果可以得到,在概念漂移现象发生后,原本的检测模型检测效果较差,通过对检测模型重新生成,可以将检测率提高到接近于1,大大提高检测效果。
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
Claims (10)
1.一种基于概念漂移的漏洞攻击流量检测方法,其特征在于,包括:
步骤一、漏洞攻击流量收集:
收集中心给每个节点i分配控制信息传输频率pi;
式中,cp表示正比系数;wi表示为节点i的重要程度,取值为1、2或3;Li表示为节点i的样本大小,KB;Lc表示控制信息的大小,取值为0.016KB;Mc表示控制信道的带宽,KB/s;代表节点的数量,不为0的正整数;
每个节点i依据受到的漏洞攻击产生漏洞攻击流量样本,节点i根据分配的pi向收集中心传输漏洞攻击流量样本的控制信息;依据节点i的控制信息及节点i的调度优先级,收集中心采用调度算法对每个节点i的的漏洞攻击流量样本进行调度收集,形成漏洞攻击流量样本数据集;
步骤二、构建检测模型:
以步骤一形成的漏洞攻击流量样本数据集为检测模型的输入,所述的检测模型为全局算法;
步骤三、模型更新:
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本对步骤二构建的检测模型进行更新,否则不更新。
2.根据权利要求1所述的基于概念漂移的漏洞攻击流量检测方法,其特征在于,所述的检测模型为神经网络模型;所述的神经网络由输入层、两个隐含层和输出层构成。
3.根据权利要求2所述的基于概念漂移的漏洞攻击流量检测方法,其特征在于,构建神经网络检测模型具体包括:
在训练时神经网络的输入为请求方式、请求路径、请求参数名称和请求参数值这四类特征将来自漏洞攻击流量样本数据集的每一条漏洞攻击流量进行字符串编码,提取前50个词作为输入层的50位输入;
两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置;
输出层的每一个节点代表一个类别。
4.根据权利要求1-3任一所述的基于概念漂移的漏洞攻击流量检测方法,其特征在于,所述的全局算法具体为全局比对Needleman-Wunsch算法,获得一个漏洞攻击流量的共有字符片段;
具体的,全局算法的输入为根据符号将漏洞攻击流量分为字符段。
5.根据权利要求1-3任一所述的基于概念漂移的漏洞攻击流量检测方法,其特征在于,将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离di具体包括:
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
当di>ζ则判断发生了概念漂移,ζ为0.2;
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下:
drn=Jaccard(rn1,rn2);
Levenshtein代表字符串之间的编辑距离,Jaccard代表两个集合的集合距离,则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc。
6.一种基于概念漂移的漏洞攻击流量检测系统,其特征在于,包括:
漏洞攻击流量收集模块:
收集中心给每个节点i分配控制信息传输频率pi;
式中,cp表示正比系数;wi表示为节点i的重要程度,取值为1、2或3;Li表示为节点i的样本大小,KB;Lc表示控制信息的大小,取值为0.016KB;Mc表示控制信道的带宽,KB/s;代表节点的数量,不为0的正整数;
每个节点i依据受到的漏洞攻击产生漏洞攻击流量样本,节点i根据分配的pi向收集中心传输漏洞攻击流量样本的控制信息;依据节点i的控制信息及节点i的调度优先级,收集中心采用调度算法对每个节点i的的漏洞攻击流量样本进行调度收集,形成漏洞攻击流量样本数据集;
检测模型构建模块:
以漏洞攻击流量收集模块形成的漏洞攻击流量样本数据集为检测模型的输入,所述的检测模型为全局算法;
模型更新模块:
将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离,以数字距离大小为判断标准,判断新的漏洞攻击流量样本是否出现了概念漂移;如果出现了概念漂移,采用新的漏洞攻击流量样本对步骤二构建的检测模型进行更新,否则不更新。
7.根据权利要求6所述的基于概念漂移的漏洞攻击流量检测系统,其特征在于,所述的检测模型为神经网络模型;所述的神经网络由输入层、两个隐含层和输出层构成。
8.根据权利要求6所述的基于概念漂移的漏洞攻击流量检测系统,其特征在于,构建神经网络检测模型具体包括:
在训练时神经网络的输入为请求方式、请求路径、请求参数名称和请求参数值这四类特征将来自漏洞攻击流量样本数据集的每一条漏洞攻击流量进行字符串编码,提取前50个词作为输入层的50位输入;
两个隐含层,每一个隐含层有100个节点,每一个节点都有对应的权重与偏置;
输出层的每一个节点代表一个类别。
9.根据权利要求6-8任一所述的基于概念漂移的漏洞攻击流量检测系统,其特征在于,所述的全局算法具体为全局比对Needleman-Wunsch算法,获得一个漏洞攻击流量的共有字符片段;
具体的,全局算法的输入为根据符号将漏洞攻击流量分为字符段。
10.根据权利要求6-8任一所述的基于概念漂移的漏洞攻击流量检测系统,其特征在于,将同节点i的新旧漏洞攻击流量样本之间的特征差异转化为数字距离具体包括:
Qi表示旧样本窗口中的节点i样本队列,Qi'表示新样本窗口中节点i的样本队列,|Qi|表示旧窗口中节点i的漏洞攻击流量样本数量,|Qi'|表示新窗口中节点i的漏洞攻击流量样本数量;
当di>ζ则判断发生了概念漂移,ζ为0.2;
如果用rp表示请求路径,rn表示参数名称集合,rv表示参数值连接形成的字符串,rc表示命令集合,则每一个距离分量的计算结果如下:
drn=Jaccard(rn1,rn2);
Levenshtein代表字符串之间的编辑距离,Jaccard代表两个集合的集合距离,则此时旧窗口中节点i的第l个流量与新窗口中节点i的第m个流量之间的距离如下,其中wrp、wrn、wrv和wrc分别代表四个权重;
dlm=wrp·drp+wrn·drn+wrv·drv+wrc·drc。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111098847.4A CN113938292B (zh) | 2021-09-18 | 2021-09-18 | 一种基于概念漂移的漏洞攻击流量检测方法及检测系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111098847.4A CN113938292B (zh) | 2021-09-18 | 2021-09-18 | 一种基于概念漂移的漏洞攻击流量检测方法及检测系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113938292A true CN113938292A (zh) | 2022-01-14 |
CN113938292B CN113938292B (zh) | 2024-01-19 |
Family
ID=79276246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111098847.4A Active CN113938292B (zh) | 2021-09-18 | 2021-09-18 | 一种基于概念漂移的漏洞攻击流量检测方法及检测系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113938292B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114401205A (zh) * | 2022-01-21 | 2022-04-26 | 中国人民解放军国防科技大学 | 无标注多源网络流量数据漂移检测方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170103340A1 (en) * | 2015-10-09 | 2017-04-13 | Fair Isaac Corporation | Method for Real-Time Enhancement of a Predictive Algorithm by a Novel Measurement of Concept Drift Using Algorithmically-Generated Features |
US20200034692A1 (en) * | 2018-07-30 | 2020-01-30 | National Chengchi University | Machine learning system and method for coping with potential outliers and perfect learning in concept-drifting environment |
CN111143413A (zh) * | 2019-12-26 | 2020-05-12 | 太原科技大学 | 基于数据流概念漂移的异常检测方法 |
CN111478904A (zh) * | 2020-04-08 | 2020-07-31 | 莆田学院 | 一种基于概念漂移的物联网设备通信异常检测方法及装置 |
-
2021
- 2021-09-18 CN CN202111098847.4A patent/CN113938292B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170103340A1 (en) * | 2015-10-09 | 2017-04-13 | Fair Isaac Corporation | Method for Real-Time Enhancement of a Predictive Algorithm by a Novel Measurement of Concept Drift Using Algorithmically-Generated Features |
US20200034692A1 (en) * | 2018-07-30 | 2020-01-30 | National Chengchi University | Machine learning system and method for coping with potential outliers and perfect learning in concept-drifting environment |
CN111143413A (zh) * | 2019-12-26 | 2020-05-12 | 太原科技大学 | 基于数据流概念漂移的异常检测方法 |
CN111478904A (zh) * | 2020-04-08 | 2020-07-31 | 莆田学院 | 一种基于概念漂移的物联网设备通信异常检测方法及装置 |
Non-Patent Citations (4)
Title |
---|
E. JONES;O. LE MOIGNE; ALCATEL;: "OSPF Security Vulnerabilities Analysis draft-ietf-rpsec-ospf-vuln-02.txt", IETF * |
Q. WANG, ED.; UNIV. OF SCI. AND TECH. BEIJING; X. VILAJOSANA;UNIVERSITAT OBERTA DE CATALUNYA; T. WATTEYNE; LINEAR TECHNOLOGY;: "6TiSCH Operation Sublayer (6top) draft-wang-6tisch-6top-00", IETF * |
李晔;刘胜利;张兆林;: "基于漂移检测和集成学习的木马检测模型", 信息工程大学学报, no. 06 * |
李晔;颜峻;刘胜利;张兆林;: "基于概念漂移检测的数据流木马检测模型", 信息工程大学学报, no. 03 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114401205A (zh) * | 2022-01-21 | 2022-04-26 | 中国人民解放军国防科技大学 | 无标注多源网络流量数据漂移检测方法和装置 |
CN114401205B (zh) * | 2022-01-21 | 2024-01-16 | 中国人民解放军国防科技大学 | 无标注多源网络流量数据漂移检测方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113938292B (zh) | 2024-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Intrusion detection methods based on integrated deep learning model | |
CN112953924B (zh) | 网络异常流量检测方法、系统、存储介质、终端及应用 | |
WO2021227322A1 (zh) | 一种SDN环境DDoS攻击检测防御方法 | |
CN112398779A (zh) | 一种网络流量数据分析方法及系统 | |
CN109067586B (zh) | DDoS攻击检测方法及装置 | |
WO2019184640A1 (zh) | 一种指标确定方法及其相关设备 | |
CN107360032B (zh) | 一种网络流识别方法及电子设备 | |
Mahdavisharif et al. | Big data-aware intrusion detection system in communication networks: a deep learning approach | |
CN113989583A (zh) | 一种互联网恶意流量检测方法及系统 | |
CN110572822B (zh) | 基于决策树的水下无线传感器网络中的信任更新方法 | |
CN112235288A (zh) | 一种基于gan的ndn网络入侵检测方法 | |
CN113452676B (zh) | 一种检测器分配方法和物联网检测系统 | |
Hu et al. | Security risk situation quantification method based on threat prediction for multimedia communication network | |
CN112434298A (zh) | 一种基于自编码器集成的网络威胁检测系统 | |
CN113938292B (zh) | 一种基于概念漂移的漏洞攻击流量检测方法及检测系统 | |
US11848959B2 (en) | Method for detecting and defending DDoS attack in SDN environment | |
Fenil et al. | Towards a secure software defined network with adaptive mitigation of dDoS attacks by machine learning approaches | |
CN109858510A (zh) | 一种针对HTTP协议ETag值隐蔽通信的检测方法 | |
CN112235254B (zh) | 一种高速主干网中Tor网桥的快速识别方法 | |
CN113765896A (zh) | 基于人工智能的物联网实现系统及方法 | |
CN117014182A (zh) | 一种基于lstm的恶意流量检测方法及装置 | |
CN114362972B (zh) | 一种基于流量摘要和图采样的僵尸网络混合检测方法及系统 | |
KR20100073135A (ko) | 어플리케이션 프로토콜인식을 이용한 네트워크 침입탐지 방법 및 장치 | |
Xie et al. | Research and application of intrusion detection method based on hierarchical features | |
CN107566187B (zh) | 一种sla违例监测方法、装置和系统 |
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 |