论文部分内容阅读
当计算机网络应用的日益普及,伴随而来的是一系列的网络安全问题,入侵检测技术作为一种主动的信息安全保障措施,备受关注。
本文首先以网络安全为基础,介绍了入侵检测的概念、入侵的手段和入侵检测系统的分类。详细地分析了入侵检测系统Snort的原理及其实现,包括libpcap捕包原理,snort组成模块,系统数据处理流程、规则解析、检测引擎、告警事件检测模块和存储模块等.并搭建了基于linux的Snort入侵检测平台,成功进行入侵检测数据包捕获实验。
但因为Snort本身设计上的缺陷存在的单包特性,其规则匹配是一个攻击而不是一类攻击,误报率高等缺点;基于此,引入了SVM理论。
SVM(支持向量机)是建立在统计学习理论基础上,使用VC维理论和结构风险最小化原理的机器学习方法。探讨了SVM的基本原理和算法类型等,在SVM模拟仿真实验中(SVM类型采用C-SVC,核函数类型采用RBF核,数据集采用Kdd Cup 99训练数据和测试数据,运行工具平台采用libsvm),系统通过交叉验证法,对比不同的C,g的测试精度,不但得到了不同参数值的等高线图,而且也找到了最优的C,g。
着重从智能分类检测方面来改进Snort的效率,将SVM应用到Snort入侵检测系统中:在Snort基础上提出一个S-Snort入侵检测模型,并对S-Snort入侵检测系统成功实现构造,此系统具有SVM的特征,能实现对网络数据的学习功能,运行过程中可对网络数据进行训练,并主动挑选学习样本,将样本数据特征转化成规则。S-Snort能克服Snort的缺点,能对数据进行有效分类,并能有效的检测到新的或未知的攻击。通过实验证明,S-Snort可以有效提高入侵检测系统的检测精度,减低误报率,其SVM机制具有良好的泛化能力。