CN115987594A - 一种网络安全日志的异常检测方法、装置及设备 - Google Patents
一种网络安全日志的异常检测方法、装置及设备 Download PDFInfo
- Publication number
- CN115987594A CN115987594A CN202211620505.9A CN202211620505A CN115987594A CN 115987594 A CN115987594 A CN 115987594A CN 202211620505 A CN202211620505 A CN 202211620505A CN 115987594 A CN115987594 A CN 115987594A
- Authority
- CN
- China
- Prior art keywords
- time interval
- occurrence number
- index
- predicted
- value
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种网络安全日志的异常检测方法、装置及设备,从网络安全日志中提取某一类型的网络事件在多个周期中各个时间区间的实际发生数量,根据这些数据,可以预测出多个周期中各个时间区间的预测发生数量。然后根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应得到误差指标对应的阈值。当某个时间区间的实际发生数量与预测发生数量之间误差指标的指标值超过误差指标对应的阈值时,将该时间区间确定为异常时间区间。也即某一个时间区间的实际发生数量与基于历史同期数据预测出的预测发生数量的偏差较大时,则可以认为这个时间区间存在异常。从而通过对网络安全日志的自动化分析,实现了异常时间区间的检测。
Description
技术领域
本申请涉及网络安全技术领域,具体涉及一种网络安全日志的异常检测方法、装置及设备。
背景技术
随着企业信息化程度不断加深,同时也暴露出越来越多的安全漏洞、安全问题。在网络安全事件发生后,网络安全日志是事后追溯网络安全事件的有效参照依据。
目前,一般是通过审计员人工查阅网络安全日志,以查找网络安全日志中可能发生网络安全事件的异常时间区间。但是,由于信息化程度的复杂度越来越高和庞大的信息系统会产生海量的网络安全日志,使审计员在杂乱无章的网络安全日志中确定异常时间区间变得越来越困难。
发明内容
有鉴于此,本申请实施例提供一种网络安全日志的异常检测方法、装置及设备,以实现网络安全日志中异常时间区间的自动检测。
为解决上述问题,本申请实施例提供的技术方案如下:
一种网络安全日志的异常检测方法,所述方法包括:
从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量;
根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量;
根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值;
将所述多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
在一种可能的实现方式中,所述根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量,包括:
将第1个周期中各个时间区间的实际发生数量确定为第1个周期中各个时间区间的预测发生数量;
根据第1个周期到第n-1个周期中第i个时间区间的实际发生数量计算第n个周期中第i个时间区间的预测发生数量;其中,n的取值分别为2至m的正整数,m为周期的数量;i的取值分别为1至j的正整数,j为每个周期中时间区间的数量,每个周期中时间区间的数量相同。
在一种可能的实现方式中,所述方法还包括:
计算目标时间区间的预测发生数量与所述目标时间区间的实际发生数量之差、所述目标时间区间的前一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差以及所述目标时间区间的后一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差中的最小值;所述目标时间区间为所述多个周期各个时间区间中的任一个;
将所述最小值对应的时间区间的预测发生数量重新确定为所述目标时间区间的预测发生数量。
在一种可能的实现方式中,所述根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值,包括:
计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
对所述指标值进行排序,将排序后的指标值聚类为异常类和正常类;
将所述异常类中最邻近所述正常类的指标值确定为所述误差指标对应的阈值。
在一种可能的实现方式中,所述对所述指标值进行排序,将排序后的指标值聚类为异常类和正常类,包括:
对所述指标值从大到小进行排序;
将排序后的第一个指标值加入初始类,计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值;
判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果小于所述距离阈值,将不属于所述初始类的指标值中的第一个指标值加入所述初始类,并重新计算所述初始类的中心,重新计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值,返回执行所述判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果大于或等于所述距离阈值,将所述初始类中的指标值加入异常类,将不属于所述初始类的指标值加入正常类。
在一种可能的实现方式中,所述根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值,包括:
计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
计算所述指标值的平均值和第二标准差;
根据所述平均值和所述第二标准差计算所述误差指标对应的阈值。
在一种可能的实现方式中,所述方法还包括:
根据多个周期中各个时间区间的实际发生数量,确定所述多个周期之后未来周期中各个时间区间的预测发生数量。
一种网络安全日志的异常检测装置,所述装置包括:
提取单元,用于从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量;
第一计算单元,用于根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量;
第一确定单元,用于根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值;
第二确定单元,用于将所述多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
一种网络安全日志的异常检测设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述的网络安全日志的异常检测方法。
一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上述的网络安全日志的异常检测方法。
由此可见,本申请实施例具有如下有益效果:
本申请实施例从网络安全日志中提取某一类型的网络事件在多个周期中各个时间区间的实际发生数量,根据这些数据,可以预测出多个周期中各个时间区间的预测发生数量。然后根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应得到误差指标对应的阈值。当某个时间区间的实际发生数量与预测发生数量之间误差指标的指标值超过误差指标对应的阈值时,将该时间区间确定为异常时间区间。也即某一个时间区间的实际发生数量与基于历史同期数据预测出的预测发生数量的偏差较大时,则可以认为这个时间区间存在异常。从而通过对网络安全日志的自动化分析,实现了异常时间区间的检测。
附图说明
图1为本申请实施例提供的一种示例性应用场景的示意图;
图2为本申请实施例提供的一种网络安全日志的异常检测方法的流程图;
图3为本申请实施例提供的一种网络安全日志的异常检测装置的示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。
为了便于理解和解释本申请实施例提供的技术方案,下面将先对本申请的背景技术进行说明。
随着企业信息化程度不断加深,同时也暴露出越来越多的安全漏洞、安全问题。在网络安全事件发生后,网络安全日志是事后追溯网络安全事件的有效参照依据。
目前,一般是通过审计员人工查阅网络安全日志,以查找网络安全日志中可能发生网络安全事件的异常时间区间。但是,由于信息化程度的复杂度越来越高和庞大的信息系统会产生海量的网络安全日志,使审计员在杂乱无章的网络安全日志中确定异常时间区间变得越来越困难。
基于此,本申请实施例提供一种网络安全日志的异常检测方法、装置及设备,借助大数据的分析能力,利用大量具有时序的数据自动检索网络安全日志中的异常时间区间。从而能够获知网络的安全状况,还可以对安全状态的发展趋势进行预测和预警。
为了便于理解本申请实施例提供的网络安全日志的异常检测方法,下面结合图1所示的场景示例进行说明。参见图1所示,该图为本申请实施例提供的示例性应用场景的示意图。
本申请实施例可以应用于网络安全平台,首先获取网络安全日志。从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量。例如,周期为1天,每个周期包括24个时间区间,每个时间区间为1小时,目标类型的网络事件为登录事件。网络安全日志中共有10天的数据,从网络安全日志中提取这10天中每天每小时登录事件的实际发生数量。然后根据多个周期中各个时间区间的实际发生数量,可以得到多个周期中各个时间区间的预测发生数量。例如,可以预测这10天中每天每小时登录事件的预测发生数量。
根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应确定出该误差指标对应的阈值。如果某些时间区间的误差指标的指标值超过了阈值,则这些时间区间实际发生数量与预测发生数量之间误差较大,可以确定为异常时间区间。
本领域技术人员可以理解,图1所示的框架示意图仅是本申请的实施方式可以在其中得以实现的一个示例。本申请实施方式的适用范围不受到该框架任何方面的限制。
为了便于理解本申请,下面结合附图对本申请实施例提供的一种网络安全日志的异常检测方法进行说明。
参见图2所示,该图为本申请实施例提供的一种网络安全日志的异常检测方法的流程图,如图2所示,该方法可以包括S201-S204:
S201:从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量。
获取网络安全日志,网络安全日志中包括有各个不同类型的网络事件的相关信息,不同类型的网络事件例如登录事件、密码暴力破解事件等,网络事件的相关信息例如网络事件的发生时间等。根据某一目标类型的网络事件的发生时间,可以统计出多个周期中各个时间区间的实际发生数量。周期长度以及每个周期包括的时间区间长度、数量可以根据实际需要设定。每个周期包括的时间区间数量相同。例如,周期为1天,每个周期包括24个时间区间,每个时间区间为1小时,又例如周期为7天,每个周期包括168个时间区间,每个时间区间为1小时。则从网络安全日志中可以统计出各个周期中各个时间区间,某一目标类型的网络事件的实际发生数量。
S202:根据多个周期中各个时间区间的实际发生数量,确定多个周期中各个时间区间的预测发生数量。
获得多个周期中各个时间区间的实际发生数量之后,可以根据实际发生数量预测出这些周期中各个时间区间的预测发生数量。例如,周期为1天,每个周期包括24个时间区间,每个时间区间为1小时,一共获得了10天的网络安全日志,根据10个周期中每个时间区间的实际发生数量,可以预测得到这10个周期中每个时间区间的预测发生数量。
本申请实施例后续会详细说明S202根据多个周期中各个时间区间的实际发生数量,确定多个周期中各个时间区间的预测发生数量的具体实现,在此不再赘述。
S203:根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定误差指标对应的阈值。
可以通过同一时间区间的实际发生数量与预测发生数量之间的误差是否较大,可以确定该时间区间是否异常。而评价误差是否较大,则需要确定相应的阈值。通过多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应确定该误差指标对应的阈值。
误差指标可以为一个或多个,例如包括MAE(平均绝对误差,Mean AbsoluteError)、SMAPE(对称平均绝对百分比误差,Symmetric Mean Absolute PercentageError)、MAPE(平均绝对百分比误差,Mean Absolute Percentage Error)、MASE(平均绝对比例误差,Mean Absolute Scaled Error)、MAPEE(平均绝对百分比误差(按预期值),MeanAbsolute Percentage Error(scaled by the expected value))。当误差指标为多个时,可以分别确定每个误差指标对应的阈值。
本申请实施例后续会详细说明S203根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定误差指标对应的阈值的具体实现,在此不再赘述。
S204:将多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
每个时间区间对应有实际发生数量与预测发生数量之间误差指标的指标值,当某个时间区间的指标值超过该误差指标对应的阈值,则代表这个时间区间实际发生数量与预测发生数量差距较大,将这个时间区间确定为异常时间区间。例如,某个时间区间的登录事件的实际发生数量为200,而该时间区间的登录事件的预测发生数量为10,此时实际发生数量与预测发生数量之间误差指标的指标值超过对应的阈值,代表该时间区间的登录事件的实际发生数量远超过预测发生数量,可能发生了被攻击的情况,则可以确定该时间区间为异常时间区间。
当误差指标为多个时,某个时间区间的任一误差指标的指标值超过该误差指标对应的阈值时,则可以确定该时间区间为异常时间区间。
基于S201-S204的描述,本申请实施例从网络安全日志中提取某一类型的网络事件在多个周期中各个时间区间的实际发生数量,根据这些数据,可以预测出多个周期中各个时间区间的预测发生数量。然后根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应得到误差指标对应的阈值。当某个时间区间的实际发生数量与预测发生数量之间误差指标的指标值超过误差指标对应的阈值时,将该时间区间确定为异常时间区间。也即某一个时间区间的实际发生数量与基于历史同期数据预测出的预测发生数量的偏差较大时,则可以认为这个时间区间存在异常。从而通过对网络安全日志的自动化分析,实现了异常时间区间的检测。
在一种可能的实现方式中,S202根据多个周期中各个时间区间的实际发生数量,确定多个周期中各个时间区间的预测发生数量的具体实现可以包括:
A1:将第1个周期中各个时间区间的实际发生数量确定为第1个周期中各个时间区间的预测发生数量。
由于第1个周期没有历史数据,所以第1个周期中各个时间区间的实际发生数量可以直接作为第1个周期中各个时间区间的预测发生数量。例如,第1个周期中第1个时间区间的实际发生数量作为第1个周期中第1个时间区间的预测发生数量;第1个周期中第2个时间区间的实际发生数量作为第1个周期中第2个时间区间的预测发生数量,以此类推。
A2:根据第1个周期到第n-1个周期中第i个时间区间的实际发生数量计算第n个周期中第i个时间区间的预测发生数量;其中,n的取值分别为2至m的正整数,m为周期的数量;i的取值分别为1至j的正整数,j为每个周期中时间区间的数量,每个周期中时间区间的数量相同。
从第2个周期开始,可以利用历史同一时间区间的所有实际发生数量计算当前周期的该时间区间的预测发生数量。即根据第1个周期到第n-1个周期中第i个时间区间的实际发生数量计算第n个周期中第i个时间区间的预测发生数量。例如,根据第1个周期中第i个时间区间的实际发生数量计算第2个周期中第i个时间区间的预测发生数量,根据第1个周期到第2个周期中第i个时间区间的实际发生数量计算第3个周期中第i个时间区间的预测发生数量,根据第1个周期到第3个周期中第i个时间区间的实际发生数量计算第4个周期中第i个时间区间的预测发生数量,以此类推。而i分别取为1至j,j为每个周期中时间区间的数量。
在本实施例中,可以利用历史同一时间区间的所有实际发生数量去掉可能的异常点(如最大值和最小值),其他剩余实际发生数量的平均值就是当前周期的该时间区间的预测发生数量。例如,计算第10个周期第1个时间区间的预测发生数量,将第1个周期至第9个周期中第1个时间区间的实际发生数量去掉最大值和最小值,其他实际发生数量的平均值是第10个周期第1个时间区间的预测发生数量。
在实际应用中,可以利用data数组存储各个时间区间的实际发生数量,data数组的数据结构可以为ArrayList(动态数组),可以利用model数组存储各个时间区间的预测发生数量,model数组的数据结构可以为ArrayList。
另外,S202根据多个周期中各个时间区间的实际发生数量,确定多个周期中各个时间区间的预测发生数量,也可以由神经网络模型实现。
例如可以将第1个周期中各个时间区间的实际发生数量确定为第1个周期中各个时间区间的预测发生数量;根据第1个周期到第n-1个周期各个时间区间的实际发生数量输入预先训练的神经网络模型,由神经网络模型输出第n个周期中各个时间区间的预测发生数量。其中,n的取值分别为2至m的正整数,m为周期的数量。
也即可以根据先发生的若干个周期中各个时间区间的预测发生数量的走向,由神经网络模型去预测之后周期中各个时间区间的预测发生数量的走向。神经网络模型可以根据大量历史数据中,前x个周期中各个时间区间的实际发生数量与第x+1个周期中各个时间区间的实际发生数量之间的对应关系训练得到,其中,x为正整数。
在得到每个时间区间的预测发生数量后,还可以对预测发生数量进行修正。则在一种可能的实现方式中,基于上述实施例,还可以包括:
B1:计算目标时间区间的预测发生数量与目标时间区间的实际发生数量之差、目标时间区间的前一时间区间的预测发生数量与目标时间区间的实际发生数量之差以及目标时间区间的后一时间区间的预测发生数量与目标时间区间的实际发生数量之差中的最小值;目标时间区间为多个周期各个时间区间中的任一个。
B2:将最小值对应的时间区间的预测发生数量重新确定为目标时间区间的预测发生数量。
在本实施例中,对于任意一个时间区间,可以计算当前时间区间的预测发生数量、前一个时间区间的预测发生数量、后一个时间区间的预测发生数量与当前时间区间的实际发生数量之差,选择与当前时间区间的实际发生数量偏差最小的预测发生数量确定为当前时间区间的预测发生数量。从而可以对当前时间区间的预测发生数量进行修正。
在一种可能的实现方式中,本申请实施例还可以根据多个周期中各个时间区间的实际发生数量,确定多个周期之后未来周期中各个时间区间的预测发生数量。
也即本申请实施例还可以利用多个周期的实际发生数量,去预测未来周期的预测发生数量。例如,根据当前已有的10个周期中各个时间区间的实际发生数量,去预测未来未发生的第11个周期中各个时间区间的实际发生数量。类似的,可以根据第1个周期到第n个周期中第i个时间区间的实际发生数量计算第n+1个周期中第i个时间区间的预测发生数量;其中,n的取值分别为2至m的正整数,m为周期的数量;i的取值分别为1至j的正整数,j为每个周期中时间区间的数量,每个周期中时间区间的数量相同.
同样,也可以由神经网络模型实现根据多个周期中各个时间区间的实际发生数量,确定多个周期之后未来周期中各个时间区间的预测发生数量。
本申请实施例可以对未来的网络事件的发生情况进行预测,从而对安全状态的发展趋势进行预测和预警。
在本申请实施例中确定误差指标对应的阈值有两种不同的实现方式,在第一种可能的实现方式中,S203根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定误差指标对应的阈值的具体实现可以包括:
C1:计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值。
对于每个时间区间,计算实际发生数量与预测发生数量之间各个误差指标的指标值,误差指标例如MAE、SMAPE、MAPE、MASE、MAPEE。
在实际应用中可以将每个误差指标的指标值组成一个map,其中key表示误差指标,value表示该误差指标的多个指标值。
C2:对指标值进行排序,将排序后的指标值聚类为异常类和正常类。
对于每项误差指标,使用基于密度分布的方式计算出灵敏度,将灵敏度作为该项误差指标的阈值。具体的,把误差指标的指标值按照从大到小排序,使用聚类算法把数据序列划分为两类:异常类和正常类。
在一种可能的实现方式中,C2对指标值进行排序,将排序后的指标值聚类为异常类和正常类的具体实现可以包括:
D1:对指标值从大到小进行排序。
D2:将排序后的第一个指标值加入初始类,计算不属于初始类的指标值的第一标准差,根据第一标准差确定距离阈值。
初始化一个类,把第一个指标值移入初始类,计算出剩余指标值的标准差*3作为类间最大距离的距离阈值。
D3:判断不属于初始类的指标值中的第一个指标值与初始类的中心点之间的距离是否小于距离阈值。
D4:如果小于距离阈值,将不属于初始类的指标值中的第一个指标值加入初始类,并重新计算初始类的中心,重新计算不属于初始类的指标值的第一标准差,根据第一标准差确定距离阈值,返回D3执行判断不属于初始类的指标值中的第一个指标值与初始类的中心点之间的距离是否小于距离阈值。
判断下一个指标值与初始类的中心点距离是否小于距离值,若小于,则从剩余指标值中移除下一个指标指,加入到初始类中,并重新计算初始类的中心点,重新计算剩余指标指的距离阈值,并返回D3。
D5:如果大于或等于距离阈值,将初始类中的指标值加入异常类,将不属于初始类的指标值加入正常类。
如果大于或等于距离阈值,停止迭代,把初始类和其他指标值分成两类,即初始类中的指标值加入异常类,将不属于初始类的指标值加入正常类。
C3:将异常类中最邻近正常类的指标值确定为误差指标对应的阈值。
把异常类和正常类分割开的临界点的指标值确定为灵敏度,将灵敏度作为该项误差指标的阈值。临界点的指标值即为异常类中最邻近正常类的指标值。
另外,如果初始类的指标值个数占比其他指标值个数,超过某个比例(0.05),那么认为不能做异常检测,误差指标对应的阈值为正无穷。
本实施例通过基于密度的聚类方式,可以自适应得到误差指标对应的阈值,从而实现异常时间区间的检测。
在第二种可能的实现方式中,S203根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定误差指标对应的阈值的具体实现可以包括:
E1:计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值。
对于每个时间区间,计算实际发生数量与预测发生数量之间各个误差指标的指标值,误差指标例如MAE、SMAPE、MAPE、MASE、MAPEE。
在实际应用中可以将每个误差指标的指标值组成一个map,其中key表示误差指标,value表示该误差指标的多个指标值。
E2:计算指标值的平均值和第二标准差。
对于每项误差指标,使用K-Sigma规则计算出灵敏度,将灵敏度作为该项误差指标的阈值。具体的,多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值符合正态分布,计算出每项误差指标的指标值的平均值和标准差。
E3:根据平均值和第二标准差计算误差指标对应的阈值。
对于每项误差指标,其灵敏度(即阈值)为平均值+3*标准差。
本实施例通过K-sigma方式,可以自适应得到误差指标对应的阈值,从而实现异常时间区间的检测。
综上所述,本申请实施例通过给定一段时间的离散值构成一个序列(即多个周期中各个时间区间的实际发生数量),学习这段序列的特征,并重新构建一个和原序列尽量接近的序列(即多个周期中各个时间区间的预测发生数量),可以预测网络事件的走势。两个序列一同送入异常检测模块,基于不同的算法,异常时间区间会被标记出来,可以通过网络事件找到网络环境中安全威胁问题。
基于上述方法实施例提供的一种网络安全日志的异常检测方法,本申请实施例还提供了一种网络安全日志的异常检测装置,下面将结合附图对该装置进行说明。
参见图3所示,该图为本申请实施例提供的一种网络安全日志的异常检测装置的结构示意图。如图3所示,该网络安全日志的异常检测装置包括:
提取单元301,用于从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量;
第一计算单元302,用于根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量;
第一确定单元303,用于根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值;
第二确定单元304,用于将所述多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
在一种可能的实现方式中,所述第一计算单元,包括:
第一确定子单元,用于将第1个周期中各个时间区间的实际发生数量确定为第1个周期中各个时间区间的预测发生数量;
第一计算子单元,用于根据第1个周期到第n-1个周期中第i个时间区间的实际发生数量计算第n个周期中第i个时间区间的预测发生数量;其中,n的取值分别为2至m的正整数,m为周期的数量;i的取值分别为1至j的正整数,j为每个周期中时间区间的数量,每个周期中时间区间的数量相同。
在一种可能的实现方式中,所述装置还包括:
第二计算单元,用于计算目标时间区间的预测发生数量与所述目标时间区间的实际发生数量之差、所述目标时间区间的前一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差以及所述目标时间区间的后一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差中的最小值;所述目标时间区间为所述多个周期各个时间区间中的任一个;
修正单元,用于将所述最小值对应的时间区间的预测发生数量重新确定为所述目标时间区间的预测发生数量。
在一种可能的实现方式中,所述第一确定单元,包括:
第二计算子单元,用于计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
排序子单元,用于对所述指标值进行排序,将排序后的指标值聚类为异常类和正常类;
第二确定子单元,用于将所述异常类中最邻近所述正常类的指标值确定为所述误差指标对应的阈值。
在一种可能的实现方式中,所述排序子单元具体用于:
对所述指标值从大到小进行排序;
将排序后的第一个指标值加入初始类,计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值;
判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果小于所述距离阈值,将不属于所述初始类的指标值中的第一个指标值加入所述初始类,并重新计算所述初始类的中心,重新计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值,返回执行所述判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果大于或等于所述距离阈值,将所述初始类中的指标值加入异常类,将不属于所述初始类的指标值加入正常类。
在一种可能的实现方式中,所述第一确定单元,包括:
第三计算子单元,用于计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
第四计算子单元,用于计算所述指标值的平均值和第二标准差;
第五计算子单元,用于根据所述平均值和所述第二标准差计算所述误差指标对应的阈值。
在一种可能的实现方式中,所述装置还包括:
第三计算单元,用于根据多个周期中各个时间区间的实际发生数量,计算所述多个周期之后未来周期中各个时间区间的预测发生数量。
另外,本申请实施例还提供了一种网络安全日志的异常检测设备,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如上述任一项所述的网络安全日志的异常检测方法。
另外,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如上述任一项所述的网络安全日志的异常检测方法。
这样,本申请实施例从网络安全日志中提取某一类型的网络事件在多个周期中各个时间区间的实际发生数量,根据这些数据,可以预测出多个周期中各个时间区间的预测发生数量。然后根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,可以自适应得到误差指标对应的阈值。当某个时间区间的实际发生数量与预测发生数量之间误差指标的指标值超过误差指标对应的阈值时,将该时间区间确定为异常时间区间。也即某一个时间区间的实际发生数量与基于历史同期数据预测出的预测发生数量的偏差较大时,则可以认为这个时间区间存在异常。从而通过对网络安全日志的自动化分析,实现了异常时间区间的检测。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种网络安全日志的异常检测方法,其特征在于,所述方法包括:
从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量;
根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量;
根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值;
将所述多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
2.根据权利要求1所述的方法,其特征在于,所述根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量,包括:
将第1个周期中各个时间区间的实际发生数量确定为第1个周期中各个时间区间的预测发生数量;
根据第1个周期到第n-1个周期中第i个时间区间的实际发生数量计算第n个周期中第i个时间区间的预测发生数量;其中,n的取值分别为2至m的正整数,m为周期的数量;i的取值分别为1至j的正整数,j为每个周期中时间区间的数量,每个周期中时间区间的数量相同。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
计算目标时间区间的预测发生数量与所述目标时间区间的实际发生数量之差、所述目标时间区间的前一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差以及所述目标时间区间的后一时间区间的预测发生数量与所述目标时间区间的实际发生数量之差中的最小值;所述目标时间区间为所述多个周期各个时间区间中的任一个;
将所述最小值对应的时间区间的预测发生数量重新确定为所述目标时间区间的预测发生数量。
4.根据权利要求1所述的方法,其特征在于,所述根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值,包括:
计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
对所述指标值进行排序,将排序后的指标值聚类为异常类和正常类;
将所述异常类中最邻近所述正常类的指标值确定为所述误差指标对应的阈值。
5.根据权利要求4述的方法,其特征在于,所述对所述指标值进行排序,将排序后的指标值聚类为异常类和正常类,包括:
对所述指标值从大到小进行排序;
将排序后的第一个指标值加入初始类,计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值;
判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果小于所述距离阈值,将不属于所述初始类的指标值中的第一个指标值加入所述初始类,并重新计算所述初始类的中心,重新计算不属于所述初始类的指标值的第一标准差,根据所述第一标准差确定距离阈值,返回执行所述判断不属于所述初始类的指标值中的第一个指标值与所述初始类的中心点之间的距离是否小于距离阈值;
如果大于或等于所述距离阈值,将所述初始类中的指标值加入异常类,将不属于所述初始类的指标值加入正常类。
6.根据权利要求1所述的方法,其特征在于,所述根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值,包括:
计算多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值;
计算所述指标值的平均值和第二标准差;
根据所述平均值和所述第二标准差计算所述误差指标对应的阈值。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据多个周期中各个时间区间的实际发生数量,确定所述多个周期之后未来周期中各个时间区间的预测发生数量。
8.一种网络安全日志的异常检测装置,其特征在于,所述装置包括:
提取单元,用于从网络安全日志中提取目标类型的网络事件在多个周期中各个时间区间的实际发生数量;
第一计算单元,用于根据多个周期中各个时间区间的实际发生数量,确定所述多个周期中各个时间区间的预测发生数量;
第一确定单元,用于根据多个时间区间的实际发生数量与预测发生数量之间误差指标的指标值,确定所述误差指标对应的阈值;
第二确定单元,用于将所述多个时间区间中误差指标的指标值超过对应的阈值的时间区间确定为异常时间区间。
9.一种网络安全日志的异常检测设备,其特征在于,包括:存储器,处理器,及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-7任一项所述的网络安全日志的异常检测方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行如权利要求1-7任一项所述的网络安全日志的异常检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211620505.9A CN115987594A (zh) | 2022-12-15 | 2022-12-15 | 一种网络安全日志的异常检测方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211620505.9A CN115987594A (zh) | 2022-12-15 | 2022-12-15 | 一种网络安全日志的异常检测方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115987594A true CN115987594A (zh) | 2023-04-18 |
Family
ID=85973217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211620505.9A Pending CN115987594A (zh) | 2022-12-15 | 2022-12-15 | 一种网络安全日志的异常检测方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115987594A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116453709A (zh) * | 2023-06-14 | 2023-07-18 | 贵阳市第四人民医院 | 一种中西医联合用药异常预警方法 |
-
2022
- 2022-12-15 CN CN202211620505.9A patent/CN115987594A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116453709A (zh) * | 2023-06-14 | 2023-07-18 | 贵阳市第四人民医院 | 一种中西医联合用药异常预警方法 |
CN116453709B (zh) * | 2023-06-14 | 2023-08-22 | 贵阳市第四人民医院 | 一种中西医联合用药异常预警方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110417721B (zh) | 安全风险评估方法、装置、设备及计算机可读存储介质 | |
CN109981328B (zh) | 一种故障预警方法及装置 | |
Eskin | Anomaly detection over noisy data using learned probability distributions | |
EP2069993B1 (en) | Security system and method for detecting intrusion in a computerized system | |
CN117220978B (zh) | 一种网络安全运营模型量化评估系统及评估方法 | |
CN111818066B (zh) | 一种风险检测方法及装置 | |
CN113992340B (zh) | 用户异常行为识别方法、装置、设备和存储介质 | |
CN105072214A (zh) | 基于域名特征的c&c域名识别方法 | |
CN114528190B (zh) | 单指标异常的检测方法、装置、电子设备及可读存储介质 | |
CN114879613A (zh) | 一种工业控制系统信息安全攻击风险评估方法及系统 | |
CN113780443A (zh) | 一种面向威胁检测的网络安全态势评估方法 | |
CN109344610B (zh) | 序列攻击的检测方法及装置 | |
CN115987594A (zh) | 一种网络安全日志的异常检测方法、装置及设备 | |
CN105825130B (zh) | 一种信息安全预警方法及装置 | |
CN117390545A (zh) | 一种风险评估方法 | |
CN107085544B (zh) | 一种系统错误定位方法及装置 | |
CN104486353B (zh) | 一种基于流量的安全事件检测方法及装置 | |
CN111885084A (zh) | 一种入侵检测方法、装置及电子设备 | |
CN115834412A (zh) | 网络安全态势评估方法、装置、电子设备及存储介质 | |
CN115242457A (zh) | 一种日志数据的检测方法、装置、电子设备和存储介质 | |
CN114116853A (zh) | 基于时序关联分析的数据安全分析方法及装置 | |
CN109583590B (zh) | 数据处理方法及数据处理装置 | |
CN108804947A (zh) | 用于确定对数据库进行操作的白名单的方法和装置 | |
CN118797753A (zh) | 风险预测方法和装置 | |
CN115829755B (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 |