一种基于图卷积网络的恶意加密流量检测方法技术

技术编号:35186661 阅读:51 留言:0更新日期:2022-10-12 17:57
一种基于图卷积网络的恶意加密流量检测方法包括:采集已知类别的网络流量数据集;对采集的网络流量数据集进行预处理;构建网络流量交互图;构建包含用图卷积网络和池化层、全连接层和分类器的流量检测模型,将网络流量交互图输入至流量检测模型中进行训练得到最终流量检测模型;将处理后的未知类型网络流量输入至最终流量检测模型进行检测,输出未知类型网络流量所属每个类别的概率,选取最大概率对应的类别作为未知类型网络流量的类型,本方法无需专家手动提取特征,自动从原始流量数据中学习特征并进行恶意加密流量检测,同时,除数据包的有效载荷外,本发明专利技术还对数据包之间的相互关系进行建模,通过丰富多个维度的特征信息,从而提高检测效果。从而提高检测效果。从而提高检测效果。

【技术实现步骤摘要】
一种基于图卷积网络的恶意加密流量检测方法


[0001]本专利技术涉及信息安全
,具体涉及一种基于图卷积网络的恶意加密流量检测方法。

技术介绍

[0002]随着SSL/TLS加密协议的广泛使用,网络中的加密流量占比逐渐增高,同时恶意攻击者利用加密技术将越来越多的攻击行为隐藏在加密流量中,这对网络加密流量的安全性造成巨大的威胁。恶意加密流量检测的目的在于检测出加密流量中的各类恶意软件活动所产生的恶意流量,从而保护网络流量安全。然而由于流量经过加密,导致传统流量检测方法如基于端口和深度包检测方法失效,使得网络环境安全面临严峻考验。
[0003]目前,基于统计特征的机器学习检测方法其特征工程的实现严重依赖于专家经验,导致该方法的灵活性较差,对于目前网络流量类型更新迭代迅速的场景,该方法难以胜任。授权公开号为CN108833360B的专利提出一种基于机器学习的恶意加密流量识别方法,该专利通过提取32种统计性特征作为流量识别方法,并采用随机森林算法进行训练,训练好的模型拥有着极高的识别率以及极低的误报率和漏报率。公开号为CN112261007A的专利提出一种基于机器学习的https恶意加密流量检测方法,通过手动提取统计量特征、证书特征和域名特征等多个维度的特征构建特征集合,并使用随机森林模型进行检测。
[0004]综上,目前的方法无法解决如下问题:基于机器学习的检测方法依赖于专家经验提取特征,不可避免的带有一定的主观性,从而影响检测结果。

技术实现思路

[0005]为解决基于机器学习的检测方法依赖于专家经验进行特征提取的问题,本专利技术设计了一种基于图卷积网络的恶意加密流量检测方法,使用原始流量作为输入,使用图卷积网络进行特征提取并输出检测结果,无需人工提取特征。
[0006]一种基于图卷积网络的恶意加密流量检测方法,所述方法包括:采集已知类别的网络流量数据集,所述已知类别的网络流量数据集包括恶意加密流量数据集和良性加密流量数据集;对采集的网络流量数据集进行预处理,将所述网络流量数据转换为流量矩阵;构建网络流量交互图,构建包含用于特征提取的图卷积网络和池化层、全连接层和分类器的流量检测模型,将网络流量交互图输入至所述流量检测模型中进行训练得到最终流量检测模型;将经过预处理并构建了网络流量交互图的未知类型网络流量输入至最终流量检测模型进行检测,输出未知类型网络流量所属每个类别的概率,选取最大概率对应的类别作为未知类型网络流量的类别;
[0007]其中,所述对网络流量数据集进行预处理的方法具体包括:
[0008]对网络流量数据集中所有数据进行流量切分:按网络流量属性中的五元组将原始流量切分为数据包,将源到目标和目标到源的数据包按照时间顺序排列生成双向会话流;并将每个会话流以pcap文件的形式保存为单个文件;其中,所述五元组包括:源IP、源端口、
目的IP、目的端口和传输层协议;
[0009]对会话流进行数据清洗:对于每条会话流,删除无效数据,遍历每条会话流的每个数据包,屏蔽链路层、网络层和传输层中一些与网络类型无关的数据;提取清洗后的流量数据的前N个数据包的前M个字节,将所有数据包字节除以255,即一个字节的最大值,从而将所有网络数据流量归一化到[0,1]区间范围,将清洗后的流量数据表示为N*M维的矩阵,对于数据包和字节,超出的部分进行截取,不足的部分补0填充,完成网络流量数据集的预处理;
[0010]将预处理后的网络流量数据集按照比例划分为训练集和验证集,一般的,技术人员根据本模型使用的场景及数据对数据集进行划分;
[0011]其中,所述构建网络流量交互图的方法为:将一条会话流中的数据包作为网络流量交互图的顶点,数据包之间的相互关系作为邻接关系建立顶点之间的边,从而将一条会话流转换为一个图结构数据;
[0012]其中,所述将网络流量交互图输入至所述流量检测模型中进行训练得到最终流量检测模型的方法具体包括:
[0013]经过多层图卷积网络对网络流量交互图进行图卷积操作,提取会话流的全局特征;然后经过一层池化层将网络流量交互图中的所有顶点特征进行汇集,从而得到整条会话流的向量F;
[0014]并通过全连接层将向量F进行特征映射,降低到指定维度,使其成为分类器可以接受的格式,具体维度根据需要设置;并将映射后的向量F送入分类器输出预测结果,然后根据交叉熵损失函数的损失值度量输出值与目标输出值之间的差距,并将损失值反向传播不断缩小输出值与目标输出值的差值,迭代训练得到最终流量检测模型;
[0015]图卷积网络目前最流行的可以直接对图结构数据进行操作的神经网络之一,假设输入的数据包的个数为N个,邻接矩阵A∈R
N
×
R
N
,A=[a
ij
]表示网络流量交互图中的邻接矩阵,其中a
ij
表示顶点i与顶点j的连接关系,1表示有邻接关系,0表示没有邻接关系;D=[∑1a
1j
,

,∑
n
a
nj
]为度矩阵,表示每个节点的阶数,D为对角矩阵,即对角线上值为∑
i
a
ij
,非对角的元素为0,I为单位矩阵,使得在聚合邻居节点特征的同时仍能保留其自身的特征信息,相对应的度矩阵表示为X∈R
N
×
R
M
为网络流量交互图的特征矩阵,包含N个节点,每个节点为由R
M
的矩阵表示的数据包级别的特征向量;则每层图卷积操作可以表示为:其中,f(*)为ReLU非线性激活函数,为表示聚合函数的拉普拉斯矩阵,W为权重矩阵;
[0016]经过多层图卷积操作提取后,经过池化操作汇集得到整个图的特征表示,池化操作主要是配合某些类型的卷积操作,降低表示的维度,得到整个图的表示;所述的池化操作包括但不限于全局池化和层次池化,全局池化操作为得到节点表示后,经过一次池化操作得到整个图的表示,层级池化操作为在每个卷积层后面,进行不同规模的池化以缩小图的尺寸,最终得到整个图的表示。
[0017]优选的,已知类别的网络流量数据集为公开的加密流量数据集。
[0018]优选的,在网关出口处采集正常的良性加密流量,通过在沙箱中运行恶意软件并
捕获恶意软件活动所产生的恶意加密流量。
[0019]优选的,所述无效数据包括重复数据包、空数据包、ARP数据包和DNS数据包,所述与网络类型无关的数据包括MAC地址和IP地址。
[0020]优选的,所述数据包之间的相互关系包括:数据包的先后顺序关系、数据包的突发关系和数据包的上下行方向关系;所述网络流量交互图中的每个顶点与一个数据包相关联,每个顶点的特征包括数据包有效载荷、数据包长度和数据包时间戳。
[0021]优选的,所述数据包先后顺序关系为会话流中数据包到达时间的先后,可以反映数据包之间的顺序关系;所述数据包上下行方向关系为客户端与服务器之间数据包的请求与响应的交互顺序本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于图卷积网络的恶意加密流量检测方法,其特征在于,所述方法包括:采集已知类别的网络流量数据集,所述已知类别的网络流量数据集包括恶意加密流量数据集和良性加密流量数据集;对采集的网络流量数据集进行预处理,将所述网络流量数据转换为流量矩阵;构建网络流量交互图;构建包含用于特征提取的图卷积网络和池化层、全连接层和分类器的流量检测模型,将网络流量交互图输入至所述流量检测模型中进行训练得到最终流量检测模型;将经过预处理并构建了网络流量交互图的未知类型网络流量输入至最终流量检测模型进行检测,输出未知类型网络流量所属每个类别的概率,选取最大概率对应的类别作为未知类型网络流量的类别;其中,所述对网络流量数据集进行预处理的方法具体包括:对网络流量数据集中所有数据进行流量切分:按网络流量属性中的五元组将原始流量切分为数据包,将源到目标和目标到源的数据包按照时间顺序排列生成双向会话流;并将每个会话流以pcap文件的形式保存为单个文件;其中,所述五元组包括:源IP、源端口、目的IP、目的端口和传输层协议;对会话流进行数据清洗:对于每条会话流,删除无效数据,遍历每条会话流的每个数据包,屏蔽链路层、网络层和传输层中一些与网络类型无关的数据;提取清洗后的流量数据的前N个数据包的前M个字节,将清洗后的流量数据表示为N*M维的矩阵,对于数据包和字节,超出的部分进行截取,不足的部分补0填充,完成网络流量数据集的预处理;将预处理后的网络流量数据集按照比例划分为训练集和验证集;其中,所述构建网络流量交互图的方法为:将一条会话流中的数据包作为网络流量交互图的顶点,数据包之间的相互关系作为邻接关系建立顶点之间的边;其中,将网络流量交互图输入至所述流量检测模型中进行训练得到最终流量检测模型的方法具体包括:经过多层图卷积网络对网络流量交互图进行图卷积操作,提取会话流的全局特征;然后经过一层池化层将网络流量交互图中的所有顶点特征进行汇集,从而得到整...

【专利技术属性】
技术研发人员:张连新
申请(专利权)人:方盈金泰科技北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1