摘 要:随着网络流量的增大,Snort入侵检测系统处理数据的能力要求更高,一般可以通过配置Snort设置或者改进其模式匹配算法。利用正向和反向有限自动机,同时进行自后向前和自前向后的搜索,设计出一个有效的算法。相对已有的模式匹配算法,此算法在增加一定内存开销和多构造一个反向自动机的时间开销下,检索时间将近减少一半。通过实验测试,该算法使Snort入侵检测系统的效率有了大大的提高。
关键词:Snort;入侵检测;模式匹配
随着网络应用的增多,网络数据流量不断增大,这对基于网络的Snort入侵检测系统的数据检测能力有了更高的要求。一般采取简单方式,更改Snort的配置设置,让其丢去部分网络数据包,只检测部分数据包来进行判断。这种做法是在牺牲一定网络数据判断正确率的条件下,提高Snort入侵检测系统的能力。在网络安全要求越来越高和数据流量越来越大的情况下,这种方法常常达不到要求。在Snort入侵检测系统中,影响其效率的主要部分是模式匹配的检测。提高模式匹配算法的效率,对整个入侵检测系统的效率提高起着非常关键的作用。
模式匹配是指:设有给定的两个串T和P,长度为n的文本字符串T=T的次序进行比较。遇到不匹配的字符采用BM算法的坏字符规则和好后缀规则来移动反向模式树。匹配过程如图4。
图4 反向模式树模式匹配前对齐
模式匹配时(如图4所示),字符B(红色)和字符D(红色)对齐,字符比较从模式树的最右端点开始,模式串字符O(粉红色)和文本串字符R(粉红色)不匹配,模式串中下一出现字
符R(鲜绿色)为P 王永成,沈州,许一震.改进的多模式匹配算法切.计算机研究与发展,2002, 39(1): 55-60.