一种网络攻击行为的威胁评估方法及装置与流程

专利2024-08-16  22


本申请涉及信息安全
技术领域
,尤其涉及一种网络攻击行为的威胁评估方法及装置。
背景技术
:目前,从最近几年的安全事故可以看到,内部威胁(insiderthreat)已经成为企业和组织威胁的主要原因。内部威胁是指企业或组织的内部人员利用获得的信任做出对授信企业或组织合法利益不当的行为,这些利益包括企业或组织的经济利益、业务运行、对外服务以及授信企业或组织的声誉等。内部威胁不仅是企业或组织合法成员的有意或无意导致的企业或组织利益损失的攻击行为,还包括一些外部伪装成企业或组织内部成员的攻击行为。现在内网威胁检测分为网络侧与终端侧,网络侧检查主要全流量,入侵防御系统(intrusionpreventionsystem,ips)、入侵检测系统(intrusiondetectionsystems,ids)或网站应用级入侵防御系统(webapplicationfirewall,waf),终端侧主要是终端检测与响应系统(endpointdetectionandresponse,edr),蜜罐等,还有现在流行的用户及实体行为分析ueba。这些检测设备每天会产生海量告警事件,通常一个中型企业的告警事件的数量在百万级以上。对于安全人员来说,需要对每个告警事件进行处理,由于告警事件数量巨大,企业或组织需要投入大量的人力,成本较高,故如何从海量的告警事件中找出高威攻击行为对应的告警事件,即危险性较高的告警事件就成为企业或组织日常安全运营的首要工作。技术实现要素:本申请实施例提供一种网络攻击行为的威胁评估方法及装置,解决了现有技术存在的上述问题,实现了高威告警事件的快速确定,降低了成本。第一方面,提供了一种网络攻击行为的威胁评估方法,该方法可以包括:根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析之前,所述方法还包括:根据预设的频繁项筛选条件,对所述多个告警序列进行频繁项筛选,得到频繁告警子序列;所述预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且所述告警序列满足预设序列长度;若所述多个告警序列中目标告警序列包含所述频繁告警子序列,则将所述目标告警序列中的所述频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,所述目标告警序列为所述多个告警序列中的任一告警序列。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率,包括:采用已训练的隐马尔可夫链模型,对所述每个告警序列中相邻告警事件进行分析,得到所述相邻告警事件的转移概率。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率之后,所述方法还包括:基于所述多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图。在一个可选的实现中,采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行处理,得到所述每个告警序列的序列向量,包括:针对所述每个告警序列,采用预设网络嵌入算法,对所述告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警事件的告警向量;采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量。在一个可选的实现中,采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量,包括:基于所述每个告警序列中每个告警事件的告警向量和告警事件的个数,得到相应告警序列的初始序列向量;对所述多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;根据所述每个告警序列的初始序列向量和所述第一主成分向量,获取所述每个告警序列的序列向量。在一个可选的实现中,所述两个ip地址包括源ip地址和所述源ip地址对应的目的ip地址;基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,包括:采用预设知识图谱表示学习的编码算法,对目标源ip地址对应的至少一个告警序列的序列向量和所述目标源ip地址对应的至少一个目的ip地址进行拟合处理,得到所述两个ip地址的向量;采用预设知识图谱表示学习的解码算法,对所述两个ip地址的向量进行解码,得到所述告警序列的重构序列向量;基于所述告警序列的重构序列向量与所述告警序列的序列向量的重构误差,确定所述两个ip地址间攻击行为的威胁程度值。第二方面,提供了一种网络攻击行为的威胁评估装置,该装置可以包括:获取单元和分析单元;所述获取单元,用于根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;所述分析单元,用于采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;所述获取单元,还用于采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;以及,基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。在一个可选的实现中,所述装置还包括筛选单元和标记单元;所述筛选单元,用于根据预设的频繁项筛选条件,对所述多个告警序列进行频繁项筛选,得到频繁告警子序列;所述预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且所述告警序列满足预设序列长度;所述标记单元,用于若所述多个告警序列中目标告警序列包含所述频繁告警子序列,则将所述目标告警序列中的所述频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,所述目标告警序列为所述多个告警序列中的任一告警序列。在一个可选的实现中,所述分析单元,具体用于采用已训练的隐马尔可夫链模型,对所述每个告警序列中相邻告警事件进行分析,得到所述相邻告警事件的转移概率。在一个可选的实现中,所述装置还包括构建单元;所述构建单元,用于基于所述多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图。在一个可选的实现中,所述获取单元,具体用于针对所述每个告警序列,采用预设网络嵌入算法,对所述告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警事件的告警向量;采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量。在一个可选的实现中,所述获取单元,还具体用于基于所述每个告警序列中每个告警事件的告警向量和告警事件的个数,得到相应告警序列的初始序列向量;对所述多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;根据所述每个告警序列的初始序列向量和所述第一主成分向量,获取所述每个告警序列的序列向量。在一个可选的实现中,所述两个ip地址包括源ip地址和所述源ip地址对应的目的ip地址;所述装置还包括确定单元;所述获取单元,还具体用于采用预设知识图谱表示学习的编码算法,对目标源ip地址对应的至少一个告警序列的序列向量和所述目标源ip地址对应的至少一个目的ip地址进行拟合处理,得到所述两个ip地址的向量;采用预设知识图谱表示学习的解码算法,对所述两个ip地址的向量进行解码,得到所述告警序列的重构序列向量;所述确定单元,用于基于所述告警序列的重构序列向量与所述告警序列的序列向量的重构误差,确定所述两个ip地址间攻击行为的威胁程度值。第三方面,提供了一种电子设备,该电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一所述的方法步骤。第四方面,提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一所述的方法步骤。本发明实施例提供的网络攻击行为的威胁评估方法,包括:根据采集的目标网络在预设时间段内的告警数据,获取目标网络中至少两个ip地址间的多个告警序列,告警数据包括预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照发生时间顺序排列的至少一个告警事件;采用预设分析算法,对每个告警序列进行分析,得到每个告警序列中相邻告警事件间的转移概率;采用预设嵌入算法,对每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到每个告警序列的序列向量;基于每两个ip地址间告警序列的序列向量和两个ip地址间的攻击行为矩阵,获取两个ip地址间攻击行为的威胁评估结果。攻击行为矩阵用于描述两个ip地址间是否存在攻击行为的矩阵。该方法可自动进行网络攻击行为的威胁评估,降低了企业投入成本,且结合告警序列中告警事件在时序上的因果关系和相应的ip对,确定出每个ip对间攻击行为的威胁程度威胁评估结果,从而实现了高威告警事件的快速确定。附图说明图1为本发明实施例提供的一种网络攻击行为的威胁评估方法的流程示意图;图2为本发明实施例提供的一种告警事件有向关联图的结构示意图;图3为本发明实施例提供的一种网络攻击行为的威胁评估装置的结构示意图;图4为本发明实施例提供的一种电子设备的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,并不是全部的实施例。基于本申请实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了方便理解,下面对本发明实施例中涉及的名词进行解释:(1)隐马尔可夫模型(hiddenmarkovmodel,hmm)是统计模型,它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。例如,用户a每天根据天气{下雨,天晴}决定当天的活动{公园散步,购物,清理房间}中的一种。而用户b每天只能在朋友圈上看到用户a发的状态“我前天公园散步、昨天购物、今天清理房间了”,那么用户b可以根据用户a发的状态推断东京这三天的天气。在这个例子里,显状态是活动,隐状态是天气。(2)deepwalk算法是一种将随机游走(randomwalk)算法和word2vec算法相结合的图结构数据挖掘算法。即该算法主要分为随机游走和生成表示向量两个部分。该算法首先利用随机游走从告警事件有向关联图中提取节点序列;然后借助自然语言处理的思路,将生成的节点序列看作由单词组成的句子,所有的节点序列可以看作一个大的语料库(corpus),最后利用自然语言处理工具word2vec将每一个节点表示为一个预设维度的向量。所谓随机游走,就是在网络上从某个特定的节点开始,不断重复地随机选择游走路径,最终形成一条贯穿网络的路径,即节点序列。其中,游走的每一步都从与当前节点相连的边中随机选择一条,沿着选定的边移动到下一个节点,并不断重复这个过程。(3)知识图谱:表示为一个三元组(sub,rel,obj)。前者是主体,中间是关系,后者是客体。主体和客体统称为实体(entity)。关系具有不可逆的属性,也就是说主体和客体不能颠倒过来。知识图谱的集合,链接起来成为一个图(graph),每个节点是一个实体,每条边是一个关系。也就是有向图,主体指向客体。(4)表示学习:表示学习旨在将研究对象的语义信息表示为稠密低维实体向量,知识表示学习主要是面对知识图谱中的试题和关系进行表示学习,使用建模方法将实体和关系在低维稠密向量空间中,然后进行计算和推理,简单说:将三元组表示成低维度向量的这个过程,称为表示学习。即,将(h,r,t)→(h→,r→,t→)。(5)transe(translation-basedentity)算法:是基于实体和关系的分布式向量表示,将每个三元组实例(head,relation,tail)中的关系relation看做从实体head到实体tail的翻译,通过不断调整h、r和t(head、relation和tail的向量),使(h+r)尽可能与t相等,即h+r=t。本发明实施例提供的网络攻击行为的威胁评估方法可以应用在应用服务器或云服务器上,也可以应用在终端上。该方法采集目标网络在预设时间段(或称“一个行为周期”)内的告警事件,并挖掘告警事件之间的因果关系,得到目标网络中至少两个互联网协议地址(internetprotocol,ip)地址间的多个告警序列,每个告警序列包括两个ip地址间按照发生时间顺序排列的至少一个告警事件,并分析出一个告警序列中相邻告警事件间的转移概率,即是在第一个告警事件发生的条件下,第二个告警事件发生的概率;采用预设嵌入算法,得到一个告警序列中每个告警事件的向量表示,以及该告警序列的向量表示;最后,基于每个告警序列的序列向量和相应告警序列对应的两个ip地址间的攻击行为矩阵,获取两个ip地址间攻击行为的评估结果,以确定该攻击行为的威胁程度,攻击行为矩阵用于描述两个ip地址间是否存在攻击行为的矩阵。与现有技术相比,该方法可基于采集的告警事件,自动进行网络攻击行为的威胁评估,降低了企业投入成本,且考虑了告警事件在时序上的因果关系,能够更明确体现出攻击行为和攻击意图,提高了对告警序列所属攻击行为的威胁程度评估的准确度,以使安全人员按照评估出的威胁程度从强到弱的顺序进行告警事件的处理,实现网络安全的维护。以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。图1为本申请实施例提供的一种网络攻击行为的威胁评估方法的流程示意图。如图1所示,该方法可以包括:步骤110、根据采集的目标网络在预设时间段内的告警数据,获取目标网络中至少两个ip地址间的多个告警序列。为了便于描述,以网络侧告警为例,可通过现有的ips、ids、waf等告警事件检测设备,采集目标网络在预设时间段,如一天内的告警数据。该告警数据可以包括预设时间段内发生的告警事件和相应发生时间。也就是说,告警数据的两个主要实体是ip地址与告警时间,源ip地址表示攻击者,目标ip地址表示受害者。每个告警序列包括两个ip地址(源ip地址与目标ip地址)间按照发生时间顺序排列的至少一个告警事件。以攻击者为研究目标为例,可分别从两个场景对攻击者的告警序列进行建模:一对一场景:在一个预设时间段内,从一个源ip地址到一个目标ip地址所触发的告警序列。一对多场景:在一个预设时间段内,从一个源ip地址到所有目标ip地址所触发的告警序列。对于上述两个场景可以描述为表1所示信息:表1告警事件源ip地址目的ip地址告警时间a1ewt1a2twt3a3ewt4a1eqt2a3eqt5表1中,源ip地址包括e和t,目的ip地址包括w和q。其中:在t1时刻,e和w之间发生告警事件a1;在t2时刻,e和q之间发生告警事件a1;在t3时刻,t和w之间发生告警事件a2;在t4时刻,e和w之间发生告警事件a3;在t5时刻,e和q之间发生告警事件a3;故,以e为源ip地址的一对一场景下的告警序列包括:“e与w”间的告警序列{a1,a3},以及“e与q”间的告警序列{a1,a3}。以e为源ip地址的一对多场景下的告警序列包括:{a1,a1,a3,a3}。需要说明的是,很多时候单一ip对之间的告警序列并没有明显的攻击行为和攻击意图,而在o2m场景中就会发现明显的攻击行为和攻击意图。步骤120、采用预设分析算法,对每个告警序列进行分析,得到每个告警序列中相邻告警事件间的转移概率。将每个告警序列依次输入隐马尔可夫链模型,实现采用已训练的hmm模型,对每个告警序列中相邻告警事件进行分析,得到相邻告警事件的转移概率。进一步的,基于多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图(或称“告警事件因果关联网络”),其中,将告警事件为告警事件有向关联图中的节点,相邻告警事件的转移概率为相应两节点间边的权值。在一个例子中,如图2所示,告警事件有向关联图中包括7个节点:节点a0、节点a1、节点a2、节点a3、节点b1和节点b2,即7个告警事件。其中:节点a0与节点a1间的转移概率为p1,那么该图中节点a0与节点a1间的边的权值为p1;节点a0与节点a2间的转移概率为p2,那么该图中节点a0与节点a2间的边的权值为p2;节点a0与节点a3间的转移概率为p3,那么该图中节点a0与节点a3间的边的权值为p3;节点a1与节点b1间的转移概率为p4,那么该图中节点a1与节点b1间的边的权值为p4;节点a1与节点b2间的转移概率为p5,那么该图中节点a1与节点b2间的边的权值为p5。步骤130、采用预设嵌入算法,对每个告警序列和相应告警序列中相邻告警事件间的转移概率进行处理,得到每个告警序列的序列向量。具体实施中,针对每个告警序列,可以采用预设网络嵌入算法,如图嵌入deepwalk算法,对告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到每个告警事件的告警向量;结合图2所示的告警事件有向关联图,第一次从该图中的第一个节点a0开始,在与节点a0相连的边中随机选择一条边进行游走,沿着选定的边可移动到下一个节点a2,由于节点a2后没有边,故停止游走,此次游走得到节点序列{a0,a2};第二次从该图中的第一个节点a0开始,在与节点a0相连的剩余边中,随机选择一条边进行游走,沿着选定的边可移动到下一个节点a1,再次在与节点a1相连的边中,随机选择一条边进行游走,沿着选定的边可移动到下一个节点b1,由于节点b1后没有边,故停止游走,此次游走得到节点序列{a0,a1,b1};同理,还可以得到节点序列{a0,a3}和{a0,a1,b2}。利用word2vec算法,将每一个节点表示为一个预设维度的向量,也就是说,利用word2vec算法,对每个告警事件进行处理,得到每个告警事件的告警向量。之后,采用预设序列嵌入算法,对每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到每个告警序列的序列向量。每个ip地址对之间是至少一个告警事件组成的告警序列,为了得到每个ip地址对间的告警序列的序列向量,可以参考自然语言词向量生成句向量的方法,采用isf嵌入算法得到每个告警序列的序列向量。具体的,将所有告警序列作为语料库,遍历语料库,基于每个告警序列中每个告警事件的告警向量、相邻告警事件间的转移概率和告警事件的个数,得到相应告警序列的初始序列向量;告警序列的初始序列向量的计算公式可以表示为:其中,s为当前告警序列,|s|为当前告警序列s中告警事件的个数,w为s中的当前告警事件,p(w)为当前告警事件w在所有告警序列对应的告警事件中出现的概率,vw为当前告警事件w的告警向量,a为预设系数。对多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;之后,根据每个告警序列的初始序列向量和第一主成分向量,获取每个告警序列的序列向量。告警序列的序列向量的计算公式可以表示为:v's=vs-uutvs;其中,u为第一主成分向量,ut为u的转置向量。步骤140、基于每两个ip地址间告警序列的序列向量和两个ip地址间的攻击行为矩阵,获取两个ip地址间攻击行为的威胁评估结果。其中,攻击行为矩阵用于描述两个ip地址间是否存在攻击行为的矩阵。在执行该步骤之前,可以基于ip地址对和相应ip地址对间告警序列的序列向量,构建ip地址有向关联图,即ip地址的知识图谱的集合,其中,ip告警关联图的节点为ip地址,连接ip地址对的边是预设时间段内相应ip地址对间告警序列的序列向量。ip地址有向关联图可以表示为三元组的形式(sip,alert_sq,dip),其中sip表示源ip地址,通常是指攻击源,dip表示目的ip地址,通常表示受害者,alert_sq表示源ip地址到目的ip地址的告警序列的序列向量。也就是说,ip地址有向关联图包括两个ip地址间是否存在攻击行为,以及相应攻击行为对应的告警序列的序列向量。具体实施中,采用预设知识图谱表示学习的编码算法,如transe算法,对目标源ip地址对应的告警序列的序列向量和目标源ip地址对应的目的ip地址进行拟合处理,得到两个ip地址的向量。transe算法的目标函数l可以表示为:其中,s是知识库中的三元组,即正训练集,s’是负采样的三元组,即负训练集,s’是通过替换s中h或t所得,是人为随机生成的。γ是取值大于0的间隔距离参数,是一个超参数,[x]+表示正值函数,即当x>0时,[x]+=x;当x≤0时,[x]+=0。结合图2可知,一个源ip地址对应的目的ip地址可以为多个,相应的,源ip地址与每个目的ip地址间存在一个告警序列,故采用transe算法的transe模型,接收输入的源ip地址,以及依次输入的相应源ip地址对应的每个目的ip地址以及相应告警序列,通过不断调整sip,alert_sq和dip,使(sip+alert_sq)与dip进行拟合,尽可能实现(sip+alert_sq)与dip相等,从而得到每个源ip地址。由于告警序列的源ip地址还可能是其他告警序列的目的ip地址,故经过不断ip地址对的迭代,基于transe模型,可得到每个ip地址的向量。之后,采用预设知识图谱表示学习的解码算法,对得到的两个ip地址的向量进行解码,得到告警序列的重构序列向量;具体的,将两个ip地址中目的ip地址的编码向量减去源ip地址的编码向量,得到告警序列的重构序列向量;基于告警序列的重构序列向量与告警序列的序列向量的重构误差,可确定每个告警序列对应的两个ip地址间攻击行为的威胁程度值。其中,若重构误差越大,则该两个ip地址间攻击行为的威胁程度值越大,反之,若重构误差越小,则该两个ip地址间攻击行为的威胁程度值越小,以实现对攻击者攻击行为的威胁评估。与现有技术相比,本发明实施例不需要人工对两个ip地址间的一系列告警事件进行威胁评估,提高了评估效率和评估的准确性。且基于该威胁评估结果可区分普遍攻击行为和高威攻击行为,安全人员可以按照评估出的威胁程度从强到弱的顺序进行告警事件的处理,实现网络安全的维护。在一种可能的实施例中,为了进一步提高评估的准确性,在步骤120执行之前,可以根据预设的频繁项筛选条件,对获取的多个告警序列进行频繁项筛选,得到频繁告警子序列;如采用频繁项集挖掘中的prefixspan算法,从多个告警序列中筛选出满足预设的频繁项筛选条件的告警子序列。其中,预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且告警序列满足预设序列长度;若多个告警序列中目标告警序列包含频繁告警子序列,则将目标告警序列中的频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,目标告警序列为多个告警序列中的任一告警序列,之后基于包含新的目标告警序列的多个告警序列,执行步骤120;若多个告警序列中均不包含频繁告警子序列,则直接执行步骤120。需要说明的是,prefixspan算法的步骤如下:1)找出所有长度为1的前缀告警子序列和对应的投影数据库,投影数据库是满足前缀的所有告警序列的集合;2)对长度为1的前缀告警子序列进行计数,将支持度低于阈值α的前缀对应的告警子序列从数据集s删除,同时得到所有的频繁1项告警子序列,i=1;3)对于每个长度为i满足支持度要求的前缀告警子序列进行递归挖掘,包括:a)找出前缀告警子序列所对应的投影数据库。如果投影数据库为空,则递归返回。b)统计对应投影数据库中各项的支持度计数。如果所有告警子序列的支持度计数都低于阈值α,则递归返回。c)将满足支持度计数的各个告警子序列和当前的前缀告警子序列进行合并,得到若干新的前缀告警子序列。d)令i=i+1,前缀告警子序列为合并单项后的各个前缀告警子序列,分别递归执行步骤3)。本发明实施例提供的网络攻击行为的威胁评估方法,包括:根据采集的目标网络在预设时间段内的告警数据,获取目标网络中至少两个ip地址间的多个告警序列,告警数据包括预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照发生时间顺序排列的至少一个告警事件;采用预设分析算法,对每个告警序列进行分析,得到每个告警序列中相邻告警事件间的转移概率;采用预设嵌入算法,对每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到每个告警序列的序列向量;基于每个告警序列的序列向量和相应告警序列对应的两个ip地址间的攻击行为矩阵,获取两个ip地址间攻击行为的威胁评估结果,攻击行为矩阵用于描述两个ip地址间是否存在攻击行为的矩阵。该方法可自动进行网络攻击行为的威胁评估,降低了企业投入成本,且结合告警序列中告警事件在时序上的因果关系和相应的ip对,确定出每个ip对间攻击行为的威胁程度,从而实现了高威告警事件的快速确定。与上述方法对应的,本发明实施例还提供一种网络攻击行为的威胁评估装置,如图3所示,该网络攻击行为的威胁评估装置包括:获取单元310和分析单元320;获取单元310,用于根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;分析单元,用于采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;获取单元320,还用于采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;以及,基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。在一个可选的实现中,所述装置还包括筛选单元330和标记单元340;筛选单元330,用于根据预设的频繁项筛选条件,对所述多个告警序列进行频繁项筛选,得到频繁告警子序列;所述预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且所述告警序列满足预设序列长度;标记单元340,用于若所述多个告警序列中目标告警序列包含所述频繁告警子序列,则将所述目标告警序列中的所述频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,所述目标告警序列为所述多个告警序列中的任一告警序列。在一个可选的实现中,分析单元320,具体用于采用已训练的隐马尔可夫链模型,对所述每个告警序列中相邻告警事件进行分析,得到所述相邻告警事件的转移概率。在一个可选的实现中,所述装置还包括构建单元350;构建单元350,用于基于所述多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图。在一个可选的实现中,获取单元310,具体用于针对所述每个告警序列,采用预设网络嵌入算法,对所述告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警事件的告警向量;采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量。在一个可选的实现中,获取单元310,还具体用于基于所述每个告警序列中每个告警事件的告警向量和告警事件的个数,得到相应告警序列的初始序列向量;对所述多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;根据所述每个告警序列的初始序列向量和所述第一主成分向量,获取所述每个告警序列的序列向量。在一个可选的实现中,所述两个ip地址包括源ip地址和所述源ip地址对应的目的ip地址;所述装置还包括确定单元360;获取单元310,还具体用于采用预设知识图谱表示学习的编码算法,对目标源ip地址对应的至少一个告警序列的序列向量和所述目标源ip地址对应的至少一个目的ip地址进行拟合处理,得到所述两个ip地址的向量;以及,采用预设知识图谱表示学习的解码算法,对所述两个ip地址的向量进行解码,得到所述告警序列的重构序列向量;确定单元360,用于基于所述告警序列的重构序列向量与所述告警序列的序列向量的重构误差,确定所述两个ip地址间攻击行为的威胁程度值。本发明上述实施例提供的网络攻击行为的威胁评估装置的各功能单元的功能,可以通过上述各方法步骤来实现,因此,本发明实施例提供的网络攻击行为的威胁评估装置中的各个单元的具体工作过程和有益效果,在此不复赘述。本发明实施例还提供了一种电子设备,如图4所示,包括处理器410、通信接口420、存储器430和通信总线440,其中,处理器410,通信接口420,存储器430通过通信总线440完成相互间的通信。存储器430,用于存放计算机程序;处理器410,用于执行存储器430上所存放的程序时,实现如下步骤:根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析之前,所述方法还包括:根据预设的频繁项筛选条件,对所述多个告警序列进行频繁项筛选,得到频繁告警子序列;所述预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且所述告警序列满足预设序列长度;若所述多个告警序列中目标告警序列包含所述频繁告警子序列,则将所述目标告警序列中的所述频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,所述目标告警序列为所述多个告警序列中的任一告警序列。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率,包括:采用已训练的隐马尔可夫链模型,对所述每个告警序列中相邻告警事件进行分析,得到所述相邻告警事件的转移概率。在一个可选的实现中,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率之后,所述方法还包括:基于所述多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图。在一个可选的实现中,采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行处理,得到所述每个告警序列的序列向量,包括:针对所述每个告警序列,采用预设网络嵌入算法,对所述告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警事件的告警向量;采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量。在一个可选的实现中,采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量,包括:基于所述每个告警序列中每个告警事件的告警向量和告警事件的个数,得到相应告警序列的初始序列向量;对所述多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;根据所述每个告警序列的初始序列向量和所述第一主成分向量,获取所述每个告警序列的序列向量。在一个可选的实现中,所述两个ip地址包括源ip地址和所述源ip地址对应的目的ip地址;基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,包括:采用预设知识图谱表示学习的编码算法,对目标源ip地址对应的至少一个告警序列的序列向量和所述目标源ip地址对应的至少一个目的ip地址进行拟合处理,得到所述两个ip地址的向量;采用预设知识图谱表示学习的解码算法,对所述两个ip地址的向量进行解码,得到所述告警序列的重构序列向量;基于所述告警序列的重构序列向量与所述告警序列的序列向量的重构误差,确定所述两个ip地址间攻击行为的威胁程度值。上述提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于上述电子设备与其他设备之间的通信。存储器可以包括随机存取存储器(randomaccessmemory,ram),也可以包括非易失性存储器(non-volatilememory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。由于上述实施例中电子设备的各器件解决问题的实施方式以及有益效果可以参见图2所示的实施例中的各步骤来实现,因此,本发明实施例提供的电子设备的具体工作过程和有益效果,在此不复赘述。在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的网络攻击行为的威胁评估方法。在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的网络攻击行为的威胁评估方法。本领域内的技术人员应明白,本申请实施例中的实施例可提供为方法、系统、或计算机程序产品。因此,本申请实施例中可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例中可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本申请实施例中是参照根据本申请实施例中实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本申请实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例中范围的所有变更和修改。显然,本领域的技术人员可以对本申请实施例中实施例进行各种改动和变型而不脱离本申请实施例中实施例的精神和范围。这样,倘若本申请实施例中实施例的这些修改和变型属于本申请实施例中权利要求及其等同技术的范围之内,则本申请实施例中也意图包含这些改动和变型在内。当前第1页1 2 3 
技术特征:

1.一种网络攻击行为的威胁评估方法,其特征在于,所述方法包括:

根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个互联网协议ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;

采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;

采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;

基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。

2.如权利要求1所述的方法,其特征在于,采用预设分析算法,对所述每个告警序列进行分析之前,所述方法还包括:

根据预设的频繁项筛选条件,对所述多个告警序列进行频繁项筛选,得到频繁告警子序列;所述预设的频繁项筛选条件为告警序列的支持度满足不低于预设支持度阈值,且所述告警序列满足预设序列长度;

若所述多个告警序列中目标告警序列包含所述频繁告警子序列,则将所述目标告警序列中的所述频繁告警子序列标记为一个超告警事件,得到新的目标告警序列,所述目标告警序列为所述多个告警序列中的任一告警序列。

3.如权利要求1所述的方法,其特征在于,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率,包括:

采用已训练的隐马尔可夫链模型,对所述每个告警序列中相邻告警事件进行分析,得到所述相邻告警事件的转移概率。

4.如权利要求1所述的方法,其特征在于,采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率之后,所述方法还包括:

基于所述多个告警序列和相应告警序列中相邻告警事件间的转移概率,构建告警事件有向关联图。

5.如权利要求1所述的方法,其特征在于,采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行处理,得到所述每个告警序列的序列向量,包括:

针对所述每个告警序列,采用预设网络嵌入算法,对所述告警序列中每个告警事件和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警事件的告警向量;

采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量。

6.如权利要求5所述的方法,其特征在于,采用预设序列嵌入算法,对所述每个告警序列中每个告警事件的告警向量和相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量,包括:

基于所述每个告警序列中每个告警事件的告警向量和告警事件的个数,得到相应告警序列的初始序列向量;

对所述多个告警序列的初始序列向量进行主成分分析,计算出多个初始序列向量对应的第一主成分向量;

根据所述每个告警序列的初始序列向量和所述第一主成分向量,获取所述每个告警序列的序列向量。

7.如权利要求1所述的方法,其特征在于,所述两个ip地址包括源ip地址和所述源ip地址对应的目的ip地址;

基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,包括:

采用预设知识图谱表示学习的编码算法,对目标源ip地址对应的至少一个告警序列的序列向量和所述目标源ip地址对应的至少一个目的ip地址进行拟合处理,得到所述两个ip地址的向量;

采用预设知识图谱表示学习的解码算法,对所述两个ip地址的向量进行解码,得到所述告警序列的重构序列向量;

基于所述告警序列的重构序列向量与所述告警序列的序列向量的重构误差,确定所述两个ip地址间攻击行为的威胁程度值。

8.一种网络攻击行为的威胁评估装置,其特征在于,所述装置包括:获取单元和分析单元;

所述获取单元,用于根据采集的目标网络在预设时间段内的告警数据,获取所述目标网络中至少两个ip地址间的多个告警序列,所述告警数据包括所述预设时间段内发生的告警事件和相应发生时间,每个告警序列包括按照所述发生时间顺序排列的至少一个告警事件;

所述分析单元,用于采用预设分析算法,对所述每个告警序列进行分析,得到所述每个告警序列中相邻告警事件间的转移概率;

所述获取单元,还用于采用预设嵌入算法,对所述每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到所述每个告警序列的序列向量;

以及,基于每两个ip地址间告警序列的序列向量和所述两个ip地址间的攻击行为矩阵,获取所述两个ip地址间攻击行为的威胁评估结果,所述攻击行为矩阵用于描述所述两个ip地址间是否存在攻击行为的矩阵。

9.一种电子设备,其特征在于,所述电子设备包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存储的程序时,实现权利要求1-7任一所述的方法步骤。

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-7任一所述的方法步骤。

技术总结
本申请公开了一种网络攻击行为的威胁评估方法及装置。包括:根据采集的目标网络在预设时间段内的告警数据,获取目标网络中至少两个IP地址间的多个告警序列;采用预设分析算法,对每个告警序列进行分析,得到每个告警序列中相邻告警事件间的转移概率;采用预设嵌入算法,对每个告警序列和相应告警序列中相邻告警事件间的转移概率进行嵌入处理,得到每个告警序列的序列向量;基于每两个IP地址间告警序列的序列向量和两个IP地址间的攻击行为矩阵,获取两个IP地址间攻击行为的威胁评估结果。该方法实现了高威告警事件的自动快速确定,降低了成本。

技术研发人员:薛见新;刘文懋;陈磊;王星凯;张润滋
受保护的技术使用者:绿盟科技集团股份有限公司;北京神州绿盟科技有限公司
技术研发日:2020.12.30
技术公布日:2021.04.06

转载请注明原文地址:https://xbbs.6miu.com/read-21164.html