事件异常检测方法、装置、可读存储介质和计算机设备与流程

文档序号:19632031发布日期:2020-01-07 11:35阅读:117来源:国知局
事件异常检测方法、装置、可读存储介质和计算机设备与流程

本申请涉及信息安全技术领域,特别是涉及一种事件异常检测方法、装置、计算机可读存储介质和计算机设备。



背景技术:

随着信息安全技术的发展,越来越多的系统通过soc(securityoperationscenter,安全管理中心)平台收集产生的事件并形成安全日志,通过对安全日志进行分析,可以得到安全日志中存在异常的事件,并发出告警信息。目前,较为常用的分析方式是通过神经网络对安全日志中包含的事件进行异常检测处理,根据得到的异常检测结果可以确定安全日志中存在异常的事件,然而,目前的分析方法难以确定事件异常的原因。



技术实现要素:

基于此,有必要针对无法确定事件异常原因的技术问题,提供一种事件异常检测方法、装置、计算机可读存储介质和计算机设备。

一种事件异常检测方法,包括:

对事件日志进行划分,得到候选事件序列;

从所述候选事件序列中获取异常事件序列;

获取预设的特征在所述异常事件序列中对应的特征值;

根据所述特征对应的特征值确定所述特征对应的权重值,所述权重值用于表示所述特征在所述异常事件序列中的异常程度;

根据各个所述特征对应的权重值确定所述异常事件序列对应的异常特征。

一种事件异常检测装置,所述装置包括:

事件划分模块,用于对事件日志进行划分,得到候选事件序列;

异常序列获取模块,用于从所述候选事件序列中获取异常事件序列;

特征值获取模块,用于获取预设的特征在所述异常事件序列中对应的特征值;

权重值确定模块,用于根据所述特征对应的特征值确定所述特征对应的权重值,所述权重值用于表示所述特征在所述异常事件序列中的异常程度;

异常特征确定模块,用于根据各个所述特征对应的权重值确定所述异常事件序列对应的异常特征。

一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:

对事件日志进行划分,得到候选事件序列;

从所述候选事件序列中获取异常事件序列;

获取预设的特征在所述异常事件序列中对应的特征值;

根据所述特征对应的特征值确定所述特征对应的权重值,所述权重值用于表示所述特征在所述异常事件序列中的异常程度;

根据各个所述特征对应的权重值确定所述异常事件序列对应的异常特征。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:

对事件日志进行划分,得到候选事件序列;

从所述候选事件序列中获取异常事件序列;

获取预设的特征在所述异常事件序列中对应的特征值;

根据所述特征对应的特征值确定所述特征对应的权重值,所述权重值用于表示所述特征在所述异常事件序列中的异常程度;

根据各个所述特征对应的权重值确定所述异常事件序列对应的异常特征。

上述事件异常检测方法、装置、计算机可读存储介质和计算机设备,可以对事件日志进行划分,得到候选事件序列,从候选事件序列中确定异常事件序列,并获取预设的特征在异常事件序列中的特征值,将各个特征的特征值转换为权重值,根据权重值确定异常事件序列的异常特征,即可以监控系统运行所产生的异常事件,并在确定异常事件序列的同时确定异常事件序列的异常原因,具备较高的解释性。

附图说明

图1为一个实施例中事件异常检测方法的应用环境图;

图2为一个实施例中事件异常检测方法的流程示意图;

图3为一个实施例划分事件日志的流程图;

图4为一个实施例中对候选事件序列进行异常检测的示意图;

图5为一个实施例中展示异常事件序列对应的异常特征的流程图;

图6为一个实施例中频率分布图的示意图;

图7为一个实施例中事件异常检测方法的展示界面的示意图;

图8为一个实施例中事件异常检测方法的应用场景示意图;

图9为一个实施例中事件异常检测装置的示意图;

图10为另一个实施例中事件异常检测装置的示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

图1为一个实施例中事件异常检测方法的应用环境图。如图1所示,该事件异常检测方法应用于一种计算机设备。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器执行本申请提供的事件异常检测方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行本申请提供的事件异常检测方法。在一些实施例中,该计算机设备还可以包括显示屏、输入装置等。

该计算机设备可以是终端或服务器。终端可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器可以是独立的服务器或者是多个服务器组成的服务器集群来实现。

如图2所示,在一个实施例中,提供了一种事件异常检测方法。本实施例主要以该方法应用于上述图1中的计算机设备来举例说明。参照图2,该事件异常检测方法具体包括如下步骤:

s202,对事件日志进行划分,得到候选事件序列。

事件日志是用于记录系统在运行时发生的事件的文件。具体地,事件日志可以包括通过soc平台记录的存在安全隐患的事件。事件用于表征对系统进行操作或访问的相关信息。事件可以包括源ip(internetprotocoladdress,网际协议地址)、目的ip、端口、攻击方法等信息。候选事件序列是对事件日志中包含的事件进行划分后得到的事件序列。

具体地,计算机设备可以按照预设规则对事件日志进行划分,得到候选事件序列。预设规则可以根据实际的划分需求设定,在此不做设定。例如,计算机设备可以根据事件日志中包含的各个事件的发生时间对事件日志进行划分,即将同一时段发生的事件划分在同一候选事件序列中。可选地,各个候选事件序列之间可以存在有相同的事件。

在一个实施例中,计算机设备可以获取预设时间内生成的事件日志,对事件日志进行划分以得到候选事件序列。其中,预设时间可以根据实际运营需求进行设定,在此不做限定。例如,预设时间可以是5小时、12小时、1天、2天等。

s204,从候选事件序列中获取异常事件序列。

异常事件序列是指从事件日志划分得到的一个或多个候选事件序列中存在异常的序列。

具体地,计算机设备可以通过异常检测算法对每一个候选事件序列进行异常检测,根据异常检测的结果确定异常事件序列。计算机设备可采用的异常检测算法可以不限于是ellipticenvelope(基于高斯概率密度的异常点检测)、one-classsvm(一分类向量机)、isolationforest(基于集成学习方法异常点检测)、localoutlierfactor(基于密度的局部异常因子)、mahalanobisdistance(马氏距离)等中一种或多种。

通常,异常检测算法根据输入的候选事件序列进行异常检测之后,可以输出候选事件序列对应的异常分数值,根据实际需要,计算机设备可以将异常分数值高于阈值的候选事件序列确定为异常事件序列。可选地,计算机设备采用多种异常检测算法对候选事件序列进行异常检测时,可以根据每一个异常检测算法输出的分值确定候选事件序列的异常分数值,根据该异常分数值确定候选事件序列是否为异常事件序列。

在一个实施例中,计算机设备可以获取每一个候选事件序列中包含的事件个数,当该事件个数超过数量阈值时,则对该候选事件序列进行异常检测,以确定该候选事件序列是否为异常事件序列;当该事件个数不超过数量阈值时,则认为该候选事件序列没有异常,不进行异常检测。其中,数量阈值可以按照非异常情况下,预设时段内所包含的事件个数来确定,在此不做限定。

s206,获取预设的特征在异常事件序列中对应的特征值。

特征是基于事件序列包含的共有属性确定的,用于表征事件序列的特性。特征值是事件序列中该特征对应的具体数值。具体地,计算机设备预设的特征可以是基于ip、端口、攻击方法、事件个数、数据源种类等相关的特征。例如,基于ip的特征可以包括:常见ip个数、不常见ip个数、ip种类、ip频率、ip属于高频的个数等;基于端口的特征可以包括:目的端口种类、常见端口个数、不常见端口个数、web(worldwideweb,万维网)相关端口个数、敏感业务端口个数等;基于攻击方法的特征可以包括:攻击方法种类、高频攻击方法个数等,在此不做限定。计算机设备可以根据实际需要预设上述特征中的一个或多个。

其中,常见ip和不常见ip可以根据事件日志中同一ip的出现频次来确定,计算机设备可以预先分析事件日志中不同的ip的出现频次,根据不同的ip的出现频次将不同的ip划分为常用ip和不常见ip。可以理解的是,常用ip的出现频次高于不常见ip的出现频次。常见端口、不常见端口、web相关端口、敏感业务端口等可以由计算机设备预先设定。例如,常见端口是指在网络操作中出现频次较高的端口,如http(hypertexttransferprotocol,超文本传输协议)端口,tcp(transmissioncontrolprotocol,传输控制协议)端口,ftp(filetransferprotocol,文件传输协议)端口,在此不做限定。

计算机设备获取预设的特征在异常事件序列中对应的特征值。具体地,计算设备可以从异常事件序列中包含的各个事件提取与特征相关的信息,根据提取的特征相关的信息统计得到对应的特征值。例如,当特征为常用端口个数时,计算机设备可以获取异常事件序列中的采用的端口为常用端口的事件,将采用的端口为常用端口的数量确定为常用端口个数。

s208,根据特征对应的特征值确定特征对应的权重值,权重值用于表示特征在异常事件序列中的异常程度。

权重值用表示特征在异常事件序列中的异常程度。也就是说,特征的权重值越高,则说明该特征造成事件序列异常的影响程度越大;特征的权重值越低,则说明该特征对事件序列异常的影响程度越低。

计算机设备可以根据特征对应的特征值确定特征所对应权重值。具体地,计算机设备可以获取与该特征相对应的转换系数,根据该转换系数将特征值转环为对应的权重值。可选地,计算机设备可以将转换的权重值进行归一化处理,得到归一化处理后的权重值作为特征对应权重值。其中,转换系数可以通过分析该事件日志中包含的各个候选事件序列所对应的特征值来确定。

在一个实施例中,特征的权重值可以通过训练的算法模型来实现。具体地,计算机设备可以将候选事件序列对应的各个特征的特征值输入训练的算法模型中,获取训练的算法模型输出的各个特征对应的权重值。训练的算法模型可以根据大量标记了特征对应的权重值的事件序列进行训练,训练完成的算法模型可以根据输出特征值输出该特征对应的权重值。

s210,根据各个特征对应的权重值确定异常事件序列对应的异常特征。

异常特征可以表示异常事件序列的异常原因。计算机设备根据各个特征对应的权重值确定异常事件序列对应的异常特征,具体地,计算机设备可以预设有权重阈值,将权重值高于权重阈值的特征确定为异常特征;计算机设备也可以根据权重值的大小,将权重值最大的一个或多个特征确定为异常特征等。

在一个实施例中,计算机设备根据各个特征对应的权重值确定异常事件序列对应的异常特征之后,可以输出该异常事件序列及对应的异常特征。可选地,计算机设备还可以输出该异常特征对应的特征值。具体地,计算机设备可以获取与异常特征对应的输出模板,按照输出模板展示对应的异常特征。

上述事件异常检测方法,可以对事件日志进行划分得到候选事件序列,从候选事件序列中获取异常事件序列,并获取预设的特征在异常事件序列中的特征值,根据特征值确定对应的权重值,根据各个特征对应的权重值确定异常事件序列对应的异常特征。由于可以在确定异常事件序列之后,将异常事件序列中各个特征的特征值转换为权重值,根据权重值确定异常事件序列的异常特征,即可以给出异常事件序列的异常原因,具备较高的解释性,方便后续的系统维护,并且,基于事件序列级别的异常检测,可以提高异常检测的准确性。

图3为一个实施例划分事件日志的流程图。如图3所示,在一个实施例中,提供的事件异常检测方法中步骤s202可以包括:

s302,将事件日志中包含的事件按照发生时刻进行排序。

事件的发生时刻包括源ip的发生时刻和目的ip的发生时刻。其中,源ip的发生时刻是指该源ip生成该事件的时间;目的ip的发生时刻是指目的ip接收到该事件的时间。计算机设备可以按照源ip的发生时刻或目标ip的发生时刻对事件日志中包含的事件进行排序。

s304,在排序后的事件日志中,每相隔预设时长则将预设时段内的事件划分为一个候选事件序列。

预设时长是指相邻两个候选事件序列的最小发生时刻之间的时长。预设时段是指候选事件序列中包含的事件的最大发生时刻与最小发生时刻之间的时间间隔。预设时长和预设时段可以根据事件序列包含的事件数量、或事件日志的时长等结合实际需要进行设定,在此不做限定。

具体地,计算机设备可以排序的事件日志中,以最小发生时刻为起点,获取从最小发生时刻开始在预设时段内的事件生成一候选事件序列;进而将当前的最小发生时刻增加预设时长,得到新的最小发生时刻之后,将从新的最小发生时刻开始在预设时段内的事件生成另一候选事件序列,直至将事件日志中包含的事件划分完成。例如,当事件日志包含0:00-12:00之间发生的事件时,若预设时长为2小时,预设时段为4小时,则可以分别将0:00-4:00、2:00-6:00、4:00-8:00、6:00-10:00、8:00-12:00各个时段内的事件划分为一个候选事件序列。

通过将事件日志中包含的事件按照发生时刻进行排序,在排序后的事件日志中,每相隔预设时长则将预设时段内的事件划分为一个候选事件序列,可以得到该事件日志对应多个候选事件序列。

可选地,在一些实施例中,预设时段所对应的时长大于预设时长。计算机设备按照预设时段和预设时长划分的多个候选事件序列中,相邻的候选事件序列存在相同的事件。从而可以提高事件序列对事件日志的覆盖度,避免出现部分划分的候选事件序列不够准确,导致异常检测结果准确性较低的问题,可以提高异常检测的准确性。

在一个实施例中,提供的异常事件检测方法中步骤s204包括:对候选事件序列进行异常检测,得到候选事件序列对应的异常分数值;根据各个候选事件序列对应的异常分数值确定各个候选事件序列中的异常事件序列。

具体地,计算机设备可以将事件日志划分得到的多个候选事件序列作为样本数据,通过异常检测模型对各个样本数据进行分类决策,从而确定多个候选事件序列中存在不平衡数据或异常点的异常事件序列。

其中,异常检测模型可以采用ellipticenvelope、one-classsvm、isolationforest、localoutlierfactor、mahalanobisdistance等异常检测算法中的任一个来实现。异常分数值可以表示候选事件序列的异常得分。即异常分数值越高,则候选事件序列存在异常的可信度越高;异常分数值越低,则候选事件序列存在异常的可信度越低。

计算机设备根据各个候选事件序列对应的异常分数值确定各个候选事件序列中的异常事件序列,可选地,计算机设备可以将异常分数值超过分数阈值的候选事件序列确定为异常事件序列;计算机设备也可以获取异常分数值最大的第一数量个候选事件序列作为异常事件序列;计算机设备还可以获取异常分数值超过分数阈值的候选事件序列的个数,当该个数小于或等于第一数量时,则将异常分数值超过分数阈值的候选事件序列确定为异常事件序列,当该个数大于第一数量时,则获取异常分数值最大的第一数量个候选事件序列作为异常事件序列等。其中,第一数量可以是5个、10个、15个、20个等,分数阈值可以是满分分数值的70%、75%、80%、90%等在此不做限定。

在一个实施例中,以采用isolationforest算法作为异常检测模型为例进行说明,计算机设备可以通过森林模型包含的多个决策树根据各候选事件序列中特征对应的特征值进行分类决策,直至分类决策后每一个决策树的深度达到限定阈值或者候选事件序列只剩下一个,通过计算每一个候选事件序列在每一个决策树上的平均深度,可以确定该候选事件序列对应的异常分数值。其中,平均深度越小,则对应异常分数值越大;反之,平均深度越高。则对应的异常分数值越小,候选事件序列异常的可能性越底。

在另一个实施例中,可以采用oneclasssvm算法对候选事件序列进行异常检测,oneclasssvm算法可以通过函数将每一个候选事件序列中各个特征对应的特征值映射到高维空间,在高维空间根据每一个候选事件序列对应的各个特征对应特征值进行学习生成一个分类器,该分类器可以将输入的多个候选事件序列按照和原点划分在分类器的两侧,并使得分类器可以远离原点,从而可以检测出存在不平衡数据和异常值的候选事件序列。

通过对候选事件序列进行异常检测,得到候选事件序列对应的异常分数值,根据各个候选事件序列对应的异常分数值确定各个候选事件序列中的异常事件序列,即可以基于事件序列级别进行异常检测,可以提高异常检测的准确性。

在一个实施例中,提供的事件异常检测方法中对候选事件序列进行异常检测,得到候选事件序列对应的异常分数值的过程,还包括:通过至少两个异常检测模型分别对候选事件序列进行异常检测,得到对应的至少两个候选分数值;根据至少两个候选分数值确定候选事件序列对应的异常分数值。

可选地,计算机设备可以采用ellipticenvelope、one-classsvm、isolationforest、localoutlierfactor、mahalanobisdistance等异常检测算法中的至少两个算法分别构建对应的异常检测模型,通过至少两个异常检测模型分别对候选事件序列进行异常检测,可以得到每一个候选事件序列对应的至少两个候选分数值,根据至少两个候选分数值确定候选事件序列对应的异常分数值。可选地,计算机设备可以获取候选事件序列对应的至少两个候选分数值中最大的候选分数值作为异常分数值;也可以将至少两个候选分数值相加的和作为候选事件序列的异常分数值等。

在一个实施例中,计算机设备还可以通过集成学习(ensemblelearning)模型对每一个候选事件序列对应的至少两个候选分数值进行结合,得到每一个候选事件序列对应的异常分数值。具体地,集成学习模型是指将多种检测模型的结果组合成一个预设模型的元算法,可以达到减小方差、偏差或改进预测的效果。

图4为一个实施例中对候选事件序列进行异常检测的示意图。如图4所示,计算机设备可以获取候选事件序列包含的各个特征的特征值,通过4个异常检测模型如ellipticenvelope、one-classsvm、isolationforest、localoutlierfactor对候选事件序列进行异常检测,将异常检测结果输入集成学习模型,由集成学习模型输出各个候选事件序列对应的异常分数值。

通过至少两个异常检测模型分别候选事件序列进行异常检测,得到对应的至少两个候选分数值,根据至少两个候选分数值确定候选事件序列对应的异常分数值,可以提高异常分数值的准确性,即可以提高检测的异常事件序列的准确性。

在一个实施例中,提供的事件异常检测方法还包括:展示异常事件序列及对应的异常分数值;当接收到对展示的异常事件序列的触发操作时,展示触发操作针对的异常事件序列所对应的异常特征。

计算机设备在确定异常事件序列对应的异常分数值之后,可以展示异常事件序列对应的异常分数值。可选地,计算机设备可以接对异常事件的拉取指令,根据该拉取指令获取异常事件序列及对应的异常分数值并进行展示。

在一个实施例中,计算机设备可以按照异常分数值的大小对多个异常事件序列进行降序展示,即优先展示异常分数值较高的异常事件序列。可选地,计算机设备也可以按照事件的发生时刻展示异常事件序列等,在此不做限定。

在一个实施例中,触发操作可以是计算机设备根据用户在展示界面的操作生成的。计算机设备可以获取生成的触发操作,根据该触发操作展示所针对的异常事件序列所对应的异常特征。具体地,计算机设备可以根据该触发操作获取该异常事件序列对应的异常特征,根据该异常特征获取相对应的输出模板,按照该输出模板展示该异常事件序列对应的异常特征。可选地,输出模板可以采用文字、图片、表格等中的一种或多种。

通过展示异常事件序列及对应的异常分数值,在接收到对展示的异常事件序列的触发操作时,根据该触发操作展示所针对的异常事件序列所对应的异常特征,可以将异常事件及其异常原因进行可视化展示。

在一个实施例中,提供的事件异常检测方法中上述步骤s208可以包括:分析特征在多个候选事件序列中的分布参数;根据分布参数将特征值转换为对应的权重值。

分布参数是根据特征在多个候选事件序列中分别对应的特征值确定的。分布参数可以表征特征在多个候选事件序列中均衡点和离散程度。具体地,分布参数可以包括特征的平均值以及方差、或者是标准差中的任意一种。以分布参数为平均值和标准差为例,特征值与权重值的可以按照下列公式进行转换:

其中,μ为特征在多个候选事件序列中对应的特征值的平均值,σ为特征在多个候选事件序列中对应的特征值的标准差;xi即为特征x在第i个候选事件序列对应的权重值,xi为特征x在第i个候选事件对应的特征值。

可选地,在一个实施例中,计算机设备根据公式(1)得到权重值之后,还可以将多个权重值进行归一化处理,将归一化处理得到的权重值作为该候选事件序列中该特征对应的权重值。归一化处理的方式如下:

其中,cj为特征x在第j个候选事件序列中归一化处理后的权重值;xj为根据上述公式(1)计算的特征x在第j个候选事件序列中的转化的权重值;n为候选事件序列的总数量。

计算机设备可以根据分布参数将特征值转换为对应的权重值,也可以在转换之后将得到的值进行归一化处理,将归一化处理得到的值作为该特征值对应的权重值,计算过程简单快捷,按照该权重值可以确定异常事件序列中存在异常的异常特征。归一化处理可以将权重值归一化0-1之间,方便进行异常特征的筛选。

在一个实施例中,提供的事件异常检测方法中上述步骤s208可以包括:根据异常事件序列中包含的每一个特征及对应的特征值将异常事件序列进行分裂处理;根据特征的分裂次数、分裂后的平均增益和分裂后的覆盖度中的至少一种确定每一个特征对应的权重值。

计算机设备根据异常事件序列中包含的每一个特征及对应的特征值将异常事件序列进行分裂处理,具体地,计算机设备可以将异常事件序列包含的每一个特征及对应的特征值输入训练的xgboost(梯度提升算法)模型,由xgboost模型包含的决策树按照各个特征对应特征值进行分裂。

xgboost模型在样本训练的过程中,通过不断地进行特征分类生成决策树,每次添加一个决策树,即为学习一个新函数以拟合上次预测的残差,直至预测达到一定的准确性,训练完成的xgboost包含多个决策树,每一个决策树包含一个或多个叶子节点。

xgboost模型提供了三种特征重要性的计算方法,在分裂处理完成之后,计算机设备可以获取分裂完成之后,特征的分裂次数、分裂后的平均增益和分裂后的覆盖度中的至少一种,以确定每一个特征对应的权重值。其中,特征的分裂次数是指特征在xgboost模型包含的所有决策树中被作为划分特征的次数;分裂后的平均增益是指特征作为划分特征后的平均增益;分裂后的覆盖度是指特征作为划分特征后的对候选事件序列包含各个特征对应特征值的覆盖度。

可选地,计算机设备可以采用其中的任意一个作为特征对应的权重值,也可以对特征的分裂次数、分裂后的平均增益和分裂后的覆盖度进行加权求和,将得到的和作为特征对应的权重值。

通过采用xgboost模型根据候选事件序列包含的每一个特征对应的特征值对候选事件序列进行分裂处理,根据特征的分裂次数、分裂后的平均增益和分裂后的覆盖度中的至少一种确定每一个特征对应的权重值,可以得到特征对应的权重值,可以提高特征权重值的准确性。

图5为一个实施例中展示异常事件序列对应的异常特征的流程图。如图5所示,在一个实施例中,提供的事件异常检测方法在步骤s210之后,还可以包括:

s502,展示异常事件序列及对应的异常特征。

计算机设备可以在展示界面展示异常事件序列及对应的异常特征。

在一个实施例中,计算机设备可以确定异常事件序列对应的第二数量个异常特征。具体地,计算机设备可以将权重值最高的第二数量个特征确定为异常特征,并在展示异常事件序列时,展示该异常事件序列对应的第二数量个异常特征。其中,第二数量可以是1个、2个、3个、4个等,在此不做限定。

s504,当接收到对异常事件序列的触发操作时,生成并展示异常特征对应的频率分布图。

频率分布图可以展示异常特征在事件日志划分的多个候选事件序列中的分布情况。计算机设备可以在接收到对异常事件序列的触发操作时,生成并展示异常特征对应的频率分布图。具体地,计算机设备可以获取该异常特征在每一个候选事件序列中的特征值,并统计相同的特征值的出现频率,以一坐标轴为特征值的大小,另一坐标轴为特征值的出现频率建立该频率分布图。

在一个实施例中,计算机设备可以采用核密度估计(kerneldensityestimation)分析特征值在事件日志中的频率分布情况,具体地,计算机设备将特征在每一个候选事件序列中的特征值代入核密度估计函数,则可得到以核密度展示的该特征的频率分布图。

s506,在频率分布图上标识异常特征在异常事件序列中对应的特征值。

具体地,计算机设备可以通过颜色标识、或文字标识等方式在频率分布图上标识该异常特征在异常事件序列中对应的特征值。

图6为一个实施例中频率分布图的示意图。如图6所示,该实施例中异常特征为不常见攻击方法的种类。频率分布图的横坐标为不常见攻击方法的种类;纵坐标为各个不常见攻击方法的种类的出现频率。在频率分布图中,标识602为该触发操作所针对的异常事件序列所对应的特征值对应的标识,根据标识602可以得出不常见攻击方法的种类即特征值为151时,该特征值位于频率分布图的长尾部分,也就是说异常原因为不常见攻击方法的种类过多。计算机设备通过该频率分布图及标识的特征值,可以确定该异常事件序列该特征异常的具体原因。

通过展示异常事件序列及对应的异常特征,在接收到对异常事件序列的触发操作时,可以生成并展示异常特征对应的频率分布图,并在频率分布图上标识该异常特征在异常事件序列中对应的特征值,可以将异常特征进行直观的展示。

图7为一个实施例中事件异常检测方法的展示界面的示意图。如图7所示,该展示界面可以展示事件日志所对应的异常事件序列及与该异常事件序列的相关的信息,例如,区域720可以用于展示存在异常的异常事件序列及对应的异常分数值;区域740可以展示触发操作所针对异常事件序列的相关信息。例如,区域742可以用于异常事件序列所对应的异常特征及特征值等信息;区域744可以展示异常特征所对应的频率分布图;区域746可以展示该异常事件序列所包含的事件。

图8为一个实施例中事件异常检测方法的应用场景示意图。如图8所示,在一个实施例中,该应用场景包括云服务器810和业务系统820;云服务器810和业务系统820可以通过网络进行连接。业务系统820是指企业用于实现其业务功能的系统;业务系统820可以包括服务器和与服务器连接的客户端。云服务器810部署有可实现上述事件异常检测方法的企业安全管理平台,可以用于获取业务系统820产生的事件并形成事件日志,从而对事件日志中包含的事件进行异常检测。具体地,云服务器810可以获取业务系统820运行时所产生的事件,并形成事件日志,每间隔预设时间,则对预设时间内生成的事件日志进行划分,得到候选事件序列,从候选事件序列中获取异常事件序列,获取预设的特征在异常事件序列中对应的特征值,根据特征对应的特征值确定特征对应的权重,根据各个特征对应的权重值确定异常事件序列对应的异常特征。

可选地,该应用环境还可以包括客户端;客户端用于访问云服务器810,并根据云服务器810提供的企业安全管理平台查看业务系统820运行的存在异常的异常事件序列及对应的异常特征。具体地,云服务器810可以接收客户端发送的异常事件查看指令;根据该异常事件查看指令将事件日志对应的异常事件序列及异常事件序列所对应的异常特征下发给客户端;由客户端进行展示,从而,业务系统820的安全管理人员可以根据云服务器810提供的异常事件序列及异常特征对业务系统820进行安全维护。

在一个实施例中,事件日志的生成和异常事件的检测也可以采用分布式服务器来实现,即分布式服务器包含有集成上述异常事件检测方法的服务器和集成有能够收集事件日志的安全管理平台的服务器。在实际应用时,可以通过集成有能够收集事件日志的安全管理平台的服务器收集业务系统运行时所产生的事件并形成事件日志;并每隔预设时间将生成的事件日志发送给集成上述异常事件检测方法的服务器进行事件异常检测。

在一些实施例中,计算机设备可以在系统运行过程中通过上述异常检测方法对系统进行异常监控,并在检测到存在异常的异常事件序列时,输出异常事件序列及对应的异常特征,以提供给系统的安全管理人员对系统进行维护,可以提高系统运行的安全性。

图2、3、5为一个实施例中事件异常检测方法的流程示意图。应该理解的是,虽然图2、3、5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、3、5中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

图9为一个实施例中事件异常检测装置的示意图。如图9所示,在一个实施例中,提供的事件异常检测装置900,包括:

事件划分模块902,用于对事件日志进行划分,得到候选事件序列。

异常序列获取模块904,用于从候选事件序列中获取异常事件序列。

特征值获取模块906,用于获取预设的特征在异常事件序列中对应的特征值。

权重值确定模块908,用于根据特征对应的特征值确定特征对应的权重值,权重值用于表示特征在异常事件序列中的异常程度。

异常特征确定模块910,用于根据各个特征对应的权重值确定异常事件序列对应的异常特征。

上述事件异常检测装置,可以对事件日志进行划分得到候选事件序列,从候选事件序列中获取异常事件序列,并获取预设的特征在异常事件序列中的特征值,根据特征值确定对应的权重值,根据各个特征对应的权重值确定异常事件序列对应的异常特征。由于可以在确定异常事件序列之后,将异常事件序列中各个特征的特征值转换为权重值,根据权重值确定异常事件序列的异常特征,即可以给出异常事件序列的异常原因,具备较高的解释性,方便后续的系统维护,并且,基于事件序列级别的异常检测,可以提高异常检测的准确性。

在一个实施例中,事件划分模块902还可以用于将所述事件日志中包含的事件按照发生时刻进行排序;在排序后的事件日志中,每相隔预设时长则将预设时段内的事件划分为一个候选事件序列。

上述实施例中,通过将事件日志中包含的事件按照发生时刻进行排序,根据排序后的事件日志划分得到多个候选事件序列。

在一个实施例中,异常序列获取模块904还可用于对所述候选事件序列进行异常检测,得到所述候选事件序列对应的异常分数值;根据各个所述候选事件序列对应的异常分数值确定各个所述候选事件序列中的异常事件序列。

上述实施例中,通过对候选事件序列进行异常检测,得到候选事件序列对应的异常分数值,根据各个候选事件序列对应的异常分数值确定各个候选事件序列中的异常事件序列,即可以基于事件序列级别进行异常检测,可以提高异常检测的准确性。

在一个实施例中,异常序列获取模块904还可用于通过至少两个异常检测模型分别对所述候选事件序列进行异常检测,得到对应的至少两个候选分数值;根据所述至少两个候选分数值确定所述候选事件序列对应的异常分数值;根据各个所述候选事件序列对应的异常分数值确定各个所述候选事件序列中的异常事件序列。

上述实施例中,通过至少两个异常检测模型分别候选事件序列进行异常检测,得到对应的至少两个候选分数值,根据至少两个候选分数值确定候选事件序列对应的异常分数值,可以提高异常分数值的准确性,即可以提高检测的异常事件序列的准确性。

如图10所示,在一个实施例中,提供的事件异常检测装置还可以包括展示模块912,展示模块912用于展示所述异常事件序列及对应的异常分数值;当接收到对展示的异常事件序列的触发操作时,展示所述触发操作针对的异常事件序列所对应的异常特征。

上述实施例中,通过展示异常事件序列及对应的异常分数值,在接收到对展示的异常事件序列的触发操作时,根据该触发操作展示所针对的异常事件序列所对应的异常特征,可以将异常事件及其异常原因进行可视化展示。

在一个实施例中,权重值确定模块908还可以用于分析所述特征在多个所述候选事件序列中的分布参数;根据所述分布参数将所述特征值转换为对应的权重值。

上述实施例中,通过根据分布参数将特征值转换为对应的权重值,按照该权重值可以确定异常事件序列中存在异常的异常特征,计算过程简单快捷。

在一个实施例中,权重值确定模块908还可以用于根据所述异常事件序列中包含的每一个所述特征及对应的特征值将所述异常事件序列进行分裂处理;根据所述特征的分裂次数、分裂后的平均增益和分裂后的覆盖度中的至少一种确定每一个所述特征对应的权重值。

上述实施例中,通过候选事件序列包含的每一个特征对应的特征值对候选事件序列进行分裂处理,根据特征的分裂次数、分裂后的平均增益和分裂后的覆盖度中的至少一种确定每一个特征对应的权重值,可以得到特征对应的权重值,可以提高特征权重值的准确性。

在一个实施例中,展示模块912还可以用于展示所述异常事件序列及对应的异常特征;当接收到对所述异常事件序列的触发操作时,生成并展示所述异常特征对应的频率分布图;在所述频率分布图上标识所述异常特征在所述异常事件序列中对应的特征值。

上述实施例中,通过展示异常事件序列及对应的异常特征,在接收到对异常事件序列的触发操作时,可以生成并展示异常特征对应的频率分布图,并在频率分布图上标识该异常特征在异常事件序列中对应的特征值,可以将异常特征进行直观的展示。

本领域技术人员可以理解,图1中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,本申请提供的事件异常检测装置可以实现为一种计算机程序的形式,计算机程序可在如图1所示的计算机设备上运行。计算机设备的存储器中可存储组成该事件异常检测装置的各个程序模块,比如,图9所示的事件划分模块、异常序列获取模块、特征值获取模块、权重值确定模块和异常特征确定模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的事件异常检测方法中的步骤。

例如,图1所示的计算机设备可以通过如图9所示的事件异常检测装置中的事件划分模块执行步骤s202。计算机设备可通过异常序列获取模块执行步骤s204。计算机设备可通过特征值获取模块执行s206。计算机设备可通过权重值确定模块执行s208。计算机设备可通过异常特征确定模块执行s210。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述事件异常检测方法的步骤。此处事件异常检测方法的步骤可以是上述各个实施例的事件异常检测方法中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述事件异常检测方法的步骤。此处事件异常检测方法的步骤可以是上述各个实施例的事件异常检测方法中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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