RSS
热门关键字:  数据挖掘  人工智能  数据仓库  搜索引擎  数据挖掘导论

基于隐马尔可夫模型的程序行为异常检测

来源: 作者:unkonwn 时间:2004-11-29 点击:

 入侵检测系统( IDS) 作为一种重要的网络安全 防卫系统,近年来已经成为计算机与网络安全研究 的热点. 目前,大部分基于主机的IDS ,都是通过使 用不同的方法,以系统调用作为研究对象来建立正 常的程序行为模型,从而实现入侵检测的. 这些方法 包括短序列匹配、数据挖掘、非负矩阵分解、主成分分析等[ 1O4 ] . 隐马尔可夫模型( HMM) 可以跟踪系统 调用中隐含的状态转移特性,因此利用它会有较好 的检测效果[5 ] . 但是,传统的基于HMM 的入侵检 测方法需分别计算每个系统调用的输出概率和状态 转移概率,在实际的运行环境中,计算量比较大. 本 文通过计算系统调用的短序列输出概率,提出了一种基于HMM 的入侵检测新方法,与文献[ 2 ,3 ]的 实验结果比较,检测效果有大幅度提高. 数据挖掘实验室

HMM 是一个双重随机过程,即内含一个不可 见的(隐藏的) 从属随机过程的随机过程,此不可 见的从属随机过程只能通过另一套产生观察序列的 随机过程观察得到. 假定计算机在正常运行情况下的某个进程在一 个时段内产生的长为T 的系统调用序列定义为观 察值O = { O1 , O2 , ?, Ot , ?, OT } , Ot 为t 时刻产生 的系统调用;系统调用序列对应的隐含状态序列为 Q = { q1 , q2 , ?, qt , ?, qT } , qt 为t 时刻所处状态. 那 么,可以使用3 个参数描述一个基于HMM 的正常 程序行为模型λ= ( A , B ,π) , 其中HMM 涉及到的 一些参数描述如表1 所示[6 ] .

数据挖掘实验室

在HMM 的实际应用中有以下3 个中心问题 需要解决.

数据挖掘研究院

(1) 评估问题:对于给定模型λ= ( A , B ,π) 和观 察值序列O = { O1 , O2 , ?, OT } , 求产生给定观察值 序列的概率P ( O|λ) . 用它可衡量给定模型与此观 察值序列之间的匹配情况. 数据挖掘研究院

(2) 解码问题:对于给定模型和观察值序列,求 可能性最大的隐含状态序列. 数据挖掘研究院

(3) 学习问题:对于给定的一个观察值序列,调 整参数λ,使得观察值的输出概率P ( O|λ) 最大. 也 就是,用给定的观察值序列去训练HMM 模型, 优 化模型参数. 数据挖掘研究院

要建立正常的程序行为模型,就是由程序在正 常运行过程中产生的系统调用序列确定HMM 的 参数λ= ( A , B ,π) , 也就是解决HMM 的3 个基本 问题中的学习问题. 本文使用标准的Baum2Welch (BW) 算法进行参数估计,以解决HMM 中的学习 问题. 通过不断地重估参数、调整状态转移概率和输出概率,直到P(O|λ) 局部最大. 建立HMM 需要确定状态数N . 入侵检测的实 验结果表明,如果状态数等于训练数据中系统调用 类型的个数,就会获得较好的检测效果[5 ] . 因此, 在 入侵检测时,状态数的选取与实验用到的具体数据 集有关.

数据挖掘研究院

资料全文下载 数据挖掘研究院

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
匿名?