一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于网络流量属性有向拓扑的网络攻击检测方法与流程

2022-06-01 05:23:44 来源:中国专利 TAG:


1.本发明属于网络安全检测领域,尤其涉及一种基于网络流量属性有向拓扑的网络攻击检测方法。


背景技术:

2.现阶段能源互联网条件下智能电网的形态更为复杂,具有智能化、网络化、互动化特点的电网智能终端多部署于开放、非受控的网络环境,且存在自身保护薄弱和攻击监测手段不足等问题,给网络安全防护带来了新的挑战,来自电网末梢的网络安全风险大幅增加。网络流量是主要的网络状态之一,当网络攻击行为发生时,多会出现网络流量攻击现象,故通过网络流量有效识别网络攻击行为是保障电网智能终端安全防护的前提。
3.机器学习是当下网络流量攻击检测的主流方法。现阶段电网智能终端主要基于传统机器学习实现网络攻击检测,但通常存在以下问题:基于传统机器学习的网络攻击检测方法网络流量表征能力较弱,准确率及命中率低;基于深度学习的网络攻击检测方法对于网络流量的分析较为孤立,在大规模能源互联网业务场景下缺乏可靠性。


技术实现要素:

4.为了解决现有技术中存在的缺点和不足,本发明提出了一种基于网络流量属性有向拓扑的网络攻击检测方法,包括:
5.采集离线网络信息和在线网络信息,分别对离线网络信息和在线网络信息进行数据预处理;
6.根据数据预处理后的离线网络信息,构建离线网络有向拓扑图和离线流量属性特征向量;
7.构建基于图注意力机制的网络攻击检测模型,将离线网络有向拓扑图和离线流量属性特征向量输入网络攻击检测模型中进行训练;
8.根据数据预处理后的在线网络信息,构建在线网络有向拓扑图和在线流量属性特征向量并输入训练好的网络攻击检测模型,对网络攻击情况进行实时检测。
9.可选的,所述分别对离线网络信息和在线网络信息进行数据预处理,包括:
10.筛选出离线网络信息和在线网络信息中的非数值型信息,通过独热编码转化为二进制的数值型数据;
11.基于离差标准化法,对所有数值型数据进行归一化处理。
12.可选的,所述根据数据预处理后的离线网络信息,构建离线网络有向拓扑图和离线流量属性特征向量,包括:
13.根据离线网络信息中的网络拓扑信息获取各个节点的源ip地址和目标ip地址,将源ip地址和目标ip地址作为节点,在源ip地址和目标ip地址对应的节点之间生成边,以此构建各节点的离线网络有向拓扑图g={v,e},其中,v表示离线网络有向拓扑图的节点集合,e表示离线网络有向拓扑图的边集合;
14.根据离线网络信息中的网络流量特征,为离线网络有向拓扑图g={v,e}中的各个节点生成离线流量属性特征向量。
15.可选的,所述网络流量特征包括基本连接特征和时间统计特征;
16.所述基本连接特征包括协议类型、网络服务类型、连接状态以及数据字节数;
17.所述时间统计特征包括连接时间、每个时间单元与当前连接具有相同目标主机的连接数、每个时间单元与当前连接具有相同服务的连接数。
18.可选的,所述构建基于图注意力机制的网络攻击检测模型,包括:
19.构建神经网络作为网络攻击检测模型,获取邻接矩阵a={a
ij
|i,j∈{1,2,...,n}},所述邻接矩阵a根据输入网络攻击检测模型的网络有向拓扑图生成,a
ij
表示邻接矩阵a中的元素,当节点vi和节点vj之间存在边时a
ij
=1,当节点vi和节点vj之间不存在边时a
ij
=0;
20.将邻接矩阵a和流量属性特征向量h作为网络攻击检测模型的输入;
21.基于图注意力机制计算与节点vi相邻的节点vj对节点vi的影响权重α
ij
,结合节点vj输入的流量属性特征向量计算神经网络的输出为
[0022][0023]
其中ni表示节点vi的所有相邻节点的集合,w为预先定义的权重矩阵;
[0024]
采用softmax函数设置分类器作为网络攻击检测模型的输出层,将作为分类器的输入,分类器通过分析输出网络攻击的标签结果。
[0025]
可选的,所述基于图注意力机制计算与节点vi相邻的节点vj对节点vi的影响权重α
ij
,包括:
[0026]
定义网络攻击检测模型的权重矩阵,结合预设的注意力权重参数计算节点vi相邻的节点vj对节点vi的注意力互相关系数e
ijl
为:
[0027][0028]
其中,prelu为激活函数,t表示矩阵的转置,为输入的节点vi的流量属性特征向量,为输入的节点vj的流量属性特征向量,||表示矩阵的拼接操作;
[0029]
利用softmax函数对注意力互相关系数e
ijl
进行处理,得到影响权重α
ij
为:
[0030][0031]
网络攻击检测模型根据邻接矩阵a调整影响权重α
ij
的正负情况,得到节点vj对节点vi的影响权重。
[0032]
可选的,所述网络攻击检测模型根据邻接矩阵a调整影响权重α
ij
的正负情况,包
括:
[0033]
当邻接矩阵a中a
ij
=0时,则设置影响权重α
ijl 1
=0;
[0034]
当邻接矩阵a中a
ij
=1时,若流量信息由节点vi发送至节点vj,则设置影响权重α
ijl 1
》0,若流量信息由节点vj发送至节点vi,则设置影响权重α
ijl 1
《0。
[0035]
可选的,所述将离线网络有向拓扑图和离线流量属性特征向量输入网络攻击检测模型中进行训练,包括:
[0036]
根据采集离线网络信息时的网络状态,为对应的离线网络有向拓扑图预先设置标签;
[0037]
将离线网络有向拓扑图和流量属性特征向量作为样本输入网络攻击检测模型,得到输出的标签结果y
dc

[0038]
采用交叉熵损失函数评估对检测结果进行评估,所述交叉熵损失函数定义为:
[0039][0040]
其中,yd表示标签结果的结合,y
dc
表示第d个样本检测为第c类标签的概率,表示预先设置的标签,c为标签的类别总量;
[0041]
若l小于预设阈值,则结束训练,否则对网络攻击检测模型中的参数进行调整。
[0042]
本发明提供的技术方案带来的有益效果是:
[0043]
本发明旨在针对基于传统机器学习的网络攻击检测方法表征能力弱、准确率及命中率低的问题,提出一种基于图注意力机制(graph attention network,gat)的网络攻击检测方法,实现网络流量深度表征,提高网络攻击行为识别率;针对基于深度学习的网络攻击检测方法对于流量分析较为孤立的问题,构建网络有向时序流属性拓扑图,基于gat聚合自身节点及相邻节点的属性特征,实现网络流量信息的全面分析,进而及时掌握网络攻击情况。
附图说明
[0044]
为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0045]
图1为本发明实施例提出的一种基于网络流量属性有向拓扑的网络攻击检测方法的流程示意图;
[0046]
图2为网络攻击检测模型的训练流程图。
具体实施方式
[0047]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0048]
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
[0049]
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0050]
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0051]
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含a、b和c”、“包含a、b、c”是指a、b、c三者都包含,“包含a、b或c”是指包含a、b、c三者之一,“包含a、b和/或c”是指包含a、b、c三者中任1个或任2个或3个。
[0052]
应当理解,在本发明中,“与a对应的b”、“与a相对应的b”、“a与b相对应”或者“b与a相对应”,表示b与a相关联,根据a可以确定b。根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其他信息确定b。a与b的匹配,是a与b的相似度大于或等于预设的阈值。
[0053]
取决于语境,如在此所使用的“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。
[0054]
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
[0055]
实施例一
[0056]
如图1所示,本实施例提出了一种基于网络流量属性有向拓扑的网络攻击检测方法,包括:
[0057]
s1:采集离线网络信息和在线网络信息,分别对离线网络信息和在线网络信息进行数据预处理;
[0058]
s2:根据数据预处理后的离线网络信息,构建离线网络有向拓扑图和离线流量属性特征向量;
[0059]
s3:构建基于图注意力机制的网络攻击检测模型,将离线网络有向拓扑图和离线流量属性特征向量输入网络攻击检测模型中进行训练;
[0060]
s4:根据数据预处理后的在线网络信息,构建在线网络有向拓扑图和在线流量属性特征向量并输入训练好的网络攻击检测模型,对网络攻击情况进行实时检测。
[0061]
图注意力机制(graph attention network,gat)是指在图神经网络(gnn)的基础上引入了注意力机制。在gat网络中,其节点的特征表示和普通的图神经网络中的节点的特征表示是类似的,其初始输入为各个节点的特征向量,gnn内部的运算结合自注意力机制,gnn对于下一层输出仍然是一系列的特征向量。
[0062]
本实施例将图注意力机制用于网络攻击检测的应用场景下,将网络流量的属性转
化为网络有向拓扑图的形式,从而利用gat网络建立并训练网络攻击检测模型,进而实现网络攻击在线检测。
[0063]
本实施例包括对网络攻击检测模型的训练阶段和实时检测阶段。如图2所示,实线的流程箭头表示训练阶段,虚线的流程箭头表示实时检测阶段。首先进行网络信息采集,包括采集离线网络信息和在线网络信息,随后生成网络有向拓扑图和流量属性特征向量,经过数值化处理和归一化处理后,利用离线网络信息对网络攻击检测模型进行图注意力网络训练,后续利用在线网络信息运用网络攻击检测模型进行实时检测,得到网络处于正常或攻击状态的检测概率。
[0064]
在本实施例中,所述离线网络信息和所述在线网络信息均包括网络流量特征以及网络有向拓扑信息,其中所述网络流量特征包括基本连接特征和时间统计特征。所述基本连接特征包括协议类型、网络服务类型、连接状态以及数据字节数。所述时间统计特征包括连接时间、每个时间单元与当前连接具有相同目标主机的连接数、每个时间单元与当前连接具有相同服务的连接数,本实施例中所述时间单元是预设的若干个相同时长的时间段。
[0065]
为了方便后续处理,在构建网络攻击检测模型之前,需要对离线网络信息进行数据预处理,在运用训练好的网络攻击检测模型之前,需要对在线网络信息进行数据预处理,所述数据预处理具体包括:
[0066]
筛选出离线网络信息和在线网络信息中的非数值型信息,通过独热编码转化为二进制的数值型数据。本实施例中,所述非数值型信息包括协议类型和网络服务类型。
[0067]
基于离差标准化法,对所有数值型数据进行归一化处理。
[0068]
为了构建并训练网络攻击检测模型,本实施例利用预处理后的离线网络信息构建离线网络有向拓扑图和离线流量属性特征向量,具体包括:
[0069]
根据离线网络信息中的网络拓扑信息获取各个节点的源ip地址和目标ip地址,将源ip地址和目标ip地址作为节点,在源ip地址和目标ip地址对应的节点之间生成边,以此构建各节点的离线网络有向拓扑图g={v,e},其中,v表示离线网络有向拓扑图的节点集合,e表示离线网络有向拓扑图的边集合。电网工控网络架构呈星型或双星型分布,且上下级分层,各自治域划分明显。因此,在本实施例中,各自治域独立构建离线网络有向拓扑图。
[0070]
根据离线网络信息中的网络流量特征,为离线网络有向拓扑图g={v,e}中的各个节点生成离线流量属性特征向量。所述离线流量属性特征向量表示为其中,表示节点vi的网络流量特征,n等于节点集合中的节点总数量,f表示的向量维度,所述向量维度与网络流量特征的种类数量相等。
[0071]
通过上述过程,实现将网络流量属性转换为网络有向拓扑与流量属性特征向量的形式,从而能够利用结合图注意力机制的图神经网络进行分析。
[0072]
在本实施例中,所述构建基于图注意力机制的网络攻击检测模型,包括:
[0073]
构建神经网络作为网络攻击检测模型,获取邻接矩阵a={a
ij
|i,j∈{1,2,...,n}},所述邻接矩阵a根据输入网络攻击检测模型的网络有向拓扑图生成,a
ij
表示邻接矩阵a中的元素,当节点vi和节点vj之间存在边时a
ij
=1,当节点vi和节点vj之间不存在边时a
ij
=0;
[0074]
将邻接矩阵a和流量属性特征向量h作为网络攻击检测模型的输入。
[0075]
在本实施例中,为了避免传统检测方法对于网络各个节点的流量分析较为孤立的弊端,引入了图注意机制来表征相邻节点的影响效果。在本实施例中,网络攻击检测模型由多层神经网络构成,将初始的邻接矩阵a和流量属性特征向量h输入第一层神经网络,经每一层神经网络得到处理后的流量属性特征向量h,后面的每一层神经网络的输出作为下一层神经网络的输入,以下以第l层神经网络为例,具体描述网络攻击检测模型的具体构建过程。
[0076]
首先,基于图注意力机制分析每个节点vi的相邻节点vj对节点vi的影响程度,具体量化为预先定义的权重矩阵w和经过计算得到的影响权重α
ij
,具体包括:
[0077]
基于图注意力机制计算与节点vi相邻的节点vj对节点vi的影响权重α
ij
,具体包括:
[0078]
定义网络攻击检测模型的权重矩阵,结合预设的注意力权重参数计算节点vi相邻的节点vj对节点vi的注意力互相关系数e
ijl
为:
[0079][0080]
其中,prelu为激活函数,t表示矩阵的转置,为输入的节点vi的流量属性特征向量,为输入的节点vj的流量属性特征向量,||表示矩阵的拼接操作;
[0081]
利用softmax函数对注意力互相关系数e
ijl
进行处理,得到影响权重α
ij
为:
[0082][0083]
网络攻击检测模型根据邻接矩阵a调整影响权重α
ij
的正负情况,得到节点vj对节点vi的影响权重,具体包括:当邻接矩阵a中a
ij
=0时,则设置影响权重α
ijl 1
=0;当邻接矩阵a中a
ij
=1时,若流量信息由节点vi发送至节点vj,则设置影响权重α
ijl 1
》0,若流量信息由节点vj发送至节点vi,则设置影响权重α
ijl 1
《0。调整后的影响权重即作为最终节点vj对节点vi的影响权重。
[0084]
结合节点vj的流量属性特征向量计算神经网络的输出为
[0085][0086]
其中ni表示节点vi的所有相邻节点的集合,w为预先定义的权重矩阵,根据前述可知,将作为第l 1层神经网络的输入。
[0087]
再采用softmax函数设置分类器作为网络攻击检测模型的输出层,将作为分类器的输入,分类器通过分析输出网络攻击的标签结果。softmax函数是一种逻辑回归函数,能够将线性模型输出的实数域映射到[0,1],以此表示概率分布的有效实数空间。由此可知,通过softmax函数设置的分类器,根据神经网络的输出分析得到输入网络正常或攻
击的概率,即所述标签结果。
[0088]
由此可见,本实施例针对基于传统机器学习的网络攻击检测方法表征能力弱、准确率及命中率低的问题,能够实现网络流量特征的深度表征,提高网络攻击行为的识别率,同时针对基于深度学习的网络攻击检测方法对于流量分析较为孤立的问题,构建网络有向时序流属性拓扑图,利用拓扑关系聚合相邻节点之间的属性特征,实现网络流量信息的全面分析。
[0089]
随后,将离线网络有向拓扑图和离线流量属性特征向量输入网络攻击检测模型中进行训练,包括:
[0090]
根据采集离线网络信息时的网络状态,为对应的离线网络有向拓扑图预先设置标签;
[0091]
将离线网络有向拓扑图和流量属性特征向量作为样本输入网络攻击检测模型,得到输出的标签结果y
dc

[0092]
采用交叉熵损失函数评估对检测结果进行评估,所述交叉熵损失函数定义为:
[0093][0094]
其中,yd表示标签结果的结合,y
dc
表示第d个样本检测为第c类标签的概率,表示预先设置的标签,c为标签的类别总量,在本实施例中,因为设置的标签为正常和攻击两种,因此此处c=2。若l小于预设阈值,则结束训练,否则对网络攻击检测模型中的参数进行调整。
[0095]
最后,利用训练好的网络攻击检测模型进行在线网络攻击检测,在线网络信息与离线网络信息的采集与处理方式一致,同样根据数据预处理后的在线网络信息,构建在线网络有向拓扑图和在线流量属性特征向量并输入训练好的网络攻击检测模型,从而在线实时得到网络处于正常或攻击状态的概率检测结果。
[0096]
在本实施例中,上述过程的代码实现形式如下:
[0097]
输入:离线网络信息集xtrain,在线网络信息集xtest,标签集yd,其中,网络信息集由网络有向拓扑图集及网络流量属性特征集组成;
[0098]
输出:在线网络分类结果
[0099]
步骤1:数据预处理
[0100]
对离线网络信息集xtrain及在线网络信息集xtest进行数值化处理,获得x_train_num及x_test_num;
[0101]
对离线网络信息集x_train_num及在线网络信息集x_test_num进行无量纲化处理,获得x_train及x_test;
[0102]
步骤2:构建模型
[0103]
添加gat层;
[0104]
采用softmax函数作为分类器;
[0105]
步骤3:训练模型
[0106]
{while未达到预设训练轮数do;
[0107]
ꢀꢀ
{while未达到迭代次数do;
[0108]
ꢀꢀꢀ
设置单次训练样本数batch_size,以小批次数据集batch作为模型输入;
[0109]
计算交叉熵损失函数
[0110]
ꢀꢀꢀ
使用adam优化器更新模型参数;
[0111]
ꢀꢀ
end while;}
[0112]
end while;}
[0113]
步骤4:保存模型
[0114]
保存参数微调后的模型
[0115]
步骤5:测试模型
[0116]
载入已保存模型,对在线网络信息进行分类;
[0117]
return在线网络信息攻击检测结果。
[0118]
上述实施例中的各个序号仅仅为了描述,不代表各部件的组装或使用过程中的先后顺序。
[0119]
以上所述仅为本发明的实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献