一种基于LDA主题特征的日志异常检测方法技术

技术编号:34738217 阅读:11 留言:0更新日期:2022-08-31 18:29
本发明专利技术是一种基于LDA主题特征的日志异常检测方法。该方法包含模型训练和异常检测两个阶段。在模型训练阶段,利用日志解析器将系统日志解析为日志模板集合和日志三元组集合,日志模板集合用以训练LDA模型,得到日志模板主题分类模型;利用LDA

【技术实现步骤摘要】
一种基于LDA主题特征的日志异常检测方法


[0001]本专利技术属于安全
,具体的说是涉及一种基于LDA主题特征的日志异常检测方法。

技术介绍

[0002]在系统安全领域,通过日志来检测软件或系统异常是一种常用的安全防护手段。从简单小型的软件系统到大型复杂的软件系统,以及分布式文件系统和高性能的云计算管理平台,都不可避免的存在漏洞,这就可能导致系统本身运行的异常。此外,攻击者也可能利用软件和系统的漏洞发起危险性攻击来入侵破坏系统。因此,及时、准确的检测出这些异常对于构建安全可信的系统来说至关重要。但是现有异常检测方法无法准确的学习正常和异常日志之间的语义差异特征,导致异常检测方法的泛化能力较差,在实际的应用中并没有取得很好的效果。
[0003]日志几乎是所有计算机系统中异常检测方法常见且主要的数据源,它记录了一系列描述软件和系统运行状态的重要事件。现有分析系统日志以实现异常检测方法可以被概括为四个种类:基于主要组件分析(PCA)的日志数据计数检测方法,基于变量挖掘(IM)捕捉日志复现模式的检测方法,基于工作流的检测方法以及基于深度学习的方法。前三种类型的方法在特定应用场景下能够取得很好的效果,但并不能用以检测不同的攻击。最后一类深度学习的方法使用日志模板进行分类以学习日志序列内的行为模式。目前基于深度学习的方法无法准确学习日志间的语义关系特征,并且对于新日志模板的注入,方法稳定性会受到较大的影响,方法实现模型可能会失效;此外,方法查准率、查全率、调和分数等相关性能还需进一步提高,以适应复杂多变的软件和系统。

技术实现思路

[0004]为了能够更加准确的学习日志间的语义关系特征以及更有效地通过非结构化的日志记录检测出进程或系统的异常行为,本专利技术提出了一种基于LDA主题特征的日志异常检测方法。
[0005]为了达到上述目的,本专利技术是通过以下技术方案实现的:
[0006]本专利技术是一种基于LDA主题特征的日志异常检测方法主要包含两个阶段:一是模型训练阶段,通过提取日志数据的模板主题特征,构建训练样本,进而训练生成异常检测模型;二是异常检测阶段,利用异常检测模型实现针对进程日志的检测。
[0007]模型训练阶段:
[0008](1)获取系统日志数据L={log1,log2,

,log
n
},对应进程集合设为P={p1,p2,

,p
f
},L由P中进程产生;使用日志解析器解析对L中的日志进行处理,生成日志模板集合K={k1,k2,

,k
m
}和日志三元组集合D={d1,d2,

,d
n
},其中d
i
为log
i
对应的日志三元组(k,pid,ts),k为日志模板,pid为进程标识符,ts为日志产生的时间戳。
[0009](2)对日志模板K进行预处理,将预处理数据输入预设主题集合为T={t1,t2,

,
t
r
}的LDA模型,训练生成基于LDA的日志模板主题分类模型LDA

CM。
[0010](3)初始化日志模板主题映射字典TD,使用LDA

CM模型计算K中每一个日志模板k
i
的主题概率分布向量Θ
i
,Θ
i
的维度等于T中主题的数量,Θ
i
[j]表示k
i
属于主题t
j
的概率;然后,获取Θ
i
中的最大概率值对应的主题t
x
,将映射{k
i

t
x
}添加到TD中。
[0011](4)根据P中的进程,对日志三元组集合D进行处理,并利用TD建立P中各进程对应的日志模板主题序列,构成的序列集合记为S={S1,S2,

,S
f
}。具体步骤如下:
[0012](4a)根据P中各进程的ID,即日志三元组中的pid,将D划分为若干子集,并根据时间戳ts对各子集中的日志三元组进行排序,从而为每个进程p
i
生成对应的日志三元组序列D
i
;然后,获取D
i
的每条日志三元组中的日志模板,得到进程p
i
对应的日志模板序列对应的日志模板序列
[0013](4b)对于P中每个进程p
i
的日志模板序列中的各日志模板k
i,j
,利用TD中的日志模板主题映射关系,确定k
i,j
的主题t
x
,进而为进程p
i
建立日志模板主题序列S
i
=<t
i,1
,t
i,2
,

,t
i,q
>。P中各进程对应的日志模板主题序列构成集合S={S1,S2,

,S
f
}。
[0014](5)利用滑动窗口机制,对S中的每个进程p
i
的日志模板主题序列S
i
进行处理,生成训练样本集合TP。具体步骤如下:
[0015](5a)初始化滑动窗口长度为h,滑动步长为1,训练样本集合TP为空;
[0016](5b)对S中的每个进程p
i
的日志模板主题序列S
i
=<t
i,1
,t
i,2
,

,t
i,q
>进行处理,如果S
i
中的日志模板主题数量小于h,即q≤h,则S
i
对应的日志模板主题窗口集合W
i
为空;否则,通过移动滑动窗口,构造与S
i
对应的日志模板主题窗口集合W
i
={w
i,1
,w
i,2
,

,w
i,y
},其中w
i,1
=<t
i,1
,t
i,2
,

,t
i,h
>,w
i,2
=<t
i,2
,t
i,3
,

,t
i,h+1
>,

,w
i,y
=<t
i,q

h
,t
i,q

h+1
,

,t
i,q
‑1>,然后构造训练样本对(w
i,1
,t
...

【技术保护点】

【技术特征摘要】
1.一种基于LDA主题特征的日志异常检测方法,其特征在于:所述日志异常检测方法包括如下步骤:步骤1、模型训练:在所述模型训练阶段,首先利用日志解析器将系统日志解析为日志模板集合和日志三元组集合,日志模板集合用以训练LDA模型,得到日志模板主题分类模型LDA

CM;然后,利用LDA

CM模型将日志三元组转换为进程日志模板主题,进而利用滑动窗口机制构造训练样本,最后将训练样本输入LSTM模型,训练生成日志异常检测模型LSTM

ADM;步骤2、异常检测:在所述异常检测阶段,首先将待检测的进程日志转换为对应的模板主题序列,然后输入步骤1中的LSTM

ADM模型,实现针对进程日志的异常检测。2.根据权利要求1所述一种基于LDA主题特征的日志异常检测方法,其特征在于:所述步骤1模型训练具体包括如下步骤:步骤1

1:获取系统日志数据L={log1,log2,

,log
n
},对应进程集合设为P={p1,p2,

,p
f
},L由P中进程产生,使用日志解析器解析对L中的日志进行处理,生成日志模板集合K={k1,k2,

,k
m
}以及与L对应的日志三元组集合D={d1,d2,

,d
n
},其中d
i
为log
i
对应的日志三元组(k,pid,ts),k为日志模板,pid为进程标识符,ts为日志产生的时间戳;步骤1

2:对日志模板集合K进行预处理,将预处理数据输入预设主题集合为T={t1,t2,

,t
r
}的LDA模型,训练生成基于LDA的日志模板主题分类模型LDA

CM;步骤1

3:初始化日志模板主题映射字典TD,使用步骤1

2.生成的LDA

CM模型计算日志模板集合K中每一个日志模板k
i
的主题概率分布向量Θ
i
,Θ
i
的维度等于T中主题的数量,Θ
i
[j]表示k
i
属于主题t
j
的概率,然后,获取Θ
i
中的最大概率值对应的主题t
x
,将映射{k
i

t
x
}添加到TD中;步骤1

4:根据应进程集合P中的进程,对日志三元组集合D进行处理,并利用日志模板主题映射字典TD建立应进程集合P中各进程对应的日志模板主题序列,构成的序列集合记为S={S1,S2,

,S
f
};步骤1

5:利用滑动窗口机制,对步骤1

4构成的序列集合S中的每个进程p
i
的日志模板主题序列S
i
进行处理,生成训练样本集合TP;步骤1

6:利用步骤1

5中生成的训练样本集合TP中的训练样本训练LSTM模型,生成基于LSTM的进程日志异常检测模型LSTM

ADM。3.根据权利要求2所述一种基于LDA主题特征的日志异常检测方法,其特征在于:所述步骤1

4中对日志三元组集合D进行处理,具体步骤为:步骤1
‑4‑
1:根据应进程集合P中各进程的ID,即日志三元组中的pid,将D划分为若干子集,并根据时间戳ts对各子集中的日志三元组进行排序,从而为每个进程p
i
构造对应的日志三元组序列D
i
,然后,获取D
i
的每条日志三元组中的日志模板,得到进程p
i
对应的日志模板序列步骤1
‑4‑
2:对于应进程集合P中每个进程p
i
的日志模板序列中的各日志模板k
i,j
,利用日志模板主题映射字典TD中的日志模板主题映射关系,确定k
i,j
的主题t
x
,进而为进程p
i
建立日志模板主题序列S
i
=<t
i,1
,t
i,2
,

,t
i,q
>,P中各进程对应的日志模板主题序列构成集合S={S1,S2,

,S
f
}。4.根据权利要求2所述一种基于LDA主题特征的日志异常检测方法,其特征在于:所述
步骤1

5中生成训练样本集合TP具体步骤为:步骤1
‑5‑
1:初始化滑动窗口长度为h,滑动步长为1,训练样本集合TP为空;步骤1
‑5‑
2:对序列集合S中的每个进程p
i
的日志模板主题序列S
i
=<t
i,1
,t
i,2
,

,t
i,q
>进行处理,如果S
i
中的日志模板主题数量小于h,即q≤h,则S
i
对应的日志模板主题窗口集合W
i
为空;否则,通过移动滑动窗口,构造与S
i
对应的日志模板主题窗口集合W
i
={w
i,1
,w
i,2
,

,w
i,y
},其中w
i,1
=<t
i,1
,t
i,2
,

,t
i,h
>,w
i,2
=<t
i,2
,t
i,3
,

,t
i,h+1
>,

,w
i,y
=<t
i,q

h
,t
i,q

h+1
,

,t
i,q
‑1>,然后构造训练样本对(w
i,1
,t
i,h+1
)、(w
...

【专利技术属性】
技术研发人员:戴华孙雪奎周建国周倩杨庚陈燕俐
申请(专利权)人:南京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1