第五章入侵检测技术第5章入侵检测技术内容提要:入侵检测概述入侵检测的技术实现分布式入侵检测入侵检测系统的标准入侵检测系统示例本章小结第五章入侵检测技术5.1入侵检测概述入侵检测技术研究最早可追溯到1980年JamesP.Aderson所写的一份技术报告,他首先提出了入侵检测的概念。1987年DorothyDenning提出了入侵检测系统(IDS,IntrusionDetectionSystem)的抽象模型(如图5-1所示),首次提出了入侵检测可作为一种计算机系统安全防御措施的概念,与传统的加密和访问控制技术相比,IDS是全新的计算机安全措施。返回本章首页第五章入侵检测技术学学学学学学学学学学学学学学学学学学学学学学学学学学常学学学学学学学学学学学活学学学学学学学学学学学学学学学学5-1Denning学学学学学学学学返回本章首页第五章入侵检测技术入侵检测技术研究最早可追溯到1980年JamesP.Aderson所写的一份技术报告,他首先提出了入侵检测的概念。1987年DorothyDenning提出了入侵检测系统(IDS,IntrusionDetectionSystem)的抽象模型(如图5-1所示),首次提出了入侵检测可作为一种计算机系统安全防御措施的概念,与传统的加密和访问控制技术相比,IDS是全新的计算机安全措施。返回本章首页第五章入侵检测技术1988年TeresaLunt等人进一步改进了Denning提出的入侵检测模型,并创建了IDES(IntrusionDetectionExpertSystem),该系统用于检测单一主机的入侵尝试,提出了与系统平台无关的实时检测思想,1995年开发的NIDES(Next-GenerationIntrusionDetectionExpertSystem)作为IDES完善后的版本可以检测出多个主机上的入侵。返回本章首页第五章入侵检测技术1990年,Heberlein等人提出了一个具有里程碑意义的新型概念:基于网络的入侵检测——网络安全监视器NSM(NetworkSecurityMonitor)。1991年,NADIR(NetworkAnomalyDetectionandIntrusionReporter)与DIDS(DistributeIntrusionDetectionSystem)提出了通过收集和合并处理来自多个主机的审计信息可以检测出一系列针对主机的协同攻击。返回本章首页第五章入侵检测技术1994年,MarkCrosbie和GeneSpafford建议使用自治代理(autonomousagents)以提高IDS的可伸缩性、可维护性、效率和容错性,该理念非常符合计算机科学其他领域(如软件代理,softwareagent)正在进行的相关研究。另一个致力于解决当代绝大多数入侵检测系统伸缩性不足的方法于1996年提出,这就是GrIDS(Graph-basedIntrusionDetectionSystem)的设计和实现,该系统可以方便地检测大规模自动或协同方式的网络攻击。返回本章首页第五章入侵检测技术近年来,入侵检测技术研究的主要创新有:Forrest等将免疫学原理运用于分布式入侵检测领域;1998年RossAnderson和AbidaKhattak将信息检索技术引进入侵检测;以及采用状态转换分析、数据挖掘和遗传算法等进行误用和异常检测。返回本章首页第五章入侵检测技术5.1.1入侵检测原理图5-2给出了入侵检测的基本原理图。入侵检测是用于检测任何损害或企图损害系统的保密性、完整性或可用性的一种网络安全技术。它通过监视受保护系统的状态和活动,采用误用检测(MisuseDetection)或异常检测(AnomalyDetection)的方式,发现非授权的或恶意的系统及网络行为,为防范入侵行为提供有效的手段。返回本章首页第五章入侵检测技术入侵检测分析引擎历史行为特定行为模式数据提取入侵?否记录证据响应处理是安全策略当前系统/用户行为知识库其它图5-2入侵检测原理框图返回本章首页第五章入侵检测技术入侵检测系统(IntrusionDetectionSystem,IDS)就是执行入侵检测任务的硬件或软件产品。IDS通过实时的分析,检查特定的攻击模式、系统配置、系统漏洞、存在缺陷的程序版本以及系统或用户的行为模式,监控与安全有关的活动。一个基本的入侵检测系统需要解决两个问题:一是如何充分并可靠地提取描述行为特征的数据;二是如何根据特征数据,高效并准确地判定行为的性质。返回本章首页第五章入侵检测技术5.1.2系统结构由于网络环境和系统安全策略的差异,入侵检测系统在具体实现上也有所不同。从系统构成上看,入侵检测系统应包括事件提取、入侵分析、入侵响应和远程管理四大部分,另外还可能结合安全知识库、数据存储等功能模块,提供更为完善的安全检测及数据分析功能(如图5-3所示)。返回本章首页第五章入侵检测技术数据提取入侵分析数据存储响应处理原始数据流知识库图5-3入侵检测系统结构返回本章首页第五章入侵检测技术入侵检测的思想源于传统的系统审计,但拓宽了传统审计的概念,它以近乎不间断的方式进行安全检测,从而可形成一个连续的检测过程。这通常是通过执行下列任务来实现的:监视、分析用户及系统活动;系统构造和弱点的审计;识别分析知名攻击的行为特征并告警;异常行为特征的统计分析;评估重要系统和数据文件的完整性;操作系统的审计跟踪管理,并识别用户违反安全策略的行为。返回本章首页第五章入侵检测技术5.1.3系统分类由于功能和体系结构的复杂性,入侵检测按照不同的标准有多种分类方法。可分别从数据源、检测理论、检测时效三个方面来描述入侵检测系统的类型。1.基于数据源的分类通常可以把入侵检测系统分为五类,即基于主机、基于网络、混合入侵检测、基于网关的入侵检测系统以及文件完整性检查系统。返回本章首页第五章入侵检测技术2.基于检测理论的分类从具体的检测理论上来说,入侵检测又可分为异常检测和误用检测。异常检测(AnomalyDetection)指根据使用者的行为或资源使用状况的正常程度来判断是否入侵,而不依赖于具体行为是否出现来检测。误用检测(MisuseDetection)指运用已知攻击方法,根据已定义好的入侵模式,通过判断这些入侵模式是否出现来检测。返回本章首页第五章入侵检测技术3.基于检测时效的分类IDS在处理数据的时候可以采用实时在线检测方式,也可以采用批处理方式,定时对处理原始数据进行离线检测,这两种方法各有特点(如图5-5所示)。离线检测方式将一段时间内的数据存储起来,然后定时发给数据处理单元进行分析,如果在这段时间内有攻击发生就报警。在线检测方式的实时处理是大多数IDS所采用的办法,由于计算机硬件速度的提高,使得对攻击的实时检测和响应成为可能。返回本章首页第五章入侵检测技术学学学学学学学学学学学学学学学学学学学学学学学学学学学学YN学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学学5-5学a学学学学学学学学学学学学学学b学学学学学学学学学学学学学返回本章首页第五章入侵检测技术5.2入侵检测的技术实现对于入侵检测的研究,从早期的审计跟踪数据分析,到实时入侵检测系统,到目前应用于大型网络的分布式检测系统,基本上已发展成为具有一定规模和相应理论的研究领域。入侵检测的核心问题在于如何对安全审计数据进行分析,以检测其中是否包含入侵或异常行为的迹象。这里,我们先从误用检测和异常检测两个方面介绍当前关于入侵检测技术的主流技术实现,然后对其它类型的检测技术作简要介绍。返回本章首页第五章入侵检测技术5.2.1入侵检测分析模型分析是入侵检测的核心功能,它既能简单到像一个已熟悉日志情况的管理员去建立决策表,也能复杂得像一个集成了几百万个处理的非参数系统。入侵检测的分析处理过程可分为三个阶段:构建分析器,对实际现场数据进行分析,反馈和提炼过程。其中,前两个阶段都包含三个功能:数据处理、数据分类(数据可分为入侵指示、非入侵指示或不确定)和后处理。返回本章首页第五章入侵检测技术5.2.2误用检测(MisuseDetection)误用检测是按照预定模式搜寻事件数据的,最适用于对已知模式的可靠检测。执行误用检测,主要依赖于可靠的用户活动记录和分析事件的方法。1.条件概率预测法条件概率预测法是基于统计理论来量化全部外部网络事件序列中存在入侵事件的可能程度。返回本章首页第五章入侵检测技术2.产生式/专家系统用专家系统对入侵进行检测,主要是检测基于特征的入侵行为。所谓规则,即是知识,专家系统的建立依赖于知识库的完备性,而知识库的完备性又取决于审计记录的完备性与实时性。产生式/专家系统是误用检测早期的方案之一,在MIDAS、IDES、NIDES、DIDS和CMDS中都使用了这种方法。返回本章首页第五章入侵检测技术3.状态转换方法状态转换方法使用系统状态和状态转换表达式来描述和检测入侵,采用最优模式匹配技巧来结构化误用检测,增强了检测的速度和灵活性。目前,主要有三种实现方法:状态转换分析、有色Petri-Net和语言/应用编程接口(API)。返回本章首页第五章入侵检测技术4.用于批模式分析的信息检索技术当前大多数入侵检测都是通过对事件数据的实时收集和分析来发现入侵的,然而在攻击被证实之后,要从大量的审计数据中寻找证据信息,就必须借助于信息检索(IR,InformationRetrieval)技术,IR技术当前广泛应用于的搜索引擎上。IR系统使用反向文件作为索引,允许高效地搜寻关键字或关键字组合,并使用Bayesian理论帮助提炼搜索。返回本章首页第五章入侵检测技术5.KeystrokeMonitor和基于模型的方法KeystrokeMonitor是一种简单的入侵检测方法,它通过分析用户击键序列的模式来检测入侵行为,常用于对主机的入侵检测。该方法具有明显的缺点,首先,批处理或Shell程序可以不通过击键而直接调用系统攻击命令序列;其次,操作系统通常不提供统一的击键检测接口,需通过额外的钩子函数(Hook)来监测击键。返回本章首页第五章入侵检测技术5.2.3异常检测(AnomalyDetection)异常检测基于一个假定:用户的行为是可预测的、遵循一致性模式的,且随着用户事件的增加异常检测会适应用户行为的变化。用户行为的特征轮廓在异常检测中是由度量(measure)集来描述,度量是特定网络行为的定量表示,通常与某个检测阀值或某个域相联系。异常检测可发现未知的攻击方法,体现了强健的保护机制,但对于给定的度量集能否完备到表示所有的异常行为仍需要深入研究。返回本章首页第五章入侵检测技术1.Denning的原始模型DorothyDenning于1986年给出了入侵检测的IDES模型,她认为在一个系统中可以包括四个统计模型,每个模型适合于一个特定类型的系统度量。(1)可操作模型(2)平均和标准偏差模型(3)多变量模型(4)Markov处理模型返回本章首页第五章入侵检测技术2.量化分析异常检测最常用的方法就是将检验规则和属性以数值形式表示的量化分析,这种度量方法在Denning的可操作模型中有所涉及。量化分析通过采用从简单的加法到比较复杂的密码学计算得到的结果作为误用检测和异常检测统计模型的基础。(1)阀值检验(2)基于目标的集成检查(3)量化分析和数据精简返回本章首页第五章入侵检测技术3.统计度量统计度量方法是产品化的入侵检测系统中常用的方法,常见于异常检测。运用统计方法,有效地解决了四个问题:(1)选取有效的统计数据测量点,生成能够反映主体特征的会话向量;(2)根据主体活动产生的审计记录,不断更新当前主体活动的会话向量;(3)采用统计方法分析数据,判断当前活动是否符合主体的历史行为特征;(4)随着时间推移,学习主体的行为特征,更新历史记录。返回本章首页第五章入侵检测技术4.非参数统计度量非参数统计方法通过使用非数据区分技术,尤其是群集分析技术来分析参数方法无法考虑的系统度量。群集分析的基本思想是,根据评估标准