NIDS网络立体防御系统可行性研究报告 联系客服

发布时间 : 星期四 文章NIDS网络立体防御系统可行性研究报告更新完毕开始阅读2a439693daef5ef7ba0d3cb4

器(filter-based)和基于代理(proxy-based)的两大类设备之一。目前的防火墙主要有包过滤防火墙、代理防火墙2种类型,并在计算机网络得到了广泛的应用。包过滤防火墙,包过滤技术是根据定义好的过滤规则审查每个数据包并确定数据包是否与过滤规则相匹配,从而决定数据包能否通过,它的特点是开销小,速度快,缺点是定义数据包过滤器比较复杂,且不能理解特定服务的上下文环境。代理防火墙(应用层防火墙),代理防火墙采用代理(Proxy)技术与TCP连接的全过程,这样从内部发出的数据包经过防火墙处理后,就象来自于防火墙外部网卡一样,从而达到隐藏内部网结构的目的。其核心技术就是代理服务器技术,特点是安全性很高,缺点是对于每个中断的internet 服务,都需要提供相应的代理程序,且对于计算机的性能有一定的要求。但是,防火墙也不能解决进入防火墙的数据带来的所有安全问题。如果用户抓来一个程序在本地运行,那个程序很可能就包含一段恶意的代码,或泄露敏感信息,或对之进行破坏。防火墙的另一个缺点是很少有防火墙制造商推出简便易用的“监狱看守”型的防火墙,大多数的产品还停留在需要网络管理员手工建立的水平上。因此有必要将它们融合,构成了一个典型的防火墙系统。

[6]

2.2 入侵检测系统(IDS)

2.2.1入侵检测系统的定义

入侵检测最早是由James Anderson于1980年提出来的,其定义是:潜在的有预谋的未经

[7]

授权的访问信息和操作信息,致使系统不可靠或无法使用的企图。

从该定义可以看出,入侵检测对安全保护采取的是一种积极、主动的防御策略,而传统的安全技术都是一些消极、被动的保护措施。因为,如果入侵者一旦攻破了由传统安全技术所设置的保护屏障,这些技术将完全失去作用,对系统不再提供保护,而入侵者则对系统可以进行肆无忌惮的操作,当然包括一些很具有破坏的操作。对于这些,传统的安全技术是无能为力的。但是入侵检测技术则不同,它对进入系统的访问者(包括入侵者)能进行实时的监视和检测,一旦发现访问者对系统进行非法的操作(这时访问者成为了入侵者),就会向系统管理员发出警报或者自动截断与入侵者的连接,这样就会大大提高系统的安全性。所以对入侵检测技术研究是非常必要的,并且它也是一种全新理念的网络(系统)防护技术。图2为入侵检测一般过程示意图,箭头所指方向为流程方向。输入过程包括:用户或者安全管理人员定义的配置规则和作为事件检测的原始数据,对于代理监视器来讲原始数据是原始网络包;输出过程包括:系统

[16]

发起的对安全事件和可疑或非法事件的响应过程。 入侵发现 用户或管理员 定义的规则 报警 攻击特征 报表 (signatures) 原始数据包 图2 入侵发现示意图

2.2.2 入侵检测系统的模型与原理

入侵检测系统(IDS,Intrusion Detection System)用来识别针对计算机系统和网络系统,或者更广泛意义上的信息系统的非法攻击,包括检测外界非法入侵者的恶意攻击或试探,

[8]

以及内部合法用户的超越使用权限的非法行动。入侵检测系统能够实时监控网络传输,自动检测可疑行为,分析来自网络外部入侵信号和内部的非法活动。在系统受到危害之前发出警

[9]

告,对攻击作出实时的响应,并提供补救措施,最大程度地保障了系统安全。 具体说来,IDS的主要功能有以下方面:

(1)监测并分析用户和系统的活动;(2)核查系统配置和漏洞;(3)评估系统关键资源和数据文件的完整性;(4)识别已知的攻击行为;(5)统计分析异常行为;(6)操作系统

日志管理,并识别违反安全策略的用户活动。

入侵检测系统及预警系统(Intrusion Detection & Alert System)能够从一系列的系统和网络资源中收集信息并对这些信息加以分析,以期能找到入侵(intrusion)或者是滥用(misuse)的迹象,并根据这些分析结果,向用户及系统管理员报警和作出一定的处理如切断入侵检测连接等。入侵检测功能原理如图3所示: 用户的当前操作 监测

用户行为

入侵检测 数 据 库

N 入侵

Y

记录证明 断开连接 恢复数据

图3 入侵检测功能原理

最早的入侵检测模型是由Dorothy Denning于1986年提出来的,该模型虽然与具体系统和具体输入无关,但是对此后的大部分实用系统都有很大的借鉴价值。图4表示了该通用模型的体

[7]

系结构。

审计记录、网络数据包 特征表更新 规则更新 异常记录 事件产生器 行为特征模块 规则模块 变量阀值 图4 通用的入侵检测系统模型

在该模型中,事件产生器可根据具体应用环境而有所不同,一般来自审计记录、网络数据包以及其它可视行为,这些事件构成了入侵检测的基础。行为特征表是整个检测系统的核心,它包含了用于计算用户行为特征的所有变量,这些记录可根据具体采用的统计方法以及事件记录中的具体动作模式而定义,并根据匹配上的记录数据更新变量值。如果有统计变量的值达到了异常程度,行为特征表将产生异常记录,并采取一定的措施。规则模块可以由系统安全策略、入侵模式等组成,它一方面为判断是否入侵提供参考机制,另一方面为根据事件记录、异常记录以及有效日期等控制并更新其它模块的状态。在具体实现上,规则的选择与更新可能不尽相同,但一般地,行为特征模块执行基于行为的检测,而规则模块执行基于知识的检测。 根据入侵检测模型,入侵检测系统的原理可以分为如下两种: (1) 异常检测原理

该原理指的是根据非正常行为(系统或用户)和使用计算机资源非正常情况检测出入侵行为,如图5所示:

命令、系统调用、应用 类型、活动度量、CPU 使用、网络连接 正常行为 异常行为 图 5 异常检测原理模型

从图5可以看出,异常检测原理根据假设攻击与正常的(合法的)活动有很大的差异来识别攻击。异常检测首先收集一段时期正常操作活动的历史记录,再建立代表用户、主机或网络连接的正常行为轮廓,然后收集事件数据并使用一些不同的方法来决定所检测到的事件活动是否偏离了正常行为模式。

[14]

异常检测技术即假定所有入侵行为都是与正常行为不同的。如果建立系统正常行为的轨迹,那么理论上可以把所有与正常轨迹不同的系统状态视为可疑企图。对于异常阀值与特征的选择是异常检测技术的关键。比如,通过流量统计分析将异常时间的异常网络流量视为可疑。异常检测技术的局限是并非所有的入侵都表现为异常,而且系统的轨迹难以计算和更新。

[10]

异常检测技术的核心是建立行为模型,目前主要是由以下几种方法: (1) 统计分析异常检测。 (2) 贝叶斯推理异常检测。 (3) 神经网络异常检测。 (4) 模式预测异常检测。 (5) 数据采掘异常检测。 (6) 机器学习异常检测。 (2) 误用检测原理

该原理是指根据已经知道的入侵检测方式来检测入侵。入侵者常常利用系统或应用软件中的弱点或漏洞来攻击系统而这些弱点或漏洞可以编成一些模式,如果入侵者攻击方式恰好匹配上检测系统模式库中的某种方式,则入侵即被检测到了。如图6所示: 匹配 模式库 攻击者 报警 图6 误用检测模型

模式检测技术即假定所有入侵行为和手段(及其变种)都能够表达为一种模式或特征,那么所有已知的入侵方法都可以用匹配的方法发现。模式发现的关键是如何表达入侵的模式,把真正的入侵与正常行为区分开来。模式检测技术优点是检测的准确度很高,并且因为检测结果有明显的参照,也为系统管理员做出相应的措施提供了方便。局限是它只能发现已知的攻击,对未知的

[15]

攻击无能为力。

[10]

误用检测技术主要分为以下几种: (1) 专家系统误用检测。 (2) 特征分析误用检测。 (3) 模型推理误用检测。 (4) 条件概率误用检测。

(5) 键盘监控误用检测。 2.2.3 入侵检测的研究动态

从分类上看,入侵检测系统可以分为:

基于网络的检测系统:分布在网络上或者是设置在被监视的主机附近,检查网络通信情况以及分析是否有异常活动,它能提供网段的整个信息,由于要检测整个网段的流量,所以,它处理的信息量很大,易受到拒绝服务攻击(DOS)攻击。基于网络的入侵检测系统把原始的网络数据作为数据源。它是利用网络适配器来实时的监测,并分析通过网络进行传输的所有通信业务。一旦检测到攻击, IDS 的响应模块通过通知、报警以及中断连接等方式来对攻击行为作出反应。基于网络的入侵检测系统的主要优点是:①成本低;②攻击者转移证据困难;③定时的检测和响应;④能够检测到未成功的攻击企图;⑤操作系统独立。

基于主机的检测系统:在被监视的主机上运行,检查这些主机上的对外流量,文件系统的完整性及各种活动是否合法以及是否可以接受,它能给主机提供较高程度的保护,但每台受保护主机都需要安装相应的软件,且不能提供网段的整体信息。基于主机的入侵检测系统一般以系统日志、应用程序日志等审计记录文件作为数据源.一旦发现数据发生变化, IDS 就将比较新的日志记录与攻击签名是否匹配。若匹配, IDS 就向各系统管理员发出入侵报警并采取相应的行动。基于主机的入侵检测系统具有的主要优点是:①非常适合于加密和交换环境;②近实时的检测和应答;③不需要格外的硬件。

由此看出,两种入侵检测系统各有优缺点,只有把他们有机的结合,才能取长补短,充分发

[13]

挥各自的优势,因此,文章在参考了有关资料后,提出了一个分布式入侵检测系统的实现方案,这在该文的后面有较为详细的说明。

从技术上看,入侵检测又分为基于标识(signature-based)和基于异常情况(anomaly-based)的两类。

对于基于标识的检测技术来说,首先要定义违背安全策略的事件特征,如网络数据包的某些头信息,判别这类特征是否在所收集的数据中出现。此方法非常类似杀毒软件,因此,它能较为准确地发现入侵,误报率低,缺点是只能发现已知的攻击和入侵,且标识库需要不断的更新。

基于异常的检测技术则是先定义一组系统“正常”情况的数值,如cpu的利用率,内存利用率,文件校验等(这类数据可以人为定义,也可以通过观察系统,并用统计的方法得出),然后将系统运行的数值与所定义的“正常”情况比较,得出是否有被攻击的迹象。这种检测方式的核心在于如何定义所谓的“正常”情况。它的特点是对已知和未知的攻击都有一定的检测能力,缺点是误报率高。

入侵检测很大程度上依赖于收集信息的可靠性和正确性。通常一个完整的入侵检测技术需要

[11]

利用的数据或文件来自于以下4 个方面: (1) 系统和网络日志文件

黑客经常在系统日志中留下他们的踪迹。因此,充分利用系统和网络日志文件信息是检测入侵行为轨迹的首要条件。日志中记录着在系统或网络上的不寻常和不期望活动的证据, 这些证据可以显示出有人正在入侵或己成功入侵该系统。通过查看日志文件,能够发现成功的入侵或入侵企图, 并很快地启动相应的应急响应程序。 (2) 目录和文件中的不期望的改变

网络环境中的文件系统包含很多软件和数据文件,包含重要信息的文件和私有数据文件经常是黑客关注或试图破坏的目标。目录和文件中的不期望的改变(包括修改、创建和删除),特别是那些正常情况下限制访问的数据,很可能就是一种入侵产生的标志和信号。 (3) 程序执行中的不期望行为

网络系统上的“程序执行”一般包括操作系统、网络服务、用户启动的程序和特定目的的应用,每个系统上的执行程序由一到多个进程来实现。每个进程执行在具有不同权限的环境中,这种环境控制着进程可访问的系统资源、程序和数据文件等。因此,操作执行的方式不同,调用系统资源的方式也就不同。一个进程出现了不期望的行为,可能预示着有黑客正在入侵系