论文部分内容阅读
摘要:为了提高煤炭网络入侵检测的准确率,采用多模式匹配算法实现入网信息的检测查询,以便更好地保证煤炭网络安全。考虑到煤炭网络的复杂性,提出了煤炭网络入侵检测模型,接着对多模式匹配算法三个基本定义详细阐述,最后进行实例仿真。实验证明,该算法在煤炭网络入侵检测的匹配时间和内存消耗方面均表现出了良好性能,具有一定的研究价值。
关键词:煤炭网络 入侵检测多模式匹配AC算法
1引言
煤炭产业是国内多省的支柱产业,面临着外部市场环境风险加大、井下作业环境日益复杂等问题,制约了产业的可持续发展,突破这些难题,加速开展信息化建设是必然选择[1]。近年来,煤炭网络信息化取得飞速发展,越来越多的信息加入煤炭网络管理系统中,网络信息量的不断增加,给网络安全提出了新的挑战。网络系统除了要被动地抵御各种网络攻击,破除网络威胁,还需要主动地对网络信息进行排查检测[2],彻底排除网络潜在威胁。
相对于杀毒软件的被动抵御攻击来说,入侵检测主要是采取主动的方式对网络信息进行过滤,将规则库里的模板与入网信息进行匹配,查看网络信息是否具有不安全因素,正是因为入侵检测需要对所有入网信息进行过滤排查,不论是从时间效率方面,还是从排查所耗资源方面,都对原始网络性能具有一定消耗,如何运用有效的匹配方法,既能尽可能少地减少检测时间,又能尽可能少地占用资源,是煤炭网络入侵检测需要重点考虑的问题[3]。网络入侵检测的匹配算法必须在匹配准确率、匹配时间和资源消耗量三者之间进行平衡,既要实现入侵检测的功能需要,又要尽量节省匹配时间和匹配资源消耗。本文正是在此问题上进行研究,采用多模式匹配算法来实现煤炭网络入侵检测。
2网络入侵检测基本模型
煤炭网络入侵检测是为了巩固与加强煤炭网络安全系统而产生,采取主动的方式排查过滤网络威胁,提高网络安全指数。它对经过网络的所有数据包进行侦查匹配,分析这些数据包中的数据是否与规则模板有吻合之处,尽可能地滤出危害煤炭网络的可疑信息 [4]。
考虑到网络的复杂性及通过网络数据量的多少,对入侵检测提出了更高地要求,如何在尽可能短的时间内实现所有数据信息的排查与过滤,这就需要良好的模式匹配算法来对网络的不安全因素进行匹配并抵御,单一的模式总是对一种网络攻击能够实现良好的匹配,但是针对煤炭网络环境的复杂,再加上网络信息化规模及信息数据保护的重要性被提升,煤炭网络入侵检测需要一种可以实现多种威胁匹配算法来完成不同威胁的监测[5],本文提出了一种基于多模式匹配算法的煤炭网络入侵检测。
3多模式匹配算法
所謂多模式匹配问题是指,对于一个给定的总长度为M的k个模式所构成的集合 ,其中 表示第i个模式, ,以及一个长度为n的正文text,希望使用与M呈线性关系的时间预处理集合D中的所有模式,并尽可能地在 时间内能够检查出哪些模式在正文中匹配出现以及匹配出现的所有起始位置,其中tocc为集合D中的模式在正文中匹配出现的总次数[6]。
若模式集合D中的k个模式的长度均相等,即 ,则此时的多模式匹配是一个等长多模式匹配问题[7]。
定义一:对于任意给定的两个字符串X和Y,串X和Y之间的编辑距离D(X,Y)定位为使用如下三种编辑操作将串X转换成串Y所需的最少编辑操作次数:从串X中删除一个符号或者字符;向串X插入一个符号;用另一个符号替换串X中制定的某个符号。关于两个字符串X和Y之间的编辑距离D(X,Y),它具有如下性质:非负性,D(X,Y)大于等于0;对称性,D(X,Y)=D(Y,X);存在一个三角不等式Z,且 。
定义二:任意指定一个长度为l的模式串 和长度为z的text[1:z],且l 设有限字典表 ,它的大小为 , 表示由 中的符号所构成的任一个长度为n的字符串。这样,允许K差别的近似串匹配可通过计算函数f的值来求解:
(1)
其中 ,对于 且 ,有:
(2)
定义三:对于任意给定的模式串pat[1:m]和正文text[1:n],m (3)
其中D[i,j]表示将模式串前缀pat[1:i]转换成text[l:j]( )所需的编辑操作次数。基于计算编辑距离矩阵D的允许k差别的近似串匹配顺序算法的时空复杂度分别为 。考虑到计算过程中所耗资源情况,可疑考虑采用逐列计算D各元素值的方法,使空间复杂度下降到 。
4实例仿真
为了验证多模式匹配算法在煤炭网络入侵检测中的性能,在煤炭网络服务器数据匹配过程中采用多模式匹配算法来对进入煤炭网络的数据进行过滤排查。
考虑到多模式匹配算法在网络入侵检测的性能,本文对三种多模式匹配算法:AC算法、AC-BM算法和AC_SUNDAY算法在网络入侵检测的性能进行验证与比较[8]。
考虑到篇幅原因,匹配时间详细数据将不一一列举,而是将表格数据绘制成曲线图,便于查看与比较三种算法的匹配时间,如图1所示。
图1 三种算法模式匹配时间曲线图
由图1可得,在字符个数相同的情况下,随着个数增加,AC算法的匹配时间增长较快,其他两种改进算法用时增长缓慢。在字符个数为1000个时,其他两种算法匹配时间集中在150ms左右,而AC算法达到了500ms,差别较大。在两种改进算法中,AC_SUNDAY的算法性能比AC-BM算法的匹配性能更优。
计算在模式长度分别为10至1000的条件下的平均匹配时间,AC算法的平均匹配时间为290ms,AC-BM的算法平均匹配时间为115ms,AC_SUNDAY的算法平均匹配时间为78ms,那么AC-BM相对于AC的匹配时间百分比为39.7%,AC_SUNDAY相对于AC的匹配时间百分比为26.9%。
算法运行过程中打开资源管理器或者内存消耗查看工具,对算法执行匹配过程中占用内存的比例进行记录总结,具体如图2所示。
图2 三种算法模式消耗内存曲线图
从上图可以看出,在资源消耗性能上,两种改进的AC算法的性能都劣于AC算法,而且从图可以看出,随着模式长度的增加,三种算法的内存消耗都增长较快,而且AC_SUNDAY的算法内存消耗比AC-BM算法更大。
总之,匹配精度高的算法在内存消耗方面比较高,两者不可兼得,所以在实际应用中,匹配算法的选择要根据需求来定,必须在匹配精度和资源消耗方面做一个平衡。
5结语
本文采用多模式匹配算法实现煤炭网络入侵检测,目的是进一步提高煤炭网络主动防御的能力,增强煤炭网络的安全性。多模式匹配算法相对于普通匹配算法来说,匹配精度更高,更容易检测过滤出煤炭网络中的潜在威胁,尽最大可能地保证煤炭网络的安全,实验证明,改进的AC算法不论是在匹配精度,还是在内存消耗方面,均表现出了独特的性能,具有广泛的市场应用前景。
参考文献
[1] 赵清泉.信息化建设在煤炭行业的发展[J].煤炭技术,2013,(01): 3-4.
[2]席荣荣,云晓春,金舒原,张永铮.网络安全态势感知研究综述[J].计算机应用,2012,(01): 1-4.
[3] 陈龙.煤炭企业网络安全建设与管理探究[J].煤炭技术,2013,(02): 220-222.
[4] 秦浩.核主成分SVM在煤炭网络入侵检测中的应用[J].煤炭技术,2013,(06):136-139.
[5] 邓小盾.入侵检测技术在煤矿网络安全中的应用研究[J].煤炭技术,2013,(02): 93-94.
[6] 陈小茵.多模式匹配算法研究[J].南京广播电视大学学报,2011,(04): 53-55,59.
[7] 孙友仓.多模式匹配算法的性能分析[J].电子设计工程,2010,(01):68-73.
[8] 巫喜红,曾锋.AC多模式匹配算法研究[J].计算机工程,2012,(06):101-105.
作者简介:刘娜(1981.09-),女,汉族,山东省淄博市人,助教,研究方向:计算机科学与技术
关键词:煤炭网络 入侵检测多模式匹配AC算法
1引言
煤炭产业是国内多省的支柱产业,面临着外部市场环境风险加大、井下作业环境日益复杂等问题,制约了产业的可持续发展,突破这些难题,加速开展信息化建设是必然选择[1]。近年来,煤炭网络信息化取得飞速发展,越来越多的信息加入煤炭网络管理系统中,网络信息量的不断增加,给网络安全提出了新的挑战。网络系统除了要被动地抵御各种网络攻击,破除网络威胁,还需要主动地对网络信息进行排查检测[2],彻底排除网络潜在威胁。
相对于杀毒软件的被动抵御攻击来说,入侵检测主要是采取主动的方式对网络信息进行过滤,将规则库里的模板与入网信息进行匹配,查看网络信息是否具有不安全因素,正是因为入侵检测需要对所有入网信息进行过滤排查,不论是从时间效率方面,还是从排查所耗资源方面,都对原始网络性能具有一定消耗,如何运用有效的匹配方法,既能尽可能少地减少检测时间,又能尽可能少地占用资源,是煤炭网络入侵检测需要重点考虑的问题[3]。网络入侵检测的匹配算法必须在匹配准确率、匹配时间和资源消耗量三者之间进行平衡,既要实现入侵检测的功能需要,又要尽量节省匹配时间和匹配资源消耗。本文正是在此问题上进行研究,采用多模式匹配算法来实现煤炭网络入侵检测。
2网络入侵检测基本模型
煤炭网络入侵检测是为了巩固与加强煤炭网络安全系统而产生,采取主动的方式排查过滤网络威胁,提高网络安全指数。它对经过网络的所有数据包进行侦查匹配,分析这些数据包中的数据是否与规则模板有吻合之处,尽可能地滤出危害煤炭网络的可疑信息 [4]。
考虑到网络的复杂性及通过网络数据量的多少,对入侵检测提出了更高地要求,如何在尽可能短的时间内实现所有数据信息的排查与过滤,这就需要良好的模式匹配算法来对网络的不安全因素进行匹配并抵御,单一的模式总是对一种网络攻击能够实现良好的匹配,但是针对煤炭网络环境的复杂,再加上网络信息化规模及信息数据保护的重要性被提升,煤炭网络入侵检测需要一种可以实现多种威胁匹配算法来完成不同威胁的监测[5],本文提出了一种基于多模式匹配算法的煤炭网络入侵检测。
3多模式匹配算法
所謂多模式匹配问题是指,对于一个给定的总长度为M的k个模式所构成的集合 ,其中 表示第i个模式, ,以及一个长度为n的正文text,希望使用与M呈线性关系的时间预处理集合D中的所有模式,并尽可能地在 时间内能够检查出哪些模式在正文中匹配出现以及匹配出现的所有起始位置,其中tocc为集合D中的模式在正文中匹配出现的总次数[6]。
若模式集合D中的k个模式的长度均相等,即 ,则此时的多模式匹配是一个等长多模式匹配问题[7]。
定义一:对于任意给定的两个字符串X和Y,串X和Y之间的编辑距离D(X,Y)定位为使用如下三种编辑操作将串X转换成串Y所需的最少编辑操作次数:从串X中删除一个符号或者字符;向串X插入一个符号;用另一个符号替换串X中制定的某个符号。关于两个字符串X和Y之间的编辑距离D(X,Y),它具有如下性质:非负性,D(X,Y)大于等于0;对称性,D(X,Y)=D(Y,X);存在一个三角不等式Z,且 。
定义二:任意指定一个长度为l的模式串 和长度为z的text[1:z],且l
(1)
其中 ,对于 且 ,有:
(2)
定义三:对于任意给定的模式串pat[1:m]和正文text[1:n],m
其中D[i,j]表示将模式串前缀pat[1:i]转换成text[l:j]( )所需的编辑操作次数。基于计算编辑距离矩阵D的允许k差别的近似串匹配顺序算法的时空复杂度分别为 。考虑到计算过程中所耗资源情况,可疑考虑采用逐列计算D各元素值的方法,使空间复杂度下降到 。
4实例仿真
为了验证多模式匹配算法在煤炭网络入侵检测中的性能,在煤炭网络服务器数据匹配过程中采用多模式匹配算法来对进入煤炭网络的数据进行过滤排查。
考虑到多模式匹配算法在网络入侵检测的性能,本文对三种多模式匹配算法:AC算法、AC-BM算法和AC_SUNDAY算法在网络入侵检测的性能进行验证与比较[8]。
考虑到篇幅原因,匹配时间详细数据将不一一列举,而是将表格数据绘制成曲线图,便于查看与比较三种算法的匹配时间,如图1所示。
图1 三种算法模式匹配时间曲线图
由图1可得,在字符个数相同的情况下,随着个数增加,AC算法的匹配时间增长较快,其他两种改进算法用时增长缓慢。在字符个数为1000个时,其他两种算法匹配时间集中在150ms左右,而AC算法达到了500ms,差别较大。在两种改进算法中,AC_SUNDAY的算法性能比AC-BM算法的匹配性能更优。
计算在模式长度分别为10至1000的条件下的平均匹配时间,AC算法的平均匹配时间为290ms,AC-BM的算法平均匹配时间为115ms,AC_SUNDAY的算法平均匹配时间为78ms,那么AC-BM相对于AC的匹配时间百分比为39.7%,AC_SUNDAY相对于AC的匹配时间百分比为26.9%。
算法运行过程中打开资源管理器或者内存消耗查看工具,对算法执行匹配过程中占用内存的比例进行记录总结,具体如图2所示。
图2 三种算法模式消耗内存曲线图
从上图可以看出,在资源消耗性能上,两种改进的AC算法的性能都劣于AC算法,而且从图可以看出,随着模式长度的增加,三种算法的内存消耗都增长较快,而且AC_SUNDAY的算法内存消耗比AC-BM算法更大。
总之,匹配精度高的算法在内存消耗方面比较高,两者不可兼得,所以在实际应用中,匹配算法的选择要根据需求来定,必须在匹配精度和资源消耗方面做一个平衡。
5结语
本文采用多模式匹配算法实现煤炭网络入侵检测,目的是进一步提高煤炭网络主动防御的能力,增强煤炭网络的安全性。多模式匹配算法相对于普通匹配算法来说,匹配精度更高,更容易检测过滤出煤炭网络中的潜在威胁,尽最大可能地保证煤炭网络的安全,实验证明,改进的AC算法不论是在匹配精度,还是在内存消耗方面,均表现出了独特的性能,具有广泛的市场应用前景。
参考文献
[1] 赵清泉.信息化建设在煤炭行业的发展[J].煤炭技术,2013,(01): 3-4.
[2]席荣荣,云晓春,金舒原,张永铮.网络安全态势感知研究综述[J].计算机应用,2012,(01): 1-4.
[3] 陈龙.煤炭企业网络安全建设与管理探究[J].煤炭技术,2013,(02): 220-222.
[4] 秦浩.核主成分SVM在煤炭网络入侵检测中的应用[J].煤炭技术,2013,(06):136-139.
[5] 邓小盾.入侵检测技术在煤矿网络安全中的应用研究[J].煤炭技术,2013,(02): 93-94.
[6] 陈小茵.多模式匹配算法研究[J].南京广播电视大学学报,2011,(04): 53-55,59.
[7] 孙友仓.多模式匹配算法的性能分析[J].电子设计工程,2010,(01):68-73.
[8] 巫喜红,曾锋.AC多模式匹配算法研究[J].计算机工程,2012,(06):101-105.
作者简介:刘娜(1981.09-),女,汉族,山东省淄博市人,助教,研究方向:计算机科学与技术