【编者按】:精品学习网论文频道为您提供各类开题报告范文参考,以及开题报告写作指导和格式排版要求,解决您在开题报告写作中的难题。
一、课题来源及研究的目的和意义
1. 课题来源
本课题来源于国家自然科学基金资助项目“基于免疫的检测理论与技术研究”(编号:60671049)。
2. 课题研究的目的与意义
在信息化社会中,网络和计算机的进步,在给人们的生活带来极大的便利的同时,也为黑客和恶意攻击者提供了入侵的手段和条件。正是由于当前的网络规模的不断扩大,所涉及的用户范围不断增加,一旦发生有组织、大规模的网络入侵事件,会造成无法弥补的后果。因此,如何有效地保护重要的信息数据、提高计算机网络系统的安全性已经成为影响一个国家的政治、经济、军事和人民生活的重大关键问题。
当越来越多的核心业务向互联网转移的时候,网络安全作为一个无法回避的问题呈现在人们面前。传统上,用户一般采用防火墙作为安全的第一道防线。而随着攻击者知识的日趋成熟,攻击工具与手法的日趋复杂多样,单纯的防火墙策略已经无法满足对安全高度敏感的部门的需要,网络的防卫必须采用一种纵深的、多样的手段。与此同时,当今的网络环境也变得越来越复杂,各式各样的复杂的设备,需要不断升级、补漏的系统使得网络管理员的工作不断加重,不经意的疏忽便有可能造成重大的安全隐患。在这种环境下,入侵检测系统成为了安全市场上新的热点,不仅愈来愈多的受到人们的关注,而且已经开始在各种不同的环境中发挥其关键作用。
入侵检测系统(Intrusion Detection System, IDS),顾名思义,便是对入侵行为的发觉。它通过对计算机网络或计算机系统中的若干关键点收集信息并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象。与其他安全产品不同的是,入侵检测系统需要更多的智能,它必须可以将得到的数据进行分析,并得出有用的结果。一个合格的入侵检测系统能大大的简化管理员的工作,保证网络安全的运行。
人工免疫理论是继人工神经网络、遗传算法之后,从生物系统中提取的又一智能化理论[1]。该理论借鉴生物免疫系统的机理解决现实问题[2]。入侵检测与生物免疫系统具有惊人的相似性,两者主要目的都是检测出违反所制定策略的异常行为[3]。人工免疫系统表现出的分布式保护、多样性、自适应性、健壮性、可扩展性、记忆能力、容错能力以及动态稳定性,正是当前入侵检测系统所希望得到的,有利于克服当前IDS所面临的问题。基于人工免疫的入侵检测技术以其具有完整的理论体系、成熟的理论模型和简单的计算方法等特点,引起了许多学者的兴趣与关注。
基于人工免疫的入侵检测系统研究的主要对象是检测器,检测器检测异常能力的高低直接影响着入侵检测系统性能。本文对基于人工免疫的入侵检测系统的检测
器进行了优化研究,合格检测器是IDS的核心部分,生成合格的检测器对IDS来说至关重要的。目前对合格检测器的生成算法已经有很多讨论。如:穷举检测器生成算法、线性检测器生成算法和贪心检测器生成算法等[3],几种算法各有优缺点。本文提出采用协同进化的方法来对生成检测器集合进行优化,进一步提高IDS的检测率,降低误报率。
二、国内外研究现状及分析(文献综述)
将生物免疫原理应用于计算机安全领域是安全技术研究的一次新的尝试,因为计算机的安全问题与生物免疫系统所遇到的问题具有惊人的相似性,两者都要在不断的变化的环境中维持系统的稳定性[4]。生物免疫系统能够保护生命机体不受病原体的侵害,正如入侵检测系统保护计算机系统免受攻击的摧残[5];免疫系统通过识别异常或以前未出现的特征来确定入侵,并在处理外来异体时呈现出分布性、多样性、自适应性等特性,而这些特性正是目前计算机安全系统所缺乏的[6]。生物免疫原理为入侵检测技术的研究提供了一个新的思路,国内外研究人员在此方面已做了大量开创性的工作,并提出了基于二进制否定选择和实值否定选择算法等一些列入侵检测模型。
否定选择算法(Negative Selection Algorithm, NSA)是最早的人工免疫算法之一,在可供选择的方法中具有明显作用并且能够以更高的质量提供独特结果[7]。在人工免疫系统中,通过否定选择算法去除那些对自体产生应答的免疫细胞,从而实现对自体的耐受。否定选择算法是对免疫细胞的成熟过程的模拟,经历了耐受的检测器模拟成熟的免疫细胞。算法主要包括了两个阶段:耐受和检测。耐受阶段主要负责成熟检测器的生成。在检测阶段,检测器检测受保护的系统以发现变化。否定选择算法极易分布,每个检测器都能独立地行使功能,无需在检测器间交流或协调,因为每一个检测器只覆盖非自体的一部分,一组检测器可以分布在多个位置[8,9]。按照检测器表示方法可以将否定选择算法分为二进制否定选择算法和实值否定选择算法。
国外的研究现状:
美国University of New Mexico 的Forrest小组。他们提出的基于免疫机制的入侵检测模型,是一个基于网络的入侵检测模型[10]。在这个模型中,整个系统由分布在网络中处于监听状态的一组主机构成,每台主机是一个检测结点,在每个检测结点上,用于免疫识别的抗原是由请求包中的源IP地址、目的IP地址和服务端口3个属性构成的定长为L的二进制符号串。模型中的否定检测器是免疫系统中B细胞、T细胞和抗体的综合体,数据结构与抗原相同,检测器与抗原的特异性互补结合以定长的r-连续位匹配函数来模拟,成熟的否定检测器是从随机生成的不成熟检测器中通过否定选择过程生成的,然后分布在网络系统的各主机上。本模型的弱点是:检测基因的属性选择较简单,较难反映入侵的特征;此外,成熟的否定检测器是从随机生成的不成熟检测器中通过否定选择过程生成的,算法的搜索范围很大,缺乏目的性,由于网络中检测器的规模是固定的,所以其覆盖的“非自体”空间也是有限而不完备的[11]。
D’haeseleer分析了二进制否定选择算法的理论基础,并从信息论的角度出发推导出了系统所需的检测器集合大小的下界[12]。提出了漏洞的概念,讨论了漏洞产生的原因,并给出了避免漏洞的方法。又针对二进制否定选择算法所使用的穷举检测器生成算法的高时间复杂度和产生冗余检测器的问题,提出了线性检测器生成算法和贪心检测器生成算法[13]。前者所耗时间与自体集合大小和检测器集合大小呈线性关系,但仍有冗余;后者可以消除冗余,但不能使检测器生成时间最小化。
Homfeyr和Forrest提出一种人工免疫模型LISYS,并将它映射到网络入侵检测这个实际领域[14]。该模型被部署于基于广播的局域网中,以采用49比特压缩表示的SYN包为自体样本,训练长度为49比特的检测器检测局域网中的异常[15]。
2003年,Gonzalez在总结和改进之前的算法后正式提出了实值否定选择算法(Real-valued Negative Selection Algorithm, RNS)[16],该方法以超球体表示自体样本/检测器,以检测器的隶属函数为匹配规则,采用迭代的方法生成检测器。在迭代的过程中不停地移动检测器使之远离自体样本和其他成熟检测器,以达到最大化非自体空间覆盖的目的。针对实值否定选择算法生成的检测器重叠率高的问题,Gonzalez对其进行了优化,提出了随机化实值否定选择算法[17]。该方法首先利用蒙特卡洛方法估计所需检测器的半径和个数,然后再利用模拟退火算法对检测器集进行优化,达到最大化非自体空间覆盖和最小化检测器重叠的目的。
实值否定选择算法可以采用多种方式生成检测器:经典的生成并消除无效候选检测器策略[30,18];利用遗传算法生成检测器[19,20];one-shot随机搜索方法[21-25];生成检测器集合后再进行优化[17]。针对基于遗传算法的检测器生成算法收敛慢且参数不易确定的问题,Gonzalez提出一种自适应否定选择算法并将其应用于异常检测中[26]。在原有基于遗传算法的检测器生成算法的基础之上,Amaral提出了一种基于拟蒙特卡洛方法和遗传算法的检测器生成算法[27],利用这种方法能够生成一组少量但高效的检测器覆盖非自体空间,提高了算法效率。Lee提出一种基于模糊遗传算法的检测器生成算法[28],该算法能够自适应的调整控制参数以适应检测环境的变化。蔡涛等提出一种基于切割的检测器生成算法[29],该算法依据自体在论域空间的分布,引入切割空间的方法生成检测器,消除所生成检测器的冗余信息,减少了检测漏洞。
Dasgupta提出了一种新的基于人工免疫的异常检测方法,该方法结合了否定选择算法和传统的分类算法,首次将实值表示的检测器用于异常检测系统。另外,该方法还为正常(异常)空间提供了一个模糊的特征,满足了许多问题所需要的“软”的区别,使得异常检测系统能够输出一个异常度而非二进制的正常/异常输出[30]。随后,Dasgupta又将实值表示的检测器应用于网络入侵检测应用中,将正常样本正规化到单位超立方体空间后,按照否定选择算法的基本原则,采用遗传算法生成超矩形检测器覆盖非自体空间,并利用小生境技术加强检测器的多样性,最后使用生成的超矩形检测器集合检测网络入侵[31]。
Chmielewski提出了一个增加非自体空间覆盖率的简单方法[32],该方法以候选检测器的k-近邻的重心作为成熟超球体检测器的中心生成检测器集合。通过这种方法不但能够增加成熟检测器对非自体空间的覆盖率,还能够防止生成具有较低识别能力的检测器,提升检测效率。Chmielewski还提出采用K-D树存储自体样本和检测器[33]。采用树形结构存储自体样本和检测器能够提高系统效率,增强入侵检测系统的实时性。蔡涛等提出一种快速否定选择算法[34],该算法引入红黑树建立索引,设计基于红黑树的快速否定选择算法,避免反复提取子串和重复比较等问题,提高检测效率。
罗文坚等提出一种启发式的检测器生成算法[35]。该算法采用二进制模版以启发式搜索的方式生成检测器,提升了传统检测器生成算法的性能。
四川大学李涛教授所带的项目组的研究主要包括:动态克隆选择算法以及改进的基于免疫原理的入侵检测模型的提出。在动态克隆选择的研究中,李涛通过在动态克隆中引入变异,提高了学习效率和检测效率;而新型入侵检测模型也是基于这种动态克隆选择算法的,在这个模型中,建立起了由记忆细胞,成熟细胞,为成熟细胞集合构成的入侵检测模型,这样比传统的模型有更好的适应性[36]。
针对实值否定选择算法采用的单点训练检测器方法效率低的问题,哈尔滨理工大学的张凤斌教授提出了一种基于自体区域的实值否定选择算法[37]。该算法定义了连续的自体区域,采用动态聚类法将自体样本分类到自体区域,训练时根据自体区域半径和与自体区域重心之间的余弦距离做局部训练。当耐受自体点被当成一个整体使用时能提供更多的信息,使系统效率和检测率得到提高。
Husband在1991年提出了多种群合作型协同进化遗传算法模型,并将其应用于车间调度问题[38]。1995年,Paredis提出了一种两物种合作型协同进化遗传算法,又称为共生协同进化遗传算法,并应用于解决Goldberg给出的欺骗问题[39]。
1997年,Portter在博士学位论文中对合作型协同进化遗传算法模型进行了深入的研究,针对已有协同进化遗传算法存在的需要人参与的缺陷,给出了一种新的合作型协同进化遗传算法结构,以避免人为的问题分解,并基于该模型进行了相关的分析和大量的实例验证[40]。
Potter将协同进化遗传算法应用数值函数优化问题,以说明其有效性,因为这一问题对进行新的协同进化算法结构的研究具有独特的优点[41]。Nattavut将多目标遗传算法(multi-objective genetic algorithms,MOGA)与合作型协同进化遗传算法相结合,构成了多目标合作型协同进化遗传算法,提高了优化性能,该算法的有效性通过六类基准函数得到了充分的验证[42]。
Westra考虑二维空间的静态环境,采用协同进化遗传算法解决了该问题,得到了机器人到某一固定点的最短路径[43]。
三、学位论文的主要研究内容
本论文在以前遗传算法应用IDS的基础上,把协同进化算法加入到本系统中,使IDS的检测器进一步优化,能够提高检测器的检测性能,达到提高系统的检测率、降低系统误报率的目的。本论文主要研究的内容如下:
(1)协同进化算法,结合IDS的特性给出相应的理论依据:协同进化遗传算法考虑个体之间与个体与环境之间的关系,种群中个体的进化受其他个体及进化环境的影响。对个体进化评价时,需要利用其他个体的信息,即个体适应值不再仅由目标函数决定,还由其他个体决定。协同进化遗传算法包含一个或多个种群,若进化种群为一个,其个体编码与传统遗传算法一致,优点是在进行个体评价时采用了相对适应值,同一种群的个体之间相互影响、相互制约、共同进化。
因为单个子种群的个体仅代表复杂系统的一个部分,故个体进行适应度评估时必须用到其他子种群的个体信息,称为代表个体。即待优化系统的完整解集由每个子种群中的代表个体组成,各子种群只有相互合作才能完成优化任务。通常选择当前代种群最优个体为代表个体。这里假设把待优化复杂问题形成两个独立的子种群,分别叫做解种群和测试种群。
(2)根据本系统的要求和协同进化算法的步骤,给出在入侵监测系统中的应用模型:
协同进化算法的步骤:
step1:初始化所有子种群。R>step2:从其他子种群中选择代表个体,与待评价子种群(测试种群)的个体构成合作团体,进行个体评价。
step3:各个种群进行选择、交叉和变异等遗传操作,生成子代种群。
step4:判断算法终止条件是否满足,若满足,终止种群进化,输出优化结果;否则,转向step2。
下图为合作协同进化遗传算法部分结构图[44]。图中为三个子种群,实际应用中,子种群的数量可多可少,由具体被优化问题的难易程度决定。图中表示的种群1为解种群,从其他种群中选出的为代表个体。
图1:合作协同进化遗传算法结构图
(3)根据给出的系统模型,在系统中使用协同进化算法对初始生成的检测器进行优化,主要是利用协同进化算法每次都生产最优的检测器,这样使每次生成的检测器都能很好的发挥作用,来提高检测器的性能。
图2:CGA在IDS模型中的应用
通过在入侵监测系统中加入协同进化算法,来提高系统的检测率,降低误报率。在本论文中主要是对检测器的优化,如果一个监测系统中没有好的检测器,就谈不上提高检测率的问题。