本发明涉及网络安全,尤其涉及一种基于多视图的数据流量异常检测方法及装置。
背景技术:
1、随着新基建等政策的进一步刺激,物联网技术与电力行业生产结合日益紧密,电网企业以不同形式提出要依托微型化和网络化的传感技术,在配用电和能源需求侧推进电力物联网建设。但是电力物联网技术带来便利的同时,也带来更多的安全隐患,当前针对电力物联网的网络威胁攻击越来越多,这些网络威胁的呈现形式具有高度的异构性并且自身的伪装能力也在不断的演化,针对其开展高精度的威胁检测愈发困难。为了巩固电力物联网的安全,需要对电网中的网络流量开展分析,保障电力物联网网络空间的安全。
2、作为民生保障和现代社会关键性基础设施,电力系统是网络攻击的高价值目标。虽然我国电力系统依托物理隔离的调度数据网构筑了基于边界安全的纵深安全防护体系,但随着网络攻击技术的高速发展,现有的网络攻击已经在逐步突破上述防护体系,虽然现有的基于统计分析的方法和机器学习的方法能够在一定程度上对一些网络攻击进行检测,但是它们都难以全面的挖掘网络攻击流量的深层特征。例如,专利文本cn112738014b公开了一种基于卷积时序网络的工控流量异常检测方法及系统,包括以工控协议流量作为输入,将其按读写功能拆分并将拆分后的数据包按照单位时间窗口合并、规整、分组用于预测模型进行学习;以流量数据为输入,形成数据集,利用编码-解码架构并带有convlstm层的神经网络模型获得能够利用当前窗口数据预测下一窗口数据的流量数据预测模型;利用得到的预测模型,对待检测流量数据包进行预测,得到预测数据与真实数据的距离差距。对组内差距信息计算归一化得分,得到窗口与得分的分布。利用加权方式融合读写模型的得分分布,利用分布信息检测异常数据流量。
3、虽然当前基于神经网络学习的检测方法能够实现对威胁流量的检测,但是考虑到不同网络威胁流量之间的高度异构性,针对每种威胁都研制对应的模型无疑需要大量的成本,且多个检测模型在部署时,其复杂性、资源需求和维护成本会急剧增加。
技术实现思路
1、本发明提供了一种基于多视图的数据流量异常检测方法及装置,能够对数据流量进行全面的异常检测,并且降低成本。
2、一种基于多视图的数据流量异常检测方法,包括:
3、通过流量镜像将网络端口的数据流量导入检测装置中;
4、对所述数据流量进行预处理,形成会话队列;
5、对所述会话队列进行筛选,获得目标流量,对每个所述目标流量进行标记并生成对应的标签,将所述目标流量进行整合获得目标流量集合;
6、基于所述目标流量集合进行多视图特征提取,获得多视图特征;
7、提取所述多视图特征的初步表征;
8、对所述初步表征进行筛选,获得表征矩阵;
9、对获得的表征矩阵进行拼接,获得全局表征矩阵;
10、将所述全局表征矩阵输入至多任务学习模型,输出对应于多个任务的异常检测结果。
11、进一步地,对所述数据流量进行预处理,形成会话队列,包括:
12、对所述数据流量中相同的数据包进行去重处理;
13、对去重处理后的数据包按照seq值递增的方向进行排序;
14、将排序后的数据包按照相同的源ip、目的ip、源端口、目的端口以及应用层协议进行分流,将分流后的数据包以会话为单位存储在队列中,形成会话队列。
15、进一步地,基于cpdump中的过滤规则对所述会话队列进行筛选,获得目标流量;
16、通过哈希表容器对所述目标流量集合进行存储,以目标流量的标签作为键,目标流量的数据包作为值。
17、进一步地,基于所述目标流量集合进行多视图特征提取,获得多视图特征,包括:
18、对所述目标流量集合中的目标流量进行分片长度、包长分布以及标志位信息的特征提取,获得包级视图特征;
19、对所述目标流量集合中的目标流量进行包间时延、传输速率以及包数分布的特征提取,获得会话级视图特征;
20、对所述目标流量集合中的目标流量进行协议类型、协议字段以及协议版本的特征提取,获得协议级视图特征;
21、对所述目标流量集合中的目标流量进行ip地址、端口号以及设备带宽的特征提取,获得主机级视图特征。
22、进一步地,提取所述多视图特征的初步表征,包括:
23、分别对所述包级视图特征、会话级视图特征以及主机级视图特征依次进行卷积处理、归一化处理以及线性整流,分别获得包级视图初步表征、会话级视图初步表征以及主机级视图初步表征;
24、对所述协议级视图特征进行one-hot编码,并基于多层感知机进行特征提取,再通过归一化处理之后获得协议级视图初步表征。
25、进一步地,基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵;
26、基于多头注意力机制对所述协议级视图初步表征进行筛选,获得协议级表征矩阵。
27、进一步地,基于多头注意力机制对所述协议级视图初步表征进行筛选,获得协议级表征矩阵,包括:
28、对所述协议级视图初步表征进行线性变化,生成查询向量、键向量以及值向量;
29、对所述查询向量、键向量以及值向量进行变换,生成权重矩阵;
30、将所述权重矩阵与所述协议级视图初步表征进行残差连接和归一化处理,获得所述协议级表征矩阵;
31、权重矩阵根据以下公式获得:
32、
33、其中,a(k,q,v)表示权重矩阵,q表示查询向量,k表示键向量,dk为隐藏表示维度,v表示值向量。
34、进一步地,基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵,包括:
35、分别对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行卷积处理、归一化处理并引入非线性特征,获得包级掩码矩阵、会话级掩码矩阵和主机级掩码矩阵;
36、将所述包级掩码矩阵与所述包级视图初步表征进行残差连接和归一化处理,获得包级表征矩阵;
37、将所述会话级掩码矩阵与所述会话级视图初步表征进行残差连接和归一化处理,获得会话级表征矩阵;
38、将所述主机级掩码矩阵与所述主机级视图初步表征进行残差连接和归一化处理,获得主机级表征矩阵。
39、进一步地,多任务学习模型包括输入模块、残差模块以及输出模块,所述输入模块对所述全局表征矩阵进行挖掘和下采样,获得初步隐变量表征;所述残差模块对所述初步隐变量表征进行深层特征挖掘,获得公共隐变量表征,所述输出模块根据配置文件设置的任务数量,输出对应于多个任务的异常检测结果。
40、一种基于多视图的数据流量异常检测装置,包括:
41、导入模块,用于通过流量镜像导入网络端口的数据流量;
42、预处理模块,用于对所述数据流量进行预处理,形成会话队列;
43、整合模块,用于对所述会话队列进行筛选,获得目标流量,对每个所述目标流量进行标记并生成对应的标签,将所述目标流量进行整合获得目标流量集合;
44、视图特征提取模块,用于基于所述目标流量集合进行多视图特征提取,获得多视图特征;
45、初步提取模块,用于提取所述多视图特征的初步表征;
46、筛选模块,用于对所述初步表征进行筛选,获得表征矩阵;
47、拼接模块,用于对获得的表征矩阵进行拼接,获得全局表征矩阵;
48、检测模块,用于将所述全局表征矩阵输入至多任务学习模型,输出对应于多个任务的异常检测结果。
49、进一步地,所述预处理模块对所述数据流量进行预处理,形成会话队列,包括:
50、对所述数据流量中相同的数据包进行去重处理;
51、对去重处理后的数据包按照seq值递增的方向进行排序;
52、将排序后的数据包按照相同的源ip、目的ip、源端口、目的端口以及应用层协议进行分流,将分流后的数据包以会话为单位存储在队列中,形成会话队列。
53、进一步地,所述整合模块基于cpdump中的过滤规则对所述会话队列进行筛选,获得目标流量;
54、通过哈希表容器对所述目标流量集合进行存储,以目标流量的标签作为键,目标流量的数据包作为值。
55、进一步地,所述视图特征提取模块基于所述目标流量集合进行多视图特征提取,获得多视图特征,包括:
56、对所述目标流量集合中的目标流量进行分片长度、包长分布以及标志位信息的特征提取,获得包级视图特征;
57、对所述目标流量集合中的目标流量进行包间时延、传输速率以及包数分布的特征提取,获得会话级视图特征;
58、对所述目标流量集合中的目标流量进行协议类型、协议字段以及协议版本的特征提取,获得协议级视图特征;
59、对所述目标流量集合中的目标流量进行ip地址、端口号以及设备带宽的特征提取,获得主机级视图特征。
60、进一步地,所述初步提取模块提取所述多视图特征的初步表征,包括:
61、分别对所述包级视图特征、会话级视图特征以及主机级视图特征依次进行卷积处理、归一化处理以及线性整流,分别获得包级视图初步表征、会话级视图初步表征以及主机级视图初步表征;
62、对所述协议级视图特征进行one-hot编码,并基于多层感知机进行特征提取,再通过归一化处理之后获得协议级视图初步表征。
63、进一步地,所述筛选模块基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵;
64、所述筛选模块基于多头注意力机制对所述协议级视图初步表征进行筛选,获得协议级表征矩阵。
65、进一步地,所述筛选模块基于多头注意力机制对所述协议级视图初步表征进行筛选,获得协议级表征矩阵,包括:
66、对所述协议级视图初步表征进行线性变化,生成查询向量、键向量以及值向量;
67、对所述查询向量、键向量以及值向量进行变换,生成权重矩阵;
68、将所述权重矩阵与所述协议级视图初步表征进行残差连接和归一化处理,获得所述协议级表征矩阵;
69、权重矩阵根据以下公式获得:
70、
71、其中,a(k,q,v)表示权重矩阵,q表示查询向量,k表示键向量,dk为隐藏表示维度,v表示值向量。
72、进一步地,所述筛选模块基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵,包括:
73、分别对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行卷积处理、归一化处理并引入非线性特征,获得包级掩码矩阵、会话级掩码矩阵和主机级掩码矩阵;
74、将所述包级掩码矩阵与所述包级视图初步表征进行残差连接和归一化处理,获得包级表征矩阵;
75、将所述会话级掩码矩阵与所述会话级视图初步表征进行残差连接和归一化处理,获得会话级表征矩阵;
76、将所述主机级掩码矩阵与所述主机级视图初步表征进行残差连接和归一化处理,获得主机级表征矩阵。
77、进一步地,多任务学习模型包括输入模块、残差模块以及输出模块,所述输入模块对所述全局表征矩阵进行挖掘和下采样,获得初步隐变量表征;所述残差模块对所述初步隐变量表征进行深层特征挖掘,获得公共隐变量表征,所述输出模块根据配置文件设置的任务数量,输出对应于多个任务的异常检测结果。
78、本发明提供的基于多视图的数据流量异常检测方法及装置,至少包括如下有益效果:
79、(1)通过融合数据通信网络流量不同视图的多维度特征,形成更具有代表性的全面表征,同时结合多任务学习框架模型,能够很好地挖掘数据通信网络流量的深层次特征,灵活的适应不同的网络环境和网络威胁类型,实现对数据通信网络中存在的网络威胁的高精度检测,对实现数据通信网络流量的高效管理、维护数据通信网络安全具有重要意义,特别适用于电力数据通信网络;
80、(2)通过融合数据通信网络流量不同视图的多维度特征,形成更具有代表性的全面表征,能够从不同角度捕捉网络流量的特性,多个视图特征经过融合后能够弥补单一视图可能存在的局限性,并且可以综合考虑流量的多个方面特征来进一步减少检测的误报率,增强对未知网络威胁的敏感度。
1.一种基于多视图的数据流量异常检测方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,对所述数据流量进行预处理,形成会话队列,包括:
3.根据权利要求1所述的方法,其特征在于,基于cpdump中的过滤规则对所述会话队列进行筛选,获得目标流量;
4.根据权利要求1所述的方法,其特征在于,基于所述目标流量集合进行多视图特征提取,获得多视图特征,包括:
5.根据权利要求4所述的方法,其特征在于,提取所述多视图特征的初步表征,包括:
6.根据权利要求5所述的方法,其特征在于,基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵;
7.根据权利要求6所述的方法,其特征在于,基于多头注意力机制对所述协议级视图初步表征进行筛选,获得协议级表征矩阵,包括:
8.根据权利要求6所述的方法,其特征在于,基于注意力掩码机制对所述包级视图初步表征、会话级视图初步表征以及主机级视图初步表征进行筛选,获得包级表征矩阵、会话级表征矩阵以及主机级表征矩阵,包括:
9.根据权利要求1所述的方法,其特征在于,多任务学习模型包括输入模块、残差模块以及输出模块,所述输入模块对所述全局表征矩阵进行挖掘和下采样,获得初步隐变量表征;所述残差模块对所述初步隐变量表征进行深层特征挖掘,获得公共隐变量表征,所述输出模块根据配置文件设置的任务数量,输出对应于多个任务的异常检测结果。
10.一种基于多视图的数据流量异常检测装置,其特征在于,包括:
