入侵检测系统 下载本文

第八章 入侵检测系统

第一节 引言

通过电子手段对一个组织信息库的恶意攻击称为信息战(information warfare)。攻击的目的可能干扰组织的正常活动,甚至企图对组织的信息库造成严重的破坏。对信息战的各种抵抗措施都可归结为三类:保护、检测、响应。

保护 (入侵的防范)指保护硬件、软件、数据抵御各种攻击的技术。目前各种网络安全设施如防火墙及VPN,各种加密技术,身份认证技术,易攻击性扫描等都属于保护的范围之内,它们是计算机系统的第一道防线。

检测 (入侵的检测)研究如何高效正确地检测网络攻击。只有入侵防范不足以保护计算机的安全,任何系统及协议都不可避免地存在缺陷,可能是协议本身也可能是协议的实现,还有一些技术之外的社会关系问题,都能威胁信息安全。因此即使采用这些保护措施,入侵者仍可能利用相应缺陷攻入系统,这意味着入侵检测具有其他安全措施所不能代替的作用。

响应 (入侵的响应)是入侵检测之后的处理工作,主要包括损失评估,根除入侵者留下的后门,数据恢复,收集入侵者留下的证据等。这三种安全措施构成完整的信息战防御系统。

入侵检测(Intrusion Detection,ID)是本章讨论的主题之一,它通过监测计算机系统的某些信息,加以分析,检测入侵行为,并做出反应。入侵检测系统所检测的系统信息包括系统记录,网络流量,应用程序日志等。入侵(Intrusion)定义为未经授权的计算机使用者以及不正当使用(misuse)计算机的合法用户(内部威胁),危害或试图危害资源的完整性、保密性、可用性的行为。入侵检测系统(Intrusion Detection System,IDS)是实现入侵检测功能的硬件与软件。入侵检测基于这样一个假设,即:入侵行为与正常行为有显著的不同,因而是可以检测的。入侵检测的研究开始于20世纪80年代,进入90年代入侵检测成为研究与应用的热点,其间出现了许多研究原型与商业产品。

入侵检测系统在功能上是入侵防范系统的补充,而并不是入侵防范系统的替代。相反,它与这些系统共同工作,检测出已经躲过这些系统控制的攻击行为。入侵检测系统是计算机系统安全、网络安全的第二道防线。

一个理想的入侵检测系统具有如下特性: ? 能以最小的人为干预持续运行。 ? 能够从系统崩溃中恢复和重置。

? 能抵抗攻击。IDS必须能监测自身和检测自己是否已经被攻击者所改变。

? 运行时占用系统的开销最小。

? 能够根据被监视系统的安全策略进行配置。 ? 能在使用过程中适应系统和用户行为的改变。

当被监控系统的规模和受攻击的机会增加时,我们认为下列的特征也同样重要: ? 能够检测具有一定规模的网络。

? 保证当IDS某一部分被攻破时,对其余部分造成的影响尽可能的小。 ? 允许动态的再配置,即它必须有不用重新启动而能再次配置的功能。 ? 提供很低的误报率。

? 提供互操作性,在不同环境中运行的IDS组件能够相互作用。 ? 提供方便的用户界面,使管理者方便地配置和监视系统。 ? 能够以实时或接近于实时的方式检测入侵。

目前的入侵检测系统(包括研究的原型和商业化的IDS)的数目已经超过一百个,它们只具有上述特征的一部分。

第二节 入侵检测系统结构

CIDF (Common Intrusion Detection Framework)定义了通用的IDS系统结构,它将入侵检测系统分为四个功能模块,如图8.1所示:

图8.1 CIDF模型

事件产生器(Event generater, E-box)收集入侵检测事件,并提供给IDS其他部件处理,是IDS的信息源。事件包含的范围很广泛,既可以是网络活动也可是系统调用序列等系统信息。事件的质量、数量与种类对IDS性能的影响极大。

事件分析器(Analysis engine, A-box)对输入的事件进行分析并检测入侵。许多IDS的研究都集中于如何提高事件分析器的能力,包括提高对已知入侵识别的准确性以及提高发现未知入侵的几率等。

事件数据库(Event database, D-box)E-boxes 和 A-boxes 产生大量的数据,这些数据必须被妥善地存储,以备将来使用。D-box的功能就是存储和管理这些数据,用于IDS的训练和证据保存。

事件响应器(Response unit, C-box)对入侵做出响应,包括向管理员发出警告,切断入侵连接,根除入侵者留下的后门以及数据恢复等。

CIDF概括了IDS的功能,并进行了合理的划分。利用这个模型可描述当今现有的各种IDS的系统结构。对IDS的设计及实现提供了有价值的指导。

第三节 入侵检测系统分类

为了准确地分类,首先要确定用来分类的IDS特征。IDS是复杂的系统,若只用一种特征分类,结果将是粗糙的。因此本章根据多种特征对IDS进行了不同角度的分类。事件分析器是IDS的核心部分,故首先对检测方法进行分类。其次从事件产生器的角度分类,将采集事件种类或采集事件的方法作为分类标准。 一、检测方法分类

入侵检测的方法可大体分为两类:滥用检测(misuse detection)、异常检测(anomaly detection)。在IDS中,任何一个事件都可能属于以下三种情况:

? 已知入侵 ? 已知正常状态 ? 无法判定状态

第三种事件可能是一种未知的入侵, 也可能是正常状态,但在现有的系统和技术下无法判定。目前的检测方法都是对已知入侵和已知正常状态的识别,其中滥用检测识别已知入侵,但对于无法判定状态中的未知入侵将漏报(false negative),异常检测根据已知的正常状态将已知入侵、无法判定状态都当作异常,因此会产生误报(false positive)。 (一)滥用检测

根据对已知入侵的知识,在输入事件中检测入侵。这种方法不关心正常行为,只研究已知入侵,能较准确地检测已知入侵,但对未知入侵的检测能力有限。目前大多数的商业IDS都使用此类方法。滥用检测所采用的技术包括: (二)专家系统

使用专家系统技术,用规则表示入侵。通常使用的是 forward-chaining、production-based等专家系统工具。例如DARPA的Emerald项目,将P-BEST工具箱应用于入侵检测。 (三)状态转换模型

将入侵表示为一系列系统状态转换,通过监视系统或网络状态的改变发现入侵。典型系统是NetSTAT。

(四)协议分析与字符串匹配

将已知攻击模式与输入事件进行匹配以判定入侵的发生,这种方法具有速度高、扩展性好的特点,但容易产生误报。典型系统包括shadow、Bro和Snort等。 (五)异常检测

与滥用检测相反,异常检测对系统正常状态进行研究,通过监测用户行为模式、主机系统调用特征、网络连接状态等,建立系统常态模型。在运行中,将当前系统行为与常态模型进行比较,根据其与常态偏离的程度判定事件的性质。这种方法很有可