CN113542259A - 基于多模态深度学习的加密恶意流量检测方法及系统 - Google Patents

基于多模态深度学习的加密恶意流量检测方法及系统 Download PDF

Info

Publication number
CN113542259A
CN113542259A CN202110786063.4A CN202110786063A CN113542259A CN 113542259 A CN113542259 A CN 113542259A CN 202110786063 A CN202110786063 A CN 202110786063A CN 113542259 A CN113542259 A CN 113542259A
Authority
CN
China
Prior art keywords
encrypted
data
sequence
packet
handshake
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
Application number
CN202110786063.4A
Other languages
English (en)
Other versions
CN113542259B (zh
Inventor
金舒原
张笑天
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202110786063.4A priority Critical patent/CN113542259B/zh
Publication of CN113542259A publication Critical patent/CN113542259A/zh
Application granted granted Critical
Publication of CN113542259B publication Critical patent/CN113542259B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提出一种基于多模态深度学习的加密恶意流量检测方法及系统,其中包括以下步骤:对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列;从加密流量数据的握手阶段数据包中提取握手信息特征向量;从加密流量数据的数据包长度序列中提取包长信息序列特征向量;从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量;将握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将多模态特征向量输入深度学习网络模型中,得到加密流量数据的分类结果;其中分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。

Description

基于多模态深度学习的加密恶意流量检测方法及系统
技术领域
本发明涉及计算机网络安全技术领域,更具体地,涉及一种基于多模态深度学习的加密恶意流量检测方法及系统。
背景技术
恶意流量是攻击者设计并编写的恶意软件在运行过程中产生的通信流量。由于恶意软件可以造成许多不同类型的损害,比如窃取个人信息、夺取宿主计算机控制权等,所以在复杂的网络环境中及时检测出恶意流量成为网络空间安全中一项十分重要的挑战。由于加密流量在握手协商阶段采用明文数据包通信,并且协商过程中包含大量涉及加密通信的参数,比如客户端提供的加密套件、加密通信采用的加密算法等标志,研究者对于握手阶段产生的明文信息进行数据挖掘,发现对于恶意软件所产生的加密恶意流量,在SSL/TLS握手阶段的特征与正常用户上网产生的加密流量具有显著的区分度。原因是恶意软件在通过SSL/TLS加密套件对通信内容实施加密时,通常不倾向于和正常用户一样采用较新和较安全的加密套件,因为恶意软件加密通信流量的目的主要在于防止防火墙对明文内容进行恶意软件指纹的匹配,而不是防止第三方的黑客攻击。
针对这一点,许多研究者设计了包含SSL/TLS握手特征在内的加密流量特征,再利用逻辑回归、随机森林或SVM等机器学习模型实施加密恶意流量的检测。然而这种方法需要特定领域专家人为的精心设计加密流量特征,存在工作复杂而且效率低下的问题。另有研究者提出基于深度学习网络的恶意加密流量识别,将加密流量作为输入,然后通过使用端到端的深度学习网络模型提取加密流量特征并识别恶意加密流量,比如采用CNN网络、LSTM网络等,在加密恶意流量检测任务中有良好的表现。但是在加密恶意流量识别方法的设计或加密恶意流量识别系统的构造的设计上,通常没有针对加密流量中不同模态的输入数据设计更为适配的网络模型,无法提取可以反应加密流量整体多方面的特征。
发明内容
本发明为克服上述现有技术所述的需要设计特定加密流量特征,且单一深度学习模型无法提取能够反应加密流量整体多方面特征的缺陷,提供一种基于多模态深度学习的加密恶意流量检测方法,以及一种基于多模态深度学习的加密恶意流量检测系统。
为解决上述技术问题,本发明的技术方案如下:
一种基于多模态深度学习的加密恶意流量检测方法,包括以下步骤:
对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列;
从加密流量数据的握手阶段数据包中提取握手信息特征向量;
从加密流量数据的数据包长度序列中提取包长信息序列特征向量;
从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量;
将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,得到加密流量数据的分类结果;所述分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
本技术方案中,对加密流量数据中的握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行提取后,拼接融合得到多模态特征向量。其中,握手信息包括客户端与服务器在SSL/TLS握手阶段传输的大量有关加密信息的数据,例如客户端提供的加密套件、服务端选择的加密套件、服务器证书等;包长信息序列为通信过程中加密流量每个数据包的长度信息组成的数字序列,能够反应出通信内容在长度上的分布偏好,属于加密流量在空间维度上的信息;包到达信息序列为通信过程中加密流量每个数据包的到达间隔时间组成的数字序列,能够反应出通信数据包生成和发送速度上的信息,属于加密流量在时间维度上的信息。通过对上述特征向量进行提取、拼接融合后得到多模态特征向量,再通过深度学习网络模型进行恶意加密流量的分类判决,输出得到加密流量数据的加密恶意流量所属恶意软件家族类别,或非加密恶意流量等分类结果。
作为优选方案,从加密流量数据中提取加密流量数据的握手阶段数据包的步骤包括:提取加密流量数据SSL/TLS层握手阶段报文作为握手阶段数据包;
从加密流量数据中提取加密流的数据包长度序列的步骤包括:对加密流数据包实施字节统计得到包长信息,组成数据包长度序列,或对加密流数据包TCP包头标志位中提取包长信息,组成数据包长度序列;
从加密流量数据中提取数据包到达的时间间隔序列的步骤包括:通过加密流量数据中数据包的包到达时间计算得到包到达时间间隔元素,组成包到达的时间间隔序列,或采用流量分析工具获得。
作为优选方案,所述SSL/TLS层握手阶段报文包括ClientHello报文、ServerHello报文和Certificate报文。
作为优选方案,从加密流量数据的握手阶段数据包中提取握手信息特征的步骤包括:
对握手阶段数据包原始流量的字节数目进行统计,对字节数超过N比特的报文进行截断,对长度小于N字节的报文在其末尾以0x00补齐,然后将整形处理后的报文中各个字节解释为0-255的整数,得到定长数字序列;
将所述定长数字序列输入嵌入层得到数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述定长数字序列的数字二维矩阵输入CNN模型中,CNN模型输出握手信息特征向量。
作为优选方案,所述CNN模型包括依次连接的若干卷积层,以及最大池化层和全连接层,且所述一维CNN模型采用残差网络结构。
作为优选方案,从加密流量数据的数据包长度序列中提取包长信息序列特征的步骤包括:
将所述数据包长度序列进行截断和添加数字0操作,得到固定序列长度的数据包长度序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述数据包长度序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包长信息序列特征向量。
作为优选方案,从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征的步骤包括:
将所述加密流量数据的数据包到达的时间间隔序列进行截断和添加数字0操作,得到固定序列长度的数据包到达时间间隔序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述数据包到达时间间隔序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包到达信息序列特征向量。
作为优选方案,所述双向GRU模型包括依次连接的循环神经网络层、Attention层和全连接层,所述循环神经网络层包括多层GRU、双向GRU、多层LSTM、双向LSTM、RNN或双向RNN网络中的一种。
作为优选方案,所述方法还包括对所述深度学习网络模型进行预训练,其步骤包括:
采用随机数初始化所述深度学习网络模型中所有参数;
获取带实际标签的加密流量数据作为训练数据,对其执行数据分割以及特征向量提取,得到握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量,然后将其拼接融合后输入所述深度学习网络模型中,得到表征加密恶意流量所属恶意软件家族类别或非加密恶意流量的分类向量;所述加密流量数据的实际标签包括加密恶意流量所属恶意软件家族类别和非加密恶意流量;
计算所述分类向量与对应加密流量数据的实际标签的交叉熵误差;
通过反向传播算法计算误差相对于所有权重的梯度,通过梯度下降算法更新所有的参数,使输出与实际标签误差最小;
保存深度学习网络模型的模型结构、训练配置、优化器状态和模型参数。
本发明还提出了一种基于多模态深度学习的加密恶意流量检测系统,应用于上述任一技术方案提出的基于多模态深度学习的加密恶意流量检测方法。其包括:
数据分割模块,用于对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列,然后分别传输至握手特征提取模块、包长信息序列特征提取模块和包到达信息序列特征提取模块;
握手特征提取模块,用于通过CNN模型从加密流量数据的握手阶段数据包中提取握手信息特征向量,然后传输至多模态特征融合分类模块;
包长信息序列特征提取模块,用于通过双向GRU模型从加密流量数据的数据包长度序列中提取包长信息序列特征向量,然后传输至多模态特征融合分类模块;
包到达信息序列特征提取模块,用于通过双向GRU模型从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量,然后传输至多模态特征融合分类模块;
多模态特征融合分类模块,用于将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,输出得到加密流量数据的分类结果;所述分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
与现有技术相比,本发明技术方案的有益效果是:本发明融合了三种加密流量中存在的信息模态,并对不同的模态设计针对性的特征提取深度学习网络,能够得到更精确反应加密流量综合整体特点的特征向量,从而进一步提高加密恶意流量的识别精度。
附图说明
图1为实施例1的基于多模态深度学习的加密恶意流量检测方法的流程图。
图2为实施例1的CNN模型的结构示意图。
图3为实施例1的双向GRU模型的结构示意图。
图4为实施例2的基于多模态深度学习的加密恶意流量检测系统的原理图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例提出一种基于多模态深度学习的加密恶意流量检测方法,如图1所示,为本实施例的基于多模态深度学习的加密恶意流量检测方法的流程图。
本实施例提出的基于多模态深度学习的加密恶意流量检测方法中,包括以下步骤:
步骤1:对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列。
本步骤中,将加密流量数据从三种不同的分析角度进行分割、截断等数据操作,得到后续步骤中用于三种不同模态的信息特征提取操作的输入数据。
本实施例中,通过对SSL/TLS层握手阶段报文的分析得到握手阶段的关键报文段,即建立SSL/TLS连接阶段的协商报文段,并且从加密流量数据的数据包序列中分别提取得到加密流量的数据包长度序列和数据包到达的时间间隔序列。
从加密流量数据中提取加密流量数据的握手阶段数据包的步骤包括:提取加密流量数据SSL/TLS层握手阶段报文作为握手阶段数据包,选取的报文均来源于SSL/TLS协议握手协商阶段产生的数据报文。本实施例中提取的加密流量数据SSL/TLS层握手阶段报文包括:ClientHello报文、ServerHello报文与Certificate报文。
从加密流量数据中提取加密流的数据包长度序列的步骤包括:对加密流数据包实施字节统计得到包长信息组成数据包长度序列,或对加密流数据包TCP包头标志位中提取包长信息组成数据包长度序列。其中,所述包长信息包括TCP数据包长度信息或SSL/TLS数据包报文长度信息。
从加密流量数据中提取数据包到达的时间间隔序列的步骤包括:通过加密流量数据包PCAP文件中数据包的包到达时间进行计算得到包到达时间间隔元素,组成包到达的时间间隔序列,或通过zeek等流量分析工具获得。其中,所述包到达时间间隔元素为TCP数据包到达时间间隔信息或SSL/TLS数据包报文到达时间间隔信息。
步骤2:从加密流量数据的握手阶段数据包中提取握手信息特征向量。
本步骤中,采用一维CNN模型对加密流量数据的握手信息进行特征提取,所提取的握手信息为客户端与服务器在SSL/TLS握手阶段传输的大量有关加密信息的数据,包括但不限于客户端提供的加密套件、服务端选择的加密套件、服务器证书等。一维CNN模型对握手阶段数据包中的握手信息进行筛选和组合,得到握手信息特征向量。其具体步骤包括:
步骤21:对握手阶段数据包原始流量的字节数目进行统计,对字节数超过N比特的报文进行截断,对长度小于N字节的报文在其末尾以0x00补齐,然后将整形处理后的报文中各个字节解释为0-255的整数,得到定长数字序列;
步骤22:将所述定长数字序列输入嵌入层得到数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行,矩阵长度对应定长数字序列长度;
步骤23:将所述定长数字序列的数字二维矩阵输入CNN模型中,CNN模型输出握手信息特征向量。
其中,每个报文处理得到的定长数字序列的字节长度N在[200,2000]范围内,可根据加密恶意流量识别在时间效率和计算资源消耗的要求,在本实施例中N设置为200。
本实施例的CNN模型的原理图如图2所示,其中包括依次连接的嵌入层、若干卷积层,以及最大池化层和全连接层。本实施例中的嵌入层的输出维数设置为60,且CNN模型采用残差网络结构,其卷积方向为纵向。
步骤3:从加密流量数据的数据包长度序列中提取包长信息序列特征向量。
本步骤中,采用双向GRU网络模型对加密流量数据的包长信息序列进行特征提取,其中包长信息序列是通信过程中加密流量每个数据包的长度信息组成的数字序列,可以反应出通信内容在长度上的分布偏好,属于加密流量在空间维度上的信息。本实施例通过将序列信息全文特征提取能力优秀的双向GRU网络应用于包长信息序列特征向量的提取,可以高效的得到加密流空间模态上用于恶意加密流量检测的特征。其具体步骤包括:
步骤31:将所述数据包长度序列进行截断和添加数字0操作,得到固定序列长度的数据包长度序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行,矩阵长度对应数据包长度序列的长度;
步骤32:将所述数据包长度序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包长信息序列特征向量。
本实施例中的双向GRU网络模型采用多层双向GRU网络层搭建。如图3所示,为本实施例的双向GRU网络模型的原理图。本实施例中的双向GRU网络模型包括依次连接的嵌入层、循环神经网络层、Attention层和全连接层,其中循环神经网络层包括多层GRU、双向GRU、多层LSTM、双向LSTM、RNN或双向RNN网络中的一种。本实施例中的循环神经网络层采用双向GRU网络。
步骤4:从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量。
本步骤中,采用双向GRU网络模型对加密流量数据的包到达信息序列进行特征提取,其中包到达信息序列是通信过程中加密流量每个数据包的到达间隔时间组成的数字序列,可以反应出通信数据包生成和发送速度上的信息,属于加密流量在时间维度上的信息。本实施例通过将序列信息全文特征提取能力优秀的双向GRU网络应用于包到达信息序列特征向量的提取,可以高效的得到加密流时间模态上用于恶意加密流量检测的特征。其具体步骤与步骤3类似,包括:
步骤41:将所述加密流量数据的数据包到达的时间间隔序列进行截断和添加数字0操作,得到固定序列长度的数据包到达时间间隔序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行,矩阵长度对应数据包到达时间间隔序列的长度;
步骤42:将所述数据包到达时间间隔序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包到达信息序列特征向量。
本步骤中所采用的双向GRU模型与步骤3中采用的双向GRU网络模型的结构相同,包括依次连接的嵌入层、循环神经网络层、Attention层和全连接层,其中循环神经网络层包括多层GRU、双向GRU、多层LSTM、双向LSTM、RNN或双向RNN网络中的一种。本实施例中的循环神经网络层采用双向GRU网络。
步骤5:将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,得到加密流量数据的分类结果。
其中,本实施例中的分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
本步骤中的深度学习网络模型采用多个全连接层构造,且深度学习网络模型最后一层设置为softmax分类器。
其中,本实施例利用了多个深度学习网络模型进行加密流量不同模态的数据特征提取,包括嵌入层在内的深度学习网络模型是一个端到端的深度学习网络,而在通过基于多模态深度学习的加密恶意流量的检测方法实施加密恶意流量检测之前,需要对该模型进行预训练。对本实施例中的深度学习网络模型进行预训练的步骤包括:
1)采用随机数初始化所述深度学习网络模型中所有参数;
2)获取带实际标签的加密流量数据作为训练数据,对其执行数据分割以及特征向量提取操作,得到握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量,然后将其拼接融合后输入所述深度学习网络模型中,得到表征加密恶意流量所属恶意软件家族类别或非加密恶意流量的分类向量;所述加密流量数据的实际标签中包括加密恶意流量所属恶意软件家族类别和非加密恶意流量;
3)计算所述分类向量与对应加密流量数据的实际标签的交叉熵误差;
4)通过反向传播算法计算误差相对于所有权重的梯度,通过梯度下降算法更新所有的参数,使输出与实际标签误差最小;
5)保存深度学习网络模型的模型结构、训练配置、优化器状态和模型参数。
本实施例中,将加密流量数据分割为不同方面的输入数据,同时考虑了三种加密流量中存在的信息模态,并且对不同的模态设计针对性的特征提取深度学习网络,分别提取握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量,与传统的通过单一深度学习网络相比,其提取的加密流量特征更能精确地反应加密流量的综合整体特点,因此能够有效提高加密恶意流量的识别精度。
本实施例采用机器学习的方式识别加密恶意流量,端到端的深度学习网络的应用避免了复杂的特征工程步骤,可以极大节省人力,提升效率,且本实施例所采用的深度学习网络模型避免了单一复杂网络模型面对分类信息分布不均的原始加密流数据时的网络性能使用不充分的情况,提升了检测效率,具有更好的应用价值。
实施例2
本实施例提出一种基于多模态深度学习的加密恶意流量检测系统,应用于实施例1提出的基于多模态深度学习的加密恶意流量检测方法。如图4所示,为本实施例的加密恶意流量检测系统的原理图。
本实施例提出的基于多模态深度学习的加密恶意流量检测系统中,包括:
数据分割模块1,用于对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列,然后分别传输至握手特征提取模块2、包长信息序列特征提取模块3和包到达信息序列特征提取模块4;
握手特征提取模块2,用于通过CNN模型从加密流量数据的握手阶段数据包中提取握手信息特征向量,然后传输至多模态特征融合分类模块5;
包长信息序列特征提取模块3,用于通过双向GRU模型从加密流量数据的数据包长度序列中提取包长信息序列特征向量,然后传输至多模态特征融合分类模块5;
包到达信息序列特征提取模块4,用于通过双向GRU模型从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量,然后传输至多模态特征融合分类模块5;
多模态特征融合分类模块5,用于将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,输出得到加密流量数据的检测结果。
本实施例中,数据分割模块1的工作流程如下:
1)将原始加密流量数据包序列作为输入,进行握手阶段数据包提取、数据包长序列构建和包到达间隔序列构建操作;
2)将握手阶段数据包、数据包长序列和包到达间隔序列分别输出到握手信息特征提取模块、包长信息序列特征提取模块3和包到达信息序列特征提取模块4。
握手特征提取模块2的工作流程如下:
1)将握手阶段数据包作为输入,进行包括截断、补零和字节转换整数处理的数据整形操作;
2)将整形后的数字序列输入至嵌入层得到二维数字矩阵,作为输入传入一维CNN模型中进行特征抽取,得到握手信息特征向量;
3)模型输出的握手信息特征向量作为模块输出传至多模态特征融合分类模块5。
其中,本实施例的一维CNN模型包括输入层、嵌入层、第一一维卷积层、第二一维卷积层、第三一维卷积层、最大池化层和输出层。
包长信息序列特征提取模块3的工作流程如下:
1)将数据包长序列作为输入,通过截断和增加零元素操作构建定长数据包长序列;
2)将序列输入至嵌入层得到二维数字矩阵,作为输入传入双向GRU模型中进行特征抽取,得到包长信息序列特征向量;
3)模型输出的包长信息序列特征向量作为模块输出传至多模态特征融合分类模块5。
其中,本实施例的双向GRU模型包括输入层、嵌入层、双向GRU层、Attention层和输出层。其中双向GRU层可以替换为选用LSTM层、双向LSTM层、RNN层或双向RNN层,网络层数可以根据实际加密恶意软件流量分类任务的效率限制与计算资源限制做适当调整。
包到达信息序列特征提取模块4的工作流程如下:
1)将包到达间隔序列作为输入,通过截断和增加零元素操作构建定长包到达间隔序列;
2)将序列输入至嵌入层得到二维数字矩阵,作为输入传入双向GRU模型中进行特征抽取,得到包到达信息序列特征向量;
3)模型输出的包到达信息序列特征向量作为模块输出传至多模态特征融合分类模块5。
其中,该模块所采用的双向GRU模型与包长信息序列特征提取模块3所采用的双向GRU模型组成结构相同。
多模态特征融合分类模块5的工作流程如下:
1)将握手信息特征向量、包长信息序列特征向量和包到达信息序列特征向量执行拼接融合操作得到多模态特征向量;
2)将多模态特征向量传入多层全连接网络,网络的最后一层输出至softmax分类器进行恶意加密流量的分类判决,得到加密流量的分类结果作为模块输出。
根据多模态特征融合分类模块5输出的加密流量分类结果,判断当前识别的加密流量数据是否为加密恶意流量。其中,分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (10)

1.基于多模态深度学习的加密恶意流量检测方法,其特征在于,包括以下步骤:
对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列;
从加密流量数据的握手阶段数据包中提取握手信息特征向量;
从加密流量数据的数据包长度序列中提取包长信息序列特征向量;
从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量;
将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,得到加密流量数据的分类结果;所述分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
2.根据权利要求1所述的加密恶意流量检测方法,其特征在于,从加密流量数据中提取加密流量数据的握手阶段数据包的步骤包括:提取加密流量数据SSL/TLS层握手阶段报文作为握手阶段数据包;
从加密流量数据中提取加密流的数据包长度序列的步骤包括:对加密流数据包实施字节统计得到包长信息,组成数据包长度序列,或对加密流数据包TCP包头标志位中提取包长信息,组成数据包长度序列;
从加密流量数据中提取数据包到达的时间间隔序列的步骤包括:通过加密流量数据中数据包的包到达时间计算得到包到达时间间隔元素,组成包到达的时间间隔序列,或采用流量分析工具获得。
3.根据权利要求2所述的加密恶意流量检测方法,其特征在于,所述SSL/TLS层握手阶段报文包括ClientHello报文、ServerHello报文和Certificate报文。
4.根据权利要求1所述的加密恶意流量检测方法,其特征在于,从加密流量数据的握手阶段数据包中提取握手信息特征的步骤包括:
对握手阶段数据包原始流量的字节数目进行统计,对字节数超过N比特的报文进行截断,对长度小于N字节的报文在其末尾以0x00补齐,然后将整形处理后的报文中各个字节解释为0-255的整数,得到定长数字序列;
将所述定长数字序列输入嵌入层得到数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述定长数字序列的数字二维矩阵输入CNN模型中,CNN模型输出握手信息特征向量。
5.根据权利要求4所述的加密恶意流量检测方法,其特征在于,所述CNN模型包括依次连接的若干卷积层,以及最大池化层和全连接层,且所述一维CNN模型采用残差网络结构。
6.根据权利要求1所述的加密恶意流量检测方法,其特征在于,从加密流量数据的数据包长度序列中提取包长信息序列特征的步骤包括:
将所述数据包长度序列进行截断和添加数字0操作,得到固定序列长度的数据包长度序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述数据包长度序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包长信息序列特征向量。
7.根据权利要求1所述的加密恶意流量检测方法,其特征在于,从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征的步骤包括:
将所述加密流量数据的数据包到达的时间间隔序列进行截断和添加数字0操作,得到固定序列长度的数据包到达时间间隔序列,然后将其输入嵌入层中得到相应的数字二维矩阵,其中每个数字映射为数字二维矩阵中的一行;
将所述数据包到达时间间隔序列的数字二维矩阵输入双向GRU模型中,双向GRU模型输出包到达信息序列特征向量。
8.根据权利要求6或7所述的加密恶意流量检测方法,其特征在于,所述双向GRU模型包括依次连接的循环神经网络层、Attention层和全连接层,所述循环神经网络层包括多层GRU、双向GRU、多层LSTM、双向LSTM、RNN或双向RNN网络中的一种。
9.根据权利要求1所述的加密恶意流量检测方法,其特征在于,所述方法还包括对所述深度学习网络模型进行预训练,其步骤包括:
采用随机数初始化所述深度学习网络模型中所有参数;
获取带实际标签的加密流量数据作为训练数据,对其执行数据分割以及特征向量提取,得到握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量,然后将其拼接融合后输入所述深度学习网络模型中,得到表征加密恶意流量所属恶意软件家族类别或非加密恶意流量的分类向量;所述加密流量数据的实际标签包括加密恶意流量所属恶意软件家族类别和非加密恶意流量;
计算所述分类向量与对应加密流量数据的实际标签的交叉熵误差;
通过反向传播算法计算误差相对于所有权重的梯度,通过梯度下降算法更新所有的参数,使输出与实际标签误差最小;
保存深度学习网络模型的模型结构、训练配置、优化器状态和模型参数。
10.基于多模态深度学习的加密恶意流量检测系统,其特征在于,包括:
数据分割模块,用于对加密流量数据进行数据分割,得到加密流量数据的握手阶段数据包、数据包长度序列和数据包到达的时间间隔序列,然后分别传输至握手特征提取模块、包长信息序列特征提取模块和包到达信息序列特征提取模块;
握手特征提取模块,用于通过CNN模型从加密流量数据的握手阶段数据包中提取握手信息特征向量,然后传输至多模态特征融合分类模块;
包长信息序列特征提取模块,用于通过双向GRU模型从加密流量数据的数据包长度序列中提取包长信息序列特征向量,然后传输至多模态特征融合分类模块;
包到达信息序列特征提取模块,用于通过双向GRU模型从加密流量数据的数据包到达的时间间隔序列中提取包到达信息序列特征向量,然后传输至多模态特征融合分类模块;
多模态特征融合分类模块,用于将所述握手信息特征向量、包长信息序列特征向量、包到达信息序列特征向量进行拼接融合,得到多模态特征向量,将所述多模态特征向量输入深度学习网络模型中,输出得到加密流量数据的分类结果;所述分类结果包括加密恶意流量所属恶意软件家族类别和非加密恶意流量。
CN202110786063.4A 2021-07-12 2021-07-12 基于多模态深度学习的加密恶意流量检测方法及系统 Active CN113542259B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110786063.4A CN113542259B (zh) 2021-07-12 2021-07-12 基于多模态深度学习的加密恶意流量检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110786063.4A CN113542259B (zh) 2021-07-12 2021-07-12 基于多模态深度学习的加密恶意流量检测方法及系统

Publications (2)

Publication Number Publication Date
CN113542259A true CN113542259A (zh) 2021-10-22
CN113542259B CN113542259B (zh) 2022-09-13

Family

ID=78098701

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110786063.4A Active CN113542259B (zh) 2021-07-12 2021-07-12 基于多模态深度学习的加密恶意流量检测方法及系统

Country Status (1)

Country Link
CN (1) CN113542259B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095446A (zh) * 2021-11-10 2022-02-25 北京天融信网络安全技术有限公司 一种加密流量分类模型训练方法、检测方法及装置
CN114422207A (zh) * 2021-12-30 2022-04-29 中国人民解放军战略支援部队信息工程大学 基于多模态的c&c通信流量检测方法及装置
CN114553790A (zh) * 2022-03-12 2022-05-27 北京工业大学 一种基于多模态特征的小样本学习物联网流量分类方法及系统
CN114866485A (zh) * 2022-03-11 2022-08-05 南京华飞数据技术有限公司 一种基于聚合熵的网络流量分类方法及分类系统
CN115314265A (zh) * 2022-07-27 2022-11-08 天津市国瑞数码安全系统股份有限公司 基于流量和时序识别tls加密应用的方法和系统
CN115348215A (zh) * 2022-07-25 2022-11-15 南京信息工程大学 一种基于时空注意力机制的加密网络流量分类方法
CN115378705A (zh) * 2022-08-22 2022-11-22 中国人民解放军战略支援部队信息工程大学 协议无关的多模态安全方法及装置
CN115801338A (zh) * 2022-10-28 2023-03-14 航科广软(广州)数字科技有限公司 基于加密流量控制网关的数据处理方法及系统
CN115865534A (zh) * 2023-02-27 2023-03-28 深圳大学 一种基于恶意加密流量检测方法、系统、装置及介质
CN118013558B (zh) * 2024-04-08 2024-06-04 山东瑞福锂业有限公司 一种工业设备数据的存储方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111147394A (zh) * 2019-12-16 2020-05-12 南京理工大学 一种远程桌面协议流量行为的多级分类检测方法
US20200186547A1 (en) * 2018-12-11 2020-06-11 Cisco Technology, Inc. Detecting encrypted malware with splt-based deep networks
CN111277578A (zh) * 2020-01-14 2020-06-12 西安电子科技大学 加密流量分析特征提取方法、系统、存储介质、安全设备
CN111711633A (zh) * 2020-06-22 2020-09-25 中国科学技术大学 多阶段融合的加密流量分类方法
CN112311814A (zh) * 2020-12-23 2021-02-02 中国航空油料集团有限公司 基于深度学习的恶意加密流量识别方法、系统及电子设备
CN112738039A (zh) * 2020-12-18 2021-04-30 北京中科研究院 一种基于流量行为的恶意加密流量检测方法、系统及设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200186547A1 (en) * 2018-12-11 2020-06-11 Cisco Technology, Inc. Detecting encrypted malware with splt-based deep networks
CN111147394A (zh) * 2019-12-16 2020-05-12 南京理工大学 一种远程桌面协议流量行为的多级分类检测方法
CN111277578A (zh) * 2020-01-14 2020-06-12 西安电子科技大学 加密流量分析特征提取方法、系统、存储介质、安全设备
CN111711633A (zh) * 2020-06-22 2020-09-25 中国科学技术大学 多阶段融合的加密流量分类方法
CN112738039A (zh) * 2020-12-18 2021-04-30 北京中科研究院 一种基于流量行为的恶意加密流量检测方法、系统及设备
CN112311814A (zh) * 2020-12-23 2021-02-02 中国航空油料集团有限公司 基于深度学习的恶意加密流量识别方法、系统及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
翟明芳等: "基于深度学习的加密恶意流量检测研究", 《网络与信息安全学报》 *
陈明豪等: "《基于Attention-CNN的加密流量应用类型识别》", 《计算机科学》 *

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095446A (zh) * 2021-11-10 2022-02-25 北京天融信网络安全技术有限公司 一种加密流量分类模型训练方法、检测方法及装置
CN114095446B (zh) * 2021-11-10 2023-10-13 北京天融信网络安全技术有限公司 一种加密流量分类模型训练方法、检测方法及装置
CN114422207B (zh) * 2021-12-30 2023-06-02 中国人民解放军战略支援部队信息工程大学 基于多模态的c&c通信流量检测方法及装置
CN114422207A (zh) * 2021-12-30 2022-04-29 中国人民解放军战略支援部队信息工程大学 基于多模态的c&c通信流量检测方法及装置
CN114866485A (zh) * 2022-03-11 2022-08-05 南京华飞数据技术有限公司 一种基于聚合熵的网络流量分类方法及分类系统
CN114866485B (zh) * 2022-03-11 2023-09-29 南京华飞数据技术有限公司 一种基于聚合熵的网络流量分类方法及分类系统
CN114553790A (zh) * 2022-03-12 2022-05-27 北京工业大学 一种基于多模态特征的小样本学习物联网流量分类方法及系统
CN115348215A (zh) * 2022-07-25 2022-11-15 南京信息工程大学 一种基于时空注意力机制的加密网络流量分类方法
CN115348215B (zh) * 2022-07-25 2023-11-24 南京信息工程大学 一种基于时空注意力机制的加密网络流量分类方法
CN115314265A (zh) * 2022-07-27 2022-11-08 天津市国瑞数码安全系统股份有限公司 基于流量和时序识别tls加密应用的方法和系统
CN115314265B (zh) * 2022-07-27 2023-07-18 天津市国瑞数码安全系统股份有限公司 基于流量和时序识别tls加密应用的方法和系统
CN115378705A (zh) * 2022-08-22 2022-11-22 中国人民解放军战略支援部队信息工程大学 协议无关的多模态安全方法及装置
CN115378705B (zh) * 2022-08-22 2024-04-05 中国人民解放军战略支援部队信息工程大学 协议无关的多模态安全方法及装置
CN115801338B (zh) * 2022-10-28 2023-07-07 航科广软(广州)数字科技有限公司 基于加密流量控制网关的数据处理方法及系统
CN115801338A (zh) * 2022-10-28 2023-03-14 航科广软(广州)数字科技有限公司 基于加密流量控制网关的数据处理方法及系统
CN115865534A (zh) * 2023-02-27 2023-03-28 深圳大学 一种基于恶意加密流量检测方法、系统、装置及介质
CN118013558B (zh) * 2024-04-08 2024-06-04 山东瑞福锂业有限公司 一种工业设备数据的存储方法及系统

Also Published As

Publication number Publication date
CN113542259B (zh) 2022-09-13

Similar Documents

Publication Publication Date Title
CN113542259B (zh) 基于多模态深度学习的加密恶意流量检测方法及系统
CN113179223B (zh) 一种基于深度学习和序列化特征的网络应用识别方法及系统
CN113612767B (zh) 基于多任务学习增强的加密恶意流量检测方法及系统
CN112804253B (zh) 一种网络流量分类检测方法、系统及存储介质
CN112104570A (zh) 流量分类方法、装置、计算机设备和存储介质
CN113452688B (zh) 一种基于sm4与sm2算法的图像加密与解密方法及装置
CN109831422A (zh) 一种基于端到端序列网络的加密流量分类方法
CN113472751B (zh) 一种基于数据包头的加密流量识别方法及装置
CN104022924A (zh) 一种http通信内容检测的方法
Wang et al. Using CNN-based representation learning method for malicious traffic identification
CN112235257A (zh) 融合式加密恶意流量检测方法及系统
CN112910853A (zh) 基于混合特征的加密流量分类方法
CN113364787A (zh) 一种基于并联神经网络的僵尸网络流量检测方法
CN112261063A (zh) 结合深度分层网络的网络恶意流量检测方法
CN115296857A (zh) 基于拓扑结构和DeepLearning-AIS的网络威胁感知及免疫方法
Ding et al. Adversarial sample attack and defense method for encrypted traffic data
CN115987599A (zh) 基于多层次注意力机制的恶意加密流量检测方法及系统
CN114422207B (zh) 基于多模态的c&c通信流量检测方法及装置
CN115865534A (zh) 一种基于恶意加密流量检测方法、系统、装置及介质
CN114866310A (zh) 一种恶意加密流量检测方法、终端设备及存储介质
Wang et al. MTC: A Multi-Task Model for Encrypted Network Traffic Classification Based on Transformer and 1D-CNN.
CN116684357A (zh) 一种传输层安全协议加密流量的识别方法及系统
Le Jeune et al. Feature dimensionality in CNN acceleration for high-throughput network intrusion detection
Huang et al. BSTFNet: An Encrypted Malicious Traffic Classification Method Integrating Global Semantic and Spatiotemporal Features.
Lu et al. A deep learning approach for m2m traffic classification using call detail records

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