一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于分类的异常检测方法和系统与流程

2021-12-17 18:57:00 来源:中国专利 TAG:


1.本发明属于异常检测领域,特别涉及一种基于分类的异常检测方法和系统。


背景技术:

2.随着网络信息的发展,用户会拥有很多账号,涉及生活、社交等领域。一旦账户被攻击或者被盗,会给用户带来不便。因此,对账户进行异常检测是非常重要的问题。
3.目前常用的检测方法为人工通过预设的检测规则针对每一异常行为进行检测,检测量大,且当异常行为发生变化时,规则不能及时更新,检测准确性降低。


技术实现要素:

4.为了解决现有技术中存在的问题,本发明提供一种基于分类的异常检测方法和系统。
5.本发明其中一个技术方案提供一种基于分类的异常检测方法,该方法包括如下步骤:
6.对正常日志数据和异常日志数据分别进行预处理;
7.分别提取经过预处理的正常日志数据和异常日志数据的特征,在预设时间窗口内对得到的正常日志特征和异常日志特征进行数据挖掘,得到正常频繁项集和异常频繁项集,构建正常行为模型和异常行为模型;
8.对待检测日志数据进行挖掘,获得频繁项集,并将频繁项集与正常行为模型和异常行为模型进行比较,找出异常。
9.进一步改进的方案中,所述对正常日志数据和异常日志数据分别进行预处理包括如下步骤:
10.对正常日志数据和异常日志数据分别进行清洗;
11.对经过清洗后的正常日志数据和异常日志数据进行数据集成;
12.对经过数据集成的正常日志数据和异常日志数据进行压缩处理。
13.进一步改进的方案中,所述数据挖掘为利用长周期的频繁项集挖掘算法进行数据挖掘。
14.进一步改进的方案中,所述利用长周期的频繁项集挖掘算法进行数据挖掘包括如下步骤:
15.将提取的日志数据特征作为候选集,扫描一遍候选集,找到支持率大于等于λ
n,n-1
·
ρ
s
长度为1的所有模式;
16.连接这些模式,找到支持率大于等于λ
n,n-2
·
ρ
s
产生长度为2的模式的候选集,以此类推,在第i次迭代中产生一个由长度为i的模式组成的候选集u
i
,其中,这些模式满足支持率大于等于λ
n,n-i
·
ρ
s

17.在i 1次迭代中,将候选集u
i
中的模式连接产生i 1的模式的候选集c
i 1
;在c
i 1
的模式中找到支持率大于等于λ
n,n-(i 1)
·
ρ
s
的模式,形成候选集u
i 1
,继续迭代,直到候选集为
空,停止迭代,最终形成的候选集即为频繁项集。
18.进一步改进的方案中,所述利用长周期的频繁项集挖掘算法进行数据挖掘还包括如下步骤:
19.当迭代后产生的候选集不为空,产生长度为n 1的模式的候选集时,利用apriori算法挖掘频繁项集。
20.进一步改进的方案中,所述将频繁项集与正常行为模型和异常行为模型进行比较,找出异常包括如下步骤:
21.利用正常行为模型内的频繁项集作为学习数据,训练分类器;
22.利用训练好的分类器对待测日志数据的频繁项集进行分类;
23.获得与正常行为模型内的频繁项集不一致的频繁项集,并与异常行为模型内的频繁项集进行相似度对比,找出属于异常行为模型的频繁项集。
24.本发明另一个方案提供一种基于分类的异常检测系统,该异常检测系统包括:
25.数据预处理模块,被配置为对正常日志数据和异常日志数据分别进行预处理;
26.模型构建模块,被配置为分别提取经过预处理的正常日志数据和异常日志数据的特征,在预设时间窗口内对得到的正常日志特征和异常日志特征进行数据挖掘,得到正常频繁项集和异常频繁项集,构建正常行为模型和异常行为模型;
27.异常检测模块,被配置为对待检测日志数据进行挖掘,获得频繁项集,并将频繁项集与正常行为模型和异常行为模型进行比较,找出异常。
28.本发明提供的一种基于分类的异常检测方法和系统,首先对正常日志数据和异常日志数据分别进行预处理,然后分别提取特征,挖掘频繁项集,建立正常行为模型和异常行为模型;将待检测日志数据,利用训练阶段同样的方式找出频繁项集,将其与正常行为模型和异常行为模型进行比较,找出异常,进而提高了异常检测的准确性。
附图说明
29.图1为一种基于分类的异常检测方法的流程图;
30.图2为对正常日志数据和异常日志数据分别进行预处理的流程图;
31.图3为利用长周期的频繁项集挖掘算法进行数据挖掘的流程图;
32.图4为对待检测日志数据进行挖掘,获得频繁项集,并将频繁项集与正常行为模型和异常行为模型进行比较,找出异常的流程图;
33.图5为一种基于分类的异常检测系统的结构框图。
具体实施方式
34.本发明其中一些实施例提供一种基于分类的异常检测方法,如图1所示,该异常检测方法包括如下步骤:
35.1)对正常日志数据和异常日志数据分别进行预处理;
36.步骤1)中,一般情况下,安全设备产生的日志可以认为是有风险但没有发生真正攻击的数据,因此,日常平稳的日志分布可以认为是一种无攻击的状态,被认定为正常日志数据;而当日志分布出现异常不能完全匹配正常状态时,则认为出现了异常攻击,此时日志数据被定义为异常日志数据;
37.如图2所示,步骤1)中所述对正常日志数据和异常日志数据分别进行预处理包括如下步骤:
38.11)对正常日志数据和异常日志数据分别进行清洗;
39.步骤11)中,一般安全设备的日志包括ips、ids、防火墙等告警日志;对日志数据进行清洗,主要包括填写缺失值,光滑噪声数据,识别或删除离群点,并解决不一致性;
40.12)对经过清洗后的正常日志数据和异常日志数据进行数据集成;
41.步骤12)中,代表同一概念的数据通过不同安全设备告警可能使用不一样的形式和命名,数据集成主要解决数据识别、冗余及相关性分析等问题;
42.13)对经过数据集成的正常日志数据和异常日志数据进行压缩处理;
43.步骤13)中主要对数据特征进行简化,利用降维等方式压缩数据集的规模;
44.降维方式包括但不限于线性降维、映射式降维等;
45.2)分别提取经过预处理的正常日志数据和异常日志数据的特征,在预设时间窗口内对得到的正常日志特征和异常日志特征进行数据挖掘,得到正常频繁项集和异常频繁项集,构建正常行为模型和异常行为模型;
46.针对安全设备日志,提取的日志特征主要包括7个元素,记为r(ts,event,srcip,srcport,dstip,dstport,lable),其中,ts代表时间,event代表事件行为类型,srcip代表源ip,srcport代表源端口,dstip代表目的ip,dstport代表目的端口,lable代表来自于哪台安全设备;
47.如图2所示,所述数据挖掘为利用长周期的频繁项集挖掘算法进行数据挖掘,具体包括如下步骤:
48.21)将提取的日志数据特征作为候选集,扫描一遍候选集,找到支持率大于等于λ
n,n-1
·
ρ
s
长度为1的所有模式;
49.22)连接这些模式,找到支持率大于等于λ
n,n-2
·
ρ
s
产生长度为2的模式的候选集,以此类推,在第i次迭代中产生一个由长度为i的模式组成的候选集u
i
,其中,这些模式满足支持率大于等于λ
n,n-i
·
ρ
s

50.23)在i 1次迭代中,将候选集u
i
中的模式连接产生i 1的模式的候选集c
i 1
;在c
i 1
的模式中找到支持率大于等于λ
n,n-(i 1)
·
ρ
s
的模式,形成候选集u
i 1
,继续迭代,直到候选集为空,停止迭代,最终形成的候选集即为频繁项集。
51.在一些优选的实施例中,其中λ
n,n-m
·
ρ
s
为各次迭代内m的模式对应的支持度阈值,并按照公式(一)计算;
[0052][0053]
其中,n为日志数据特征序列s中频繁项集内模式的估算值;m为频繁项集子集的模式数值,m=1、2...i、i 1...,m<n,n
n
为在序列s中长度为n的偏移序列的个数;n
m
为在序列s中长度为m的偏移序列的个数;ρ为频率阈值;m和n分别表示每个特征序列间隔的最小间隔和最大间隔;
[0054]
所述长周期的频繁项集挖掘算法还包括:
[0055]
当迭代后产生的候选集不为空,产生长度为n 1的模式的候选集时,利用apriori算法挖掘频繁项集。
[0056]
具体为:对于i>n的每次迭代,在u
i-1
的基础上生成候选集c
i
,然后检查c
i
中的模式,收集支持率大于等于其对应的支持率阈值ρ
s
的模式组成u
i 1
,不断迭代,直到产生的候选集为空停止。
[0057]
当攻击者长期潜伏有目的地攻陷目标时,每一个步骤都会相隔一定的时间,当单独分析某一个或某几个步骤时与正常行为无异,只有将整个行为链条挖掘出来,才会发现隐蔽的异常。这种有间隔长周期的行为挖掘不符合常规挖掘算法的模式,如apriori,举例如下:假设一个序列为s=acttt,p1=at,p2=a,p2是p1的子模式,在具有周期性要求[1,3]的条件里,可以看出p1的支持度为3,p2的支持度为1,因此,apriori剪枝的原理对长周期有间隔的行为序列无效。因此本技术引入了长周期的频繁项集挖掘算法,提高了长周期数据挖掘的可靠性和准确性,提高了异常检测的准确性。
[0058]
3)对待检测日志数据进行挖掘,获得频繁项集,并将频繁项集与正常行为模型和异常行为模型进行比较,找出异常;
[0059]
如图4所示,步骤3)具体包括如下步骤:
[0060]
31)利用正常行为模型内的频繁项集作为学习数据,训练分类器,其中分类算法利用knn分类算法;
[0061]
32)利用训练好的分类器对待测日志数据的频繁项集进行分类;
[0062]
33)获得与正常行为模型内的频繁项集不一致的频繁项集,并与异常行为模型内的频繁项集进行相似度对比,找出属于异常行为模型的频繁项集,判断为异常;
[0063]
步骤33)中所述与异常行为模型内的频繁项集进行相似度对比方法如下:计算每个特征距离的方式,如果一个频繁项集的每个事件元素都包含在异常模型中,则认为存在异常;否则,认为是新增异常,需由专家判断或其他方式进行深入判断,如果是,则加入异常模型中。
[0064]
本发明提供的一种基于分类的异常检测方法,首先对正常日志数据和异常日志数据分别进行预处理,然后分别提取特征,挖掘频繁项集,建立正常行为模型和异常行为模型;将待检测日志数据,利用训练阶段同样的方式找出频繁项集,将其与正常行为模型和异常行为模型进行比较,找出异常,进而提高了异常检测的准确性。
[0065]
本发明另一些实施例提供一种基于分类的异常检测系统,如图5所示,所述异常检测系统包括:
[0066]
数据预处理模块10,被配置为对正常日志数据和异常日志数据分别进行预处理;
[0067]
数据预处理模块10包括:
[0068]
数据清洗子模块11,被配置为对正常日志数据和异常日志数据分别进行清洗;数据清洗,主要包括填写缺失值,光滑噪声数据,识别或删除离群点,并解决不一致性;
[0069]
数据集成子模块12,配置为对经过清洗后的正常日志数据和异常日志数据进行数据集成;数据集成主要解决数据识别、冗余及相关性分析等问题;
[0070]
数据压缩子模块13,配置为对经过数据集成的正常日志数据和异常日志数据进行压缩处理;压缩处理主要对数据特征进行简化,利用降维等方式压缩数据集的规模;
[0071]
模型构建模块20,被配置为分别提取经过预处理的正常日志数据和异常日志数据的特征,在预设时间窗口内对得到的正常日志特征和异常日志特征进行数据挖掘,得到正常频繁项集和异常频繁项集,构建正常行为模型和异常行为模型;
[0072]
针对安全设备日志,提取的日志特征主要包括7个元素,记为r(ts,event,srcip,srcport,dstip,dstport,lable),其中,ts代表时间,event代表事件行为类型,srcip代表源ip,srcport代表源端口,dstip代表目的ip,dstport代表目的端口,lable代表来自于哪台安全设备;
[0073]
其中,所述数据挖掘为利用长周期的频繁项集挖掘算法进行数据挖掘,具体包括如下步骤:
[0074]
将提取的日志数据特征作为候选集,扫描一遍候选集,找到支持率大于等于λ
n,n-1
·
ρ
s
长度为1的所有模式;
[0075]
连接这些模式,找到支持率大于等于λ
n,n-2
·
ρ
s
产生长度为2的模式的候选集,以此类推,在第i次迭代中产生一个由长度为i的模式组成的候选集u
i
,其中,这些模式满足支持率大于等于λ
n,n-i
·
ρ
s

[0076]
在i 1次迭代中,将候选集u
i
中的模式连接产生i 1的模式的候选集c
i 1
;在c
i 1
的模式中找到支持率大于等于λ
n,n-(i 1)
·
ρ
s
的模式,形成候选集u
i 1
,继续迭代,直到候选集为空,停止迭代,最终形成的候选集即为频繁项集。
[0077]
在一些优选的实施例中,其中λ
n,n-m
·
ρ
s
为各次迭代内m的模式对应的支持度阈值,并按照公式(一)计算;
[0078][0079]
其中,n为日志数据特征序列s中频繁项集内模式的估算值;m为频繁项集子集的模式数值,m=1、2...i、i 1...,m<n,n
n
为在序列s中长度为n的偏移序列的个数;n
m
为在序列s中长度为m的偏移序列的个数;ρ为频率阈值;m和n分别表示每个特征序列间隔的最小间隔和最大间隔;
[0080]
所述长周期的频繁项集挖掘算法还包括:
[0081]
当迭代后产生的候选集不为空,产生长度为n 1的模式的候选集时,利用apriori算法挖掘频繁项集。
[0082]
具体为:对于i>n的每次迭代,在u
i-1
的基础上生成候选集c
i
,然后检查c
i
中的模式,收集支持率大于等于其对应的支持率阈值ρ
s
的模式组成u
i 1
,不断迭代,直到产生的候选集为空停止;
[0083]
异常检测模块30,被配置为对待检测日志数据进行挖掘,获得频繁项集,并将频繁项集与正常行为模型和异常行为模型进行比较,找出异常。
[0084]
其中,异常检测模块包括:
[0085]
训练子模块31,被配置为利用正常行为模型内的频繁项集作为学习数据,训练分类器,其中分类算法利用knn分类算法;
[0086]
分类子模块32,被配置为利用训练好的分类器对待测日志数据的频繁项集进行分类;
[0087]
异常判断子模块33,被配置为获得与正常行为模型内的频繁项集不一致的频繁项集,并与异常行为模型内的频繁项集进行相似度对比,找出属于异常行为模型的频繁项集,判断为异常;
[0088]
其中,所述与异常行为模型内的频繁项集进行相似度对比方法如下:计算每个特
征距离的方式,如果一个频繁项集的每个事件元素都包含在异常模型中,则认为存在异常;否则,认为是新增异常,需由专家判断或其他方式进行深入判断,如果是,则加入异常模型中。
[0089]
本发明提供的一种基于分类的异常检测系统显著提高了异常检测的准确性。
[0090]
本发明另一些实施例提供一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。所述计算机可读存储介质存储有一个或者一个以上程序,所述一个或者一个以上程序被一个或者一个以上的处理器用来执行上述实施例所提供的方法。
[0091]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
[0092]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
[0093]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献