论文部分内容阅读
全球信息化进程的迅速发展计算机网络可谓功不可没,在人们越来越依赖计算机网络的同时,网络安全问题也日益突出,各种恶性攻击及安全事件层出不穷。入侵检测作为安全防护的一项重要手段,为我们提供了及时发现入侵企图、行为和结果的能力。而入侵响应则根据检测的结果实施抑制、阻止、根除恶意攻击带来的影响。目前入侵检测系统已经较为成熟,出现了很多优秀的产品,但是在入侵响应方面的研究还比较有限,本文在查阅大量文献,学习前人优秀成果的基础上,对入侵主动响应策略及基于入侵检测的自动响应进行了深入研究。 本文首先讨论了入侵检测的相关理论和技术,包括入侵检测的基本概念、通用检测模型、常见分类、异常检测和误用检测的原理和具体检测技术,分析了各种技术的优、缺点。另外还阐述了网络入侵检测系统的实际应用情况。接下来重点对入侵响应进行了研究,介绍了被动响应与主动响应的相关概念;分析了常见的主动响应技术、讨论了自动响应的特点及局限性,提出了相应的改进建议,对入侵响应成本进行了分析。事件分类是事件响应的基础,文中讨论了入侵事件的分类方法,结合事件响应方法学提出了一个面向响应的多维入侵事件分类模型,模型中使用了时间、攻击技术、漏洞类型、攻击结果和攻击目标五种属性共同描述入侵事件。然后结合该模型和成本分析方法给出了一个响应决策模型。 最后实现了一个基于Linux的入侵自动响应系统,与传统入侵检测系统被动监听网络数据包的机制不同,该系统能够实时截获数据,对其进行入侵检测并根据检测及成本分析的结果进行入侵响应,实现了对网络数据的实时过滤并且能够结合具体的防护目标进行响应成本分析。该系统构建在Linux网桥、Netfilter框架和Snort检测引擎之上,网桥负责在防护目标和外部网络之间转发数据,Netfilter负责向检测引擎提交原始数据包及实施响应动作,检测引擎负责对数据包的检测。整个系统包括四个主要模块:数据捕获模块、检测模块、响应模块和管理模块,开发环境为RedHat Linux9.0、C语言、Libipq、Libnet、Libpcap库。借助Snort的入侵检测能力和Netfilter框架,系统基本上达到了数据包级的入侵隔离。