朱韶平 肖永良 党艳军
摘 要:为解决网络系统入侵行为升级快,隐蔽性强和随机性高等严重安全问题,结合入侵检测系统信息的特点,提出一种基于MSNN模型的入侵检测算法。首先提取系统调用顺序特性和频度特性,然后利用多级Sigmoid神经网络中的Sigmoid神经元具有微调网络的作用,且能让神经元产生多元反应进行多类分类,构建类似于大脑神经突触网络信息处理的MSNN模型,实现网络安全入侵检测。实验结果表明,该算法的检测精度高、抗干扰能力强,具有良好的检测效果和较高的应用价值。
关键词:网络安全;入侵检测;MSNN模型;系统调用顺序特性;系统调用频度特性
中图分类号:TP391.4 文献标识码:A
Intrusion Detection of Network Security Based on MSNN Model
ZHU Shao-ping1?覮,XIAO Yong-lian2,DANG Yan-jun1
(1. Department of Electronic Information Engineering,Zhuhai City Polytechnic,Zhuhai,Guangdong 519090,China;
2. Department of Information Management,Hunan University of Finance and Economics,Changsha,Hunan 410205,China)
Abstract:In order to solve the serious security problems of network system intrusion behavior,such as rapid upgrade,strong concealment and high randomness,an intrusion detection algorithm based on MSNN model is proposed in combination with the characteristics of intrusion detection system information. First extract the system transfer sequence characteristics and frequency characteristics,then the algorithm use Sigmoid neurons in the multilevel Sigmoid neural network to fine-tune the network and enable the neurons to generate multiple responses for multiple classification,so as to build an MSNN model similar to the brain's synaptic network information processing and realize network security intrusion detection. The experimental results show that the proposed algorithm has high precision and strong anti-interference ability,and has a good detection effect and high application.
Key words:network security;intrusion detection;MSNN model;order characters of system;frequency characters of system
隨着物联网、移动互联网的技术的飞速发展,网络攻击逐渐呈现智能化和复杂化的趋势,人们面临的网络安全问题日益严峻。入侵检测技术是通过分析从计算机系统或计算机网络中收集来的安全日志和网络数据包等信息,检测出计算机系统或计算机网络中可能存在的违反安全策略的入侵行
为 [1]。它是一种重要网络安全防护手段,能为网络用户提供隐私和数据保护,是近年来信息安全领域的研究热点。早在1987年Dorothy Denning[2]提出了第一个入侵检测模型;1998年,IDES和Chen[3]等人相继提出了通用入侵检测模型CIDF;Ye N,Li X[4] 等人应用概率理论提出了基于计算机审计数据的入侵检测模型,并取得了较好的检测效果;张玲等人综合误用检测和异常检测提出了一种基于粗糙集和人工免疫的集成入侵检测(RSAI-IID)模型[5];张得生等人结合SVM 和融合技术提出了基于SVM和融合技术的入侵检测,有效解决了传统SVM 算法易产生训练参数选择不当、分类精度低等问题[6]。近年来,尽管研究者提出了各种入侵检测模型和相关算法,并取得了一些研究成果,然而检测效果并非十分理想。
随着网络安全入侵技术更新速度的加快、隐蔽性的加强及网络入侵方式的多样化,计算机主机及计算机网络系统的入侵面临日益严峻的问题,网络安全入侵技术也变得日趋复杂,对网络安全入侵检测的研究还需进一步加强。本文将结合系统调用频度特征及系统调用短序列时序特征,利用多级Sigmoid神经网络能模拟人类思维过程的特点,让神经元产生多元反应,进行网络安全入侵检测。通过实验与比较,验证了所构建的MSNN模型能有效提高入侵检测的准确率、降低入侵检测的误检率,为网络安全入侵检测提供新的实现途径。
1 特征提取
入侵检测所用信息特征包括基于频度特性的
系统调用频率特征和基于序列的系统调用短序列特征等。本文将系统调用的频率特征和系统调用短序列时序特征顺序特性结合起来,进行入侵检测,效果更好。
1.1 提取系统调用频率特征
系统调用频率特征包括独立事件的发生、独立事件发生的频度、通过逻辑运算得到的多个独立事件的出现、多个事件的发生频度四种,它是用来判断计算机网络系统进程是否异常的重要特征,可用于入侵检测。[7] 系统调用频率稳定系统进程正常执行,否则系统进程异常执行。当系统调用频率发生变化或者产生一些未知的系统调用时,系统进程则会出现异常执行。因此,可用一个元素来表示每一个系统调用的发生频率,用一个向量表示一个进程的系统调用序列。设系统调用集合为I,进程为x,若I= {audit,access,creat,exit,colse,fork,chdir,ioctl},程程x由1个access,1个close,1个exit,1个ioct1组成,则其频率特征向量表示为:x = (0,1,0,1,1,0,0,1)。
1.2 提取系统调用短序列时序特征
系统调用短序列特征是指系统调用间的时序特征,它包含事件的变迁序列等。当系统调用短序列局部连贯时,系统进程正常执行;当系统调用短序列产生异常时,程序存在安全漏洞或系统进程异常执行。因此,可以根据系统进程产生的系统调用短序列来判断系统进程是否异常。[8,9]我们用 STIDE滑动窗口的方法提取系统调用短序列特征,首先保持窗口长度一定,实验时窗口长度取4,性能较好。然后将STIDE滑动窗口从头到尾移动,每一次移动一个系统调用,这样每次移动生成窗口内的系统调用短序列。若进程为x = open,close,ioctl,mmap,pipe,acces,close,exit,取窗口长度l = 4,则提取的系统调用短序列为:
(open,close,ioctl,mmap),
(close,ioctl,mmap,pipe),
(ioctl,mmap,pipe,acces),…,
(pipe,acces,close,exit)。
本文将系统调用的频率特征和系统调用短序列时序特征顺序特性结合起来,进行入侵检测效果更好。
2 基于MSNN模型的入侵检测
2.1 多级Sigmoid神经网络
多级Sigmoid 神经网络( MSNN) [10]是一种能让神经元产生多元反应进行多类分类的神经网络分类器。它具有非线性逼近、易于训练、自适应性、高选择性、联想记忆以及对特征空间进行任意形状的分割等优势。多级Sigmoid神经网络包括输入层、隐含层和输出层三层,如图1所示。
多级Sigmoid神经网络中的Sigmoid 神经元具有微调网络的作用,类似感知器,对权重和偏置的微小变化均能引起输出产生微小的变化。 sigmoid神经元对每一个输入x1 x2 x3…xi都有权重w1 w2 w3…wi和一个共有的偏置b。输入信号前向传播至隐含层节点,通过激活函数经节点激活后,再传至输
出节点产生输出结果。激活函数采用标准Sigmoid函数:
其中wi 为输入xi的权重,b为共有的偏置。权重变化量Δwi和偏置变化量Δb发生细微的改变,输出变化量Δyj产生细微的变化,Δyj可以近似的表示为:
输出变化量Δyj是关于权重变化量Δwi和偏置变化量Δb的线性函数,从而可以实现网络对权重和偏置的微调,以达到尽可能地学习规则。
采用多级Sigmoid神经网络构建入侵检测模型,进行多类分类。用K表示层级数,c表示类的带宽,多级Sigmoid激活函数可表示为:
输出yj可表示为激活函数φi(x)的线性加权
其中wij表示隐含层第i个节点到输出层第j个节点的连接权系数,n表示隐含层的节点个数.
对输出结果进行归一化处理,取归一化后的最大值为该节点的分类类别:
若满足条件:
则判别X∈Lj,其中L为总类别数,即输入X属于第j类。
将提取系统调用的频率特征和系统调用短序列时序特征作为多级Sigmoid神经网络的输入,根据公式(1)至(4)计算输出节点的值,根据公式(5)和(6)判断输出节点的类别,从而确定输入所属的入侵种类。
3 实验结果与分析
为验证本文算法的有效性,我们采Windows7(64位,4G内存)操作系统,Matlab 2010b实验平台和基于KDD99数据集进行验证,KDD99數据集包含41个特征。从KDD99数据集中分别选取268456组数据作为训练样本,257386组数据作为测试样本,由MSNN模型分别对训练样本和测试样本进行入侵检测实验,实验分两组进行。
实验一:不同比例训练集实验
针对KDD99数据集,MSNN模型分别采用总样本数量的20%-40%进行训练,剩余的样本进行测试,测试结果如图2所示。
由图2可知,当所用训练集的比例为40%时,MSNN模型的检测精度高达98.2%,当所用训练集数据的比例分别为20%和30%时,MSNN模型的检测精度分别为96.1%和97.8%。实验结果表明,随着所用训练集数据比例的增加,检测精度的提升效率降低,从而表明MSNN模型具有较强的抽象表示能力,无需大量的样本数据就能训练出表达能力很强的模型,同时体现出MSNN模型具有良好的预测能力。
实验二:不同算法对比
為了进一步验证本文算法的检测效果及检测精度,我们将本文算法分别与DBN和SVM算法进行比对实验,三种算法的检测准确率和误报率分别如表1所示。
由表可知,相同训练集比例情况下,本文算法较DBN[11]和SVM 算法[6]具有更高检测准确率和更低误报率。实验结果表明,MSNN模型进行入侵检测效果优于DBN和SVM模型,具有更高检测准确率和更低的误报率,完全满足入侵检测的要求。
4 结 论
针对传统的网络入侵检测存在检测正确率不高、扩展性不强和误报率较高等问题,研究了多级Sigmoid神经网络,结合多级Sigmoid神经网络中的Sigmoid 神经元具有微调网络的作用,且能让神经元产生多元反应进行多类分类,易于训练的特点,提出了一种基于MSNN模型的入侵检测方法用于网络安全入侵检测,解决了模型训练困难,计算复杂,大数据处理慢等缺点。研究结果表明,本文算法能够进一步提高入侵检测的准确率和降低入侵检测的误报率,其性能明显优于DBN和SVM等先进算法,具有检测速度快,精度高,效果好等优点。论文在如何将多级Sigmoid神经网络应用到网络安全领域,以及如何有效利用网络大量无标签数据等方面都具有积极的意义。但是在如何利用多级Sigmoid神经网络挖掘数据与数据之间的关系,都还需要进行进一步的研究。
参考文献
[1] 杨宏宇,朱丹,谢丰,等. 入侵异常检测研究综述[J]. 电子科技大学学报,2009,38(5):587—596.
[2] DENNING D. E. An intrusion detection model[J]. IEEE Transactions on Software Engineering,1987,13(2):222—232.
[3] CHEN S, TUNG B, SCHNACKENBERG D. The common intrusion detection framework data formats[R]. Internet Draft Draft-Ietf-Cidf-Data-Formats-OO.txt,1998,V2—223.
[4] YE N,LI X,CHEN Q,et al. Probabilistic techniques for intrusion detection based on computer audit data[J]. IEEE Trans. SMC-A,2001,31(4):266—274.
[5] 张玲,白中英,罗守山,等.基于粗糙集和人工免疫的集成人侵检测模型[J].通信学报,2013,34(9):166—175.
[6] 张得生,张飞.基于SVM和融合技术的入侵检测研究[J].科技通报,2013,29(5):167—172.
[7] 张莉萍,雷大江,曾宪华. 基于频率特征向量的系统调用入侵检测方法[J].计算机科学,2013,4(6A):330—333.
[8] 姚立红,訾小超,黄皓,等.基于系统调用特征的入侵检测研究[J].电子学报,2003,31(8):1134—1137.
[9] KOSORESOW A P ,HOFMEYR S A. Intrusion detection via system call traces[J]. IEEE Software,1997,14(5):35—42.
[10] 武妍. 基于多级神经元的神经网络及其在分类中的应用[J].计算机工程,2005,31(11):10—12.
[11] 徐东辉,王 勇,樊汝森. 一种基于DBN的网络入侵检测算法 [J]. 上海电力学院学报,2013,29(6):589—592.