基于人工免疫原理的检测系统模型及其应用
上QQ阅读APP看书,第一时间看更新

2.4 构建三级模块式检测系统模型过程中的探索

在设计三级模块式检测系统的过程中,本章首先依据危险模型完成了系统模型的搭建,在具体实现其中模块的功能时,以网络入侵检测的典型应用为例设计了几个方案进行实验。一方面对系统模型进行初步验证,另一方面通过对实验结果进行比较和分析以选择最终采用的检测器和数据融合算法。

所有方案的仿真实验所用数据均取自KDD-CUP-99数据库。该数据库由大量真实的正常和攻击网络连接数据组成,每个连接数据含有41个特征,可分成3组:固有特征、内容特征和通信特征,详细介绍参见5.3.1节。

本书所有实验均在Windows XP操作系统平台上进行,使用Matlab 6.5编程实现。

2.4.1 方案一的实施及仿真结果

第一级模块中的检测器用学习矢量量化(Learning Vector Quantization, LVQ)网络实现,数据融合算法采用的是动态分类器选择(Dynamic Classifier Selection,DCS)算法,不考虑危险信号。

动态分类器选择算法[172]如下:

输入为待检测模式X*,验证数据、邻域范围值、拒绝阈值和选择阈值,输出为检测数据的类别。设分类器个数为K,类的个数为M

Step1:输入未知模式X*,如果各分类器输出结果相同,即C1=C2=…=CM,那么输出结果即为该模式的类别;否则继续进行以下步骤。

Step2:在X*与所有验证样本之间,分别计算X*与各个样本的欧几里德距离dn,当dn<DD为邻域范围值)时,视该样本为X*的邻域样本,设邻域样本的个数为N

式中,

Step3:将邻域样本输入每个分类器,分别计算局部准确度CLAjX*)。

Step4:如果CLAjX*)小于拒绝阈值,就不再考虑该分类器Cj

Step5:找出局部准确度中的最大值CLAmX*)。

Step6:对于每一个分类器,计算dj=[CLAmX*)-CLAjX*)]。

Step7:如果所有djjm)都大于选择阈值,那么选择分类器Cm的结果,否则在dj小于选择阈值的分类器中任选一个分类器的输出作为最终结果。

实验数据

选取KDD-CUP-99数据库中样本较多的3种攻击:smurf、ipsweep和neptune,以及正常数据normal。所涉及特征共有31个,其中固有特征9个,内容特征13个,通信特征9个。训练集含有200个样本,其中正常连接与攻击连接各100个。测试集含有80个样本,其中正常连接20个,攻击连接60个。

实验方案

由于网络连接数据的特征分为3组,因此第一级模块中使用3个LVQ网络实现3个检测器,分别针对这3组特征进行检测。

·检测器1:LVQ1检测固有特征

·检测器2:LVQ2检测内容特征

·检测器3:LVQ3检测通信特征

各个检测器的输入为连接数据的对应特征,输出均为连接所属的类别:正常或攻击,分别用数字1和2表示。

由于不考虑危险信号,因此DCS算法的融合结果即为最终检测信号:正常或攻击,也分别用数字1和2表示。

实验步骤

首先,用部分已知样本训练3个LVQ网络建立初级检测器;其次,用测试样本对3个LVQ检测器的性能分别进行测试;最后,加入DCS算法对3个检测器的结果进行融合,并用同样的测试样本对融合后的检测性能进行测试。

实验结果及分析

3个LVQ检测器的检测结果图,如图2-4所示。

图2-4 3个检测器对测试数据的检测结果图

根据检测结果可计算出3个检测器的准确度分别为:

LVQ1(9-9-1):91.25%

LVQ2(13-10-1):91.25%

LVQ3(9-15-1):85%

用DCS算法对3个检测器的检测结果进行融合后得到的结果如图2-5所示。经计算,检测的准确度达到95%,高于单个检测器。

图2-5 3个检测器的检测结果经过DCS算法融合后的结果图

2.4.2 方案二的实施及仿真结果

第一级模块中的检测器用BP网络实现,数据融合算法采用决策模板算法,考虑危险信号。

由于考虑危险信号的作用,因此这里使用的决策模板算法的融合结果按照本书在2.3.4节提出的方法重新定义,增加了可疑信号。有关决策模板算法融合的详细步骤,将在第4章给出。

实验数据

本实验增加了攻击种类,考虑KDD-CUP-99数据库中TCP协议类型的连接,共涉及36个特征,其中固有特征6个,内容特征11个,通信特征19个。这些连接覆盖了4类攻击中的16种,将正常连接和其中10种攻击连接作为已知模式,其余6种攻击作为未知模式。训练集包括从已知模式中任选的1230个样本,其中正常连接有612个,攻击连接有618个。测试集含有从已知模式中选取的172个正常或攻击样本,以及从未知模式中选取的80个攻击样本。模式的选取和样本数据的预处理说明见5.5节。

实验方案

与方案一相同,只是本实验使用3个BP网络实现3个检测器,分别针对这3组特征进行检测。但在实验中发现,如果特征按照固有、内容和通信分组,那么有些特征的检测效果不理想,因此在原有基础上重新对这些特征进行了分组,以提高单个检测器的性能。将通信特征细分为2组,新固有特征包括原有的特征和一组通信特征,新内容特征包括原有的特征和原来的固有特征,新通信特征包括原有的另一组特征和原来的固有特征。

·检测器1:BP1检测新固有特征组

·检测器2:BP2检测新内容特征组

·检测器3:BP3检测新通信特征组

实验步骤

首先,用部分的已知样本训练3个BP网络建立初级检测器;其次,用另外的已知样本建立两个检测模板;最后,用相同的测试数据分别对3个检测器的结果、采用决策模板算法进行融合的方法以及考虑危险信号作用的方法进行测试。

实验结果及分析

采用决策模板融合算法和关联危险信号两种方法获得的检测结果如表2-2所示。为便于比较,在此同时列出了3个单个检测器获得的检测结果,括号中的数字表示该网络的结构。对结果的比较包括对已知行为的检测准确度、误报率和漏报率以及对未知攻击的检测准确度的比较。关联危险信号时,St1=0.3,St2=0.5。危险信号将伴随攻击连接数据发出。

表2-2 多种检测方法的结果对比表

分析表2-2中的数据可知:

①尽管有的性能不如个别检测器的效果,但经过融合后,整体性能得到提高。

②单个BP检测器对未知攻击的检测效果不佳。

③采用决策模板算法后对未知模式的检测效果改善作用不大。

④关联危险信号后,对已知模式的检测效果没有影响,但可提高对未知模式的分类效果。

2.4.3 实施方案分析及结论

通过对上面两个实施方案的仿真结果进行分析,可得出以下几点结论:

①入侵检测系统的整体检测性能与第一级模块中使用的初级检测器的性能有关,即单个检测器的性能越好,系统的整体检测性能也就越好。另外,有些特征对于分类识别的作用不大,可以不予考虑,因此特征提取至关重要。

②两个方案中的初级检测器都是用神经网络实现的。尽管对已知连接模式获得了不错的检测效果,但所用网络一旦训练完成,网络结构和权值就不再改变,这在面对行为模式不断变化以及出现未知攻击模式的情况下,表现出一定的局限性,而解决的办法往往是定期重新训练。

③虽然两种融合算法都改善了检测效果,但动态分类器选择算法需要在已知数据中确定与未知模式邻近的样本,利用对这些邻近样本的分类结果得出最终结果。而决策模板算法也需要利用已知数据预先为每个类别建立决策模板。因此,这两种融合算法都无法改善对未知模式的分类效果。

④通过训练,检测器已经学习了已知模式的特征,不需要利用危险信号就可识别,因此危险信号对已知连接的检测能力没有提高,但对未知攻击或未知模式的识别能力有所改善。这说明本章将危险信号作为系统无法根据原有知识作出准确判断时的依据信号是合理且有效的,所设计的关联危险信号的方法是可行的。

针对结论中发现的问题,本章采取了以下措施:

第一,结论①和②说明,要想提高检测系统的检测性能,首先需要寻找其他方法来实现第一级模块中的检测器。鉴于人工独特型网络具有与人工神经网络相似的学习和记忆能力,且经研究发现该网络具有动态调整能力,可以实时更新且不断学习新的行为特征。因此本章尝试用人工独特型网络代替人工神经网络来设计检测器,提出了多变异模式独特型网络自适应检测器。

第二,结论③和④说明,本章为了利用危险信号的作用,对Kuncheva提出的决策模板算法的融合结果重新定义的方法是合理的。但要想依靠数据的融合提高对未知异常行为的检测能力,还需要对现有的融合算法进行改进或者采用其他的融合算法。而经研究发现,在Kuncheva提出的决策模板算法中,第i类模板实际上是对训练集中标签为i的样本获得的决策轮廓取平均值得到的。那么,只需将当前计算出的决策轮廓通过简单的运算就可加入对应的模板,从而使模板不断根据新的数据进行调整,当然包括对未知异常行为的学习。可以说,通过这种方法,入侵检测系统实现了对检测模板的在线调整。这是本章提出模板可调式自适应决策融合算法的初衷。

至此,完成了对整个检测系统模型的设计,由于设计的多变异模式独特型网络自适应检测器具有自动更新能力,模板可调式自适应决策融合算法也具有在线调整能力,因此所设计的三级模块式检测系统具有自适应能力。