1.按照采用技术和原理分类
按照入侵检测系统采用的技术与原理的不同,可分为异常检测、误用检测和特征检测。现有入侵检测系统大都使用误用检测方法,异常检测方法虽未得到广泛应用,但会有更大发展。
(1)异常检测(Anomaly Detection)
基于异常的检测技术有一个假设,即入侵事件的行为不同于一般正常用户或系统的行为。通过多种方法可建立正常或有效行为的模型。入侵检测系统在检测的时候就把当前行为和正常模型比较,如比较结果有一定偏离,则报警异常。换句话说,所有不符合于正常模型的行为都认为是入侵。如系统错误地将异常活动定义为入侵,称为错报(false positive);如系统未能检测出真正入侵行为称为漏报(false negative)。错报、漏报是衡量入侵检测系统性能的重要指标。
基于异常检测的优点就是它能够检测出新的入侵或者从未发生过的入侵,还可检测出属于权限滥用类型的入侵。它对操作系统的依赖性较小。
异常检测方法的查全率高但查准率低。过多误警是该方法的主要缺陷,这是因为系统的所有行为不可能用有限的训练数据来描述,并因系统行为随时改变,所以必须要有一种在线训练机制,实时学会被认为误警的行为,使系统模型尽量覆盖不被认为是入侵的行为。随着检测模型的逐步精确,异常检测会消耗更多的系统资源。
常见异常检测方法包括统计异常检测、基于特征选择异常检测、基于贝叶斯推理异常检测、基于模式预测异常检测、基于计算机学习异常检测等。目前较流行的方法是采用数据挖掘技术,来发现各种异常行为之间的关联性,如源IP关联、目的IP关联、特征关联与时间关联等。
(2)误用检测(Misuse Detection)
进行误用检测的前提是所有的入侵行为都有能被检测到的特征。误用检测系统提供攻击特征库,当受监测用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵。如果入侵特征与正常的用户行为匹配,则系统会发生错报;如果没有特征能与某种新的攻击行为匹配,则系统会发生漏报。如图10-22所示。
图10-22 误用检测模型
采用特征匹配,误用检测能明显降低错报率,并对每一种入侵都能提出详细资料,使得使用者能更方便地做出响应,但漏报率随之增加。攻击特征细微变化,使误用检测无能为力。
这种方法的缺陷是入侵信息的收集和更新比较困难,需很多时间和很大工作量,以及很强的安全知识,如网络攻击、操作系统、系统平台、应用程序等方面的知识。
这种方法适用于比特殊环境下的检测工具。另外,这种方法难以检测本地入侵(如权限滥用),因为没有一个确定规则可以描述这些入侵事件。
常见的误用检测方法包括基于条件概率的误用入侵检测、基于专家系统的误用入侵检测、基于状态迁移的误用入侵检测、基于键盘监控的误用入侵检测、基于模型的误用入侵检测等。以基于条件概率的误用入侵检测方法为例,该方法的依据是将入侵方式对应于一个外部事件序列,然后通过观测事件发生的情况来推测入侵出现。
(3)特征检测(Specifcation-based Detection)
和以上两种检测方法不同,特征检测关注的是系统本身的行为。定义系统行为轮廓,并将系统行为与轮廓进行比较,对未指明为正常行为的事件定义为入侵。特征检测系统常采用某种特征语言定义系统的安全策略。
这种检测方法的错报与行为特征定义的准确度有关,当系统特征不能囊括所有状态时就会产生漏报。特征检测最大的优点是可通过提高行为特征定义的准确度和覆盖范围,大幅降低漏报、错报,其最大不足是要求严格定义安全策略,这需要许多经验和技巧,且维护动态系统的特征库也较复杂。
因检测系统各有优缺点,实际上许多入侵检测系统通常采用两种以上方法来实现。
2.根据监测的数据源分类
入侵检测系统的一个重要概念是从什么样的数据源检测入侵。按数据来源的不同,入侵检测系统常分为基于主机(Host-based)的入侵检测系统、基于网络(Network-based)的入侵检测系统和分布式入侵检测系统。
(1)基于主机的入侵检测系统
基于主机的入侵检测系统通常安装在被重点检测的主机上,其数据源来自主机,如日志文件、审计记录等。通过监视与分析主机中的上述文件就能检测到入侵。能否及时采集到上述文件是该系统的关键,因入侵者会将主机的审计子系统作为攻击目标以避开入侵检测。
基于主机的IDS不如基于网络的IDS快捷,但确实具有基于网络的IDS无法比拟的优点:
●确定攻击是否成功。由于基于主机的IDS使用含有已发生事件的信息,可确定攻击是否成功。因此,基于主机的IDS是基于网络的IDS的完美补充;基于网络的IDS可尽早提供警告,基于主机的IDS可确定攻击成功与否。
●能检查到基于网络的入侵检测系统检查不出的攻击。如来自主要服务器键盘的攻击不经过网络,可以躲开基于网络的入侵检测系统,但躲不开基于主机的入侵检测系统。
●能监视特定的系统活动。基于主机的IDS可监视主要系统文件和可执行文件的改变、监视用户和访问文件的活动,包括文件访问、改变文件权限、试图建立新可执行文件及每位用户在网络中的行为。可监视只有管理员才能实施的非正常行为,如有关用户账号的增加、删除、更改情况,还可审计能影响系统记录的校验措施的改变,能查出那些欲改写重要系统文件或安装特洛伊木马或后门的尝试并将它们中断。但基于网络的IDS要做到这种程度非常困难,有时甚至查不到这些行为。
●适用被加密的与交换的环境。交换设备可将大型网络分成许多小型网络部件并加以管理,所以从覆盖足够大的网络范围的角度出发,很难确定配置基于网络的IDS的最佳位置。基于主机的IDS可安装在所需的重要主机上,在交换环境中具有更高能见度。基于网络的IDS对某些加密方式反应“迟钝”。由于加密方式位于协议堆栈内,所以基于网络的系统可能对某些攻击没有反应,基于主机的IDS则无这方面的限制,当操作系统及基于主机的IDS看到即将到来的业务时,数据流已被解密了。
●近于实时的检测与响应。尽管基于主机的IDS不能提供实时反应,但如应用正确,反应速度可非常接近实时。
●不要求额外硬件设备。基于主机的入侵检测系统存在于现行网络结构中,包括文件服务器、Web服务器及其他共享资源,不需要在网络上另安装登记、维护及管理硬件设备,使得基于主机的IDS效率很高。
●成本低廉。基于网络IDS比基于主机IDS要昂贵得多。(www.xing528.com)
基于主机IDS的主要弱点:
●基于主机的IDS需要安装在要保护的设备上。如当一个数据库服务器要保护时,就要在服务器本身安装入侵检测系统,这会降低应用系统效率,也会带来一些额外安全问题:安装了基于主机的IDS后,原本安全管理员无权访问的服务器会变成可访问了。
●基于主机的IDS依赖于服务器固有的日志与监视能力。如服务器没有配置日志功能,则必须重新配置,这将会给运行中的业务系统带来不可预见的性能影响。
●全面部署基于主机的IDS代价较大,用户很难将所有主机用基于主机的IDS保护起来,只能选择保护部分重要主机。未安装基于主机的IDS的主机将成为保护盲点,入侵者可利用这些计算机达到攻击目的。
●基于主机的IDS除监测自身的主机以外,根本不监测网络的情况。对入侵行为的分析工作量将随着主机数目的增加而增加。
(2)基于网络的入侵检测系统(NIDS)
NIDS放置在比较重要的网段内,其数据源是网络上规范的TCP/IP协议数据包,即通过共享网段上对通信数据侦听采集数据,对每一数据包进行特征分析。如数据包与系统内置的某些规则吻合,NIDS响应模块就提供多种选项实现通知、报警并对攻击采取相应的反应。通常包括通知管理员、中断网络连接、为法律分析与证据收集而做会话记录。NIDS不需主机提供严格日志文件、审计记录,对主机资源消耗少,并可提供对网络通用的保护而无需考虑异构主机的不同架构。目前大部分入侵检测系统都基于网络。典型的NIDS如图10-23所示。
通常,第一个入侵检测系统放在防火墙外,以探查来自互联网的攻击。这种策略不但能检测对内部网的攻击,还能检测对防火墙的攻击,但检测不到来自内网的攻击。另一传感器安装在网络内部以检测成功地穿过防火墙的数据包以及内部网络入侵及威胁,这个位置是基于网络入侵检测系统常设置的位置。
图10-23 基于网络的入侵检测系统
基于网络的IDS主要特点如下。
优点:
●成本较低。基于网络的IDS可在几个关键访问点上进行策略配置,以观察发往多个系统的网络通信,所以不要求在多个主机上装载并管理。因需监测点较少,成本较低。
●检测基于主机的IDS漏掉的攻击。基于网络的IDS检查所有包的头部从而发现恶意和可疑的行动迹象。如来自于IP地址的拒绝服务型和碎片型攻击只要经过网络,都会在基于网络的IDS中被发现。
●攻击者不易转移证据。基于网络的IDS使用正在发生的网络通信进行对实时攻击的检测,所以攻击者无法转移证据。被捕获的数据不仅包括攻击的方法,而且还包括可识别的入侵者身份及对其进行起诉的信息。
●实时检测与响应。基于网络的IDS可在恶意及可疑攻击发生的同时将其检测出来,并做出更快的通知及响应。
●检测未成功的攻击和不良意图。基于网络的IDS增加有价值数据,以判别不良意图。
●操作系统无关性。基于网络的IDS作为安全监测资源,与主机操作系统无关。而基于主机的系统必须在特定的、没有遭到破坏的操作系统中才能正常工作,生成有用结果。
●安装简便。基于网络的IDS有向专门设备发展趋势,安装一个网络入侵检测系统非常方便,只需将定制设备接上电源,完成少量配置,将其连到网络上即可。
缺点:
●监测范围的局限性。基于网络的IDS只检查与它直接连接网段的通信,不能检测在不同网段的数据包,而安装多台基于网络的IDS会使成本大增。
●为了性能目标通常采用特征检测方法,可检测出一些普通的攻击,但很难实现一些复杂的、需大量计算与分析时间的攻击检测。
●可能会将大量数据传回分析系统中,影响系统的性能和响应速度。
●处理加密的会话过程较困难,目前通过加密通道的攻击尚不多。
两种入侵检测系统比较:基于主机的入侵检测系统的检测范围小,只限于一台主机内,而基于网络的入侵检测系统检测范围是整个网段;基于主机的入侵检测系统不但可检测出系统的远程入侵,还可检测出本地入侵,但因主机信息多种多样,不同操作系统,信息源格式不同,使得基于主机的入侵检测系统较难实现;基于网络的入侵检测系统只能检测出远程入侵,对于本地入侵看不到;因网络数据一般都是规范的TCP/IP协议的数据包,所以基于网络的入侵检测系统较易实现。大多数入侵检测的商品都是基于网络的入侵检测系统,基于主机的入侵检测系统只限于系统的安全工具。
(3)分布式入侵检测系统
分布式入侵检测系统的数据也是来源于网络中的数据包,不同的是它采用分布式检测、集中管理方法。即在每网段安装一黑匣子,该黑匣子相当于基于网络的入侵检测系统,只是没有用户操作界面。黑匣子用来监测其所在网段上的数据流,根据集中安全管理中心制定的安全策略、响应规则等来分析检测网络数据,同时向集中安全管理中心发回安全事件信息。目前这种技术在ISS的RealSecure等商业产品中已有应用。
3.根据工作方式分类
按工作方式,入侵检测系统分为离线检测系统与在线检测系统。离线检测系统是非实时工作系统,事后分析审计事件,检查入侵活动。根据系统对用户操作所做历史审计记录判断是否存在入侵行为,如有就断开连接,并记录入侵证据和进行数据恢复。事后入侵检测由管理员定期或不定期进行,不具实时性;在线检测系统是实时联机检测系统,包含对实时网络数据包的分析和实时主机审计分析。其工作过程:实时入侵检测在网络连接过程中进行,系统根据用户的历史行为模型、存储在计算机中的专家知识以及神经网络模型对用户当前操作判断,一旦发现入侵迹象立即断开入侵者与主机的连接,并搜集证据和实施数据恢复。检测过程是不断循环进行的。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。