首页> 中国专利> 混合架构入侵检测系统规则库创建方法

混合架构入侵检测系统规则库创建方法

摘要

混合架构入侵检测系统规则库创建方法提出建立数据包识别机制,此机制的目的在于识别数据包类型以便启动相应的规则库(IPv4或IPv6)进行特征识别。此机制的识别方法是基于IPv4与IPv6混合架构的环境下数据包的特征,分情况分析在不同的网络通信方式下相应数据包的特征。构造IPv4特征库与构造IPv6特征库的方法与考虑的方面与传统的基本相同,只不过此处要着重考虑IPv6的数据包的特点和IPv6特征所带来的新的行为特征。至于规则的组织形式,本发明仅给出了IPv6情形下的情况,运用此规则识别入侵的特征的过程。

著录项

  • 公开/公告号CN101309274A

    专利类型发明专利

  • 公开/公告日2008-11-19

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN200810124376.8

  • 发明设计人 孙知信;喻勇;

    申请日2008-06-27

  • 分类号H04L29/06;H04L9/36;

  • 代理机构南京经纬专利商标代理有限公司;

  • 代理人叶连生

  • 地址 210003 江苏省南京市新模范马路66号

  • 入库时间 2023-12-17 21:02:23

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-06-11

    未缴年费专利权终止 IPC(主分类):H04L29/06 授权公告日:20110209 终止日期:20180627 申请日:20080627

    专利权的终止

  • 2018-02-09

    专利实施许可合同备案的注销 IPC(主分类):H04L29/06 合同备案号:2016320000207 让与人:南京邮电大学 受让人:江苏南邮物联网科技园有限公司 解除日:20180116 申请日:20080627

    专利实施许可合同备案的生效、变更及注销

  • 2016-12-14

    专利实施许可合同备案的生效 IPC(主分类):H04L29/06 合同备案号:2016320000207 让与人:南京邮电大学 受让人:江苏南邮物联网科技园有限公司 发明名称:混合架构入侵检测系统规则库创建方法 申请公布日:20081119 授权公告日:20110209 许可种类:普通许可 备案日期:20161109 申请日:20080627

    专利实施许可合同备案的生效、变更及注销

  • 2011-02-09

    授权

    授权

  • 2009-01-14

    实质审查的生效

    实质审查的生效

  • 2008-11-19

    公开

    公开

查看全部

说明书

技术领域

本发明提出基于IPv6(IP protocol version 6,IP协议版本4)和IPv4(IPprotocol version 4,IP协议版本4)混合架构的入侵检测规则库创建方法以及利用此规则库进行入侵检测的方法和过程。在未来较长一段时间里IPv6和IPv4将会长期共存,长期共存会有不同的方法策略来应对,相应会要求与此种网络复杂环境相对应的入侵检测系统,因此,必须建立一个适用此种环境的入侵检测系统规则库是十分必要的。

背景技术

IPv6是网络技术史上最重要的一次升级,这次升级将对网络产生深远的影响。目前基于IPv4的入侵检测系统(Intrusion Detection System,IDS)已有较为广泛的应用,虽然IPv6代表了网络的发展方向,但是由于客观条件的限制,IPv6和IPv4的共存还会持续若干年,所以还应该考虑两者共存的安全问题。IPv6应用技术的迅速发展,IPv6环境下的入侵技术也相应地出现并呈快速增长势头,IPv6环境下的入侵检测研究已经得到了国内外安全专家的普遍关注。如何在IPv6以及IPv4/IPv6共存环境下,防范入侵,保障网络的正常运转,已经是一个亟待解决的现实课题。规则库是一个入侵检测系统的重要组成部分,本专利正是基于此提出在新的过渡环境下IDS的规则库的建立和实现问题。

目前从IPv4到IPv6过渡技术主要有四种方案:隧道技术、双协议栈技术、地址协议转换和基于MPLS的过渡技术。

1)隧道技术(tunneling)隧道技术是IPv4/IPv6过渡中经常使用到的一种机制。在发展初期,必然有许多局部的纯IPv6网络,这些IPv6网络被IPv4骨干网络隔离开来。隧道技术利用穿越现存IPv4因特网的隧道技术将许多个IPv6孤岛连接起来,逐步扩大实现的范围。隧道技术的工作机理就在IPv6网络与IPv4网络间的隧道入口处,路由器将IPv6的数据分组封装入IPv4中,IPv4分组的源地址和目的地址分别是隧道入口和出口处的IPv4地址。在隧道的出口处再将IPv6分组取出转发给目的节点。隧道技术巧妙地利用了现有的IPv4网络,为分离的IPv6子网提供了有效的通信手段。IPv4/IPv6隧道技术主要包括手工配置隧道、自动配置隧道等。隧道技术能够充分利用现有的网络投资,因此在过渡初期是一种简单方便的选择。

2)双协议栈(dual stack)

双协议栈是指在网络节点中同时具有IPv6和IPv4两个协议栈。这样,它既可以接收、处理、收发IPv6的分组,也可以接收、处理、收发IPv4的分组。相对于主机而言,双协议栈是指其可以根据需要来对上层协议所产生的数据进行IPv4封装或者IPv6封装。其工作模式如下,如果应用程序使用的目的地址是IPv4地址,则采用IPv4协议进行数据封装,如果应用程序使用的目的地址是IPv6中的IPv4兼容地址,则同样使用协议IPv4,所不同的是,此时IPv6被封装在IPv4当中如果应用程序使用的目的地址是一个非IPv4兼容的IPv6地址,那么此时将采用Ipv6协议进行数据封装,而且很可能此时要采用隧道等机制来进行路由、传送如果应用程序使用域名来作为目标地址,那么此时先要从DNS服务器那里得到相应的地址IPv4/IPv6,然后根据地址的情况进行相应的处理。相对于路由器而言,双协议栈是指在一个路由器设备中维护IPv4和IPv6两套路由协议栈,使得路由器既能与IPv4主机通信也能与IPv6主机通信,分别支持独立的IPv4和IPv6路由协议,IPv4和IPv6路由信息按照各自的路由协议进行计算,维护两张不同的路由表。IPv6数据报按照IPv6路由协议得到的路由表转发,IPv4数据报则按照IPv4路由协议得到的路由表转发。

3)网络地址转换一协议转换

网络地址转换一协议转换(NAT-PT,network address translation-protocoltranslation)包括两个组成部分:网络地址转换协议和协议转换。其中地址转化是指通过使用NAT网关,将一种IP网络的地址转换为另一种IP网络的地址,它允许内部网络使用一组在公网中从不使用的保留地址。在使用这项技术是可以将IPv6网视为一个独立而封闭的局域网,它需要使用一个地址翻译器进行地址翻译。当内网的主机向外发送数据包时,将内部的IP地址转换为外部的公网地址,当数据包从外部网络回复数据包时,再将公网地址转换为内部网络的地址。协议转换是指根据IPv6和IPv4之间的差异对数据包的首部做相应的修改以符合对方网络的格式要求,并且由于网络层协议的改变要对上层的TCP(transportcontrol protocol,传输控制协议)、UDP(user datagram protocol,用户数据报协议)、ICMP(Internet Control Messages Protocol,网间控制报文协议)等数据包做相应的修改。将网络地址转换机制与协议转换机制相结合而产生的NAT-PT可以通过对协议、地址的转换实现IPv6和IPv4之间的相互通信。

参考文献

[1]赵金萍1,熊君星2,罗华群3对IPv4到IPv6协议转换技术的研究网络通讯与安全,2007.9

[2]张  博,李伟华,安喜锋,王高祖入侵检测系统在IPv6环境下的研究与实现计算机应用研2004.11

[3]蒋道霞,入侵检测系统的规则研究与基于机器学习的入侵检测系统模型信息安全,2005.4

[4]孙美凤龚俭,Snort规则库的冲突检查,扬州大学学报(自然科学版)2006.5

发明内容

技术问题:本发明的目的是提出一种混合架构入侵检测系统规则库创建方法,解决如何识别在不同网络环境下识别特定数据包,以便提取相关数据信息;如何构建不同的规则以适应使用不同的协议的需要,规则的存储。

技术方案:本发明的混合架构入侵检测系统规则库创建方法包含如下五部分内容:

A.分析采用协议的类型并提取协议数据的方法:

针对一个给定的数据包,分析其协议类型的步骤是:

A1.接收一个数据包,依据数据包前四位的版本标志位判定数据报类型,如果前四位的值是6,此数据包是IPv6数据包,提取相关IPv6协议数据以进行规则匹配,判定结束;如果前四位的值是4,则此数据包是IPv4数据包,要继续进行下一步判定;

A2.当IPv4数据包的“协议”域值为“41”,则指示这个数据报的的净荷是一个IPv6的分组,则提取相关IPv6协议数据以进行规则匹配,判定结束;

A3.当IPv4数据包的“协议”域值不为“41”,则指示此数据包是一个普通的IPv4数据包,那么提取相关IPv4协议数据以进行规则匹配,判定结束;

B.构造适应不同特征的规则库:

B1.IPv4特征库构造过程:

B11.获得IPv4数据包,

B12.提取IPv4数据包报头信息,

B13.统计行为特征,

B14.寻找非法、异常或可疑的信息,对照规则库比较是否存在此规则,

B15.选取上一步所得信息合适的组合,构建成特征,

B16.将特征加入IPv4部分的规则库;

B2.IPv6特征库构造过程:

B21.获得数据包,统计其中的报头信息,

B22.提取IPv6数据包报头信息,并且查看行为特征,

B23.寻找非法、异常或可疑的信息,对照规则库检查是否已存在,

B24.若不存在,则选取上一步所得信息合适的组合,构建成新的特征,

B25.将新特征加入IPv6部分的规则库;

C.组织规则的形式,及利用规则进行入侵识别的过程:

C1.规则的组织形式:

规则在内存中以“Hash二维链表”的组织形式存在;

C2.Hash二维链表构建的过程:

C21.初始化Hash表,将其所以表项全部置为空,转步骤C22,

C22.判断规则是否已全部读入内存,若是,转步骤C27;否则,转步骤C23,

C23.从规则库中读入一条规则,计算该规则的散列值,若对应的散列表项为空,则将该规则作为一条纵向链表插入该散列表项,转步骤C22;否则,转步骤C24,

C24.遍历相应的横向链表,寻找与待插入规则头相同的表头结点;若找到,转步骤C25;否则,转步骤C26,

C25.遍历相应的纵向链表,寻找优先级低于待插入规则选项的普通结点,若找到,将该规则选项插入其前;否则,插在纵向链表的尾结点之后;转步骤C22,

C26.遍历横向链表,寻找优先级低于待插入规则的表头结点;若找到,将该规则作为一条纵向链表插入其前,否则,插在横向链表尾结点之后,转步骤C22,

C27.结束;

D.匹配过程

D1.得到待匹配的包;

D2.抽取待匹配包的特征,计算其散列值;

D3.找到Hash表项,遍历横向规则链表,寻找匹配的表头结点,若找到,遍历相应的横向链表,寻找与待插入规则头相同的表头结点;否则,遍历横向链表,寻找优先级低于待插入规则的表头结点;若找到,将该规则作为一条纵向链表插入其前;否则,插在横向链表尾结点之后;

D4.遍历纵向规则链表,寻找匹配的规则选项,若找到,转遍历相应的纵向链表,寻找优先级低于待插入规则选项的普通结点,找到的话,将该规则选项插入其前;否则,插在纵向链表的尾结点之后;否则,转遍历横向链表,寻找优先级低于待插入规则的表头结点;

D5.结束本次匹配,继续得到其他待匹配的包以进行匹配,至规则全部读入内存结束;

E.增加规则及调整优先级

优先级的实时调整过程如下:

若待调整的为表头结点的优先级,则将该表头结点及其对应的整条纵向链表从Hash二维链表中删除并存储于临时变量中,增加表头结点的优先级,调用增加规则功能将该纵向链表重新添加到Hash二维链表中。

有益效果:使用本发明所提供了一种可以实现在长期的IPv6和IPv4共存的网络环境下建立入侵检测系统的规则库的方法,能在较为复杂的混和网络环境下有效地建立入侵检测系统规则库。本发明提供了基于协议数据特征的数据包协议类型识别机制,不同协议类型规则库构建方法以及Hash二维链表的规则库的组织方式,并且建立了一个表示运用规则库识别入侵的特征的过程模型.

附图说明

图1运用规则识别特征的过程,

图2分析采用协议类型的方法和过程,

图3构造IPv4规则库的过程,

图4构造IPv6规则库的过程,

图5规则链组织形式Hash二维链表逻辑图,

图6 Hash二维链表构建的过程,

图7运用规则库识别入侵的特征的过程。

具体实施方式

在未来较长一段时间里IPv6和IPv4将会长期共存,长期共存可以有不同的方法策略,因此,必须建立一个适用此种环境的入侵检测系统规则库。

1)建立数据包识别机制,此机制的目的在于识别数据包类型以便启动相应的规则库(IPv4或IPv6)进行特征识别,此机制的识别方法是基于IPv4与IPv6混合架构的环境下数据包的特征,分情况分析在不同的网络通信方式下相应数据包的特征,

2)建立完整特征规则库,此规则库即包含传统的IPv4特征和IPv6特征,

构造IPv4特征库与构造IPv6特征库的方法与考虑的方面与传统的基本相同,只不过此处要着重考虑IPv6的数据包的特点和IPv6特征所带来的新的行为特征,

3)规则的组织形式.在图4中给出了基于IPv6的规则链组织形式Hash二维链表逻辑图,IPv4规则链的组织形式与IPv6的情形类似,这里我们仅给出了IPv6情形下的情况.

规则库以文件的形式存储在硬盘上,当系统启动时,从中读出规则保存到内存中。在内存中,规则分为两部分:规则头和规则选项。规则头只包含一些共有的信息,如源、目IPv6地址,源、目端口号以及优先级,另外规则头还包含指向下一个规则头的横向指针和指向规则选项的纵向指针。规则选项包含更加详细的信息,如TCP标志,ICMP代码/类型,载荷内容以及优先级等等,另外规则选项还包含指向下一个规则选项的指针。规则头和规则选项带有相同的优先级。我们将规则头作为纵向链表的表头结点,规则选项作为纵向链表的普通结点(非表头结点)。规则在内存中以“Hash二维链表”的组织形式存在,其逻辑结构如图4所示。

Hash二维链表的构建过程如图5所示,增加规则及调整优先级与Hash二维链表的构建过程类似,检测过程如下:

(1)得到待检测的包,转(2);

(2)抽取待检测包的特征,计算其散列值,转(3);

(3)找到Hash表项,遍历横向规则链表,寻找匹配的表头结点,若找到,转(4),否则,转(6);

(4)遍历纵向规则链表,寻找匹配的规则选项,若找到,转(5),否则,转(6);

(5)匹配,结束本次检测,转(1);

(6)结束本次检测,转(1)。

Hash二维链表的构建过程和增加规则及调整优先级,检测过程都在具体实施部分有更详细的说明.

4)运用此规则识别入侵的特征的过程.为了简要的说明运用规则进行入侵规则识别的过程,我们建立如下的入侵特征规则库及攻击方法检测设计的模型.

1.建立数据包识别机制

因为IPv6和IPv4数据包前四位就是版本标志位,以此似乎很容易识别一个数据包是采用IPv4协议还是IPv6协议。但是由于目前网络环境的限制,IPv6的实现技术使得我们仅以此进行判断还不够,如采用隧道技术的情况下,端对端的IPv6服务需要通过IPv4网建立隧道,将IPv6包封装于IPv4包的负载部分,在隧道的另一端的节点处再将IPv6包从IPv4包中剥离出来并送往目的节点。因此我们要提出一种策略来识别所接受的数据包的类型,不能简单地将一个数据包识别为IPv6或者IPv4的数据包.根据不同的网络环境,采用不同的方法,如下是详细说明每种方法:

采用隧道技术:隧道技术的核心思想是通过把IPv6的数据报文封装入IPv4的数据报文中,让现有的IPv4网络成为载体以建立IPv6的通信.路由器将IPv6数据报文封装入IPv4,IPv4的数据报文头的“协议”域置为“41”,指示这个分组的净荷是一个IPv6的分组.可以据此判别是否采用了隧道技术.

双协议栈:当接收到IPv6数据包时,则可使用IPv6协议规则库.但是,当接收到IPv4数据包时,需要考虑是否采用了隧道技术,可使用上面已提出的采用隧道技术的协议数据提取方法.

网络地址转换一协议转换:这种方法适合于纯IPv4与IPv6之间的通信,因此可以根据NAT-PT特征和数据包头特征确定协议类型。

2.构造特征库

IPv4特征库

构造特征库的过程可分为如下步骤:

1).获得IPv4数据包

2).提取IPv4数据包报头信息

3).统计行为特征

4).寻找非法、异常或可疑的信息,对照规则库比较是否存在此规则

5).选取上一步所得信息合适的组合,构建成特征(过多过少都不好,以较高的效率和合理的资源消耗为准)

6).将特征加入规则库(IPv4部分)

构造IPv4特征库的过程如图4所示.

传统IPv4特征规则的建立主要依据的是报头值,另一方面时根据数据的行为特征.因为报头值的结构比较简单,而且可以很清楚地识别出异常报头信息,所以特征数据的主要参考项就是它。规则库的建立依靠搜集具有攻击特征的数据包的报头值特征,以此进行规则定义。过程类似于下面的IPv6特征库的构建过程.

IPv6特征库

构造IPv6特征库过程可分为如下步骤:

1).获得数据包

2).提取IPv6数据包报头信息并且查看行为特征,报头信息主要包括如下内容:

版本号(4bit)优先级(4bit)

流量标识(24bit)

数据长度(16bit)

下一包头(8bit)

跳数限制(8bit)

起始地址(128bit)

目的地址(128bit)

3).寻找非法、异常或可疑的信息,对照规则库检查是否已存在.

4).选取上一步所得信息合适的组合,构建成新的特征.

5).将特征加入规则库(IPv6部分).

3.规则的组织形式,及利用规则进行入侵识别的过程

●规则的组织形式

规则库以文件的形式存储在硬盘上,当系统启动时,从中读出规则保存到内存中。在内存中,规则分为两部分:规则头和规则选项。规则头只包含一些共有的信息,如源、目IPv6地址,源、目端口号以及优先级,另外规则头还包含指向下一个规则头的横向指针和指向规则选项的纵向指针。规则选项包含更加详细的信息,如TCP标志,ICMP代码/类型,载荷内容以及优先级等等,另外规则选项还包含指向下一个规则选项的指针。规则头和规则选项带有相同的优先级。我们将规则头作为纵向链表的表头结点,规则选项作为纵向链表的普通结点(非表头结点)。规则在内存中以“Hash二维链表”的组织形式存在,其逻辑结构如图4所示。

●Hash二维链表构建的过程

(1)初始化Hash表,将其所以表项全部置为空。转(2)

(2)判断规则是否已全部读入内存,若是,转(7);否则,转(3)。

(3)从规则库中读入一条规则,计算该规则的散列值(如以源IPv6地址中比特位为“1”的个数为散列值),若对应的散列表项为空,则将该规则作为一条纵向链表插入该散列表项,转(2);否则,转(4)。

(4)遍历相应的横向链表,寻找与待插入规则头相同的表头结点。若找到,转(5);否则,转(6)。

(5)遍历相应的纵向链表,寻找优先级低于待插入规则选项的普通结点,若找到,将该规则选项插入其前;否则,插在纵向链表的尾结点之后。转(2)。

(6)遍历横向链表,寻找优先级低于待插入规则的表头结点。若找到,将该规则作为一条纵向链表插入其前。否则,插在横向链表尾结点之后。转(2)。

(7)结束。

此过程也可由图五表示.

3)增加规则及调整优先级

增加规则的过程与上述过程基本相同,在此不做赘述。规则的优先级由管理员根据近期网络运行的具体情况来设定或做出实时的调整。比如近期内某种攻击行为频繁发生,则增加其检测规则的优先级,从而使检测效率得到提高。

优先级的实时调整过程如下:

若待调整的为表头结点的优先级,则将该表头结点及其对应的整条纵向链表从Hash二维链表中删除并存储于临时变量中,增加表头结点的优先级,调用增加规则功能将该纵向链表重新添加到Hash二维链表中。

从Hash二维链表中,删除待调整的规则表项,将其对应的规则头拷贝一份,将规则选项和规则头的备份一并存储在一条临时的规则中,调整规则选项的优先级,调用增加规则功能将其重新添加到Hash二维链表中。

4)匹配过程

(1)得到待匹配的包,转(2);

(2)抽取待匹配包的特征,计算其散列值,转(3);

(3)找到Hash表项,遍历横向规则链表,寻找匹配的表头结点,若找到,转

(4),否则,转(6);

(4)遍历纵向规则链表,寻找匹配的规则选项,若找到,转(5),否则,转(6);

(5)匹配,结束本次匹配,转(1);

(6)结束本次匹配,转(1)。

4.运用此规则库识别入侵的特征的过程

为了简要的说明运用规则进行入侵规则识别的过程,我们建立如下的入侵特征规则库及攻击方法检测设计的模型.

IPv4与IPv6混合架构环境下的入侵检测系统使用灵活的规则语言来描述网络数据报文,因此可以对网络攻击行为做出快速的翻译。把一系列相关的规则组织起来,构建成入侵特征规则库,并以该特征库为依据,对入侵检测系统截取的报文进行协议分析、内容搜索匹配,检测各种攻击和探测。特征检测结构如下图所示,由以下五个主要部分构成:①特征规则数据库,用于存储和管理入侵特征规则;②规则集处理,用于分析系统截获的报文,在特征规则库中进行内容搜索匹配,从而检测各种攻击和探测行为;③可视化管理控制台,可以实时显示入侵攻击的报警信息,并对报警信息进行分类统计,向管理员提供直观详实的监控信息;④规则管理模块,可以对规则进行设计和修改,更新数据库,从而可以检测出新的攻击行为;⑤综合攻击平台,集成了多种攻击工具,用于模拟攻击者对目标靶机进行攻击。

入侵检测是基于规则集的入侵检测系统。通过对规则的可视化处理,可以方便地维护、更新、修改入侵检测的规则。基于Web的可视化控制台控制整个可视化过程,后台管理主要完成对规则的维护、管理,如读入规则,根据可视化处理的结果修改、删除、增加规则,把最终结果保存等功能,可视化处理则完成对规则的各种维护、处理,如查看某一类型的规则,对某一类型的规则进行增、删、改等操作等。对入侵检测进行可视化的配置,设置选项和所用库的路径;对入侵检测的规则配置进行可视化操作,对规则进行分类、编辑、生成、删除、查询;对入侵检测运行进行控制,可以控制入侵检测加载新的规则集、重新启动;对入侵检测的输出数据库选项进行配置。

入侵特征规则库及攻击方法检测设计模型如图6所示。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号