CN113987492A - 一种告警事件的确定方法及装置 - Google Patents
一种告警事件的确定方法及装置 Download PDFInfo
- Publication number
- CN113987492A CN113987492A CN202111267950.7A CN202111267950A CN113987492A CN 113987492 A CN113987492 A CN 113987492A CN 202111267950 A CN202111267950 A CN 202111267950A CN 113987492 A CN113987492 A CN 113987492A
- Authority
- CN
- China
- Prior art keywords
- alarm
- alarm data
- sequence
- sequences
- rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种告警事件的确定方法及装置,用以解决在确定告警事件时由于不同告警之间缺乏关联关系导致准确度不高的问题。本申请中提供的方法包括:获取告警数据流;从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;从已构建的告警事理图谱中获取多个规则序列;将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
Description
技术领域
本申请涉及网络安全技术领域,尤其涉及一种告警事件的确定方法及装置。
背景技术
随着网络攻防的常态化开展,企业每天都会面对层出不穷的网络攻击。企业通常会部署多种安全设备来保证业务***的正常运行,比如网络防火墙、入侵检测***、防病毒***等。安全设备可能每天会接收海量的告警数据,其中包含大量重复告警或误报。然而针对同一攻击事件,不同的设备产生的告警名称也会存在差异,导致告警之间相对分散,缺乏关联性。现有技术基于知识图谱对告警进行关联分析,但其研究对象主体是实体与实体之间的关系,缺乏对事件逻辑知识的挖掘,确定告警事件准确度不高。
发明内容
本申请实施例提供了一种告警事件的确定方法及装置,通过对告警数据之间的关联分析,确定告警数据对应的告警事件,用以解决在确定告警事件时由于不同告警之间缺乏关联关系导致准确度不高的问题。
第一方面,本申请实施例提供了一种告警事件的确定方法,包括:获取告警数据流;从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;从已构建的告警事理图谱中获取多个规则序列;其中,所述告警事理图谱是根据安全专家的多个溯源分析报告进行分析得到的;所述告警事理图谱由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系;所述告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件;将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
基于上述方案,在确定告警数据对应的告警事件时,结合根据专家溯源分析报告得到告警事理图谱,来确定所述告警数据序列对应的告警事件。告警事理图谱中建立了不同告警之间的事理关系,进而可以通过事理关系确定告警数据序列中告警之间的匹配关系,进而确定告警数据序列对应的告警事件。
在一种可能的实现方式中,从所述告警数据流中获取待匹配的告警数据序列,包括:将所述告警数据流中的不同告警数据进行格式归一化;对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合;针对所述多个告警序列集合分别进行去重处理;从去重处理后的多个告警序列集合中获取所述待匹配的告警数据序列。
基于上述方案,可以将告警数据流中的告警数据进行预处理,将告警数据流转化为多个告警数据序列的非重复集合,减少重复告警和错误告警等对确定告警事件的干扰,提高确定告警事件的准确度。
在一种可能的实现方式中,针对所述多个告警序列集合分别进行去重处理,包括:将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠;所述第一告警序列集合为所述多个告警序列集合中的任一个;针对多个告警数据序列分别进行去重处理;其中,所述待匹配的告警数据序列为所述去重处理后的多个告警数据序列中的任一个告警数据序列。
基于上述方案,将多个告警序列集合分别进行去重处理,可以减少简化计算过程,减轻计算工作量。
在一种可能的实现方式中,针对多个告警数据序列分别进行去重处理,包括:对第一告警数据序列包括的发生时间连续且相同的告警数据进行去重处理,和/或;对第一告警数据序列包括的重复发生的序列进行去重处理。
在一种可能的实现方式中,所述方法还包括:根据第一告警数据序列遍历历史告警序列集合;其中,所述历史告警序列集合包括根据在获取所述告警数据流之前的设定时长内获取的告警数据流进行分组处理得到的N个告警数据序列,所述N为正整数;从所述历史告警序列集合中获取包括所述第一告警数据序列的M个告警数据序列,所述M为小于或者等于N的正整数;所述M个告警数据序列中除包括所述第一告警数据以外还包括至少一个发生在所述第一告警数据序列之后的目标告警数据;从M个告警数据序列包括的目标告警数据中确定与所述第一告警数据序列关联度最高的第一告警数据,将所述第一告警数据作为所述第一告警数据序列之后即将发生的告警数据;其中,第一告警数据与所述第一告警数据序列关联度是根据所述第一告警数据在所述M个告警数据序列中出现次数以及与所述第一告警数据序列之间的发生时间间隔确定。
基于上述方案,通过计算不同告警之间的关联性,可以预测发生第一告警序列后即将发生的下一个或者多个告警,并反馈给安全专家形成知识。
第二方面,本申请实施例提供了一种告警事件的确定装置,包括:
获取模块,用于获取告警数据流;
处理模块,用于从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;从已构建的告警事理图谱中获取多个规则序列;其中,所述告警事理图谱是根据安全专家的多个溯源分析报告进行分析得到的;所述告警事理图谱由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系;所述告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件。
所述处理模块,还用于将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
在一种可能的实现方式中,所述处理模块,在从所述告警数据流中获取待匹配的告警数据序列时,具体用于:
将所述告警数据流中的不同告警数据进行格式归一化;对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合;针对所述多个告警序列集合分别进行去重处理;从去重处理后的多个告警序列集合中获取所述待匹配的告警数据序列。
在一种可能的实现方式中,所述处理模块,在针对所述多个告警序列集合分别进行去重处理时,具体用于:
将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠;所述第一告警序列集合为所述多个告警序列集合中的任一个;针对多个告警数据序列分别进行去重处理;其中,所述待匹配的告警数据序列为所述去重处理后的多个告警数据序列中的任一个告警数据序列。
在一种可能的实现方式中,所述处理模块,在针对多个告警数据序列分别进行去重处理时,具体用于:对第一告警数据序列包括的发生时间连续且相同的告警数据进行去重处理,和/或;对第一告警数据序列包括的重复发生的序列进行去重处理。
在一种可能的实现方式中,所述处理模块,还用于:
根据第一告警数据序列遍历历史告警序列集合;
其中,所述历史告警序列集合包括根据在获取所述告警数据流之前的设定时长内获取的告警数据流进行分组处理得到的N个告警数据序列,所述N为正整数;从所述历史告警序列集合中获取包括所述第一告警数据序列的M个告警数据序列,所述M为小于或者等于N的正整数;所述M个告警数据序列中除包括所述第一告警数据以外还包括至少一个发生在所述第一告警数据序列之后的目标告警数据;从M个告警数据序列包括的目标告警数据中确定与所述第一告警数据序列关联度最高的第一告警数据,将所述第一告警数据作为所述第一告警数据序列之后即将发生的告警数据;其中,第一告警数据与所述第一告警数据序列关联度是根据所述第一告警数据在所述M个告警数据序列中出现次数以及与所述第一告警数据序列之间的发生时间间隔确定。
第三方面,本申请实施例提供了一种告警事件的确定装置,包括:存储器以及处理器;
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行第一方面或第一方面任一种可能实现方式中所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行第一方面以及第一方面任一种可能实现方式中所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,当该计算机程序或指令被计算机执行时,实现上述第一方面及第一方面中任一可能的实现方式中的方法。
另外,第二方面至第五方面中的任一种实现方式所带来的技术效果可参见第一方面不同的实现方式所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种告警事件的确定方法的***架构示意图;
图2为本申请实施例提供的一种告警事件的确定方法的流程示意图;
图3为本申请实施例提供的一种告警数据流的处理方法的流程示意图;
图4为本申请实施例提供的一种告警事件的确定装置的示意图;
图5为本申请实施例提供的另一种告警事件的确定装置的示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及附图中的术语“第一”和“第二”是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的保护。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请中的“多个”可以表示至少两个,例如可以是两个、三个或者更多个,本申请实施例不做限制。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。
安全设备可能每天会接收海量的告警数据,其中包含大量重复告警或误报。然而针对同一攻击事件,不同的设备产生的告警名称也会存在差异,导致告警之间相对分散,缺乏关联性。事实上大部分告警事件之间存在着一定的时序或者因果关系,因此需要将相对分散的告警过滤聚合到一起,对其进行告警关联分析,挖掘告警数据之间的关联关系,从而挖掘出真正的告警事件。本申请旨在建立告警数据之间的关联关系,通过对告警数据分析建立基于告警数据的事理图谱(Eventic Graph,EG),通过事理图谱中的告警数据之间的顺承、因果、条件和上下位等关系,确定告警数据对应的告警事件,并通过告警数据之间的关联关系,预测告警事件以及即将发生的告警等。
图1示例性地示出了本申请实施例所使用的一种***架构,该***架构可以包括一个或者多个服务器100,服务器100可以为主机或者各种电子设备。服务器100可以是安全设备,也可以是与安全设备相连接的设备。比如,服务器100为安全设备时,可以接收其它设备产生的告警数据。再比如,服务器100为与安全设备相连的设备时,接收各个安全设备收集的告警数据,进而对不同的安全设备产生的告警数据进行处理,判断产生告警数据的告警事件。安全设备包括但不限于以下任意一种或多种的组合:防火墙设备、入侵检测***、搭载有漏洞库的设备、搭载有杀毒软件的设备以及主机监控。
该服务器可以包括处理器110、通信接口120和存储器130。
以服务器100与多个安全设备相连接为例,通信接口120用于与不同安全设备进行通信,接收不同安全设备收集的告警数据流。
处理器110是服务器100的控制中心,利用各种接口和路线连接整个服务器100的各个部分,通过运行或执行存储在存储器130内的软件程序/或模块,以及调用存储在存储器130内的数据,执行服务器100的各种功能和处理数据。可选地,处理器110可以包括一个或多个处理单元。
存储器130可用于存储软件程序以及模块,处理器110通过运行存储在存储器130的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器130可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据业务处理所创建的数据等。此外,存储器130可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
需要说明的是,上述图1所示的结构仅是一种示例,本发明实施例对此不做限定。
本实施例提供了一种告警事件的确定方法,图2示例性的示出了告警事件的确定方法的流程,该方法可以由服务器100执行,也可以由服务器内的处理器110执行。后续描述时以服务器100来执行为例进行说明,为了便于描述,后续对服务器100的描述不再进行标示。
201,服务器获取告警数据流。
比如,服务器作为安全设备接收其它设备产生的告警数据流。再比如,服务器与多个安全设备相连接,可以从多个安全设备接收告警数据流。
其中,告警数据流中包括多个告警数据。告警数据包括但不限于以下属性信息:安全设备标识、告警名称(也可以称为告警标识)、告警生成时间、告警类型、源IP、源端口、目的IP、目的端口等。
202,服务器从告警数据流中获取待匹配的告警数据序列。
在一些实施例中,服务器可以对告警数据流进行预处理得到多个告警数据序列。多个告警数据序列中的每个告警数据序列都可以认为是一个待匹配的告警数据序列。
例如,预处理可以包括归一化、分组、去重过滤、压缩等中的一项或者多项。
归一化可以理解的不同格式的告警数据的格式归一化。一些场景中,不同的设备产生的同一告警的告警数据的格式可能存在差异。本申请实施例通过归一化处理,告警数据流包括的各个告警数据的格式进行统一,便于后续处理。
分组,可以是根据设定规则进行分组,比如来自同一个攻击源的告警数据划分到一组,又比如攻击同一目标设备的告警数据划分到一组等。
去重过滤,可以是对相同的告警数据进行去重处理,或者相同的告警序列进行去重处理,比如重复出现的告警序列{a1,a2,a3}。
压缩,可以按照时间段的方式,将告警数据流进行划分。203,服务器从已构建的告警事理图谱中获取多个规则序列。
在一些实施例中,服务器可以根据安全专家积累的溯源分析报告进行处理得到告警事理图谱。具体地,可以利用自然语言处理技术抽取出由多个告警数据构成的告警事件,根据告警数据发生的时序关系映射到事理图谱中,得到告警事理图谱。告警事理图谱可以由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系。比如,事理关系可以包括顺承、因果、条件或者上下位等关系。告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件。每个规则序列标识安全专家对某一告警事件的推理逻辑序列。告警事理图谱是分布式结构,可以灵活的添加节点和关系,进而更便于告警事理图谱的更新或者修改。
在一些实施例中,服务器可以根据告警数据序列在已构建的告警事理图谱中获取多个规则序列。比如,服务器可以根据待匹配的告警数据序列的第一个告警,遍历告警事理图谱,获取多个规则序列。其中,每个规则序列包含告警数据序列中的第一个告警。
204,服务器将告警数据序列与多个规则序列分别进行匹配,确定告警数据序列对应的告警事件。
一些实施例中,将该告警数据序列与多个规则序列分别进行匹配,并从多个规则序列中确定与告警数据序列匹配度最高的第一规则序列,并确定该告警数据序列对应的告警事件为第一规则序列对应的第一告警事件。
作为一种举例,在从多个规则序列中确定与告警数据序列匹配度最高的第一规则序列时,当确定告警数据序列与第一规则序列完全匹配时,确定该告警数据序列对应的告警事件为第一规则序列对应的第一告警事件,此后不再用告警数据序列与其它规则序列进行匹配。
作为另一种举例,当多个规则序列中没有与告警数据序列完全匹配的规则序列时,获取与告警数据序列相似度最高的规则序列。比如,当该告警数据序列与第一规则序列匹配后的相似度大于或等于相似阈值时,确定该告警数据序列对应的告警事件为第一规则序列对应的第二告警事件。
作为一种举例,可以根据待匹配的告警数据序列包含在第一规则序列中的告警数据的数量以及待匹配的告警数据序列包括的告警数据的数量来确定。比如,第一规则序列为<a_1a_2a_3>,待匹配的告警数据序列为<a_1a_4a_2a_3>,则该告警数据序列与第一规则序列的相似度为75%。当设置的相似阈值为60%时,该告警数据序列与第一规则序列的相似度大于相似阈值,则确定该告警数据序列对应的告警事件为第一规则序列对应的第二告警事件。
如下结合图3,对本申请实施例中,服务器对告警数据流中进行预处理获得多个告警数据序列的流程进行详细说明。参见图3所示,预处理的流程可以包括:
301,将所述告警数据流中的不同告警数据进行格式归一化。
需要说明的是,由于不同厂商生成的设备或者不同版本的设备所产生的告警名称和数据结构可能存在差异,即相同的告警可能采用不同的告警数据格式。例如“ssh登录”和“ssh登录认证”告警名称不同但所属的告警相同,因此服务器在接收到告警数据流后,可以对告警数据流中的不同告警数据进行格式归一化处理,获得同一格式的告警数据。比如,可以使用距离计算算法计算不同告警数据的告警名称之间的相似度,当告警名称的相似度大于或者等于设定阈值时,认为两个告警名称不同的告警数据属于同一告警,从而可以进行告警名称的统一,比如可以以其中一个告警数据的告警名称为基础对另一个告警数据的告警名称进行修改。即,将另一个告警数据的告警名称修改为与其中一个告警数据的告警名称相同的名称。例如距离计算算法可以采用Leven编辑距离计算算法。
302,对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合。
在一些实施例中,可以根据不同告警数据中相同的信息对告警数据流进行数据分组。告警数据中保存攻击的类型、源网络协议地址(Internet Protocol Address,以下简称IP地址)以及目的IP地址等信息。一些场景中,攻击者可以使用多个不同的源IP地址对某一目的IP地址发起攻击,因此可以根据告警数据中的目的IP地址对告警数据流进行分组,获得多个告警序列集合。另一些场景中,可以将攻击类型相同的告警数据划分为一组。当然还可以采用其它的方式进行分组,本申请实施例对此不作具体限定。
在一些实施例中,告警数据流中含有大量重复、乱序和错误告警,当直接使用重复告警数据时需要进行大量的计算,计算速度慢,且乱序和错误告警会为计算带来干扰。因此在使用告警数据与告警事理图谱中的规则序列进行匹配前,通过对告警数据流进行预处理,可以在去除重复和乱序等数据的影响的同时保留关键信息,获得待匹配的告警数据序列。
作为一种举例,在获取告警数据流后,当确定包括乱序告警时,可以根据时序关系进行重新排序,或者直接删除。当确定告警数据流中存在错误告警数据时,可以删除错误告警数据,以减少错误告警对确定告警事件的准确度的影响。对于乱序告警以及错误告警的具体处理方法,本申请实施例不作具体限定。
在一些场景中,在将多个告警序列集合进行去重处理之前,可以将告警序列集合按照时间间隔划分为多个告警短序列,其中告警短序列也可以称为告警数据序列。以第一告警序列集合为例,可以将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠。其中,时间间隔可以为一小时,一天或一周等等。此外,将告警序列集合划分为多个告警短序列时,也可以按照其它方式进行划分,此处不做限定。进一步地,在对第一告警序列集合进行去重处理时,可以理解为对该第一告警序列集合中的每个告警数据序列分别进行去重处理。在针对告警数据序列进行去重处理,可以去除连续重复发生的告警或者重复发生的告警序列。比如,以第一告警数据序列为例,可以对第一告警数据序列包括的发生时间连续且相同的告警数据进行去重处理。对第一告警数据序列包括的重复发生的序列进行去重处理。为了便于描述,将第一告警数据序列包括的序列称为子序列。作为一种举例,以第一告警数据序列为例,第一告警数据序列为<a_1a_1a_2a_2a_3a_3>,其中<a_1a_1>、<a_2a_2>、<a_3a_3>均为连续重复出现的告警数据,将<a_1a_1>、<a_2a_2>、<a_3a_3>中的连续重复出现的a_1、a_2以及a_3去除得到待匹配的告警数据序列<a_1a_2a_3>。
作为另一种举例,以第一告警数据序列为例,第一告警数据序列为<a_1a_2a_3a_1a_2a_3>,将连续重复出现的子序列<a_1a_2a_3>去除得到待匹配的告警数据序列<a_1a_2a_3>。
在另一些场景中,可以不对告警序列集合进行告警短序列划分。直接对各个告警序列集合进行去重处理得到各个告警数据序列。可以理解的是,对各个告警序列集合进行去重处理的的方法与上述对短序列进行去重处理的方法一致,此处不再赘述。
经过上述告警数据流处理,可以将告警数据流转化为多个告警数据序列的非重复集合,其中每个告警数据序列带有目的IP地址以及时间戳,可以表示为<IP,起始时间,结束时间,告警序列>。其中,起始时间为告警数据序列中第一个告警节点的发生时间,结束时间为告警数据序列中最后一个告警节点的发生时间。根据告警数据序列与告警事理图谱生成的规则序列进行匹配。一些实施例中,可以根据待匹配的告警数据序列中的告警序列的起始时间与结束时间的时间间隔以及告警序列遍历告警事理图谱,生成多个规则序列。比如,生成的规则序列中包括的多个告警数据之间的最大时间间隔不大于待匹配的告警数据序列中的告警序列的起始时间与结束时间的时间间隔。
作为一种举例,可以根据告警数据序列中的第一个告警在告警事理图谱中生成以第一个告警为起点的多个规则序列,然后将告警数据序列与规则序列进行匹配,将匹配度最高的规则序列称为第四规则序列,则告警数据对应的告警事件为第四规则序列对应的告警事件。比如,告警数据序列中的告警序列为<b_1b_2b_3>,则以b_1为起点,在告警事理图谱中生成以b_1为起点的多个规则序列,然后在多个规则序列中确定与告警序列<b_1b_2b_3>匹配度最高的规则序列,则该规则序列对应的告警事件即为告警数据对应的告警事件。
从告警事理图谱中可以直观地获取告警之间的因果或顺承关系,如“webshell脚本上传”和“webshell后门访问控制”之间存在着时序关系。但是告警事理图谱中的告警以及关系数量相对较少,不足以统计出告警之间的关联关系。因此,可以对历史告警数据流进行分析获得多个历史告警序列集合,从历史告警数列集合中得到计算告警序列集合中不同告警之间的关联度,通过关联度预测某一告警或者告警数据序列的后续告警。关联度可以根据不同告警数据在告警数据序列中出现次数以及与告警数据序列之间的发生时间间隔确定。
在一些实施例中,可以先根据第一告警数据序列遍历历史告警序列集合,其中,历史告警序列集合包括根据在获取告警数据流之前的设定时长内获取的告警数据流进行分组处理得到的N个告警数据序列,N为正整数。然后从历史告警序列集合中获取包括第一告警数据序列的M个告警数据序列,M为小于或者等于N的正整数。在M个告警数据序列中除包括第一告警数据以外还包括至少一个发生在第一告警数据序列之后的目标告警数据。从M个告警数据序列包括的目标告警数据中确定与第一告警数据序列关联度最高的第一告警数据,将第一告警数据作为第一告警数据序列之后即将发生的告警数据。其中,第一告警数据与所述第一告警数据序列关联度是根据第一告警数据在M个告警数据序列中出现次数以及与第一告警数据序列之间的发生时间间隔确定。
作为一种举例,首先根据第一告警数据序列发生之前的设定时长内的告警数据流进行分组处理得到历史告警序列集合,根据第一告警数据序列遍历历史告警序列集合,获得包含第一告警数据序列的多个告警数据序列。比如,第一告警数据序列为<b_1b_2b_3>,历史告警数据进行分组处理后获得200个告警数据序列。然后从历史告警序列集合中根据指定时间间隔确定包括<b_1b_2b_3>在内的多个告警数据序列,假设获得在指定时间间隔以内的100个包括第一告警数据序列的告警数据序列。在通过关联度确定第一告警数据时,具体可以根据目标告警数据与第一告警数据序列之间的时间间隔的关联分数以及出现的次数的权重确定。目标告警数据与第一告警数据序列之间的间隔越大,器关联分数越小。比如,100个包括第一告警数据序列的告警数据序列中包括30个<b_1b_2b_3b_4b_5b_6>、10个<b_1b_2b_3b_7b_4b_3>、15个<b_1b_2b_3b_4b_7b_6>、20个<b_1b_2b_3b_4b_7b_5>以及25个<b_1b_2b_3b_5b_4b_6>。分别计算b_4、b_5、b_6以及b_7与<b_1b_2b_3>的关联度。以b_4为例,在<b_1b_2b_3b_4b_5b_6>中b_4作为<b_1b_2b_3>序列的下一个告警数据,因此b_4与<b_1b_2b_3>之间的关联分数为1,出现的次数的权重为<b_1b_2b_3b_4b_5b_6>在100个目标告警序列中的比例,即<b_1b_2b_3b_7b_4b_3>中b_4与<b_1b_2b_3>之间还有一个b_5,因此b_4与<b_1b_2b_3>的间隔变大,对应的关联分数变小。在此告警数据序列中,b_4与<b_1b_2b_3>关联分数为权重为以此类推,b_4与<b_1b_2b_3>之间的关联度为:基于相同的算法,b_5与<b_1b_2b_3>的关联度为b_6与<b_1b_2b_3>的关联度为b_7与<b_1b_2b_3>的关联度为在b_4、b_5、b_6以及b_7中,b_4与<b_1b_2b_3>之间的关联度最高,则将b_4作为发生第一告警数据序列后即将发生的下一个告警数据。
在一些实施例中,服务器可以对告警事理图谱中告警事件的规则序列进行更新。示例性地,在将告警序列集合与规则序列进行匹配后,可以计算告警序列集合中不同告警之间的关联关系,通过关联关系预测某一告警或者告警序列的后续告警,并在事理图谱中更新该告警事件的规则序列。
作为一种举例,以第一告警序列集合为例,获取第一告警序列集合包括的多个目标告警序列,每个目标告警序列包括第一规则序列;当多个目标告警序列中第一目标告警序列在第一告警序列集合中产生次数高于其它任一目标告警序列的产生次数时,根据第一目标告警序列更新第一告警事件对应的规则序列。例如,以第一告警序列集合包括M个目标告警序列为例。分别确定不同目标告警序列在第一告警序列集合中产生的次数,然后将产生次数最高的目标告警序列更新为第一告警事件对应的规则序列。
比如,第一告警序列集合包括四种不同的告警数据序列,分别为<a_1a_2a_3a_4>、<a_1a_2a_3a_5>、<a_1a_2a_3a_6>、<a_1a_2a_3a_7>,第一告警事件对应的规则序列为<a_1a_2a_3>。计算四种告警数据序列在第一告警序列集合中出现的次数,比如<a_1a_2a_3a_4>出现的次数为20次,<a_1a_2a_3a_5>出现的次数为10次,<a_1a_2a_3a_6>出现的次数为15次,<a_1a_2a_3a_7>出现的次数为50次。可以将出现次数较高的告警数据序列<a_1a_2a_3a_7>作为第一告警事件对应的规则序列,在告警事理图谱中将第一告警事件对应的规则序列更新为<a_1a_2a_3a_7>。可以理解的是,当出现告警数据序列<a_1a_2a_3>时,可以根据告警事理图谱预测下一步的告警数据可能为告警数据a_7。
本申请实施例通过上述方案,可以解决告警事理图谱中告警名称对应的节点和关系数量相对较少、生成规则序列时数量较少、不足以全面的统计告警之间的关联关系等问题。通过计算不同告警之间的关联度,可以预测告警序列的后续告警数据,从而挖据出潜在的告警。通过实时更新告警事理图谱中的规则序列,使告警事理图谱中不同告警之间的关联关系更全面,在通过告警事理图谱确定告警数据对应的告警事件时更加准确。
基于相同的技术构思,图4示例性的示出了本申请实施例提供了一种告警事件的确定装置400,该装置可以执行图2或图3所示的方法流程。
参见图4所示,该装置具体包括:获取模块401和处理模块402。
所述获取模块401,用于获取告警数据流;
所述处理模块402,用于从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;从已构建的告警事理图谱中获取多个规则序列;其中,所述告警事理图谱是根据安全专家的多个溯源分析报告进行分析得到的;所述告警事理图谱由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系;所述告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件;将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
在一些实施例中,所述处理模块402,在从所述告警数据流中获取待匹配的告警数据序列时,具体用于:
将所述告警数据流中的不同告警数据进行格式归一化;
对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合;
针对所述多个告警序列集合分别进行去重处理;
从去重处理后的多个告警序列集合中获取所述待匹配的告警数据序列。
在一些实施例中,所述处理模块402,在针对所述多个告警序列集合分别进行去重处理时,具体用于:
将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠;所述第一告警序列集合为所述多个告警序列集合中的任一个;
针对多个告警数据序列分别进行去重处理;
其中,所述待匹配的告警数据序列为所述去重处理后的多个告警数据序列中的任一个告警数据序列。
在一些实施例中,所述处理模块402,在针对多个告警数据序列分别进行去重处理时,具体用于:
对第一告警数据序列包括的发生时间连续且相同的告警数据进行去重处理,和/或;对第一告警数据序列包括的重复发生的序列进行去重处理。
在一些实施例中,所述处理模块402,还用于根据第一告警数据序列遍历历史告警序列集合;其中,所述历史告警序列集合包括根据在获取所述告警数据流之前的设定时长内获取的告警数据流进行分组处理得到的N个告警数据序列,所述N为正整数;从所述历史告警序列集合中获取包括所述第一告警数据序列的M个告警数据序列,所述M为小于或者等于N的正整数;所述M个告警数据序列中除包括所述第一告警数据以外还包括至少一个发生在所述第一告警数据序列之后的目标告警数据;从M个告警数据序列包括的目标告警数据中确定与所述第一告警数据序列关联度最高的第一告警数据,将所述第一告警数据作为所述第一告警数据序列之后即将发生的告警数据;其中,第一告警数据与所述第一告警数据序列关联度是根据所述第一告警数据在所述M个告警数据序列中出现次数以及与所述第一告警数据序列之间的发生时间间隔确定。
基于相同的技术构思,本申请实施例还提供了一种告警事件的确定装置500,如图5所示,包括:
存储器501,用于存储程序指令;
处理器502,用于调用存储器中存储的程序指令,按照获得的程序执行上述告警事件的确定方法。
在本申请实施例中,处理器501可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种告警事件的确定方法,其特征在于,包括:
获取告警数据流;
从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;
从已构建的告警事理图谱中获取多个规则序列;
其中,所述告警事理图谱是根据安全专家的多个溯源分析报告进行分析得到的;所述告警事理图谱由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系;所述告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件;
将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;
确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
2.如权利要求1所述的方法,其特征在于,所述从所述告警数据流中获取待匹配的告警数据序列,包括:
将所述告警数据流中的不同告警数据进行格式归一化;
对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合;
针对所述多个告警序列集合分别进行去重处理;
从去重处理后的多个告警序列集合中获取所述待匹配的告警数据序列。
3.如权利要求2所述的方法,其特征在于,所述针对所述多个告警序列集合分别进行去重处理,包括:
将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠;所述第一告警序列集合为所述多个告警序列集合中的任一个;
针对多个告警数据序列分别进行去重处理;
其中,所述待匹配的告警数据序列为所述去重处理后的多个告警数据序列中的任一个告警数据序列。
4.如权利要求3所述的方法,其特征在于,所述针对多个告警数据序列分别进行去重处理,包括:
对第一告警数据序列包括的发生时间连续且相同的告警数据进行去重处理,和/或;
对第一告警数据序列包括的重复发生的序列进行去重处理。
5.如权利要求2-4任一项所述的方法,其特征在于,所述方法还包括:
根据第一告警数据序列遍历历史告警序列集合;
其中,所述历史告警序列集合包括根据在获取所述告警数据流之前的设定时长内获取的告警数据流进行分组处理得到的N个告警数据序列,所述N为正整数;
从所述历史告警序列集合中获取包括所述第一告警数据序列的M个告警数据序列,所述M为小于或者等于N的正整数;所述M个告警数据序列中除包括所述第一告警数据以外还包括至少一个发生在所述第一告警数据序列之后的目标告警数据;
从M个告警数据序列包括的目标告警数据中确定与所述第一告警数据序列关联度最高的第一告警数据,将所述第一告警数据作为所述第一告警数据序列之后即将发生的告警数据;
其中,第一告警数据与所述第一告警数据序列关联度是根据所述第一告警数据在所述M个告警数据序列中出现次数以及与所述第一告警数据序列之间的发生时间间隔确定。
6.一种告警事件的确定装置,其特征在于,包括:
获取模块,用于获取告警数据流;
处理模块,用于从所述告警数据流中获取待匹配的告警数据序列,所述告警数据序列是由多个告警数据按照时间顺序排列得到的;从已构建的告警事理图谱中获取多个规则序列;其中,所述告警事理图谱是根据安全专家的多个溯源分析报告进行分析得到的;所述告警事理图谱由多个节点以及节点之间的有向边组成,每个节点表示告警名称,有向边表示告警名称所标识的告警之间的事理关系;所述告警事理图谱中至少两个节点构成具有时序关系的规则序列,每个规则序列对应一种告警事件;
所述处理模块,还用于将所述告警数据序列与所述多个规则序列分别进行匹配,并从所述多个规则序列中确定与告警数据序列匹配度最高的第一规则序列;确定所述告警数据序列对应的告警事件为所述第一规则序列对应的第一告警事件。
7.如权利要求6所述的装置,其特征在于,所述处理模块,在从所述告警数据流中获取待匹配的告警数据序列时,具体用于:
将所述告警数据流中的不同告警数据进行格式归一化;
对经过格式归一化的告警数据流包括的告警数据进行数据分组获得多个告警序列集合;
针对所述多个告警序列集合分别进行去重处理;
从去重处理后的多个告警序列集合中获取所述待匹配的告警数据序列。
8.如权利要求7所述的装置,其特征在于,所述处理模块,在针对所述多个告警序列集合分别进行去重处理时,具体用于:
将第一告警序列集合按照设定时间间隔划分为多个告警数据序列,任两个告警数据序列包括的告警数据的发生时间范围不重叠;所述第一告警序列集合为所述多个告警序列集合中的任一个;
针对多个告警数据序列分别进行去重处理;
其中,所述待匹配的告警数据序列为所述去重处理后的多个告警数据序列中的任一个告警数据序列。
9.一种告警事件的确定装置,其特征在于,包括:
存储器以及处理器;
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1~5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1~5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111267950.7A CN113987492A (zh) | 2021-10-29 | 2021-10-29 | 一种告警事件的确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111267950.7A CN113987492A (zh) | 2021-10-29 | 2021-10-29 | 一种告警事件的确定方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113987492A true CN113987492A (zh) | 2022-01-28 |
Family
ID=79744025
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111267950.7A Pending CN113987492A (zh) | 2021-10-29 | 2021-10-29 | 一种告警事件的确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113987492A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114553669A (zh) * | 2022-02-17 | 2022-05-27 | 支付宝(杭州)信息技术有限公司 | 一种变更事件的识别方法、装置以及设备 |
CN114944956A (zh) * | 2022-05-27 | 2022-08-26 | 深信服科技股份有限公司 | 一种攻击链路检测方法、装置、电子设备及存储介质 |
CN115001753A (zh) * | 2022-05-11 | 2022-09-02 | 绿盟科技集团股份有限公司 | 一种关联告警的分析方法、装置、电子设备及存储介质 |
-
2021
- 2021-10-29 CN CN202111267950.7A patent/CN113987492A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114553669A (zh) * | 2022-02-17 | 2022-05-27 | 支付宝(杭州)信息技术有限公司 | 一种变更事件的识别方法、装置以及设备 |
CN115001753A (zh) * | 2022-05-11 | 2022-09-02 | 绿盟科技集团股份有限公司 | 一种关联告警的分析方法、装置、电子设备及存储介质 |
CN115001753B (zh) * | 2022-05-11 | 2023-06-09 | 绿盟科技集团股份有限公司 | 一种关联告警的分析方法、装置、电子设备及存储介质 |
CN114944956A (zh) * | 2022-05-27 | 2022-08-26 | 深信服科技股份有限公司 | 一种攻击链路检测方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11522882B2 (en) | Detection of adversary lateral movement in multi-domain IIOT environments | |
Liu et al. | Host-based intrusion detection system with system calls: Review and future trends | |
US9736173B2 (en) | Differential dependency tracking for attack forensics | |
EP3107026B1 (en) | Event anomaly analysis and prediction | |
CN113987492A (zh) | 一种告警事件的确定方法及装置 | |
US20220263860A1 (en) | Advanced cybersecurity threat hunting using behavioral and deep analytics | |
US10409980B2 (en) | Real-time representation of security-relevant system state | |
US11159564B2 (en) | Detecting zero-day attacks with unknown signatures via mining correlation in behavioral change of entities over time | |
US11449604B2 (en) | Computer security | |
WO2019084072A1 (en) | GRAPHIC MODEL FOR ALERT INTERPRETATION IN AN ENTERPRISE SECURITY SYSTEM | |
CN104871171B (zh) | 分布式模式发现 | |
Landauer et al. | Time series analysis: unsupervised anomaly detection beyond outlier detection | |
CN111294233A (zh) | 网络告警统计分析方法、***及计算机可读存储介质 | |
US11989161B2 (en) | Generating readable, compressed event trace logs from raw event trace logs | |
CN115001753A (zh) | 一种关联告警的分析方法、装置、电子设备及存储介质 | |
US11436320B2 (en) | Adaptive computer security | |
CN112241439A (zh) | 一种攻击组织发现方法、装置、介质和设备 | |
US11477225B2 (en) | Pre-emptive computer security | |
CN108733543B (zh) | 一种日志分析的方法、装置、电子设备和可读存储介质 | |
CN112287339A (zh) | Apt入侵检测方法、装置以及计算机设备 | |
CN113746780B (zh) | 基于主机画像的异常主机检测方法、装置、介质和设备 | |
CN108351940B (zh) | 用于信息安全事件的高频启发式数据获取与分析的***和方法 | |
CN116361153A (zh) | 固件代码的测试方法、装置、电子设备、存储介质 | |
CN115065558A (zh) | Apt攻击的攻击流程溯源方法及装置 | |
CN117391214A (zh) | 模型训练方法、装置及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |