发明内容
本发明旨在至少一定程度上解决上述技术中的技术问题之一。为此,本发明的目的在于提出一种基于多事件关联与机器学习的攻击行为检测方法,提高检测的及时性及准确性,通过多事件关联与机器学习消除对人工的依赖性,避免在多个攻击者入侵时漏检测情况的发生,对多个攻击者产生的攻击进行聚合及关联,准确识别入侵者的真正意图,进而采取对应的阻断措施,提高了阻断的成功率,进而实现了网络安全。
为达到上述目的,本发明实施例提出了一种基于多事件关联与机器学习的攻击行为检测方法,包括:
获取分布式虚拟网络中的流量数据,将所述流量数据输入预先训练好的异常评分模型中,获取异常事件;
根据所述异常事件判断是否存在非独立攻击事件;
在确定存在非独立攻击事件时,将所述非独立攻击事件输入到关联模型中根据攻击关联度进行聚类,生成复杂攻击事件,得到复杂攻击事件所处攻击场景的报警信息集合;
将每一个攻击场景的报警信息与预设的攻击模式库进行关联分析,获取预测攻击事件。
根据本发明的一些实施例,在所述获取预测攻击事件后,还包括:
根据所述复杂攻击事件及所述预测攻击事件生成所述攻击场景中的攻击序列信息,所述攻击序列信息包括攻击链、攻击节点、攻击方式;
根据所述攻击序列信息获得多组数据;
将所述多组数据映射至多个映射空间内,每组数据对应一个映射空间;
在所述映射空间根据视窗参数生成视图,根据生成的各个视图拼接成攻击序列图并进行显示;
根据所述攻击序列图确定对各个攻击节点的阻断措施。
根据本发明的一些实施例,根据所述异常事件判断是否存在非独立攻击事件,包括:
获取历史流量数据,根据历史流量数据确定历史异常事件;
获取历史异常事件的特征向量,生成特征相似度矩阵;
根据特征相似度矩阵生成异常事件识别模型;
获取异常事件的特征向量,将所述特征向量输入异常事件识别模型中,得到异常事件类型,根据类型的一致性原则,得到关联的异常事件的集合;
获取集合中异常事件的数量及各异常事件间的聚合度并进行排序,判断所述数量是否大于预设数量且最大聚合度是否大于预设聚合度,在确定所述数量大于预设数量且所述最大聚合度大于预设聚合度时,确定存在非独立攻击事件。
根据本发明的一些实施例,所述根据所述攻击序列图确定对各个攻击节点的阻断措施,包括:
统计各个攻击节点受到的攻击次数;所述攻击次数为攻击节点的已经受到的攻击次数与预估的将在预设时间内受到的攻击次数之和;
根据攻击次数确定对所述各个攻击节点的阻断优先级;
根据所述阻断优先级对各个攻击节点进行阻断。
根据本发明的一些实施例,还包括:
在对攻击节点实现阻断措施后,通过抓包的方式检测所述攻击节点是否在传输数据;
在确定所述攻击节点在传输数据时,重新检测攻击节点受到的攻击事件的类型及获取所述传输数据的流向,进而对所述阻断措施进行修正。
根据本发明的一些实施例,还包括:
在确定所述攻击节点不在传输数据时,获取攻击节点的相关信息;
根据所述相关信息构建节点向量;
获取所述节点向量的安全等级,在确定所述安全等级小于预设安全等级时,对所述节点向量的安全等级进行升级。
根据本发明的一些实施例,还包括:
在确定不存在非独立攻击事件时,获取各个异常事件中的异常行为及所处的攻击场景;
根据异常行为及所处的攻击场景获取独立攻击事件的特征参数;
根据所述特征参数获取相对应的解决方法;
将所述特征参数及解决方法存储在独立攻击事件数据库中。
根据本发明的一些实施例,在根据所述复杂攻击事件及所述预测攻击事件生成所述攻击场景中的攻击序列信息前,还包括:
剔除所述复杂攻击事件造成入侵的网络区域,得到新的网络区域;
根据新的网络区域,计算对攻击节点的定位误差,在确定所述定位误差大于预设定位误差时,发出报警提示。
根据本发明的一些实施例,所述计算对攻击节点的定位误差,包括:
其中,C为组合符号;m为在进行定位时的定位步骤的数量;
为对攻击节点定位时
在区分攻击节点类别时的最大分类错误率;
根据对攻击节点定位时发生第i次定位错误的概率
,计算对攻击节点的定位误
差W:
其中,Z为攻击节点类别总数;U为新的网络区域;D为在发生第i次定位错误时的路径差值。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提出了一种基于多事件关联与机器学习的攻击行为检测方法,包括步骤S1-S4:
S1、获取分布式虚拟网络中的流量数据,将所述流量数据输入预先训练好的异常评分模型中,获取异常事件;
S2、根据所述异常事件判断是否存在非独立攻击事件;
S3、在确定存在非独立攻击事件时,将所述非独立攻击事件输入到关联模型中根据攻击关联度进行聚类,生成复杂攻击事件,得到复杂攻击事件所处攻击场景的报警信息集合;
S4、将每一个攻击场景的报警信息与预设的攻击模式库进行关联分析,获取预测攻击事件。
上述技术方案的工作原理:获取分布式虚拟网络中的流量数据,将所述流量数据输入预先训练好的异常评分模型中,获取异常事件;根据异常事件判断是否存在独立攻击事件及非独立攻击事件;独立攻击事件为由单个攻击者实施的攻击行为对网络实施攻击;非独立攻击事件由多个攻击者配合实施的多项攻击行为对网络实施攻击,对网络的危害性更强,影响网络安全。在确定存在非独立攻击事件时,将所述非独立攻击事件输入到关联模型中根据攻击关联度进行聚类,生成复杂攻击事件,得到复杂攻击事件所处攻击场景的报警信息集合;将每一个攻击场景的报警信息与预设的攻击模式库进行关联分析,获取预测攻击事件。攻击模式库为所处攻击场景的报警信息设置的,可以获取预测攻击事件。示例的,在攻击场景A中发出报警信息B,根据攻击模式库获取预测攻击事件C;在攻击场景A中发出报警信息D,根据攻击模式库获取预测攻击事件E;在攻击场景F中,发出报警信息B,根据攻击模式库获取预测攻击事件G。
上述技术方案的有益效果:提高检测的及时性及准确性,通过多事件关联与机器学习消除对人工的依赖性,避免在多个攻击者入侵时漏检测情况的发生,对多个攻击者产生的攻击进行聚合及关联,准确识别入侵者的真正意图,进而采取对应的阻断措施,提高了阻断的成功率,进而实现了网络安全。同时获取预测攻击事件,便于采取相应的阻断措施,有效避免网络入侵。
如图2所示,根据本发明的一些实施例,在所述获取预测攻击事件后,还包括步骤S5-S9:
S5、根据所述复杂攻击事件及所述预测攻击事件生成所述攻击场景中的攻击序列信息,所述攻击序列信息包括攻击链、攻击节点、攻击方式;
S6、根据所述攻击序列信息获得多组数据;
S7、将所述多组数据映射至多个映射空间内,每组数据对应一个映射空间;
S8、在所述映射空间根据视窗参数生成视图,根据生成的各个视图拼接成攻击序列图并进行显示;
S9、根据所述攻击序列图确定对各个攻击节点的阻断措施。
上述技术方案的工作原理:根据所述复杂攻击事件及所述预测攻击事件生成所述攻击场景中的攻击序列信息,所述攻击序列信息包括攻击链、攻击节点、攻击方式;根据已经发生的复杂攻击事件及预测攻击事件形成一套完整的攻击序列信息,便于全面采集网络受到入侵信息,保证采集信息的准确性,进而有利于进行准确判断。根据所述攻击序列信息获得多组数据;根据攻击节点的类别或者攻击节点受到的攻击类型进行分类,得到多组数据,将所述多组数据映射至多个映射空间内,每组数据对应一个映射空间;便于标记该攻击节点的类别、位置等信息。在所述映射空间根据视窗参数生成视图,根据生成的各个视图拼接成攻击序列图并进行显示;形成一套完整的攻击序列图,便于用户清晰的了解攻击节点类别、位置等,及时且准确的做出相应的阻断措施。
上述技术方案的有益效果:保证在网络受到入侵时,对攻击节点信息等采集的全面性及准确性,同时便于用户清晰的了解攻击节点类别、位置等,及时且准确的做出相应的阻断措施。
如图3所示,根据本发明的一些实施例,根据所述异常事件判断是否存在非独立攻击事件,包括步骤S21-S25:
S21、获取历史流量数据,根据历史流量数据确定历史异常事件;
S22、获取历史异常事件的特征向量,生成特征相似度矩阵;
S23、根据特征相似度矩阵生成异常事件识别模型;
S24、获取异常事件的特征向量,将所述特征向量输入异常事件识别模型中,得到异常事件类型,根据类型的一致性原则,得到关联的异常事件的集合;
S25、获取集合中异常事件的数量及各异常事件间的聚合度并进行排序,判断所述数量是否大于预设数量且最大聚合度是否大于预设聚合度,在确定所述数量大于预设数量且所述最大聚合度大于预设聚合度时,确定存在非独立攻击事件。
上述技术方案的工作原理:获取历史流量数据,根据历史流量数据确定历史异常事件;获取历史异常事件的特征向量,生成特征相似度矩阵;根据特征相似度矩阵生成异常事件识别模型;获取异常事件的特征向量,将所述特征向量输入异常事件识别模型中,得到异常事件类型,根据类型的一致性原则,得到关联的异常事件的集合;获取集合中异常事件的数量及各异常事件间的聚合度并进行排序,判断所述数量是否大于预设数量且最大聚合度是否大于预设聚合度,在确定所述数量大于预设数量且所述最大聚合度大于预设聚合度时,确定存在非独立攻击事件。
上述技术方案的有益效果:通过机器学习形成的异常事件识别模型,得到异常事件的集合,对异常事件进行有效的聚类及关联,在集合中异常事件的数量大于预设数量且所述最大聚合度大于预设聚合度时,确定存在非独立攻击事件,提高判断是否存在非独立攻击事件的准确性。
根据本发明的一些实施例,所述根据所述攻击序列图确定对各个攻击节点的阻断措施,包括:
统计各个攻击节点受到的攻击次数;所述攻击次数为攻击节点的已经受到的攻击次数与预估的将在预设时间内受到的攻击次数之和;
根据攻击次数确定对所述各个攻击节点的阻断优先级;
根据所述阻断优先级对各个攻击节点进行阻断。
上述技术方案的工作原理:统计各个攻击节点受到的攻击次数;所述攻击次数为攻击节点的已经受到的攻击次数与预估的将在预设时间内受到的攻击次数之和;根据攻击次数确定对所述各个攻击节点的阻断优先级;攻击次数越多,阻断优先级越高;根据所述阻断优先级对各个攻击节点进行阻断。
上述技术方案的有益效果:根据所述阻断优先级对各个攻击节点进行阻断。可以有效缓解系统的处理压力,同时可以避免攻击节点受到更多的攻击,有序的对攻击节点进行阻断,提高阻断速率及阻断成功率。
根据本发明的一些实施例,还包括:
在对攻击节点实现阻断措施后,通过抓包的方式检测所述攻击节点是否在传输数据;
在确定所述攻击节点在传输数据时,重新检测攻击节点受到的攻击事件的类型及获取所述传输数据的流向,进而对所述阻断措施进行修正。
上述技术方案的工作原理:在对攻击节点实现阻断措施后,通过抓包的方式检测所述攻击节点是否在传输数据;在确定所述攻击节点在传输数据时,表示阻断措施失败,阻断失败,重新检测攻击节点受到的攻击事件的类型及获取所述传输数据的流向,进而对所述阻断措施进行修正。
上述技术方案的有益效果:在对攻击节点阻断后对阻断效果进行检测,可以保证对攻击节点进行有效阻断,保证阻断的成功率。
根据本发明的一些实施例,还包括:
在确定所述攻击节点不在传输数据时,获取攻击节点的相关信息;
根据所述相关信息构建节点向量;
获取所述节点向量的安全等级,在确定所述安全等级小于预设安全等级时,对所述节点向量的安全等级进行升级。
上述技术方案的工作原理:在确定所述攻击节点不在传输数据时,获取攻击节点的相关信息;相关信息可以是攻击节点,即设备的在线率,设备类型,设备分组、连接设备等。根据所述相关信息构建节点向量;获取所述节点向量的安全等级,在确定所述安全等级小于预设安全等级时,对所述节点向量的安全等级进行升级。
上述技术方案的有益效果:在设备不传输数据且安全等级小于预设安全等级时,进行升级操作,保证设备的安全性,同时也提高了的升级操作的成功率,进而为下次网络入侵做好准备,保证网络安全。
根据本发明的一些实施例,还包括:
在确定不存在非独立攻击事件时,获取各个异常事件中的异常行为及所处的攻击场景;
根据异常行为及所处的攻击场景获取独立攻击事件的特征参数;
根据所述特征参数获取相对应的解决方法;
将所述特征参数及解决方法存储在独立攻击事件数据库中。
上述技术方案的工作原理:在确定不存在非独立攻击事件时,获取各个异常事件中的异常行为及所处的攻击场景;根据异常行为及所处的攻击场景获取独立攻击事件的特征参数;根据所述特征参数获取相对应的解决方法;将所述特征参数及解决方法存储在独立攻击事件数据库中。
上述技术方案的有益效果:便于在确定存在独立攻击事件,获取独立攻击事件的异常行为及所处攻击场景查询独立攻击事件数据库及时获取相应的解决方法,提高对独立攻击事件处理的及时性及准确性,节约等待时间,减少网络受到的危害。
根据本发明的一些实施例,在根据所述复杂攻击事件及所述预测攻击事件生成所述攻击场景中的攻击序列信息前,还包括:
剔除所述复杂攻击事件造成入侵的网络区域,得到新的网络区域;
根据新的网络区域,计算对攻击节点的定位误差,在确定所述定位误差大于预设定位误差时,发出报警提示。
上述技术方案的工作原理:剔除所述复杂攻击事件造成入侵的网络区域,得到新的网络区域;根据新的网络区域,计算对攻击节点的定位误差,在确定所述定位误差大于预设定位误差时,发出报警提示。
上述技术方案的有益效果:在对攻击节点的定位不准确时,发出报警提示,使得人工介入,及时检查网络是否出现重大漏洞,有利于维护网络安全。
根据本发明的一些实施例,所述计算对攻击节点的定位误差,包括:
其中,C为组合符号;m为在进行定位时的定位步骤的数量;
为对攻击节点定位时
在区分攻击节点类别时的最大分类错误率;
根据对攻击节点定位时发生第i次定位错误的概率
,计算对攻击节点的定位误
差W:
其中,Z为攻击节点类别总数;U为新的网络区域;D为在发生第i次定位错误时的路径差值。
上述技术方案的工作原理:在对攻击节点进行定位时,会通过多次进行定位,计算
对攻击节点定位时发生第i次定位错误的概率,进而准确计算出对攻击节点的定位误差,提
高判断与预设定位误差大小的准确性。在对攻击节点进行定位时,示例的有Z个攻击节点类
别,
为对攻击节点定位时在区分攻击节点类别时的最大分类错误率;D为在发生第i次定
位错误时的路径差值,即在第i次时,准确定位的路径与错误定位的路径的距离之差。
上述技术方案的有益效果:消除复杂攻击事件造成入侵的网络区域的影响,准确计算出在新的网络区域内对攻击节点定位误差,有利于提高对攻击节点定位的准确性,便于系统对相应的攻击节点采取准确的阻断措施。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。