攻击链的检测方法、装置及设备与流程

文档序号:34946376发布日期:2023-07-29 02:55阅读:56来源:国知局
攻击链的检测方法、装置及设备与流程

本技术涉及网络安全,尤其是涉及到一种攻击链的检测方法、装置及设备。


背景技术:

1、近年来,计算机系统漏洞的发展速度加快,网络安全状况不同乐观。使用流量检测设备、web应用防护设备作为工具对检测某一时刻从特定源发往特定目标的黑客攻击非常有效,然而,在部署了多台检测设备的较大型网络中,不同检测设备生成的告警日志之间彼此孤立,而孤立的告警日志无法为分析人员提供更加全局的视角,不能够从更高的维度帮助分析人员理解攻击发生的全过程。

2、相关技术中,使用广度优先算法的攻击链检测技术能够解决不同类型、不同厂商的检测设备生成告警日志之间互相孤立、无法关联的问题,具有很强的应用价值,例如,apt组织的常见攻击手段就是在攻陷某一节点之后,将其作为据点向其他节点渗透,蠕虫病毒的扩散也在攻击链检测的覆盖之下。然而,在大型网络环境下,所有检测设备每天会产生上亿的告警日志,算法很难在短时间要求下将告警日志中隐藏的攻击链检测出来,不利于攻击链的关联分析。


技术实现思路

1、有鉴于此,本技术提供了一种攻击链的检测方法、装置及设备,主要目的在于解决现有技术中算法很难在短时间要求下将告警日志中隐藏的攻击链检测出来,不利于攻击链的关联分析的问题。

2、根据本技术的第一个方面,提供了一种攻击链的检测方法,包括:

3、基于告警日志生成攻击图,所述攻击图由节点和连接节点的有向边组成,所述告警日志中攻击源作为边的源节点,攻击目标作为边的目标节点;

4、将所述攻击图拆分为多个攻击子图,所述多个攻击子图之间不具有连接边关系;

5、利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链。

6、进一步地,所述将所述攻击图拆分为多个攻击子图,具体包括:

7、检测所述攻击图中的连通分量,所述连通分量为攻击图中节点和边连通的极大子图;

8、对所述攻击图进行弱连通分量计算,得到攻击图中包含的弱连通分量;

9、使用弱连通分量将所述攻击图拆分为多个攻击子图。

10、进一步地,所述对所述攻击图进行弱连通分量计算,得到攻击图中包含的弱连通分量,具体包括:

11、在所述攻击图中检测任意两个节点之间的路径;

12、若任意两点之间存在路径,则将存在路径的至少两个节点组合作为攻击图中包含的弱连通分量。

13、进一步地,在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之前,所述方法还包括:

14、判断所述攻击链是否要求符合攻击时间顺序,所述攻击时间顺序根据边的开始攻击时间和结束攻击时间确定;

15、若所述攻击链要求符合边的攻击时间顺序,则所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链,具体包括:

16、遍历所述攻击子图中的边,判断当前边是否符合攻击时间顺序,所述攻击时间顺序为当所述边的开始攻击时间早于其目标节点的出边中最晚的开始攻击时间;或当所述边的开始攻击时间晚于其源节点的入边中最早的开始攻击时间;

17、保留符合攻击时间顺序的边,将所述符合攻击时间顺序的边关联的节点连接得到攻击链。

18、进一步地,若所述攻击链不要求符合攻击时间顺序,则所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链,具体包括:

19、遍历所述攻击子图中的节点,将包含有入边和出边的节点标记为攻击链上的中间节点;

20、针对每一个中间节点,遍历所述中间节点的入邻居节点,若所述入邻居节点不存在入边,则将所述入邻居节点标记为攻击链上的起始节点;

21、针对每一个中间节点,遍历所述中间节点的出邻居节点,若所述出邻居节点不存在出边,则将所述出邻居节点标记为攻击链上的末尾节点;

22、将所述攻击链上的起始节点、中间节点以及末尾节点连接得到攻击链。

23、进一步地,在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之后,所述方法还包括:

24、在所述攻击链上筛选满足设定条件的节点和/或边,根据所述设定条件节点和/或边对所述攻击链进行分析,所述设定条件包括攻击链中最后一跳连接边对应的网络ip属性。

25、进一步地,在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之后,所述方法还包括:

26、在所述攻击链上使用广度优先搜索计算每两个节点之间的最短距离,将所述最短距离对应的链路作为所述攻击链上最长的链路。

27、根据本技术的第二个方面,提供了一种攻击链的检测装置,包括:

28、生成单元,用于基于告警日志生成攻击图,所述攻击图由节点和连接节点的有向边组成,所述告警日志中攻击源作为边的源节点,攻击目标作为边的目标节点;

29、拆分单元,用于将所述攻击图拆分为多个攻击子图,所述多个攻击子图之间不具有连接边关系;

30、检测单元,用于利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链。

31、进一步地,所述拆分单元包括:

32、检测模块,用于检测所述攻击图中的连通分量,所述连通分量为攻击图中节点和边连通的极大子图;

33、计算模块,用于对所述攻击图进行弱连通分量计算,得到攻击图中包含的弱连通分量;

34、拆分模块,用于使用弱连通分量将所述攻击图拆分为多个攻击子图。

35、进一步地,所述计算模块,具体用于在所述攻击图中检测任意两个节点之间的路径;若任意两点之间存在路径,则将存在路径的至少两个节点组合作为攻击图中包含的弱连通分量。

36、进一步地,所述装置还包括:

37、判断单元,用于在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之前,判断所述攻击链是否要求符合攻击时间顺序,所述攻击时间顺序根据边的开始攻击时间和结束攻击时间确定;

38、若所述攻击链要求符合边的攻击时间顺序,则所述检测单元,具体用于遍历所述攻击子图中的边,判断当前边是否符合攻击时间顺序,所述攻击时间顺序为当所述边的开始攻击时间早于其目标节点的出边中最晚的开始攻击时间;或当所述边的开始攻击时间晚于其源节点的入边中最早的开始攻击时间;保留符合攻击时间顺序的边,将所述符合攻击时间顺序的边关联的节点连接得到攻击链。

39、进一步地,若所述攻击链不要求符合攻击时间顺序,则所述检测单元,具体用于遍历所述攻击子图中的节点,将包含有入边和出边的节点标记为攻击链上的中间节点;针对每一个中间节点,遍历所述中间节点的入邻居节点,若所述入邻居节点不存在入边,则将所述入邻居节点标记为攻击链上的起始节点;针对每一个中间节点,遍历所述中间节点的出邻居节点,若所述出邻居节点不存在出边,则将所述出邻居节点标记为攻击链上的末尾节点;将所述攻击链上的起始节点、中间节点以及末尾节点连接得到攻击链。

40、进一步地,所述装置还包括:

41、分析单元,用于在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之后,在所述攻击链上筛选满足设定条件的节点和/或边,根据所述设定条件节点和/或边对所述攻击链进行分析,所述设定条件包括攻击链中最后一跳连接边对应的网络ip属性。

42、进一步地,所述装置还包括:

43、计算单元,用于在所述利用所述攻击子图中描述的连接属性特征在所述攻击子图中检测满足攻击条件的节点,将所述满足攻击条件的节点连接得到攻击链之后,在所述攻击链上使用广度优先搜索计算每两个节点之间的最短距离,将所述最短距离对应的链路作为所述攻击链上最长的链路。

44、根据本技术的第三个方面,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。

45、根据本技术的第四个方面,提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的方法的步骤。

46、借由上述技术方案,本技术提供的一种攻击链的检测方法、装置及设备,与目前现有技术中使用广度优先算法进行攻击链的检测方式相比,本技术基于告警日志生成攻击图,该攻击图由节点和连接节点的有向边组成,告警日志中攻击源作为边的源节点,攻击目标作为边的目标节点,然后将攻击图拆分为多个攻击子图,多个攻击子图之间不具有连接边关系,最后利用攻击子图中描述的连接属性特征在攻击子图中检测满足攻击条件的节点,将满足攻击条件的节点连接得到攻击链,整个过程通过将攻击图拆分为多个不具有连接边关系的攻击子图,降低攻击链检测的时间复杂度,进而在低时间复杂度内准确检测出报警日志中隐藏的攻击链,保证了攻击链的检测时效,通过将攻击子图中满足攻击条件的节点形成攻击链,能够直观展示不同攻击链之间的关联关系,便于攻击链的关联分析。

47、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1