6.4.2 模型的自适应性和柔性检测
适应性免疫系统是一个柔性系统。适应性免疫系统的柔性具有两方面的含义,其一是从资源利用的角度。在通常情况下,免疫系统消耗较少的资源;当机体面临严重感染时,免疫系统利用更多的资源,产生更多的免疫细胞,以发起快速有效的免疫反应。其二是从适应性免疫系统直接控制的资源的角度。当某种病菌对机体造成的危害较大时,免疫系统将裁剪其他免疫反应,将更多的资源用于对付这种病菌。类比于适应性免疫系统,IDS免疫模型能根据网络系统面临的攻击情况和系统本身的计算负荷,动态调整对系统资源的利用,当网络受到攻击时,IDS应该利用更多的系统和网络资源,快速有效地检测入侵,以便于系统安全管理员及时采取相应的措施。而在平时未遭受入侵的情况下,IDS应尽可能耗费少的系统资源,以便于系统本身计算任务的完成。
为了验证模型的自适应性和柔性检测策略,安排了3组实验数据E1、E2和E3,E1包含9600条正常记录和400条随机噪声数据,代表良好网络环境下的连接记录,噪声数据是模拟正常网络行为下的误操作或偶然事件;E2包含8000条正常记录和2000条攻击记录,代表严重恶劣网络环境下的连接记录;E3包含9600条正常记录和400条攻击记录(其中100条为新的攻击记录),代表较差网络环境下的连接记录。实验中3组实验数据E1、E2和E3在不同的时间段分别输入已训练的IAIDM模型如表6-3所示。
表6-3 输入实验数据的时间段
通过观察各类检测器总数量[SN(di)+MN(di)+MEM(di)]的变化趋势以及CPU和内存的使用率来验证在不同的网络环境下IAIDM模型的自适应性和柔性,图6-2给出了从时间点10:39:10到13:39:00这段时间内检测器数量的变化趋势。
图6-2 检测器数量的变化趋势
在图6-2中,在时间段10:39:10和11:39.11之间,系统中零星地产生了一些检测器,这是因为落在非我模式空间的部分噪声数据被模型当作异常事件捕获到后,产生了相应的初始检测器群SN(di)。由于噪声数据之间的相似度很小,致使其不可能有机会被刺激进而活化,随着生命周期的结束而消亡,可见IAIDM能够避免噪声或孤立点的影响,同时在这个时间段上CPU的平均利用率主要在25%左右,内存的使用率也低,即对系统资源的消耗较少。这是由于在正常的网络环境下模型的主要工作是利用反向判定规则ND快速地评估当前的网络数据是否异常。在时间段11:39:11和12:39:24之间,系统中产生了大量的检测器,同时CPU的平均利用率主要在90%左右,内存的使用率也随之上升。可见当网络环境恶劣时,IAIDM利用了更多的系统资源用于检测入侵;当网络环境趋于正常时,系统中存留了一些记忆型的检测器。这是IAIDM模型对入侵行为学习的结果。在时间段12:39:24和13:39:00之间,系统中检测器的数量在原有的基础上产生了一阵波动后又在一个新的台阶上稳定下来,同时CPU的平均利用率主要在47%左右,内存的使用率较低。波动是由新的入侵行为引起的,新的检测器经过激励响应后依概率转化为记忆检测器而留在了系统中,使原有的记忆检测器数量上升,这段时间内由于系统保留了E3中大部分入侵行为的特征而使其对系统资源需求较少。
图6-2显示了在平时未遭受入侵的情况下,IAIDM能耗费较少的系统资源,以便于系统中其他任务的完成;当网络受到攻击时,IAIDM利用了较多的系统资源,便于其能快速有效地检测入侵。体现了IAIDM的自适应性和柔性检测策略,也体现了IAIDM模型具有自我学习和自我平衡调节的功能。
在网络入侵检测的免疫模型研究中,我们以霍夫迈尔的免疫模型作为比较的对象,其检测器采用的是一次网络连接中计算机的源IP地址、目的IP地址和服务共计49位的二进制串来表示,并使用r-连续匹配位作为检测方式。有效检测器集合的产生采取动态更新的方法,实现的是以一定时间作为代价来换取一定空间的检测策略,激活方式为阈值机制。图6-3给出了该免疫模型的检测器生命周期图。
图6-3 检测器的生命周期图
图6-3中显示首先随机产生49位的二进制串作为未成熟检测器(immature),未成熟检测器经历否定选择过程即迭代比较后成为成熟检测器(mature)进入系统承担检测任务,在假设漏检概率Pf不变的前提下,通过公式(3-1)得到有效检测器的数目NR,即在期望达到的检测效率下系统需维持有效检测器集合的规模,例如检测器的长度为49,匹配长度r为13,则PM=0.002时,欲使Pf=0.01时,需要2300个有效检测器,公式(3-4)给出产生一个有效检测器需迭代的次数,假设自我模式的数目NS为5000个,则迭代次数为22248,当NS=6000时迭代次数为1.6×105,可见迭代次数随NS成指数增长。为了保持较高的检测水准,模型不得不时时更新有效检测器集合,而通常的情况下网络在绝大部分时间的运行中处于安全状态,入侵行为很少发生,致使大量的系统资源被无益的消耗掉,因此该模型无法依据当前的网络安全环境自适应的调整自身的检测策略,即缺乏自适应性和柔性检测的功能。