国防科技大学网络中心 邓生君 沈 鑫 叶昭辉
一种基于IPv4/IPv6网络入侵检测系统的框架设计
国防科技大学网络中心 邓生君 沈 鑫 叶昭辉
本文描述了当前的网络安全现状,展望了互联网向IPv6版本过渡的发展趋势并分析了它的特点和缺陷。通过对比传统的IPv4和IPv6网络入侵检测技术的特点,列举了IPv4向IPv6过渡的技术方法并加以分析,最后给出了一种适应于当前IPv4/IPv6环境的入侵检测系统的框架。
网络安全;入侵检测;IPv6;入侵检测系统框架
随着互联网的快速发展,网络上的恶意攻击行为日益增多,形形色色的病毒、木马、蠕虫层出不穷,对网络信息安全构成了巨大威胁.为了应对越来越严重的网络安全问题,对网络流进行实时分析和检测就显得极为必要。入侵检测系统[1](Intrusion Detection System,IDS)作为一种积极主动、实时动态的网络安全防范技术,越来越受到人们的关注。它通过收集、分析计算机网络或系统中若干关键点数据以判断是否有违反安全策略的行为和被攻击的迹象,帮助系统对付网络攻击,扩展系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),提高信息安全基础结构的完整性,从而提供对内外攻击和误操作的实时保护。随着下一代网络中IPV6安全机制的引进,网络层的安全性得到增强。同时,IPV6安全机制的应用对传统入侵检测系统也提出了新的要求和挑战。
在IPv6网络逐渐替换IPv4网络的过渡过程中,随着过渡技术的应用及网络结构变得越来越复杂,在网络安全方面产生了越来越多的不容忽视的问题[2]。这些过渡技术存在的或带来的安全问题主要有:
采用翻译过渡技术,有两个问题需要关注。其一是网络地址翻译、协议翻译网关联合应用层网关对数据报进行翻译处理时,会破坏数据报传输中端到端的安全性;其二是网络层安全技术不匹配的问题。网络层安全协议的主要作用是对在网络上正常传送的数据进行了最大程度的保密和防止更改,而网络层协议-地址翻译技术的目的是对网络中传送的数据报进行协议和地址的变换,这就带来了网络安全协议技术与网络层协议-地址翻译技术不匹配的问题。
采用隧道过渡技术,由于隧道技术的设计中没有网络安全方面的考虑,以及自身的技术特点,给网络安全带来了众多的问题。在一个已安装设置各种安全设备的网络中,当加入隧道技术后,这些安全设备的功能会受到隧道的影响。当有数据报经过隧道的时候,隧道不会对数据报进行安全方面的检查,恶意的数据报往往可借用隧道来避开网络中的安全检查。
采用双栈过渡技术,就是在一台主机上同时运行两种版本的网络层协议。这两种网络层协议在技术上存在不相关性,他们之间的协调配合的不完善往往会造成一些安全方面的缺陷,给攻击者带来机会。
图1 协议解码流程图
图2 IPv6环境中的NIDS模块设计
相较于前两种过渡技术,双栈过渡技术在安全技术和可行性方面都相对来说有优势,所带来的安全隐患也相对较小。
传统的第一代和第二代IDS通常采用模式匹配技术,这种技术是对所有网络数据包与攻击数据库的攻击特征进行匹配,依次来判定数据包中是否有攻击存在。目前,入侵检测系统采用的典型模式匹配算法有Brute Force、Boyer-Moore、Aho-Corasick、Set-wiseBoyer-Moor-Horspool和Aho-Corasick-Boyer-Moore等算法。
IPv6入侵检测技术,可定义为对攻击者使用IPv6网络协议对计算机和网络资源上的恶意使用行为进行识别和响应的处理过程。由于IPv6协议和IPv4不兼容,所以在IPv6下入侵检测可能面临很多新的问题。
首先,IPv6相对IPv4在数据报头上有了很大的变动,所以原来的入侵检测产品在IPv6网络上不能直接使用。IPv4下,IP头部和TCP头部是紧接在一起的,而且其长度是固定的,所以入侵检测系统很容易找到头部,并使用相应的策略。然而在IPv6下TCP/UDP头的位置有了根本的变化,它们不再是紧接在一起的,通常中间还隔有其它的扩展头部,如路由选项头部,AH/ESP头部等。防火墙必须读懂整个数据包才能进行过滤,这对入侵检测的处理性能会有很大的影响。针对IPv6的Socket套接口函数已经在RFC2133(Basic Socket InterFace Extends for IPv6)中定义,以前的应用程序都必须参考该新的API做相应的改动。
其次,在IPv6如果使用传输模式进行端到端的加密,则IDS无法工作,因为IDS无法理解接收到的加密数据包。解决方案之一是让IDS能对这些数据包进行解密,但这样势必会带来新的安全问题。同时IPv6的可靠性是否如最初所设想的那样,也有待时间的考验。
实现IPv4/IPv6双栈入侵检测系统,关键要使现有的协议解码模块具有IPv6协议解码功能。协议解码分析的类型,从第二层来说,主要分析的是以太网。从第三层来说,有IPv4的包类型,也有IPv6的包类型,还有隧道方式,如IPv6 IN IPv4 TUNNEL和IPv4 IN IPv6 TUNNEL等类型的数据包。
协议解码,就是按照协议的数据结构和属性对数据包进行分析,对号入座。图1是具备IPv6协议解码功能的协议解码流程图。
由图1可知,首先我们从Ethemet上抓包,然后将包解出,在解包的过程中把相应的包信息填充完整,通过规则检测、输出等模块中的分析,判断出该包是IPv4包还是IPv6包,如类型为0x0800就是IPv4数据包,0x86DD就是IPv6数据包,然后将以太网的源和目的地址存放起来留作后用,继续分析下一层(第三层)的数据结构,在这里我们主要分析IPv4和IPv6的包头结构。
整个NIDS系统从逻辑上分为数据采集、数据分析和结果输出三部分。符合CIDF的规范。系统由数据包捕获模块、协议解析模块、规则处理模块、分析检测模块、存储模块和响应模块6个模块组成,体系结构框图如图2所示。
(1)数据包捕获模块
该模块是网络人侵检测系统的基本组成部分,是实现整个入侵检测系统的基础。数据包捕获模块的主要功能就是从以太网上捕获数据包。对于不同的操作系统,捕获数据包的实现方式也不同。
(2)协议解析模块
协议解析模块的主要功能是对捕获到的数据包进行详细的协议分析,对数据报进行逐层剥离.分析各个协议的报头和数据部分,检测出每个数据包的类型和特征,在此基础上进一步的分析是否有入侵行为发生。
(3)规则处理模块
规则处理模块的功能就是把事先定义好的入侵规则库从文件中读取出来,进行解析,然后读入内存中相应的变量之中。规则库是一个入侵检测系统的知识库,它的丰富与否决定了入侵检测系统的性能,入侵检测库越丰富,系统检测到的入侵行为就会越多。
(4)分析检测模块
该模块主要的功能是根据入侵规则库进行协议分析,看是否有入侵行为的发生。入侵检测功能就是由此模块实现的。入侵检测模块将协议解析模块的分析结果和规则库进行匹配,如果两者匹配成功,就说明有入侵行为发生。
(5)存储模块
此模块的主要功能是存储网络信息。由于网络数据包很多,所以必须及时地把它们存储起来,供事后分析IP协议的分布情况,以及某个IP的活动情况等等。这个模块中主要考虑的是存贮哪些信息以及存储的手段。
(6)响应模块
当系统检测到入侵时,通过响应模块来处理相关的事情。响应模块可采取多种措施对检测引擎检测到的入侵行为进行响应,如传送消息给防火墙、截断外部入侵行为等,也可以只是向管理员进行简单的报警,由管理员根据入侵情况再采取必要的防御措施。
本文从IPv4向IPv6逐步过渡的角度入手,结合入侵检测系统的发展趋势,通过安全层面分析目前流行的三种过渡技术,从而得出基于IPv4/IPv6网络环境中采用双栈入侵检测系统有较强的优势和可行性,并对比了传统网络和IPv6环境下的入侵检测技术特点,提出了一个较为合理的IPv4/IPv6双栈入侵检测系统,以及IPv6环境中的NIDS的模块框架以供参考。
[1]Rebdcca Gurley Bace.入侵检测[M].北京:人民邮电出版社,2001:1-26.
[2]Silvia Hagen.Ipv6精髓.技桥[M].北京:清华大学出版社,2004:56-80.
[3]肖天庆,任翔.新一代国际互联网协议IPv6与IPv4的比较研究[J].红河学院学报.,2010,8(2).
[4]蒲宝卿.高校校园网1Pv4向1Pv6过渡策略的分析与研究[J].甘肃高师学报,2010,15(2).
[5]唐正军.入侵检测技术导轮[M].机械工业出版社,2004.
[6]王艳秋,赵昭灵,兰巨龙.一种基于IPv6的网络入侵检测系统[J].计算机应用研究,2007,02:142-143.
In this paper,the current status of network security is discussed,followed by analysis of the trend of Internet transition from IPv4 to IPv6 version and its characteristics and defect.Based on comparing the characteristics of network intrusion detection technology for traditional IPv4 and IPv6,this paper cites and analyzes the methods transition technology from IPv4 to IPv6.Finally,an appropriate framework of intrusion detection system for current IPv4/IPv6 environment is proposed.
network security;intrusion detection;IPv6;Intrusion Detection System Framework