入侵检测技术ppt.ppt_第1页
入侵检测技术ppt.ppt_第2页
入侵检测技术ppt.ppt_第3页
入侵检测技术ppt.ppt_第4页
入侵检测技术ppt.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,9.1 入侵检测的基本原理,9.2 网络入侵技术,9.3 应用实例,第9章 入侵检测技术,本节内容 9.1.1 入侵检测的基本原理 9.1.2 入侵检测系统的分类 9.1.3 入侵检测系统的发展方向,9.1 入侵检测的基本原理,9.1.1 入侵检测的基本原理 1. 入侵检测产品的现状 入侵检测系统IDS(Intrusion Detect System)分为两种:主机入侵检测系统(HIDS)和网络入侵检测系统(NIDS)。主机入侵检测系统分析对象为主机审计日志,所以需要在主机上安装入侵检测软件,针对不同的系统、不同的版本需安装不同的主机引擎,安装配置较为复杂,同时对系统的运行和稳定性造成影响,目前在国内应用较少。网络入侵监测分析对象为网络数据流,只需安装在网络的监听端口上,对网络的运行无任何影响,目前国内使用较为广泛。本章介绍的是当前广泛使用的网络入侵监测系统。,2.入侵检测系统的作用 我们知道,防火墙是Internet网络上最有效的安全保护屏障,防火墙在网络安全中起到大门警卫的作用,对进出的数据依照预先设定的规则进行匹配,符合规则的就予以放行,起到访问控制的作用,是网络安全的第一道闸门。但防火墙的功能也有局限性,防火墙只能对进出网络的数据进行分析,对网络内部发生的事件完全无能为力。 同时,由于防火墙处于网关的位置,不可能对进出攻击作太多判断,否则会严重影响网络性能。如果把防火墙比作大门警卫的话,入侵检测就是网络中不间断的摄像机,入侵检测通过旁路监听的方式不间断的收取网络数据,对网络的运行和性能无任何影响,同时判断其中是否含有攻击的企图,通过各种手段向管理员报警。 IDS是主动保护自己免受攻击的一种网络安全技术。IDS对网络或系统上的可疑行为做出相应的反应,及时切断入侵源,保护现场并通过各种途径通知网络管理员,增大保障系统安全。,3.入侵检测系统的工作流程 入侵检测系统由数据收集、数据提取、数据分析、事件处理等几个部份组成。 (1) 数据收集 入侵检测的第一步是数据收集,内容包括系统、网络运行、数据及用户活动的状态和行为,而且,需要在计算机网络系统中的若干不同关键点(不同网段和不同主机)收集数据。入侵检测很大程度上依赖于收集数据的准确性与可靠性,因此,必须使用精确的软件来报告这些信息,因为黑客经常替换软件以搞混和移走这些数据,例如替换被程序调用的子程序、库和其它工具。数据的收集主要来源以下几个方面:系统和网络日志文件、目录和文件不期望的改变、程序不期望的行为、物理形式的入侵数据。 (2)数据提取 从收集到的数据中提取有用的数据,以供数据分析之用。 (3)数据分析 对收集到的有关系统、网络运行、数据及用户活动的状态和行为等数据通过三种技术手段进行分析:模块匹配、统计分析和完整性分析。 (4)结果处理 记录入侵事件,同时采取报警、中断连接等措施。,9.1.2 入侵检测系统的分类 入侵检测系统(IDS)可以分成3类:基于主机型(Host Based) 入侵检测系统、基于网络型(Network Based) 入侵检测系统和基于代理型(Agent Based) 入侵检测系统。 1. 基于主机的入侵检测系统 基于主机的入侵检测系统通常以系统日志、应用程序日志等审计记录文件作为数据源。它是通过比较这些审计记录文件的记录与攻击签名(Attack Signature,指用一种特定的方式来表示已知的攻击模式)以发现它们是否匹配。如果匹配,检测系统向系统管理员发出入侵报警并采取相应的行动。基于主机的IDS可以精确地判断入侵事件,并可对入侵事件及时做出反应。它还可针对不同操作系统的特点判断应用层的入侵事件。基于主机的IDS有着明显的优点: l 适合于加密和交换环境; l 可实时的检测和响应; l 不需要额外的硬件。 基于主机的入侵检测系统对系统内在的结构却没有任何约束,同时可以利用操作系统本身提供的功能,并结合异常检测分析,更能准确的报告攻击行为。 基于主机的入侵检测系统存在的不足之处在于:会占用主机的系统资源,增加系统负荷,而且针对不同的操作平台必须开发出不同的程序,另外所需配置的数量众多。,2. 基于网络的入侵检测系统 基于网络的入侵检测系统把原始的网络数据包作为数据源。利用网络适配器来实时地监视并分析通过网络进行传输的所有通信业务。它的攻击识别模块进行攻击签名识别的方法有:模式、表达式或字节码匹配;频率或阈值比较;次要事件的相关性处理;统计异常检测。一旦检测到攻击,IDS的响应模块通过通知、报警以及中断连接等方式来对攻击行为做出反应。然而它只能监视通过本网段的活动,并且精确度较差,在交换网络环境中难于配置,防欺骗的能力也比较差。其优势有: l 成本低; l 攻击者转移证据困难; l 实时检测和响应; l 能够检测到未成功的攻击企图; l与操作系统无关。,3. 基于代理的入侵检测系统 基于代理的入侵检测系统用于监视大型网络系统。随着网络系统的复杂化和大型化,系统弱点趋于分布式,而且攻击行为也表现为相互协作式特点,所以不同的IDS之间需要共享信息,协同检测。整个系统可以由一个中央监视器和多个代理组成。中央监视器负责对整个监视系统的管理,它应该处于一个相对安全的地方。代理则被安放在被监视的主机上(如服务器、交换机、路由器等)。代理负责对某一主机的活动进行监视,如收集主机运行时的审计数据和操作系统的数据信息,然后将这些数据传送到中央监视器。代理也可以接受中央监控器的指令。这种系统的优点是可以对大型分布式网络进行检测。,9.2 网络入侵技术,本节内容 9.2.1 基本检测方法 9.2.2 异常检测模型 9.2.3 误用检测模型 9.2.4 异常检测模型和误用检测模型的比较 9.2.5 其他入侵检测模型,9.2.1 基本检测方法 1.基于用户特征的检测 基于用户特征的检测方法是根据用户通常的举动来识别特定的用户,用户的活动模式根据在一段时间内的观察后建立。例如,某个用户多次使用某些命令,在特定的时间内以一定的频度访问文件、系统登录及执行相同的程序等。可以按照用户的活动情况给每个合法的用户建立特征库,用以检测和判断登录用户的合法性,因为非法用户不可能像合法用户一样地进行同样的操作。 2.基于入侵者的特征的检测 当外界用户或入侵者试图访问某个计算机系统时会进行某些特殊的活动或使用特殊方法,如果这些活动能够予以描述并作为对入侵者的描述,入侵活动就能够被检测到。非法入侵者活动的一个典型例子是,当其获得系统的访问权时,通常会立即查看当前有哪些用户在线,并且会反复检查文件系统和浏览目录结构,还会打开这些文件,另外,非法入侵者在一个系统上不会停留过久,而一个合法的用户一般是不会这样做的。 3.基于活动的检测 一般来说,非法入侵者在入侵系统时会进行某些已知的且具有共性的操作,比如在入侵UNIX时入侵通常要试图获得根(root)权限,所以,我们有理由认为任何企图获得根权限的活动都要被检测。,9.2.2 异常检测模型 1.异常检测模型的基本原理 异常检测,也被称为基于行为的检测。其基本前提是:假定所有的入侵行为都是异常的。其基本原理是:首先建立系统或用户的“正常”行为特征轮廓,通过比较当前的系统或用户的行为是否偏离正常的行为特征轮廓来判断是否发生了入侵。而不是依赖于具体行为是否出现来进行检测的,从这个意义上来讲,异常检测是一种间接的方法。,2.异常检测的关键技术 (1)特征量的选择 异常检测首先是要建立系统或用户的“正常”行为特征轮廓,这就要求在建立正常模型时,选取的特征量既要能准确地体现系统或用户的行为特征,又能使模型最优化,即以最少的特征量就能涵盖系统或用户的行为特征。例如:我们可以检测磁盘的转速是否正常,CPU是否无故超频等异常现象。 (2)参考阈值的选定 因为在实际的网络环境下,入侵行为和异常行为往往不是一对一的等价关系,经常发生这样的异常情况:如某一行为是异常行为,而它并不是入侵行为;同样存在某一行为是入侵行为,而它却并不是异常行为的情况。这样就会导致检测结果的虚警(False Positives)和漏警(False Negatives)的产生。由于异常检测是先建立正常的特征轮廓作为比较的参考基准,这个参考基准即参考阈值的选定是非常关键的,阈值定的过大,那漏警率会很高;阈值定的过小,则虚警率就会提高。合适的参考阈值的选定是影响这一检测方法准确率的至关重要的因素。 从异常检测的原理我们可以看出,该方法的技术难点在于:“正常”行为特征轮廓的确定、特征量的选取、特征轮廓的更新。由于这几个因素的制约,异常检测的虚警率很高,但对于未知的入侵行为的检测非常有效。此外,由于需要实时地建立和更新系统或用户的特征轮廓,这样所需的计算量很大,对系统的处理性能要求会很高。,3.异常检测模型的实现方法 异常检测模型常用的实现方法有:统计异常检测方法、基于特征选择异常检测方法、基于贝叶斯推理异常检测方法、基于贝叶斯网络异常检测方法、基于模式预测异常检测方法、基于神经网络异常检测方法、基于机器学习异常检测方法、基于数据采掘异常检测方法等。 (1)基于统计分析的异常检测方法 基于统计分析的异常检测方法是根据异常检测器观察主体的活动情况,随之产生能刻画这些活动的行为框架。每一个框架能保存记录主体的当前行为,并定时地将当前的框架与存储的框架合并。通过比较当前的框架与事先存储的框架来判断异常行为,从而检测出网络的入侵行为。 设M1,M2,Mn为框架的特征变量,如CPU的使用、I/O的使用、使用地点及时间、邮件的使用、文件的访问数量、网络的会话时间等。用S1,S2,Sn分别表示框架中的变量M1,M2,Mn的异常测量值,这些值表明了异常程度,Si的值越高,则Mi的异常性就越大。,框架的异常值是将有关的异常测量平方加权后得到的,其计算式如下: s=a12a22an2 这里,i表示框架与变量Mi相关的权重,一般地,M1,M2,Mn不是相互独立的,而是具其相关性的。常见的几种异常测量值的测量类型如下: l 活动强度测量:用以描述活动的处理速度; l 审计记录分布测量:用以描述最近审计记录中所有活动类型的分布状况; l 类型测量:用以描述特定的活动在各种类型的分布状况; l顺序测量:用以描述活动的输出结果。,(2)基于特征选择的异常检测方法 基于特征选择的异常检测方法是通过从一组度量中挑选能检测出入侵的度量构成子集来准确地预测或分类已检测到的入侵。 (3)基于贝叶斯推理的异常检测方法 基于贝叶斯(Bayesian)推理异常检测方法是通过在任意的时刻,测量A1,A2,An变量值推理判断系统是否有入侵事件的发生。其中每个Ai变量表示系统不同的方面特征(如磁盘I/O的活动数量,或者系统中页面出错的次数等)。 (4)基于贝叶斯网络的异常检测方法 基于贝叶斯网络的异常检测方法是通过建立起异常入侵检测的贝叶斯网络,然后将其用作分析异常测量的结果。,(5)基于模式预测的异常检测方法 基于模式预测异常检测方法是假设事件序列不是随机的而是能遵循可辨别的模式。这种检测方法的主要特点是考虑事件的序列及其相互联系。其典型模型是由Teng和Chen提出的基于时间的推理方法,利用时间规则识别用户行为正常模式的特征。通过归纳学习产生这些规则集,并能动态地修改系统中的这些规则,使之具有高的预测性、准确性和可信度。 (6)基于神经网络的异常检测方法 基于神经网络的入侵检测方法是训练神经网络连续的信息单元,这里的信息单元指的是一条命令。网络的输入层是用户当前输入的命令和已执行过的N条命令,神经网络就是利用用户使用过的N条命令来预测用户可能使用的下一条命令。当神经网络预测不出某用户正确的后续命令,即在某种程度上表明了有异常事件发生,以此进行异常入侵的检测。,(7)基于贝叶斯聚类的异常检测方法 基于贝叶斯聚类的异常检测方法是通过在数据中发现不同类别的数据集合,这些类反映出了基本的因果关系,以此就可以区分异常用户类,进而推断入侵事件发生来检测异常入侵的行为。 (8)基于机器自学习系统的异常检测方法 基于机器自学习系统的异常检测方法是将异常检测问题归结为根据离散数学临时序列学习获得个体、系统和网络的行为特征,提出一个基于相似度的学习方法IBL,该方法通过新的序列相似度的计算,将原始数据转化成可度量的空间。然后,应用IBL的学习技术和一种新的基于序列的分类方法,从而发现异常类型事件,以此进行入侵行为的检测。 (9)基于数据采掘技术的异常检测方法 基于数据采掘技术的异常检测方法是将数据采掘技术应用到入侵检测研究领域中,从审计数据或数据流是提取感兴趣的知识、规则、规律、模式等形式,并用这些知识去检测异常入侵和已知的入侵。基于数据采掘技术的异常入侵检测通常使用的是KDD(Knowledge Discovery in Databases)算法,该算法就是从数据库中自动提取有用的信息(知识)。这种算法的优点是选用于处理大量的数据,但KDD算法只能对事后数据进行分析,而不能进行实时跟踪处理。,9.2.3 误用检测模型 1.误用检测模型的基本原理 在介绍基于误用的入侵检测的概念之前,有必要对误用的概念做一个简单的介绍。误用是英文“Misuse”的中文直译,其意思是:“可以用某种规则、方式或模型表示的攻击或其他安全相关行为”。 根据对误用概念的这种理解,可以定义基于误用的入侵检测技术的含义:误用检测技术主要是通过某种方式预先定义入侵行为,然后监视系统的运行,并从中找出符合预先定义规则的入侵行为。 一个典型的基于误用的入侵检测系统如图9-2所示。 基于误用的入侵检测系统通过使用某种模式或者信号标识表示攻击,进而发现相同的攻击。这种方式可以检测许多甚至全部已知的攻击行为,但是对于未知的攻击手段却无能为力,这一点和病毒检测系统类似。,对于误用检测系统来说,最重要的技术有: l 如何全面描述攻击的特征,覆盖在此基础上的变种方式。 l 如何排除其他带有干扰性质的行为,减少误报率。 误用检测,也被称为基于知识的检测。其基本前提是:假定所有可能的入侵行为都能被识别和表示。其原理是:首先对已知的攻击方法进行攻击签名(攻击签名是指用一种特定的方式来表示已知的攻击模式)表示,然后根据已经定义好的攻击签名,通过判断这些攻击签名是否出现来判断入侵行为的发生与否。这种方法是直接判断攻击签名的出现与否来判断入侵的,从这一点来看,它是一种直接的方法,误用检测技术的关键问题是:攻击签名的正确表示。误用检测是根据攻击签名来判断入侵的,如何用特定的模式语言来表示这种攻击行为,是该方法的关键所在。尤其攻击签名必须能够准确地表示入侵行为及其所有可能的变种,同时又不会把非入侵行为包含进来。由于大部分的入侵行为是利用系统的漏洞和应用程序的缺陷进行攻击的,那么通过分析攻击过程的特征、条件、排列以及事件间的关系,就可具体描述入侵行为的迹象。这些迹象不仅对分析已经发生的入侵行为有帮助,而且对即将发生的入侵也有预警作用,因为只要部分满足这些入侵迹象就意味着有入侵行为发生的可能。 误用检测是通过将收集到的信息与已知的攻击签名模式库进行比较,从而发现违背安全策略的行为。该方法类似于病毒检测系统,其检测的准确率和效率都比较高。而且这种技术比较成熟,国际上一些顶尖的入侵检测系统都采用该方法,该方法它也存在一些缺点:(1)不能检测未知的入侵行为。由于其检测机理是对已知的入侵方法进行模式提取,对于未知的入侵方法由于缺乏认识就不能进行有效的检测。也就是说漏警率比较高。(2)与系统的相关性很强。由于不同的操作系统的实现机制不同,对其攻击的方法也不尽相同,很难定义出统一的模式库。另外由于已知认识的局限性,难以检测出内部人员的蓄意破坏和攻击行为,如合法用户的泄漏。,2.误用入侵检测模型的基本方法 误用检测模型常用的检测方法有:基于条件概率误用入侵检测方法、基于专家系统误用入侵检测方法、基于状态迁移分析误用入侵检测方法、基于键盘监控误用入侵检测方法、基于模型误用入侵检测方法。 (1)基于条件概率的误用入侵检测方法 基于条件概率的误用入侵检测方法是将入侵的方式对应于一个事件序列,并通过对事件发生的情形的分析和观察来推测入侵的一种方法。这种方法的依据是根据贝叶斯定理(Bayesian principles)进行推理检测入侵行为。 基于条件概率的误用入侵检测模型是用下面的计算公式来计算的: P(Intrusion) P(Intrusion|ES)= P(ES|Intrusion) P(ES) 而:P(ES)=(P(ES|Intrusion)- P(ES| Intrusion)P(Intrusion) + P(ES| Intrusion),其中:ES为事件序列,P(ES)为事件发生的概率,Intrusion为一具体的事件,P(Intrusion)为事件Intrusion在事件序列ES上发生的先验概率,P(ES|Intrusion)为事件Intrusion在事件序列ES上发生的后验概率,P(ES| Intrusion)为非Intrusion事件在事件序列ES上发生的后验概率。所谓的“先验概率”是用概率来描述人们事先对所研究对象的发生概率的估算,即是根据古典概率的定义,用数学分析进行计算得到的概率。所谓的“后验概率”就是根据具体的事件资料、先验概率、特定的判别规则所计算机出来的概率,换句话说,后验概率是对先验概率进行修正后的结果。 通常,先验概率P(Intrusion)是由网络安全管理员事先给出的,而通过对入侵报告数据的统计分析可得到P(ES|Intrusion)和P(ES| Intrusion)。,(2)基于专家系统的误用入侵检测方法 基于专家系统的误用入侵检测模型是通过将安全专家的经验知识表示成if-then规则而形成的专家知识库,然后,运用推理算法进行入侵行为的检测。 基于专家系统的误用入侵检测系统的典型模型是CLIPS模型,在该模型中,将入侵知识进行编码表示成if-then规则,并根据相应的审计跟踪事件的断言事实。编码规则说明攻击的必需条件作为if的组成部份。当规则的左边的条件全都满足时,规则右边的动作才会执行。 在基于专家系统的入侵检测模型中,要处理大量的数据和依赖于审计跟踪的次序。其推理方法有两种: l 根据给定的数据,应用符号推理出入侵行为的发生; l 根据其他的入侵证据,进行不确定性的推理。,(3)基于状态迁移分析的误用入侵检测方法 状态迁移分析方法是将攻击表示成一系列被监控的系统状态迁移。攻击模式的状态对应于系统的状态,并且具有迁移到另外状态的特性,然后通过弧线连续的状态连接起来表示状态改变所需要的事件。 (4)基于键盘监控的误用入侵检测方法 基于键盘监控系统的误用入侵检测方法是假设入侵者对应的击键序列模式,然后监测用户击键模式,并将这一击健模式与入侵检测模式相匹配,以检测入侵行为。 (5)基于模型的误用入侵检测方法 基于模型的误用入侵检测方法是通过建立误用证据模型,根据证据推理来作出误用发生判断结论。,9.2.4 异常检测模型和误用检测模型的比较 异常检测系统试图发现一些未知的入侵行为,而误用检测系统则是检测一些已知的入侵行为。 异常检测指根据使用者的行为或资源使用状况来判断是否入侵行为的发生,而不依赖于具体行为是否出现来检测;而误用检测系统则大多是通过对一些具体的行为的判断和推理,从而检测出入侵行为。 异常检测的主要缺陷在于误检率很高,尤其在用户数目众多或工作行为经常改变的环境中;而误用检测系统由于依据具体特征库进行判断,准确度要高很多。 异常检测对具体系统的依赖性相对较小;而误用检测系统对具体的系统依赖性很强,移植性不好。,9.2.5 其他入侵检测模型 1.基于生物免疫的入侵检测方法 生物免疫系统对外部入侵病原可自动进行抵御并可对自身进行保护,一旦抵御了某种病原体的攻击后,则可对该病原体产生抗体,即自动获得免疫功能,当该病原体再次入侵时,即可迅速进行有效的抵抗。以人为例,若某人不幸感染了结核病,治痊后,他就对结核病菌产生了抗体,以后就再也不会感染结核病了。 基于生物免疫的入侵检测系统就是通过模仿生物有机体的免疫能力,使得受保护的系统能够将外来的非法攻击行为与自我合法行为区分开来,除了能够进行相应的处理以外,能对入侵的行为进行详细的“记忆”(即自我“学习”方法),当下一次再次出现这种攻击时,即可迅速进行抵御,以达到自我保护的目的。 事实上,基于生物免疫系统的入侵检测方法是将异常入侵检测方法与误用入侵检测方法进行有机的结合。这种方法的新颖之处在于将生物学的免疫原理应用到计算机网络的安全保护领域之中。 2.基于伪装的入侵检测方法 基于伪装的入侵检测方法是通过在网络主机上构造或设置一些虚假的信息,并将这些信息暴露在网上,若非法入侵者对这些信息感兴趣,反复访问这些数据,或反复打开相关的文件,或下载这些文件,就可以断定系统已受到入侵攻击,并可确定当前登录者就是非法入侵者。这一技术又可称作是“蜜罐”诱骗技术。,3. 基于统计学方法的入侵检测系统 基于统计的检测规则认为入侵行为应该符合统计规律。例如,系统可以认为一次密码尝试失败并不算是入侵行为,因为的确可能是合法用户输入失误,但是如果在一分钟内有8次以上同样的操作就不可能完全是输入失误了,而可以认定是入侵行为。因此,组成分析策略的检测规则就是表示行为频度的阀值,通过检测出行为并统计其数量和频度就可以发现入侵。 统计模型常用于对异常行为的检测,在统计模型中常用的测量参数包括审计事件的数量、间隔时间、资源消耗情况等。目前,可用于入侵检测的统计模型有5种: l 操作模型:该模型假设异常可通过测量结果与一些固定指标相比较得到,固定指标可以根据经验值或一段时间内的统计平均得到,举例来说,在短时间内的多次失败的登录很可能是口令尝试攻击。 l 方差:计算参数的方差,设定其置信区间,当测量值超过置信区间的范围时表明有可能是异常。 l 多元模型:操作模型的扩展,通过同时分析多个参数实现检测。 l 马尔柯夫过程模型:将每种类型的事件定义为系统状态,用状态转移矩阵来表示状态的变化,若对应于发生事件的状态矩阵中转移概率较小,则该事件可能是异常事件。 时间序列分析:将事件计数与资源耗用根据时间排成序列,如果一个新事件在该时间发生的概率较低,则该事件可能是入侵。,4.基于专家系统的入侵检测方法 基于专家系统的入侵检测方法与运用统计方法与神经网络对入侵进行检测的方法不同,用专家系统对入侵进行检测,经常是针对有特征的入侵行为。 所谓的规则,即是知识。不同的系统与设置具有不同的规则,且规则之间往往无通用性。专家系统的建立依赖于知识库的完备性,知识库的完备性又取决于审计记录的完备性与实时性。特征入侵的特征抽取与表达,是入侵检测专家系统的关键。将有关入侵的知识转化为if-then结构(也可以是复合结构),if部分为入侵特征,then部分是系统防范措施。 运用专家系统防范有特征入侵行为的有效性完全取决于专家系统知识库的完备性,建立一个完备的知识库对于一个大型网络系统往往是不可能的,且如何根据审计记录中的事件,提取状态行为与语言环境也是较困难的。 由于专家系统的不可移植性与规则的不完备性。现已不宜单独用于入侵检测,或单独形成商品软件。较适用的方法是将专家系统与采用软计算方法技术的入侵检测系统结合在一起,构成一个以已知的入侵规则为基础,可扩展的动态入侵事件检测系统,自适应地进行特征与异常检测,实现高效的入侵检测及其防御。,9.3 应用实例,本节内容 9.3.1 Snort软件简介 9.3.2 Snort软件的使用技术 9.3.3 IDS入侵特征库创建和解析,9.3.1 Snort软件简介 Snort是一个用C语言编写的开放源代码软件,Snort实际上是一个基于libpcap(基于unix/linux环境的网络数据包捕获函数包)的网络数据包嗅探器和日志记录工具,可以用于入侵检测。从入侵检测分类上来看, Snort应该是一个基于网络和误用入侵检测软件。 Snort V2.0 Snort为开放源代码入侵检测系统软件,为用来监视网络传输量的网络型入侵检测系统。主要工作是捕捉流经网络的数据包,一旦发现与非法入侵的组合一致,便向管理员发出警告。 Snort采用基于规则的网络信息搜索机制,对数据包进行内容的模式匹配,从中发现入侵和探测行为,例如:buffer overflows、stealth port scans、CGI attacks和SMB probes等。 Snort具有实时报警的能力,它的警报信息可以发往syslog、Server Message Block(SMB)、WinPopup messages 或者单独alert文件。 Snort可以通过命令进行交互,并对可选的BPF(Berkeley Packet Filter)命令进行配置。,Snort安装在一台主机上可对整个网络进行监视,其典型运行环境如图9-3所示。,Snort由三个重要的子系统构成:数据包解码器、检测引擎、日志与报警系统 。 (1)数据包解码器 数据包解码器主要是对各种协议栈上的数据包进行解析、预处理,以便提交给检测引擎进行规则匹配。解码器运行在各种协议栈之上,从数据链路层到传输层,最后到应用层。因为当前网络中的数据流速度很快,如何保障较高的速度是解码器子系统中的一个重点。目前,Snort解码器支持的协议包括Ethernet、SLIP和raw(PPP)data-link等。 (2)检测引擎 Snort用一个二维链表存储它的检测规则,其中一维称为规则头,另一维称为规则选项。规则头中放置的是一些公共的属性特征,而规则选项中放置的是一些入侵特征。为了提高检测速度,通常把最常用的源/目的IP地址和端口信息放在规则头链表中,而把一些独特的检测标志放在规则选项链表中。规则匹配查找采用递归的方法进行,检测机制只针对当前已经建立的链表选项进行检测。当数据包满足一个规则时,就会触发相应的操作。 Snort的检测机制非常灵活,用户可以根据自己的需要很方便地在规则链表中添加所需要的规则模块。 (3)日志和报警子系统 日志和报警子系统可以在运行Snort的时候以命令行交互的方式进行选择。 Snort是一种基于网络的入侵检测系统, Snort的规则在逻辑上分为两部分:规则头(Rule Header)和规则选项(Rule Option)。规则头定义了规则的行为、所匹配网络报文的协议、源地址、目标地址及其网络掩码、源端口和目标端口等信息;规则选项部分则包含了所要显示给用户查看的警告信息以及用来判定此报文是否为攻击报文的其他信息。,9.3.2 Snort软件的使用技术 Snort软件使用的技术有: l 网络安全事件响应技术; l 安全事件的定义; l 事件响应的处理过程; l 网络攻击的追踪; l 应急处置与恢复技术; l 远程备份技术; l 安全事件的定义。 所谓“事件”,我们指的是那些影响计算机系统和网络安全的不当行为。这些行为包括在计算机和/网络上发生的可以观察得到的任何现象,包括通过网络连接到另一个系统、获取文件、关闭系统等。恶意事件包括对系统的破坏、在某个网络内IP包的泛滥、未经授权的情况下使用另一个用户的账户或系统的特殊权限、黑掉了一个或若干个网页以及执行恶意代码并毁坏了数据。其他有害事件还包括水、火、断电和过热而导致系统瘫痪等。 “事件响应”的意思是事件发生后采取的措施和行动。这些行动措施通常是阻止和减小事件带来的影响。行动可能来自于人也可能来自于计算机系统。 事件响应的处理过程: 它包括6个阶段:准备、检测、抑制、根除、恢复和跟踪(称为PDCERF方法)。,1. 准备阶段 第1个阶段是准备,即在事件真正发生前为事件响应做好准备。这一阶段极为重要,因为当今的安全事件大多数都是复杂且费时的,准备是必须的而不是一种奢侈。准备阶段具体措施为: l 基于威胁建立一组合理的防御/控制措施; l 建立一组尽可能高效的事件处理程序; l 获得处理问题必须的资源和人员; l 建立一个支持事件响应活动的基础设施。 2. 检测阶段 就事件响应而言,检测和入侵检测并不是同义词。检测意味着弄清是否出现了恶意代码、文件和目录是否被篡改或者出现其他的特征;如果是的话,问题在哪里,影响范围有多大。入侵检测最常见的含义是确定对系统的非授权访问和滥用中否发生入侵行为。比如,病毒感染可以用病毒检测软件而不是入侵检测软件来发现。因此,检测包含的范围要比入侵检测宽广的多。 从操作的角度来讲,事件响应过程中所有的动作都依赖于检测。坦率地说,没有检测,就没有真正意义上的事件响应,检测触发了事件的响应。这一点大大提升了检测在其他5个阶段的相对重要性。,3. 抑制阶段 抑制的目的是限制攻击的范围,同时也就限制了潜在的损失和破坏。抑制相关的活动当然只有在第2阶段观察到事件的确已经发生的基础上才能进行。 抑制阶段一个关键的部分是决策(也就是决定做什么,才能减小损失或破坏的范围)。决策包括下列一些措施: l 完全关闭所有系统。 l 断开外部网络。这样至少允许本地用户获得一定的服务。 l 修改所有防火墙和路由器的过滤规则,拒绝来自发起攻击主机的所有的流量。 l 封锁或删除被攻破的登录账号。 l 提高系统或网络行为的监控级别。 l 设置诱饵服务器作为陷阱,“陷阱及伪装手段”。 l 关闭服务,比如文件传输服务,如果服务中的漏洞被利用的话。 l 反击攻击者的系统,尽管一般来说应该避免这样做,而且在得到上级管理层明确的同意之前,你一定不要这样做。,4. 根除阶段 在事件被抑制以后,找出事件根源并彻底将其根除。 软件对根除工作是很有帮助的,比如,防病毒软件可以消灭大多数感染系统的病毒,如果有在抑制阶段就应该消除的特洛伊木马程序(其他后门程序或其他使得事件传播的因素)此时还驻留在系统中,就该将其彻底清除。若你的系统被极其危险的恶意病毒感染,清除病毒并重新格式化所有包含感染文件硬盘是最佳的选择。 5. 恢复阶段 PDCERF事件响应方法学的第5个阶段是恢复。在事件的根源根除以后,恢复阶段定义下一阶段的行动。恢复的目标是把所有被攻破的系统和网络设备彻底地还原到它们正常的任务状态。 恢复时,从确保完好的介质上执行一次完整的系统恢复。这种策略能提供高度的可靠性,保证系统和网络部件确实回到他们正常的操作状态。注意,如果攻击者获得了超级用户的访问权,一次完整的恢复应该强制性地修改所有的口令。 数据恢复应该十分小心。一种较为安全的方法是从最新的完全备份中恢复数据。另一种方法是从容错系统硬件(如冗余磁盘阵列RAID)中恢复镜像的数据。当然,必须保证这些文件和数据没有被破坏。,6. 跟踪阶段 PDCERF方法学的最后一个阶段是跟踪,其整体目标是回顾并整合发生事件的相关信息。不幸的是,跟踪是最有可能被忽略的阶段(部分原因是资源有限而且事件处理人员在事件恢复后已经筋疲力尽)。然而,这一阶段也是非常关键的,如果这一步被忽略,很难预想事件响应工作的成功率有多大。 追踪网络攻击有多种不同的意思,这取决于这个术语的使用场合。狭义上来说,就是找到事件发生的源头。在大多数情况下是指发现IP地址、MAC地址或认证的主机名。在另一方面来说它是指确定攻击者的身份。 追踪漏洞扫描是一个比较特殊的问题。在大部分网络环境下,漏洞扫描是经常发生的事情。现实中,追踪扫描和追踪入侵前兆是不同类型的事件。称为攻击追踪可能更好一些,但也许扫描追踪是最合适的称呼。但关键的是追踪扫描源是一件极不具效率的事情,因为大量的扫描是来自合法的被攻陷的主机。而且每天如此大量的扫描使得我们无法去追踪源头。因此这件事变得非常的不现实。虽然我们必须注意扫描这个问题,但在大多数情况下如果去追踪源头就太浪费时间和资源了。,9.3.3 IDS入侵特征库创建和解析 IDS要有效地捕捉入侵行为,必须拥有一个强大的入侵特征数据库,这就如同公安部门必须拥有健全的罪犯信息库一样。但是,IDS一般所带的特征数据库都比较死板,遇到“变脸”的入侵行为往往相逢不相识。因此,管理员有必要学会如何创建满足实际需要的特征数据样板,做到一变应万变,在这里,将对入侵特征的概念、种类以及如何创建特征进行介绍,以帮助读者掌握对付入侵者“变脸”的方法。,1.特征(signature)的基本概念 IDS中的特征就是指用于判别通讯信息种类的样板数据,通常分为多种,以下是一些典型识别方法: l 来自保留IP地址的连接企图:可通过检查IP报头(IP header)的来源地址轻易地识别。 l 带有非法TCP 标志联合物的数据包:可通过对比TCP报头中的标志集与已知正确和错误标记联合物的不同点来识别。 l 含有特殊病毒信息的Email:可通过对比每封Email的主题信息和病态Email的主题信息来识别,或者,通过搜索相似的特定名字来识别。 l 查询负载中的DNS缓冲区溢出企图:可通过解析DNS域及检查每个域的长度来识别利用DNS域的缓冲区溢出企图。还有另外一个识别方法是:在负载中搜索“壳代码利用”(exploit shellcode)的序列代码组合。 l 通过对POP3服务器发出成百上千次同一命令而导致的DoS攻击:通过跟踪记录某个命令连续发出的次数,看看是否超过了预设上限,而发出报警信息。 l未登录情况下使用文件和目录命令对FTP服务器的文件访问攻击:通过创建具备状态跟踪的特征样板以监视成功登录的FTP对话、发现未经验证却发登录命令的入侵企图。,2.特征库的方式 特征是检测数据包中的可疑内容是否真正“不可用”的样板,也就是“破坏分子”的克隆。特征的定制或编写程度可粗可细,完全取决于实际需求。或者只是判断是否发生了异常行为而不确定具体是什么攻击行为,从而节省资源和时间;或者是判断出具体的攻击手段或漏洞利用方式,从而获取更多的信息。 3.报头值 报头值(Header Values)的结构比较简单,而且可以很清楚地识别出异常报头信息,因此,特征数据的首席候选值就是报头值。一个经典的例子是:明显违背RFC793中规定的TCP标准、设置了SYN和FIN标记的TCP数据包。这种数据包被许多入侵软件采用,向防火墙、路由器以及IDS系统发起攻击。 非法报头值是特征数据的一个非常基础的部分,合法但可疑的报头值也同等重要。例如,如果存在到端口31337或27374的可疑连接,就完全有理由怀疑有特洛伊木马在活动;再附加上其他探测信息,就能够进一步地判断是“真马”还是“假马”。,4.确定特征“候选人” 为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论