论文部分内容阅读
入侵检测系统是信息安全纵深保护体系的重要组成部分。本文研究了基于操作系统用户层和内核层双层空间审计迹的基于主机的入侵检测技术,从源数据选择与收集、源数据降维技术、变长序列进程语义模式抽取方法以及入侵检测算法这四个方面展开研究和讨论,并针对进程行为审计迹的语义特征提出了几种高效的入侵检测模型。
本文所做的工作主要包括如下几点内容:
(1)分析了系统调用作为入侵检测数据源的缺陷,提出了在系统调用基础上融合那些与之相补充的Glibc基础库函数来组成入侵检测数据源的方法,并设计了一套通用的、高可靠性的、可移植的审计迹采集框架模型。该框架模型所采集的审计迹除了内核空间系统调用和用户空间Glibc基础库函数调用之外,还包含进程在执行时产生的大量审计信息(如时间属性、属主属性、运行参数、返回值、进程堆栈信息等),依据这些审计信息可以设计出更加高效、合理的入侵检测算法。
(2)针对由于入侵检测系统正常行为模式库规模过于庞大而造成实时性能差的问题,提出了一种基于典型集的源数据降维技术。由于典型集的任何性质对于全集都将以很大概率成立,反映了大样本的平均行为。因此,通过使用典型集的方法对数据进行降维处理,在保证入侵检测效果的前提下,不仅可以减少数据存储量,缓解入侵检测系统模块之间的通信压力,还可以减少入侵检测系统的训练时间,提高入侵检测实时性能。
(3)在基于定长短序列模式的入侵检测方法中,短序列长度选择对于入侵检测效果影响很大,如何选择合适的短序列长度也一直是一个未解决的难题。本文提出了变长短序列语义模式的抽取方法,这种模式抽取方法,依据进程执行过程中隐含的各个具有独立语义子状态,对审计迹进行变长模型短序列切分。由于进程执行过程中产生的各个语义子状态具有树型层次依赖关系,因此,本文利用变长语义模式短序列和审计信息中的进程堆栈函数返回地址链构造了一种适合于入侵检测的、非平衡树型结构的层次隐马尔科夫模型,这种层次隐马尔科夫模型较传统的隐马氏模型更能反应出各个进程执行子状态之间的语义转移关系,具有更好的检测效果。
(4)针对隐马尔科夫模型在表达状态驻留时间上的不足之处,提出了一种面向进程执行语义模式、带状态驻留时间的隐马尔科夫入侵检测模型。在该模型中利用状态驻留时间分布来描述系统在某一状态上的驻留时间,相比于传统的隐马尔科夫模型更符合进程的运行特征。在该模型的训练阶段,采用进程语义行为模式序列来构造马氏模型的状态集,从而降低了模型的状态数以及算法的计算复杂度;在该模型的检测阶段,通过计算待测进程产生的定长审计迹短序列在该模型下的输出概率来判断进程是否处于异常状态。