论文部分内容阅读
相对于IPv4协议而言,IPv6协议将IPSec作为协议本身的一部分实现,有效增强了其网络层的安全性。但是随着IPv6网络的应用,越来越多的IPv6协议安全隐患暴露出来,一些针对IPv6协议的网络攻击逐渐成为人们关注的焦点。入侵检测系统(Intrusion Detection System, IDS)是一种非常有效的网络安全工具,多年来在IPv4网络中发挥了不可替代的作用,而IPv6网络同样需要IDS的保护。由于IPv6与IPv4不兼容,现有IPv4网络中的IDS无法适应IPv6网络的需求,而且IPv6网络安全又有其自身的特点,因此研究IPv6网络中的IDS十分必要。本文在深入研究IPv4网络中著名的开源IDS Snort基础上,结合IPv6网络的高速化特点以及对IPv6网络攻击的行为,给出了IPv6高速网络环境下的IDS的总体设计方案和实现机制,主要开展了以下几个方面的工作:1、深入研究IPv6网络中存在的安全问题,重点在于IPv6协议本身的安全漏洞以及由此可能引发的攻击行为,详细分析和讨论了路由扩展首部安全漏洞、IPv6分片攻击、泛洪攻击、邻居发现协议DoS攻击的原理,以及IPv4/IPv6隧道过渡机制引发的安全问题。2、针对IPv6网络呈现出的高速化特点,深入研究了传统的Libpcap函数库底层所依赖的PF_PACKFT、PACKET_MMAP以及PF_RING套接字的数据包捕获技术原理和存在的性能瓶颈问题,引出基于零拷贝(Zero-Copy)技术原理的数据包捕获思想,改进Snort的数据包捕获模块,实现了零拷贝的数据包捕获方式,提高Snort在IPv6高速网络环境下的捕包效率。3、针对现有版本Snort在解析IPv6数据包方面表现出的不足,采用IPv6协议分析技术改进Snort的数据包解析模块,实现对IPv6数据包的固定首部和各扩展首部以及IPv6-In-IPv4、IPv4-In-IPv6隧道数据包的解析功能,并结合新增加的内网受保护系统模块(Internal Protected System Module, IPSM),实现了在数据包解析阶段对利用IPv6路由扩展首部漏洞所实施的攻击行为的检测功能。4、研究改进Snort的报警输出模块以及Snort的基本安全分析引擎(Basic Analysis and Security Engine, BASE),实现MySQL数据库对IPv6报警信息的存储,以及BASE对IPv6入侵信息的Web界面展示和分析功能。目前,尚缺少成熟的IPv6IDS商业化产品,而开源软件方面也缺少对IPv6的支持或支持功能非常有限。本文以开源IDS Snort为基础,提出了IPv6高速网络环境下的IDS总体设计方案,并详细分析了每一个相关功能模块的设计思路与具体实现,形成了一个功能基本完善的用于IPv6网络的入侵检测系统。本文设计实现的IPv6IDS可以有效应用于现阶段的IPv4/IPv6过渡网络环境中,也可以用于纯IPv6网络环境中,对今后IPv6网络环境下IDS的进一步研究具有一定的实用参考价值。