基于模糊神经Petri网的网络入侵检测方法

点赞:6509 浏览:21497 近期更新时间:2024-02-02 作者:网友分享原创网站原创

摘 要:针对传统的入侵检测方法存在检测速度慢、不易收敛、检测准确率低等问题,提出了一种新的适用于网络入侵检测的模糊神经Petri网(简称为FNPN).文中首先给出了模糊神经Petri网的定义及其引发规则,然后给出了一种学习算法.该FNPN结合了模糊Petri网和神经网络各自的优点,既可以表示和处理模糊产生式规则的知识库系统,又具有学习能力,可通过对样本数据学习来调整模型中的参数以获得系统内部的等效结构.实验证明,该方法具有更高的识别精度和更高的学习速率.

关 键 词:模糊神经Petri网;入侵检测;神经网络;知识学习

中图分类号:TP393.08

随着网络在人们的日常生活中应用不断增多,网络入侵的风险性和机会也越来越多,网络安全成为了人们无法回避的问题.入侵检测技术已经成为一项非常重要的技术,得到越来越多的重视.目前,传统的入侵检测方法都是基于模式匹配的入侵检测方法、基于统计分析的入侵检测方法等,但它们都存在灵活性和适应性差[1,2],检测效率不高,尤其是对未知的入侵行为检测存在困难.

针对上述问题,作者提出基于模糊神经Petri网(fuzzyneuralPetris,FNPN)的网络入侵检测方法,将类似于神经网络的学习功能引入FPN中.利用FNPN的并行推理能力解决传统检测方法灵活性和适应性差的问题,实验结果表明,本方法具有更高的检测准确率和更快的检测速度.

1基本概念

Petri网是对离散并行系统的数学表示.Petri网是1960年由KarlAPetri发明的,适合于描述异步的、并发的计算机系统模型.Petri网既有严格的数学表述方式,也有直观的图形表达方式,既有丰富的系统描述手段和系统行为分析技术,又为计算机科学提供坚实的概念基础[3].

2基于FNPN的网络入侵检测方法

基于FNPN的入侵检测原理如图1所示:首先利用专家知识建立攻击知识的初始FNPN模型,然后通过现实网络环境采集含有入侵信息的数据,利用学习算法对知识模型的参数进行自动调整,以提高知识模型的准确度.将调整好后的模型作为模糊推理的知识,通过模糊推理得到某攻击发生的可能性.

基于FNPN的模糊推理过程是攻击知识的FNPN模型从初始标志开始,所有满足条件的变迁按顺序并行激发的过程.该过程与基于神经网络的推理过程相似,是一种并行推理过程,避免了传统误用入侵检测(基于产生式规则推理)中的推理冲突、组合爆炸等问题,因此具有较高的推理效率;同时,该方法中引入学习算法对初始知识的FNPN模型的参数进行动态调整,以提高知识模型的准确度,从而提高系统的入侵检测率[6].

图1基于FNPN的入侵检测原理

2.1模糊规则的FNPN表示

一条模糊产生式‘与’规则对应FNPN中的一个变迁,而一条模糊产生式‘或’规则对应一组变迁.同样一条模糊产生式非规则对应FNPN中的一个变迁,规则中的命题与FNPN中的库所一一对应,规则中的模糊命题的当前隶属度值为库所中的标记值,规则的信任度对应变迁的一个映射函数[5].

2.2FNPN的训练算法

第1步:初始化,根据专家经验输入各权值和变迁信任度的初始值,并把输入命题和中间命题的总个数送n,变迁的总个数送m,样本总数N,i和j分别送1,学习步长送δ.

第2步:计算初始误差,根据初始权值和信任度及前面的引发规则计算出一组系统可靠度,并根据计算出初始误差值.判断其是否小于规定的误差限,若小于的话直接结束,否则进入下一步.

第3步:依据学习步长对部件i的权值进行调整,并判断是否每个值都大于等于零,若都大于等于零,则进行下一步,否则转第6步.

第4步:计算出当前系统的误差值fi与fi-1比较,若fi

第5步:重新调回原权值,说明上一步的调整方向不正确.

第6步:令i等于i+1,并判断其是否大于n,若不大于n,转第3步进行下一部件的权值调整,否则进入下一步.

第7步:判断这时的fi是否小于等于要求的误差限,若已达到规定的误差限,则结束训练;否则,判断训练次数是否超过规定权值训练次数,若不超过,则把fi的值赋给f0并重新使i等于1转第3步,开始下一轮训练;若已超过权值训练次数,则进入下一步.

第8步:对信任度进行训练,逐个调整信任度值但不能超过1,并逐次计算fj并判断是否小于等于规定的误差限,若已经达到误差限,则结束训练,否则,一直调整信任度直至达到规定的信任度训练次数为止.此时,若还达不到要求的误差限,则修改模糊规则,然后返回第一步重新学习.

2.3FNPN的入侵检测模型

通过专家知识得到FNPN的最优初始权值,利用最优初始权值的FNPN对入侵检测数据进行学习和训练,得到最优的网络入侵检测模型.然后采用这个最优网络入侵模型对网络上采集数据进行在线检测,对检测结果进行分析和判断,最后根据分析结果进行相应的处理.

3实例分析

为了对上述方法进行效果分析,本文对BackDoS、BufferOverflow、Guess-Passwd、Imap、IpsweepProbe、Land攻击、SYNFlooding攻击共7类攻击进行基于FNPN和NN的对比识别实验[7].

取其中100条包含有以上7类攻击的记录,80条作为训练,20条作为测试.其中正常连接19个,攻击连接81个.

令FNPN和NN的参数相同学习速率均为0.10,动力因子为0.075,f(x)等于1/(1+e-x).

FNPN的初始权值和变迁信任度由专家系统根据其经验的所得.用图5所示的专家系统的FNPN模型作为网络的入侵检测模型,用所述的学习算法,用Matlab编制程序,并在检测设专家知识的情况下给出一组初值:w11等于w21等于w31等于w41等于w51等于w61等于w71等于w81等于w91等于wa1等于0,w12等于w22等于w32等于w42等于w52等于w62等于w72等于w82等于w92等于wa2等于1,所有的信任度都取1,步长选为0.0001,用样本中的80组数据对权值和信任度进行训练.经过179次学习后,达到规定的误差范围(<10-4)之内,算法收敛[7,8].将FNPN和NN的训练结果对比如图2所示.表明FNPN的最小平均误差比NN的最小平均误差小,且学习速度快.

基于模糊神经Petri网的网络入侵检测方法参考属性评定
有关论文范文主题研究: 关于可靠性的论文范文数据库 大学生适用: 研究生论文、本科毕业论文
相关参考文献下载数量: 26 写作解决问题: 写作资料
毕业论文开题报告: 论文模板、论文摘要 职称论文适用: 刊物发表、职称评副高
所属大学生专业类别: 写作资料 论文题目推荐度: 优质选题

图2FNPN和NN的训练曲线

最后,对训练好的参数用样本中的其余20组数据进行测试,平均误差为0.0000154,表1为测试中所有攻击的识别率统计.结果表明,基于FNPN的识别方法比基于相同结构的NN对攻击具有更高的识别率[9].

表1基于FNPN和NN的检测率比较

攻击类型检测率/%

FNPNNN

BackDoS90.384.2

BufferOverflow86.582.4

GuessPasswd79.975.1

Imap83.781.2

IpsweepProbe88.685.8

Land91.287.7

SYNFlooding85.282.7

4结论

本文提出的适合于网络入侵检测的模糊神经Petri网,既具有模糊Petri网自动模糊推理的能力,又具有神经网络的学习能力.由于采用了基于专家经验的系统结构,省去对实际系统建模的困难.与直接用神经网络进行入侵检测相比需要训练的参数更少,节省了存储空间,且各参数具有明确的物理意义.该方法适用于基于结构模糊推理的网络入侵检测.

):687-691.

[8]危胜军,胡昌振,孙明谦.基于模糊Petri网的误用入侵检测方法[J].北京理工大学学报,2007,27(4):312-317.

[9]张白一,崔尚森.基于规则推理的FPN误用入侵检测方法[J].计算机工程,2006,32(14):119-121.

[9]李玲娟,翟双灿,郭立玮.用支持向量机预测中药水提液膜分离过程[J].计算机与应用化学,2010,27(2):149-154.

作者简介:翟双灿(1966-),江苏人,讲师,研究方向:软件工程,数据挖掘,知识及软件工程.

作者单位:南京中医药大学信息技术学院,南京210046;南京中医药大学中医药研究院,南京210046