基于流量交互图的隐蔽恶意流量检测方法和装置

文档序号:30652497发布日期:2022-07-06 00:16阅读:171来源:国知局
基于流量交互图的隐蔽恶意流量检测方法和装置

1.本发明涉及网络安全技术领域,尤其涉及一种基于流量交互图的隐蔽恶意流量检测方法和装置。


背景技术:

2.近几年,网络安全、互联网安全建设在国家安全建设当中的重要地位。然而,每年都有大量的新型网络攻击被提出,这些新型网络攻击通常十分隐蔽,其具备低速率、加密等特征。如何快速检测新型隐蔽的网络攻击成为了网络安全研究领域的一个重要问题。
3.本项技术解决高带宽场景下的实时隐蔽恶意流量检测问题。在骨干网或企业网关这类高带宽场景下,实时检测并拦截隐蔽恶意流量可以保护大量的合法网络用户。此外,高速地检测与分析广域网高带宽流量的工具可以帮助安全研究人员发现隐蔽的新型网络攻击,促进互联网安全的研究进展。
4.区别于传统的洪范明文恶意流量(例如,分布式拒绝服务攻击流量、扫描攻击流量),新型隐蔽网络攻击通常包含加密流量和低速率流量,这导致这些隐蔽攻击难以被检测。其一,新型网络攻击通常采用加密恶意流量,加密消除了大部分的流量特征使其更接近于正常流量。其二,新型隐蔽攻击通常仅产生低速率的恶意流量,其不具备传统拒绝服务攻击典型的洪范特性。其三,新型隐蔽恶意流量的模式是未知的,因而无法依赖于领域知识为其设计专用的检测手段。
5.因此,传统的恶意流量检测方案不适用于新型隐蔽恶意流量检测。基于深度包检测的网络入侵检测系统对加密的新型隐蔽恶意流量无效,因为其无法从加密的负载当中读取威胁信息。近年来基于机器学习的恶意流量检测方案被提出并被使用。然而,新型隐蔽恶意流量通常为低速和加密的,这些正常流量的特性可以欺骗机器学习算法误判其为正常流量,进而绕过各种拦截手段。


技术实现要素:

6.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
7.为此,本发明的目的在于解决高带宽场景下的实时隐蔽恶意流量检测问题,提出了一种基于流量交互图的隐蔽恶意流量检测方法,可以有效检测出新型隐蔽的网络攻击。
8.本发明的另一个目的在于提出一种基于流量交互图的隐蔽恶意流量检测装置。
9.为达上述目的,本发明一方面提出了一种基于流量交互图的隐蔽恶意流量检测方法,包括以下步骤:
10.通过工作在网关的检测系统监听通过所述网关的流量;对监听到的所述流量进行数据包粒度的特征抽取,得到数据包粒度特征;根据所述数据包粒度特征构建流量交互图,利用所述流量交互图的图结构表示所述流量的长期交互模式;基于所述流量交互图,通过图学习的检测算法检测所述流量交互图上的异常局部结构,并将所述异常局部结构标记为对应的隐蔽恶意流量。
11.本发明实施的基于流量交互图的隐蔽恶意流量检测方法,可以利用图结构对隐蔽恶意流量的长期交互模式进行实时有效地表示,并使用图学习算法对图上表征异常交互模式的局部结构进行挖掘,进而识别与之关联的隐蔽恶意流量。该方案的优点包含了检测吞吐高、检测时延低,可以在高带宽场景下精准地检测出未知新型隐蔽的网络攻击。
12.另外,根据本发明上述实施例的基于流量交互图的隐蔽恶意流量检测方法还可以具有以下附加的技术特征:
13.进一步地,在本发明的一个实施例中,所述根据所述数据包粒度特征构建流量交互图,包括:进行长短流分类、短流聚集和长流分布拟合;所述图学习包括:进行连通性分析、边的预聚类、关键节点识别和不正常交互模式的识别。
14.进一步地,在本发明的一个实施例中,所述进行长短流分类,包括:根据链接四元组将经过所述特征抽取得到的数据包序列组装成为流;根据所述流中包含的数据包数量,将所述流分为长流和短流;分别处理所述长流和短流,以将所述长流和短流构建为所述流量交互图上的边。
15.进一步地,在本发明的一个实施例中,所述进行短流聚集,包括:基于所述短流,对预设数量的相似的短流进行聚合操作,以将所述相似的短流划归短流组;基于所述短流组构造表示短流的边;其中,每一条所述短流的边对应一组所述相似的短流,表示所述短流的边保存一份逐包特征序列和每一条短流链接的四元组,以及链接开始的时间戳。
16.进一步地,在本发明的一个实施例中,所述进行长流分布拟合,包括:对于所述长流,利用直方图拟合长流当中的包特征分布,并构造所述流量交互图上对应于长流的边;其中,对于一条所述长流,表示所述长流的边保存其链接的四元组和时间戳,以及对应各种包特征近似概率分布的直方图。
17.进一步地,在本发明的一个实施例中,所述进行连通性分析,包括:利用深度优先搜索算法得到所述流量交互图的强连通分量,并根据所述强连通分量分割所述流量交互图;基于对所述流量交互图的分割,抽取每个所述强连通分量的粗粒度的统计特征,利用所述统计特征对所述强连通分量进行聚类,将偏离聚类中心的强连通分量作为异常强联通分量进行处理。
18.进一步地,在本发明的一个实施例中,所述进行边的预聚类,包括:对于每一个所述异常强连通分量当中的边进行预聚类,对每一条边抽取图结构特征,利用dbscan算法对所述图结构特征进行聚类得到系列簇;对于所述系列簇中的每一个簇,选取所述每一个簇的聚类中心对应的边代表这一个簇当中其余的边参与后续的处理。
19.进一步地,在本发明的一个实施例中,所述进行关键节点识别,包括:对于每一个所述强连通分量上的节点和每一个通过所述预聚类选取的边构成的子图,通过求解最大节点覆盖问题选出一个节点集合;将所述节点集合中选中的节点作为存在潜在攻击的关键节点。
20.进一步地,在本发明的一个实施例中,所述不正常交互模式的识别,包括:对于每一个所述关键节点,提取通过所述预聚类选出的并且与该关键节点相连的边;基于所述提取的边,抽取所述流量交互图的结构化特征和所述流量的统计特征,以构造特征向量并对所述提取的边进行聚类;基于对所述提取的边进行聚类,将偏离聚类中心的边标记为具备异常交互模式的边,将所述具备异常交互模式的边对应的流标记为隐蔽恶意流量,以作为
检测的结果。
21.为达到上述目的,本发明另一方面提出了一种基于流量交互图的隐蔽恶意流量检测装置,包括:
22.流量监听模块,用于通过工作在网关的检测系统监听通过所述网关的流量;特征抽取模块,用于对监听到的所述流量进行数据包粒度的特征抽取,得到数据包粒度特征;图构建模块,用于根据所述数据包粒度特征构建流量交互图,利用所述流量交互图的图结构表示所述流量的长期交互模式;检测识别模块,用于基于所述流量交互图,通过图学习的检测算法检测所述流量交互图上的异常局部结构,并将所述异常局部结构标记为对应的隐蔽恶意流量。
23.本发明实施例的基于流量交互图的隐蔽恶意流量检测装置,可以利用图结构对隐蔽恶意流量的长期交互模式进行实时有效地表示,并使用图学习算法对图上表征异常交互模式的局部结构进行挖掘,进而识别与之关联的隐蔽恶意流量。该方案的优点包含了检测吞吐高、检测时延低,可以在高带宽场景下精准地检测出未知新型隐蔽的网络攻击。
24.本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
25.本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
26.图1为根据本发明实施例的基于流量交互图的隐蔽恶意流量检测的高层系统架构图;
27.图2为根据本发明实施例的基于流量交互图的隐蔽恶意流量检测方法的流程图;
28.图3为根据本发明实施例的基于流量交互图的隐蔽恶意流量检测装置的结构示意图。
具体实施方式
29.需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
30.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
31.下面参照附图描述根据本发明实施例提出的基于流量交互图的隐蔽恶意流量检测方法及装置,首先将参照附图描述根据本发明实施例提出的基于流量交互图的隐蔽恶意流量检测方法。
32.现有的研究技术下,恶意流量检测技术方案一般针对明文的洪范式恶意流量,而不适用于新发现的隐蔽恶意流量,这些流量通常为加密的并且为低带宽的,这导致了这些新型攻击可以绕过传统检测。本发明解决了高带宽场景下的实时隐蔽恶意流量检测问题,
而提出一种系统,分为两个技术模块。流量交互图构建模块从流量当中提取并维护用户之间的长期流量交互模式,图学习模块从图上识别异常局部结构表征的不正常交互模式,进而从不正常交互的角度检测出隐蔽攻击。具体来说,流量交互图构建模块首先将高速网络当中的数据包组装成为流,而后根据流的长短进行分类处理。这一模块对于短流进行聚集操作,用一条边表示一组短流;对于长流进行分布拟合,用直方图表示长流的数据包特征分布。而后,将地址作为节点,将全体边组装成为流量交互图。之后,图学习模块通过四个步骤检测出不正常局部结构表示的异常交互模式:(1)首先提取图的强连通分量,并利用聚类识别不正常强连通分量;(2)而后对每一个不正常强连通分量上的边进行预聚类操作;(3) 下一步,对每一个强连通分量提取关键节点,表示潜在的攻击者;(4)最后,对与关键节点相连的边进行聚类,并将偏离聚类中心的边对应的流量标记为异常流量,如图1所示。
33.图2为本发明一个实施例的基于流量交互图的隐蔽恶意流量检测方法的流程图,如图2 所示,该基于流量交互图的隐蔽恶意流量检测方法包括以下步骤:
34.步骤s1,通过工作在网关的检测系统监听通过网关的流量;
35.步骤s2,对监听到的流量进行数据包粒度的特征抽取,得到数据包粒度特征;
36.步骤s3,根据数据包粒度特征构建流量交互图,利用流量交互图的图结构表示流量的长期交互模式。
37.具体的,检测系统工作在网关处,持续监听通过网关的流量。数据包解析模块对于监听到的流量进行数据包粒度的特征抽取。而后将包粒度的特征作为输出,传递给流量交互图构建模块作为输入。流量交互图构建模块利用图结构表示流量的长期交互模式,同时对图结构进行简化和压缩。在流量交互图的构建过程当中包含了三个步骤,分别为:长短流分类、短流聚集、长流分布拟合。最终构建的流量交互图以主机为节点,以主机之间传递的网络流量作为边,表示用户之间的长期交互模式。
38.进一步的,工作在数据平面的数据包解析引擎从高速的网络流量当中抽取数据包粒度的特征,将数据包粒度的特征保存在内存当中作为流量交互图构建模块的输入。
39.进一步的,流量交互图构建模块首先根据链接四元组将数据包序列组装成为流。而后,根据流中包含的数据包的数量,将组装得到的流分为长流和短流。而后,流量交互图构建模块分别处理长流和短流,将其构建为流量交互图上的边。
40.进一步的,对于上述分类得到的短流,流量交互图构建模块对大量的相似的短流进行聚合操作,即将相似的短流划归到同一组。而后构造表示短流的边,每一条边对应一组相似的短流,表示短流的边只保存一份逐包特征序列和每一条短流链接的四元组,以及链接开始的时间戳。
41.进一步的,对于上述分类得到的长流,流量交互图构建模块利用直方图拟合长流当中的包特征分布,并构造图上对应于长流的边。对于一条长流,表示长流的边保存其链接的四元组和时间戳,以及对应各种包特征近似概率分布的直方图。
42.最后该模块将对应于短流的边和对应于长流的边构建为流量交互图输出给图学习模块作为输入。
43.作为一种示例,本发明构建流量交互图的具体流程如下:
44.s11:工作在数据平面的数据包解析引擎从高速率的网络流量当中抽取数据包粒度的特征作为构建流量交互图的输入。这些逐包特征包含了:数据包的协议类型、长度和与
上一个数据包到达时间的间隔。此外,抽取表示数据包所属链接的四元组:源/目的地址、源/ 目的端口。
45.s12:流量交互图构建模块首先根据链接四元组将数据包序列组装成流,同一条流当中的数据包包含了相同的源/目的地址、源/目的端口。而后,根据固定的流量长度分类阈值分类长流和短流。如果一个流当中的数据包数量大于这一阈值,则判定其为长流,否则判定其为短流。
46.s13:对于s12中得到的短流,流量交互图构建模块对相似的短流进行聚集。对于全体分类得到的短流,其任意一个子集中全部的短流同时满足以下三个条件时就被聚集:(1) 这一组流具备相同的源地址或目的地址;(2)这一组流来自相同的网络协议;(3)这一组流的数量足够大。而后构造表示短流的边,对于一组聚集得到的相似的短流仅构造一条边,这条边保存一份逐包特征序列(每一个包的长度、协议、与上一个数据包的时间间隔),并为所有的短流保存标识链接的四元组,以及链接开始的时间戳。此外,对于这些四元组中相同的字段仅保存一份数据。
47.s14:对于s12中得到的长流,流量交互图构建模块利用直方图拟合长流当中包特征的分布,并且构造图上对应于长流的边。具体而言,这一模块采用哈希表构建直方图,对于不同的逐包特征采用不同的哈希桶宽度。对于每一种逐包特征进行遍历,将特征值除以桶宽度得到对应的哈希值,并且将哈希值对应的计数器进行自增。最后,保存每一个哈希值和对应的计数器作为提取得到的直方图。最终,表示长流的边保存长流的链接四元组,以及三个表示分布的直方图,分别对应于包长度、包协议、包时间间隔三种特征分布。
48.s15:对于s13、s14当中构建的全部边,该模块抽取其源地址和目的地址作为图上节点,并将全部的边与对应的节点相连,完成流量交互图的构建。
49.步骤s4,基于流量交互图,通过图学习的检测算法检测流量交互图上的异常局部结构,并将异常局部结构标记为对应的隐蔽恶意流量。
50.可以理解的是,在完成对于流量交互图的构建之后,本发明的图学习模块采用无监督算法自动检测图上异常的局部结构,最终标记异常结构对应的隐蔽恶意流量。该图学习模块包含了四个步骤,分别为:连通性分析、边的预聚类、关键节点识别、不正常交互模式的识别。
51.具体的,图学习模块首先利用深度优先搜索算法得到图的全部强连通分量,并根据得到的强连通分量分割图。而后对于各个强连通分量抽取其粗粒度的统计特征,利用这些统计特征对强连通分量进行聚类,将显著偏离聚类中心的强连通分量作为异常的强联通分量进行下一步分析。
52.进一步地,对于上述得到的每一个异常强连通分量当中的边进行预聚类,对每一条边抽取图结构特征,应用dbscan算法对结构化特征进行聚类,得到一系列的簇。对于得到的每一个簇,选取其聚类中心对应的边来代表这一个簇当中其余的边参与后续的处理。
53.进一步地,对于上述得到的每一个强连通分量上的节点和每一个被预聚类选取的边构成的子图,学习算法通过求解最大节点覆盖问题选出一个节点集合,将选中的节点作为存在潜在攻击的关键节点。
54.进一步地,对于上述得到的每一个关键节点,提取所有预聚类选选出的并且与这一节点相连的边。对于这些边抽取图的结构化特征和流量的统计特征,构造特征向量并对
边进行聚类。将显著偏离聚类中心的边标记为具备异常交互模式的边,将边对应的流标记为隐蔽恶意流量,作为检测的结果。
55.作为一种示例,本发明的图学习流量检测的具体流程如下:
56.s21:图学习模块首先利用深度优先搜索算法得到流量交互图的全部强连通分量,并根据得到的强连通分量分割图。而后对于每一个强连通分量抽取粗粒度的统计特征,利用 dbscan聚类算法根据这些统计特征对强连通分量进行聚类。将显著偏离聚类中心的强连通分量作为异常联通分量进行下一步分析,将靠近聚类中心的正常连通分量排除,认为其仅包含正常流量。
57.s22:对于s21中筛选得到的每一个强连通分量上的边进行预聚类,为其上每一条边抽取图的结构化特征,对全体特征向量进行归一化后,应用dbscan算法对边的结构化特征进行聚类,得到一系列由边构成的簇。对于每一个簇,选取其中心点对应的边来代表簇当中其余的边参与后续的处理步骤。
58.s23:对于s21中得到的每一个强连通分量上的节点和每一个被s22中预聚类操作选取的边构成的子图求解最大节点覆盖问题。具体而言,对于全部的节点集合选取一个子集,这个子集满足如下两个条件:(1)每一条边的源节点和/或目的节点在集合当中;(2)不存在一个子集满足(1)且比被选取的子集更小。将求解选中的节点作为表示潜在攻击者的关键节点。
59.s24:对于s23选取的每一个关键节点,选取全部与其相连的边,这些边需要在s22 中被预聚类选中。对于这些被选取的边,抽取图的结构化特征和流量的统计特征,组装为特征向量并采用k-means算法对边进行聚类。将显著偏离聚类中心的边标记为异常的边,认为这些边和不正常交互模式相关联。最后将边对应的流标记为隐蔽恶意流量,作为检测的结果。
60.可以知道的是,在现有技术下,针对新型的隐蔽恶意流量无法有效地检测,因为这些隐蔽恶意流量具备低速和加密的特性。这些新型恶意流量从特征的角度更接近于广域网当中的正常流量,因而难以被机器学习算法识别;这些流量大多为加密,因而无法被基于深度包检测的方案识别;这些恶意流量未曾被发现过,因而无法借鉴领域知识设计专用的检测方案。
61.由此,通过本发明上述的检测步骤,利用图结构表示流量的长期交互历史信息,从图的结构性特征可以显著地表示隐蔽恶意流量的不正常交互模式。并且使用无监督图学习算法,自动地从被构建的图当中挖掘不正常的交互模式。最终可以在高带宽场景下实时地检测出各类隐蔽异常流量,并且保证检测吞吐量超过100gbps和至多13.99秒的低检测时间延迟。
62.通过本发明实施例的基于流量交互图的隐蔽恶意流量检测方法,利用图结构表示网络用户之间的长期流量交互模式,利用无监督机器学习方法检测图上出现的不正常交互模式,最终根据不正常交互模式识别出隐蔽恶意流量。由于隐蔽恶意流量具备显著的不正常交互特征,可以检测出多种传统方案无法检测的隐蔽恶意流量。由于被采用的图构建方法和图学习算法具备低计算与存储开销的特性,该技术具有检测吞吐高、低时延、高精度等优点,在兼顾计算开销和存储开销的同时,保证了在高带宽的场景下的实时隐蔽恶意流量自动识别。
63.需要说明的是,基于流量交互图的隐蔽恶意流量检测方法实现方式有多种,但无论具体的实现方法如何,只要方法解决了现有技术中高带宽场景下的实时隐蔽恶意流量检测问题,都是针对现有技术问题的解决,并具有相应的效果。
64.为了实现上述实施例,如图3所示,本实施例中还提供了一种基于流量交互图的隐蔽恶意流量检测装置10,该装置10包括:流量监听模块100、特征抽取模块200、图构建模块300和检测识别模块400。
65.流量监听模块100,用于通过工作在网关的检测系统监听通过网关的流量;
66.特征抽取模块200,用于对监听到的流量进行数据包粒度的特征抽取,得到数据包粒度特征;
67.图构建模块300,用于根据数据包粒度特征构建流量交互图,利用流量交互图的图结构表示流量的长期交互模式;
68.检测识别模块400,用于基于流量交互图,通过图学习的检测算法检测流量交互图上的异常局部结构,并将异常局部结构标记为对应的隐蔽恶意流量。
69.通过本发明实施例的基于流量交互图的隐蔽恶意流量检测装置,利用图结构表示网络用户之间的长期流量交互模式,利用无监督机器学习方法检测图上出现的不正常交互模式,最终根据不正常交互模式识别出隐蔽恶意流量。由于隐蔽恶意流量具备显著的不正常交互特征,可以检测出多种传统方案无法检测的隐蔽恶意流量。由于被采用的图构建方法和图学习算法具备低计算与存储开销的特性,该技术具有检测吞吐高、低时延、高精度等优点,在兼顾计算开销和存储开销的同时,保证了在高带宽的场景下的实时隐蔽恶意流量自动识别。
70.需要说明的是,前述对基于流量交互图的隐蔽恶意流量检测方法实施例的解释说明也适用于该实施例的基于流量交互图的隐蔽恶意流量检测装置,此处不再赘述。
71.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
72.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
73.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1