CN113992349B - 恶意流量识别方法、装置、设备和存储介质 - Google Patents
恶意流量识别方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN113992349B CN113992349B CN202111117806.5A CN202111117806A CN113992349B CN 113992349 B CN113992349 B CN 113992349B CN 202111117806 A CN202111117806 A CN 202111117806A CN 113992349 B CN113992349 B CN 113992349B
- Authority
- CN
- China
- Prior art keywords
- node
- traffic
- encrypted
- network
- network flow
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 239000013598 vector Substances 0.000 claims abstract description 34
- 238000001514 detection method Methods 0.000 claims abstract description 32
- 238000010586 diagram Methods 0.000 claims abstract description 28
- 238000000605 extraction Methods 0.000 claims abstract description 13
- 238000003066 decision tree Methods 0.000 claims description 56
- 239000011159 matrix material Substances 0.000 claims description 41
- 238000010276 construction Methods 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 9
- 239000010410 layer Substances 0.000 description 25
- 238000012549 training Methods 0.000 description 16
- 238000012360 testing method Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000009499 grossing Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000013604 expression vector Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000010200 validation analysis 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/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
-
- 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/1425—Traffic logging, e.g. anomaly detection
-
- 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/1441—Countermeasures against malicious traffic
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种恶意流量识别方法、装置、设备和存储介质。该方法包括:构建加密流量轨迹图;通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;将每个节点的向量输入到流量检测模型得到每个节点的节点类型;所述节点类型包括:恶意流量或者正常流量。本申请解决了对于流量类型进行识别分类的技术问题,可以比较精确的识别出恶意流量。解决了现有技术中,由于流量加密,无法获取流量中的内容,从而无法识别恶意流量的技术问题。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种恶意流量识别方法、装置、设备和存储介质。
背景技术
近年来,由于网络服务质量(Quality of Service,QoS)机制和网络安全原则的实施,网络流量分类技术已受到越来越多的关注。网络流量分类是网络管理的基本功能,可以识别网络中的不同协议和应用程序,广泛应用于包括QoS以及异常检测等方面。然而,由于网络的不断扩展和通信技术的创新,网络流量呈现出复杂化、多样化的特点。为了保证互联网用户的信息安全,安全技术人员利用加密技术将网络流量中的数据包进行加密,从而保证网络流量不被监听和利用。加密网络流量在现在的网络中变得无处不在,被当作进行安全网络沟通的基础。据最新统计数据,2019年10月加密网络流量的比例已经超过90%。加密流量可以在一定程度上保证私人信息的机密性和完整性,但也同样掩盖了数据的特征,加大了其恶意流量的检测难度,给网络恶意行为提供了庇护。攻击者不仅仍可以以高概率猜测到用户的访问痕迹,并且还可能利用网络流量的加密特性隐藏攻击行为,达到逃避检测的目的。根据云安全公司Zscaler的新威胁研究报告,未来五年,针对绕过传统安全控制的加密流量的攻击将增长260%。因此,仅依靠加密技术无法从根本上保证互联网用户的信息安全,仍需对使用加密协议的网络流量进行监测,从而检测其是否进行恶意行为或遭受恶意攻击。
发明内容
本申请的主要目的在于提供一种恶意流量识别方法、装置、设备和存储介质,以解决上述问题。
为了实现上述目的,根据本申请的一个方面,提供了一种恶意流量识别方法,包括:
构建加密流量轨迹图;
通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;
将每个节点的向量输入到流量检测模型得到每个节点的节点类型;
所述节点类型包括:恶意流量或者正常流量。
在一种实施方式中,构建加密流量轨迹图,包括:
获取服务器和客户端之间的网络流;
对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的关联强度。
在一种实施方式中,所述统计特征包括:所述网络流的持续时间、从服务器传输到客户端的数据包数、从客户端传输到服务器的数据包数、从服务器传输到客户端的总字节数、从客户端传输到服务器的总字节数。
在一种实施方式中,获取所述加密流量轨迹图中的每个节点的向量,包括:采用GCN网络获取每个节点的向量;其中,在GCN网络中,设置每一层的输出尺寸与输入尺寸一致,并且将层间的待训练线性变换权重矩阵设置为单位矩阵。
在一种实施方式中,所述输出尺寸和输入尺寸等于统计特征的数量
在一种实施方式中,所述流量检测模型为决策树模型。
为了实现上述目的,根据本申请的第二方面,提供了一种恶意流量识别装置,包括:
流量轨迹图构建模块,用于构建加密流量轨迹图;
向量获取模块,用于通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;
类型检测模块,用于将每个节点的向量输入到流量检测模型得到每个节点的节点类型;所述节点类型包括:恶意流量或者正常流量。
在一种实施方式中,所述流量轨迹图构建模块还用于:
获取服务器和客户端之间的网络流;
对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的关联强度。
第三方面,本申请提出了一种电子设备,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如上述任一项所述的方法。
第四方面,本申请提出了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行如上述任一项所述的方法。
在本申请实施例中,构建加密流量轨迹图;通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;将每个节点的向量输入到流量检测模型得到每个节点的节点类型;所述节点类型包括:恶意流量或者正常流量。采用加密流量轨迹图的方式,通过特征提取模型获取每个节点对应的表示向量,利用流量检测模型对每个节点的类型进行识别,达到了识别节点的类型的目的,从而实现了提高识别效率的技术效果,进而解决了现有技术中,由于流量加密,无法获取流量中的内容,从而无法识别恶意流量的技术问题。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种恶意流量识别方法的流程图;
图2是根据本申请实施例的一种加密流量轨迹图;
图3是根据本申请实施例的构建加密流量轨迹图的具体流程;
图4是根据本申请实施例的一种加密流量轨迹图;
图5是根据本申请实施例的特征提取示意图;
图6是根据本申请实施例的GCN特征提取器与常规GCN的区别示意图;
图7是根据本申请实施例的加密恶意流量检测模型的结构示意图;
图8是根据本申请实施例的GAN的训练框架的结构示意图;
图9是根据本申请实施例的一个树模型的结构示意图;
图10是根据本申请实施例的一种恶意流量识别装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
基于图的方法也被称为基于主机行为的方法,通过分析流量轨迹图中的主机行为或局部结构来对网络流量进行分类,可以同时克服动态端口和流量加密的问题。现有的研究工作已经表明利用图结构对流量进行分类是可行的,但仅基于图特征无法实现高准确率。总的来说,目前针对加密恶意流量并没有完美的检测方法,存在较大的提升空间。
如图1所示,该方法包括如下的步骤S102至步骤S106:
一种恶意流量识别方法,包括以下的步骤:
步骤S102,构建加密流量轨迹图;
根据定义,网络流为:在一段时间内,一个源IP地址和目的IP地址之间传输的单向报文流,其中所有报文具有相同的源端口号、目的端口号、协议号和源、目的IP地址,即五元组内容相同。
基于图的方法一般使用流量轨迹图对网络流进行分类。通常情况下,流量轨迹图中的节点为IP(Internet Protocol)主机,边为IP主机间的网络流,通过轨迹图去寻找链路同质性。与随机选择的网络流相比,具有常见IP主机的流可能共享相同的类别,这就导致网络流量分类变成了一项边分类任务。
为了可以利用GCN框架,本申请使用一种新的带权重的流量轨迹图 (EncryptedTraffic Trajectory Diagram with Weights,ETDW),参见附图2所示的一种加密流量轨迹图;其中,左侧部分中,节点为IP地址;边缘代表网络流;右侧部分中,节点表示网络流,边代表节点具有公共IP,边的粗细表示边的权重。
步骤S104,通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;
其中,特征提取模型可以为图卷积神经网络(Graph Convolutional Network,GCN)。
步骤S106,将每个节点的向量输入到流量检测模型得到每个节点的节点类型;其中,所述节点类型包括:恶意流量或者正常流量。
其中,流量检测模型可以采用决策树实现。
本发明的上述的方法,通过加密流量轨迹图,将流量看成是轨迹图中的节点,获取每个节点的表示向量;通过表示向量,通过流量检测模型来识别出每个节点的类型,从而确定出恶意流量,或者正常流量。
本发明的技术方案分为三个阶段分步进行:第一阶段,提出一种新的带权重加密流量轨迹图(ETDW,Encrypted Traffic Trajectory Diagram with Weights),对加密流量的传递轨迹进行有效的表达;第二阶段,使用一个改进的图卷积网络对ETDW中蕴含的结构信息和属性信息进行表示学习(Representation Learning),获得图中各个节点的表示向量Z;第三阶段,将表示向量Z作为输入,使用决策树分类算法对ETDW图中节点进行恶意流量节点与正常流量节点的识别。
第一阶段的关键技术:带权重加密流量轨迹图ETDW的定义和构建。
为了构建加密流量轨迹图,在一种实施方式中,步骤S102,构建加密流量轨迹图中,包括以下的步骤:
获取服务器和客户端之间的网络流;对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;还包括:源/目的端口号、协议号;其中,统计特征包括:所述网络流的持续时间、从服务器传输到客户端的数据包数、从客户端传输到服务器的数据包数、从服务器传输到客户端的总字节数、从客户端传输到服务器的总字节数。
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的权重。
其中,权重表示关联的强度。
权重由IP地址的共享程度决定,权重大小排序的规则如下:
仅共享源IP地址<仅共享目的IP地址<共享源和目的IP地址。
如图3所示,本发明构建加密流量轨迹图的具体流程如下:首先,使用 Wireshark软件对带标签的pcap(Packet Capture Data)文件进行处理,将其拆分成单条网络流,并输出每条网络流的五元组内容与最基本的5个统计特征,如表1所示。
特征 | 特征描述 |
Duration | 流的持续时间 |
Number of In-Packets | 从服务器传输到客户端的数据包数 |
Number of Out-Packets | 从客户端传输到服务器的数据包数 |
Size of In-Packets | 从服务器传输到客户端的总字节数 |
Size of Out-Packets | 从客户端传输到服务器的总字节数 |
表1
然后根据加密流量轨迹图定义,完成带权重加密流量轨迹图的构建工作,得到如图4所示的流量轨迹图,为下一步的图嵌入做准备。
第二阶段,基于改进图卷积神经网络的带权重加密流量轨迹图ETDW的节点表示学习方法。
其中,图卷积神经网络GCN是一种多层神经网络,可直接在图上运行。 GCN可以根据邻居节点的属性引导节点的嵌入向量,学习每个节点的新特征表示,并将新的特征表示作为线性分类器的输入进行节点分类任务。
GCN通过一层卷积操作只能捕获到一阶邻居的信息。当堆叠多个GCN层时,可以集成关于较大领域的信息。对于第k个图卷积层,用矩阵H(k-1)、H(k)分别表示所有节点的输入节点表示和输出节点表示。
自然地,最初的节点表示就是原始输入特征,即H(0)=X,用于表示第一个图卷积层的输入。
H(1)=ReLU(SXθ(1)) (1)
S表示添加了自循环过后的“标准化”邻接矩阵;
如前所述,可以通过堆叠多个GCN层以达到捕获更高阶领域信息的目的,即:
H(k)←ReLU(SH(k-1)θ(k)) (3)
如图5所示,本发明将GCN作为特征提取器来对带权重加密流量轨迹图 ETDW进行节点表示学习。类似于卷积神经网络、循环神经网络等模型,GCN 模型也可以充当特征提取器,寻找样本更好的特征表示。目前,使用卷积神经网络等类似模型作为特征提取器的研究一般都是先将模型训练到一定状态,然后再取出模型中间的输出作为下游任务的输入,显然这是一个耗费大量时间的特征提取器。
考虑到特征提取过程耗费的时间,将GCN模型作为特征提取器时,需要对其进行一定的简化,尽量减少特征提取过程耗费的时间。
在一种实施方式中,获取所述加密流量轨迹图中的每个节点的向量时,采用GCN网络获取每个节点的向量;其中,在GCN网络中,设置每一层的输出尺寸与输入尺寸一致;将层间的待训练线性变换权重矩阵设置为单位矩阵。
具体的,输出尺寸和输入尺寸等于节点的统计特征的数量。
示例性的,输入尺寸和输出尺寸均为5;其含义是,输入层的特征数量为5,输出层的特征数量为5;因为流量的统计特征的数量为5个。线性变换权重矩阵为5×5的单位矩阵。
通过对GCN模型架构进行详细分析,发现其层间的待训练线性变换权重矩阵θ(k)是增加模型复杂度和冗余的主要因素之一。假设GCN层之间的线性变换并不重要,模型的大多数益处都是由于对节点进行局部平滑产生的。因此,设定每一层的输出尺寸与输入尺寸保持一致,并且将层间的待训练线性变换权重矩阵固定为单位矩阵,但保留层间的非线性激活。
类似于GCN模型,特征提取器在每一层的最开始,每个节点vi的特征hi需要结合其在局部领域里邻居的特征向量进行平均。
将整个图的更新表示维简单的矩阵操作。全部节点根据等式(5)的同时更新可以归纳为简单的稀疏矩阵乘法:
局部平滑后,根据假设(θ(k)恒为单位矩阵),为了降低模型复杂度,特征提取器的第k层的特征表示输出为:
其中H(0)=X,I为单位矩阵。特征提取器的层数K是一个自定义的超参数,因此原始节点特征经过K层特征提取器过后的最终输出为:
如图6所示,本发明中的GCN特征提取器与常规GCN的区别在于:一是考虑了图结构数据带边权的情况;二是设定每一层的输出尺寸与输入尺寸保持一致,并且将层间的待训练线性变换权重矩阵θ(k)固定为单位矩阵。即将线性变换矩阵固定为5x5(5为特征个数)的单位矩阵。实验表明,这种改进在进行加密恶意流量检测时,不仅提高了模型的检测准确性,还大大提升了检测速度。在本发明改进的GCN特征提取器中完成ETDW的节点表示学习,就可以得到ETDW的节点嵌入。这将为下一步进行加密恶意流量节点检测提供了特征支持。
第三阶段的关键技术:加密恶意流量检测模型的实现。
在一种实施方式中,所述流量检测模型为生成式对抗网络和决策树模型。
通过上一步的工作,ETDW中的每一个节点被表示为一个N维特征向量,记为:接下来,本发明使用一种基于生成式对抗网络与决策树的加密恶意流量检测模型,用于对节点Nodei的分类,即检测Nodei节点代表的加密网络流是否为恶意网络流。该检测模型既能降低由于数据不平衡引起的检测错误率,又能高效率地进行加密恶意流量检测。
参见附图7所示的加密恶意流量检测模型的结构示意图。
数据经过不平衡处理后输入到生成式对抗网络,经过生成对抗网络处理后,输入到决策树中,决策树输出节点的类型识别的结果。
关于生成对抗网络,2014年,生成式对抗网络(Generative AdversarialNetworks,GAN)是由Go-odfellow等人受博弈论中二人零和博弈思想的启发所提出的一种深度生成模型,其网络结构是由判别器网络(Discriminator,D)和生成器网络(Generator,G)所构成。判别器D的目的是去尽量正确地判断,输入数据是来自真实数据分布还是来自生成分布;而生成器G的目的是尽量去学习与真实数据分布一致的分布,并生成以假乱真的样本。GAN的核心思想是利用判别器和生成器网络之间的对抗训练策略,迫使网络的生成分布无限逼近真实数据分布。
参见附图8所示,GAN的训练过程分为两个阶段:第一阶段训练判别器 D,第二阶段训练生成器G。当训练完判别器D后,随后传递真假信息给生成器G,而生成器G根据信息(实质上是梯度信息)的真伪,不断优化网络(实质上是参数更新),尽量生成高质量的样本去“哄骗”判别器。于是,产生了这样的对抗策略:当训练判别器D时,判别器判定生成样本尽量最小化;而当训练生成器G时,判别器判定生成样本尽量最小化。通过这样的训练策略,判别器和生成器都在不断地提升彼此的判别能力和生成能力,直到判别器无法判断生成器生成的样本是来源于真实数据分布还是来源于生成分布。
按照研究问题的不同,决策树可分为回归决策树和分类决策树,二者的主要区别是训练样本数据的类别属性的值是否是连续的,如果类别属性的值是连续的,那么用该样本数据训练得到的决策树则为回归决策树,否则则为分类决策树。本发明主要研究的是分类问题,因此以下所提及的决策树主要指分类决策树。
决策树算法是一种基于实例的归纳学习算法。通过对数据的特征空间进行递归划分,将给定的样本数据划分到不同的簇中,然后以树的形式将分类规则展示出来,从而对数据中蕴含的知识进行发现与表示。
参见附图9所示的一个树模型的结构示意图;
决策树的任何一个分支都可以简单变换为一个分类规则,所有决策树的分支可以变换为一个分类规则库。如何构造一个分类精度高、规模小的决策树是决策树算法的重要研究内容。当利用决策树解决分类问题时,与其他的机器学习算法类似,主要也包括训练和测试两个步骤:
(1)通过已知类标签的样本数据对决策树进行训练。决策树的节点主要包括两种:一种是内部节点,另一种是叶子节点。内部节点处于树结构的内部,有自己的子节点,但是不具有类标签。叶子节点没有子节点,但是具有该节点对应的类标签。决策树在自顶向下进行递归训练的过程中,会选择相应的条件属性以及对应的***点对训练样本数据进行划分,属性不同或者***点不同,得到的决策树也是不一样的。如何选择合适的***准则对***属性和***点进行确定是决策树构造所使用的重要技术步骤之一。
(2)对未知类别的样本数据进行分类。未知类别的样本数据常被称为测试数据。测试数据集被用于验证已经训练好的决策树的好坏。
对于一个未知类别的样本,当利用决策树对其进行分类时,首先从决策树的根节点开始,将测试样本属性值与内部节点的***属性和***值进行比较,然后找到其子节点继续进行匹配,递归上述操作后,最终测试样本将到达某个叶子节点处。由于在每个叶子节点处都有类标签,该类标签即为测试样本的预测类标签。
经典决策树算法的研究内容主要包括:***准则、终止条件以及类标签确定等。
在构造一个决策树之前,这三个方面所用的技术方法是必须需要提前进行考虑的。
(1)***准则
***准则主要是指在每个树节点的***中,根据什么样的标准选择最优的***属性和***点。根据确定的***属性和***点可将样本数据划分到不同的分支中,然后进行后续子节点的构造。***准则的选择是决策树构造过程中最为重要的技术之一,采取不同的***准则就会产生不同的决策树结构。如何构造合适的***准则也成为了决策树算法研宄的热点,***准则的构造一般是基于某种衡量属性质量的度量或划分纯度。本发明采用基尼系数作为***准测。
(2)终止条件
终止条件是指停止对决策树的生长并产生叶子节点的条件。由于采集数据时的误差或属性值缺失等原因,训练决策树所用的样本数据中会含有部分噪音数据,如果训练的过程中过分追求对训练数据的拟合程度,将会导致训练出的决策树在对测试数据进行分类时产生较大的误差。换句话说,训练出来的决策树是一个过度分割或过拟合的决策树,该类决策树不仅分类效果不好,而且还会产生复杂的分类规则,降低决策树的可解释性。因此,为解决对训练数据的过度拟合,可以采取设置终止条件f方式对决策树的生长进行控制。
通过设置终止条件可以使决策树在生长的过程中较早地停止树的生长,达到对决策树进行简化的目的,这种方式也被称作预剪枝技术。
(3)类标签确定
类标签确定主要是指如何对叶子节点进行类别的标记。决策树的根节点到每个叶子节点的一个分支常被成为一条分类规则,如果将这些规则按照IF- THEN的方式进行理解,那么叶子节点的类标签可以看做是规则的后件。决策树按照分类方式的不同,可以分为单类标记决策树和多类标记决策树。单类标记决策树的叶子节点只代表一个类别,而多类标记决策树的叶子节点则可以代表多个类别。对于单类标记决策树,目前大多数决策树所常用的确定叶子节点类标签的方式是将落入叶子节点的训练样本数据的主要类别作为该叶子节点的类标签。对于多类标记决策树,通常根据落入节点内的不同类别的样本数按照比例进行多类类标记的确认。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
第二方面,本申请还提出了一种恶意流量识别装置,参见附图10所示的一种恶意流量识别装置的结构示意图;该装置包括:
流量轨迹图构建模块81,用于构建加密流量轨迹图;
向量获取模块82,用于通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;
类型检测模块83,用于将每个节点的向量输入到流量检测模型得到每个节点的节点类型;所述节点类型包括:恶意流量或者正常流量。
在一种实施方式中,所述流量轨迹图构建模块81还用于:获取服务器和客户端之间的网络流;
对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的权重。
根据本申请的第三方面,提供了一种电子设备,包括至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行上述任意一项的方法。
第四方面,本申请还提出了一种计算机可读存储介质,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行上述任一项所述的方法。
可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
其中,非易失性存储器可以是只读存储器(Read-Only Memory,简称 ROM)、可编程只读存储器(Programmable ROM,简称PROM)、可擦除可编程只读存储器(Erasable PROM,简称EPROM)、电可擦除可编程只读存储器 (Electrically EPROM,简称EEPROM)或闪存。
易失性存储器可以是随机存取存储器(Random Access Memory,简称 RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的 RAM可用,例如静态随机存取存储器(Static RAM,简称SRAM)、动态随机存取存储器(Dynamic RAM,简称DRAM)、同步动态随机存取存储器 (Synchronous DRAM,简称SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSDRAM,简称DDRSDRAM)、增强型同步动态随机存取存储器(EnhancedSDRAM,简称ESDRAM)、同步连接动态随机存取存储器 (Synchlink DRAM,简称SLDRAM)和直接内存总线随机存取存储器 (DirectRambus RAM,简称DRRAM)。
本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (7)
1.一种恶意流量识别方法,其特征在于,包括:
构建加密流量轨迹图;
构建加密流量轨迹图,包括:
获取服务器和客户端之间的网络流;
对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的权重;
通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;获取所述加密流量轨迹图中的每个节点的向量,包括:采用GCN网络获取每个节点的向量;其中,在GCN网络中,设置每一层的输出尺寸与输入尺寸一致,并且将层间的待训练线性变换权重矩阵设置为单位矩阵;
将每个节点的向量输入到流量检测模型得到每个节点的节点类型;
所述节点类型包括:恶意流量或者正常流量。
2.根据权利要求1所述的恶意流量识别方法,其特征在于,所述统计特征包括:所述网络流的持续时间、从服务器传输到客户端的数据包数、从客户端传输到服务器的数据包数、从服务器传输到客户端的总字节数、从客户端传输到服务器的总字节数。
3.根据权利要求1所述的恶意流量识别方法,其特征在于,所述输出尺寸和输入尺寸等于统计特征的数量。
4.根据权利要求1所述的恶意流量识别方法,其特征在于,所述流量检测模型为决策树模型。
5.一种恶意流量识别装置,其特征在于,包括:
流量轨迹图构建模块,用于构建加密流量轨迹图;
所述流量轨迹图构建模块还用于:
获取服务器和客户端之间的网络流;
对于任意的一条网络流,确定所述网络流的五元组内容与统计特征;
所述五元组内容包括:源/目的IP地址;
根据每个网络流的源/目的IP地址,采用以下的公式构建加密流量轨迹图:
G_etdw=(V,A,W);
其中,V表示由图中节点{v1,...,vn}组成的节点集合;
节点vi代表第i条加密网络流;1≤i≤n;
邻接矩阵A=(aij)n×n,aij=1表示节点vi与节点vj之间具有公共IP地址;
权重矩阵W=(wij)n×n,wij表示网络流i和网络流j之间的权重;
向量获取模块,用于通过特征提取模型获取所述加密流量轨迹图中的每个节点的向量;
获取所述加密流量轨迹图中的每个节点的向量,包括:采用GCN网络获取每个节点的向量;其中,在GCN网络中,设置每一层的输出尺寸与输入尺寸一致,并且将层间的待训练线性变换权重矩阵设置为单位矩阵;
类型检测模块,用于将每个节点的向量输入到流量检测模型得到每个节点的节点类型;所述节点类型包括:恶意流量或者正常流量。
6.一种电子设备,其特征在于,包括:至少一个处理器和至少一个存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如权利要求1-4任一项所述的方法。
7.一种计算机可读存储介质,其特征在于,计算机可读存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111117806.5A CN113992349B (zh) | 2021-09-23 | 2021-09-23 | 恶意流量识别方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111117806.5A CN113992349B (zh) | 2021-09-23 | 2021-09-23 | 恶意流量识别方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113992349A CN113992349A (zh) | 2022-01-28 |
CN113992349B true CN113992349B (zh) | 2023-05-19 |
Family
ID=79736461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111117806.5A Active CN113992349B (zh) | 2021-09-23 | 2021-09-23 | 恶意流量识别方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113992349B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114900835A (zh) * | 2022-04-20 | 2022-08-12 | 广州爱浦路网络技术有限公司 | 恶意流量智能检测方法、装置及存储介质 |
CN115001827B (zh) * | 2022-06-02 | 2023-03-24 | 电子科技大学 | 一种云端结合IoT僵尸网络检测原型***及方法 |
CN116566735B (zh) * | 2023-06-27 | 2023-09-12 | 北京云科安信科技有限公司 | 一种机器学习识别恶意流量的方法 |
CN117692261B (zh) * | 2024-02-04 | 2024-04-05 | 长沙市智为信息技术有限公司 | 一种基于行为子图表征的恶意Bot识别方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015128613A1 (en) * | 2014-02-28 | 2015-09-03 | British Telecommunications Public Limited Company | Malicious encrypted network traffic identification |
WO2018178028A1 (en) * | 2017-03-28 | 2018-10-04 | British Telecommunications Public Limited Company | Initialisation vector identification for encrypted malware traffic detection |
CN108985361A (zh) * | 2018-07-02 | 2018-12-11 | 北京金睛云华科技有限公司 | 一种基于深度学习的恶意流量检测实现方法和装置 |
CN111031071A (zh) * | 2019-12-30 | 2020-04-17 | 杭州迪普科技股份有限公司 | 恶意流量的识别方法、装置、计算机设备及存储介质 |
CN111200575A (zh) * | 2018-11-16 | 2020-05-26 | 慧盾信息安全科技(苏州)股份有限公司 | 一种基于机器学习的信息***恶意行为的识别方法 |
CN111314161A (zh) * | 2019-11-01 | 2020-06-19 | 北京三快在线科技有限公司 | 一种流量识别方法和装置 |
CN113194068A (zh) * | 2021-03-30 | 2021-07-30 | 北京六方云信息技术有限公司 | 基于卷积神经网络的恶意加密流量检测方法及装置 |
-
2021
- 2021-09-23 CN CN202111117806.5A patent/CN113992349B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015128613A1 (en) * | 2014-02-28 | 2015-09-03 | British Telecommunications Public Limited Company | Malicious encrypted network traffic identification |
WO2018178028A1 (en) * | 2017-03-28 | 2018-10-04 | British Telecommunications Public Limited Company | Initialisation vector identification for encrypted malware traffic detection |
CN108985361A (zh) * | 2018-07-02 | 2018-12-11 | 北京金睛云华科技有限公司 | 一种基于深度学习的恶意流量检测实现方法和装置 |
CN111200575A (zh) * | 2018-11-16 | 2020-05-26 | 慧盾信息安全科技(苏州)股份有限公司 | 一种基于机器学习的信息***恶意行为的识别方法 |
CN111314161A (zh) * | 2019-11-01 | 2020-06-19 | 北京三快在线科技有限公司 | 一种流量识别方法和装置 |
CN111031071A (zh) * | 2019-12-30 | 2020-04-17 | 杭州迪普科技股份有限公司 | 恶意流量的识别方法、装置、计算机设备及存储介质 |
CN113194068A (zh) * | 2021-03-30 | 2021-07-30 | 北京六方云信息技术有限公司 | 基于卷积神经网络的恶意加密流量检测方法及装置 |
Non-Patent Citations (4)
Title |
---|
Deep Learning Detection Method of Encrypted Malicious Traffic for Power Grid;Lin Chen, Yixi Jiang,Xiaoyun Kuang, Aidong Xu;《2020 IEEE International Conference on Energy Internet (ICEI)》;86-91 * |
基于机器学习的TLS恶意加密流量检测方案;骆子铭;许书彬;刘晓东;;网络与信息安全学报(第01期);81-87 * |
基于深度学习的加密流量分类研究综述;冷涛;《计算机与现代化》;112-120 * |
网络流量经加密后的检测方法探究;叶水勇;;东北电力技术(第09期);48-52 * |
Also Published As
Publication number | Publication date |
---|---|
CN113992349A (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113992349B (zh) | 恶意流量识别方法、装置、设备和存储介质 | |
Sun et al. | DL‐IDS: Extracting Features Using CNN‐LSTM Hybrid Network for Intrusion Detection System | |
Karami | An anomaly-based intrusion detection system in presence of benign outliers with visualization capabilities | |
US20210021616A1 (en) | Method and system for classifying data objects based on their network footprint | |
CN112953924A (zh) | 网络异常流量检测方法、***、存储介质、终端及应用 | |
CN108768883B (zh) | 一种网络流量识别方法及装置 | |
CN111565205A (zh) | 网络攻击识别方法、装置、计算机设备和存储介质 | |
CN113328985B (zh) | 一种被动物联网设备识别方法、***、介质及设备 | |
CN102420723A (zh) | 一种面向多类入侵的异常检测方法 | |
CN112235264A (zh) | 一种基于深度迁移学习的网络流量识别方法及装置 | |
CN113378899B (zh) | 非正常账号识别方法、装置、设备和存储介质 | |
JP2019110513A (ja) | 異常検知方法、学習方法、異常検知装置、および、学習装置 | |
CN110445689A (zh) | 识别物联网设备类型的方法、装置及计算机设备 | |
Al-mamory et al. | Evaluation of different data mining algorithms with kdd cup 99 data set | |
CN114172688A (zh) | 基于gcn-dl的加密流量网络威胁关键节点自动提取方法 | |
Gogoi et al. | A rough set–based effective rule generation method for classification with an application in intrusion detection | |
Silva et al. | A statistical analysis of intrinsic bias of network security datasets for training machine learning mechanisms | |
US11184282B1 (en) | Packet forwarding in a network device | |
Alsumaidaie et al. | An Assessment of Ensemble Voting Approaches, Random Forest, and Decision Tree Techniques in Detecting Distributed Denial of Service (DDoS) Attacks | |
CN111291078A (zh) | 一种域名匹配检测方法及装置 | |
CN112149121A (zh) | 一种恶意文件识别方法、装置、设备及存储介质 | |
Jin et al. | Zero-day traffic identification using one-dimension convolutional neural networks and auto encoder machine | |
Alkaabi et al. | Modeling Cyber-Attribution Using Machine Learning Techniques | |
WO2022014422A1 (ja) | 通信監視方法、及び、通信監視システム | |
CN114362972B (zh) | 一种基于流量摘要和图采样的僵尸网络混合检测方法及*** |
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 |