6.4.1 模型的检测率与误检率
IAIDM模型经学习后进行模式识别,分为训练期和检测期,评估数据集分为训练数据集Etrn和检测数据集Etest,Etrn从数据集随机抽出100000条事件记录组成,Etest则是从所有子集中抽取部分事件记录组成,并将Etest分为8个数据子集,每一部分中包含正常记录部分和攻击记录部分,正常记录部分是从数据集中随机抽出10000条记录组成,从其他4个数据集合中抽出200条记录组成攻击记录(一次攻击行为涉及其中6~10条记录),使每个数据子集中入侵记录个数约占总记录数的1.67%。Etest中的攻击类型有DOS、R2L、U2R和Probing,表6-1给出了攻击手段的列表。
表6-1 攻击类型统计表
测试环境为:操作系统为Windows 7 64位,编程环境为VS2015。首先输入Etrn,IAIDM模型训练后,依次对8个Etest进行检测,其结果如表6-2所示。
表6-2 检测结果表(%)
由表6-2可以看出,随着数据子集的依次输入,IAIDM模型的检测效果越来越好(从数据子集1的65.25%的Dt到数据子集9的81.61%的Dt),这体现了IAIDM模型的首次和第二次检测响应的特性、交叉激励或抑制反应和联想记忆的功能。IAIDM模型对DOS和Probing的检测效果较好,而对R2L和U2R的检测率相对较低,这是由于R2L和U2R这两种攻击行为的连接记录之间时隔通常较长,而tab设定为2秒使检测器较难识别到足够数量的异常事件而获得较高的激活概率,例如某次攻击行为imap的连接记录如下:
06.19.1998.08:16:42 00:00:01 imap 1029 143 202.049.244.010 172.016.114.050 imap
06.19.1998.08:16:45 00:00:01 imap 1029 143 202.049.244.010 172.016.114.050 imap
06.19.1998.08:16:51 00:07:01 imap 1029 143 202.049.244.010 172.016.114.050 imap
……
第一个异常事件发生在16:42,第二个异常事件发生在16:45,它们相隔3秒,也就是说,当第二个异常事件被模型呈现出来时,与其紧密相关的前一个异常事件却消失了。而DOS和Probing的异常事件发生频率要高得多,例如某次攻击行为nmap的连接记录如下:
06.19.1998.14:18:25 00:00:01eco/i——208.240.124.083 172.016.112.000 nmap
06.19.1998.14:18:25 00:00:01eco/i——208.240.124.083 172.016.112.001 nmap
06.19.1998.14:18:25 00:00:01eco/i——208.240.124.083 172.016.112.002 nmap
06.19.1998.14:18:25 00:00:01eco/i——208.240.124.083 172.016.112.003 nmap
……
nmap的异常连接记录几乎是同时发生,检测器很容易识别到足够数量的异常事件而获得较高的激活概率。在KDD CUP1999大赛中,各个检测系统对R2L和U2R这两类入侵的检测效果都不好,冠军检测方法对R2L和U2R的检测率分别为13.2%和8.4%,这是因为对于像密码猜测等入侵行为可能在很长的一段时间发生,即异常记录发生的间隔时间较长,不像DOS等能采用基于时间的事件发生频率来进行检测,当前的IDS系统对这类进攻的表现皆不佳。与此相比,IAIDM模型的检测率较好,由于IAIDM模型中检测器的激活方式采用了的概率激活方式而不是阈值机制,概率激活方式使检测器仍有机会被异常发生频率低的攻击行为激活,一旦形成记忆检测器就能有效地识别该类攻击,而阈值机制是纯粹基于时间的频繁检测方式,对于缓慢的攻击行为无能为力。
IAIDM模型Ft比率相对比较稳定,这因为它只是受到自我空间的界定精度影响,平均为0.81%。与经典的入侵检测算法RIPPER比较,其Dt为76.3%和Ft为0.54,在检测率方面IAIDM有着更好的性能,而误检率方面IAIDM稍逊一点。这是因为算法MBNSA虽具有运算效率高、处理高维数据的优点,但其界定自我空间的精度不高,可以通过调整相似度阈值ε和面向行为子集的异常阈值u来加以改进。