基于神经网络的舰载网络入侵检测方法研究
2010-04-24马曦,李瑞,姚晋
马 曦,李 瑞,姚 晋
(1.中国舰船研究设计中心,湖北 武汉 430064;2.中国海军装备部 北京 100841)
信息系统在信息安全方面有着对保密性、完整性及可用性的基本要求。随着网络技术的发展,越来越多的系统遭到入侵攻击的威胁。但实际上,建立绝对安全系统是不可能的,原因有:1)软件中总是存在缺陷,设计和实现一个整体安全系统相当困难[1];2)将已安装的带安全缺陷的系统转换成安全系统需要相当长的时间;3)加密技术本身存在的一定问题;4)安全系统易受内部用户滥用特权的攻击;5)安全访问控制等级和用户的使用效率成反比;6)访问控制和保护模型本身存在一定的问题[2];7)在软件工程中存在软件测试不充足软件生命周期缩短大型软件复杂性等难解问题。
基于上述几类问题的解决难度,一个实用的方法是建立比较容易实现的安全系统,同时按照一定的安全策略建立相应的安全辅助系统,IDS就是这样一类系统。现在安全软件的开发方式基本上就是按照这个思路进行的。就目前系统安全状况而言,系统存在被攻击的可能性。如果系统遭到攻击,只要尽可能地检测到,甚至是实时地检测到,即可采取适当的处理措施应对。IDS一般不采取预防的措施以防止入侵事件的发生。入侵检测作为安全技术其作用在于:1)识别入侵者;2)识别入侵行为;3)检测和监视已成功的安全突破;4)为对抗入侵及时提供重要信息,阻止事件的发生和事态的扩大。因此,入侵检测非常必要。
舰载信息系统由于更多的承担指挥控制任务对于系统的保密性、完整性及可用性要求较一般信息系统要求要高,同时具备高实时性、高可靠性等约束条件,对入侵检测系统提出了更高的要求。本文在舰载信息系统网络中引入了分布式录取集中处理的网络入侵检测系统,该系统基于人工神经网络能够对舰载信息系统网络发生攻击的模式进行机器学习对已知的攻击类型识别能够达到较高分辨率,并由于神经网络的泛化特性,基于神经网络的入侵检测系统能对未知攻击类型进行分辨[3]。最后,文章采用了美国国防部发布的KDD 99(DAPRA 98)数据集对入侵检测方法进行了训练和检测。
1 舰载入侵检测系统体系结构
网络入侵检测系统监控舰载信息系统网内部的流量,该系统应能够实时地或接近于实时地分析数据包,以图发现入侵,同时对系统正常运行无不良影响。网络入侵检测系统检查网络层、传输层(udp,ftp等)、应用层协议的活动。
入侵检测系统在逻辑上可分为三大组件,包括传感器、分析器、传感器及用户接口。其中,传感器负责收集数据,并把这些数据传送给分析器。分析器从多个分布式传感器中接收输入,并由这些输入进行模式判断是否当前网络中存在入侵行为。用户接口为最终的用户提供图像和声光等信息为用户提供网络状态标识和告警提醒。
由于舰载信息系统对入侵检测系统性能有较高要求,舰载网络入侵检测系统的体系结构采取了分布式录取集中处理的体系结构,见图1。
图1 舰载信息系统网络入侵检测系统的体系结构示意图
传感单元由分布式网络录取单元在各子网交换机汇聚口接入网络录取单元对网络报文进行录取并进行协议分析。传感单元将处理成预定义格式的报文信息传递给实时数据库进行排序、存储、属性查询等操作后将数据作为输入传输给人工神经网络进行识别,并将识别结果结合录取的报文信息传给用户单元用于显示和归档处理,同时可以进行报表生成和声光报警。其中,提高神经网络方法的性能是提高整个入侵检测系统性能的重要步骤。在本文中在舰载入侵检测系统中引入基于属性约简的神经网络入侵检测方法,对一般的BP神经网络方法进行了改进。
2 基于属性约简的神经网络入侵检测方法
本文在网络入侵检测系统中引入基于粗糙集属性约简[3]的BP神经网络方法[4]。该方法首先使用粗糙集算法针对训练样本对属性进行约简,使用约简后的数据对神经网络进行训练,完成训练后使用训练好的神经网络对录取数据约简后的属性项进行模式识别[5]。如图2,输入数据在经过粗糙集属性约简部件后其原有的数据项不能反应数据特性的数据属性项将被约简,而经过粗糙集约简的数据将只具备约简后的属性项,并将作为 BP神经网络的培训数据进行培训或作为训练好的 BP神经网络的输入数据进行入侵模式识别。下面将分别对所选用的粗糙集和 BP神经网络技术进行描述。
图2 基于粗糙集属性约简的神经网络入侵检测方法
2.1 基于粗糙集的属性约简
粗糙集(Rougset,RS)理论是20世纪80年代由Pawlak提出的一种处理模糊性与不确定性的数学工具[6]。由于知识库中的知识(属性)往往不是同等重要,而且还存在着冗余,不利于做出正确且简洁的决策,因此需要进行约简。针对目前已有的基于粗糙集理论的属性约简算法计算复杂度高,不适用于规模数据约简,本文采用基于可辨识矩阵的属性约简算法,将所有有关属性区分信息都浓缩在一个矩阵中,通过该矩阵能方便的得到信息表的属性核。定义可辨识矩阵:设S=(U,A)是一个信息系统,U为论域且U={x1,x2,...,xn},A是条件属性集合,D是决策属性,a(x)是记录x在属性a上的值。S的可辨识矩阵是一个∣U∣×∣U∣的对称矩阵,矩阵的每一项定义为Cij为:
令M是决策表T的可辨识矩阵,A={a1,a2,…,an},是T中所有条件属性的聚合。S是M中所有决策属性组合的集合,且S中不包含重复项。另S中包含有s个属性组合,每个属性组合表示为Bi,即Bi∈S,Bj∈S,Bi ≠ Bj(i,j=1,2,…,s)。
矩阵中所有属性组合数为1的属性均为决策表的核属性(可能为空)。令Redu是决策表T属性约简后得到的属性集合,将核属性列入属性约简后得到的属性集合,并在可辨识矩阵中找出所有不包含核属性的属性组合S,先将属性组合S表示为合取范式形式,即P=∧{∨bik:(i=1,2,...,s;k=1,2,...,m)},然后将P转化为析取范式形式。
根据需要选择满意的属性组合。如需属性数最少,可直接选择合取式中属性数最少的组合;如需规则最简或数据约简量最大,则需先进行属性值约简。
2.2 神经网络分类器设计
本选取BP神经网络作为神经网络分类器[7]。BP网络是一种多层前馈型神经网络网络,包括输入层、隐含层和输出层。同一层的网络节点之间是互相不连接的,相邻两层之间的网络节点互相连接,网络的基本处理单元(输入单元除外)为非线性输入与输出关系[8]。信息交换只发生在相邻两层之间,而同层或越层之间无任何信息交换。在使用的时候,信息从上一层传递到下一层,只影响下一层的结果输出。在使用以前网络要通过训练改善自身性能,以便更好地适应应用环境,也为学习。BP神经网络的具体设计见图3。按照隐层节点选取的经验公式选取隐层节点数目为8。选取前两层的激励函数为TANSIG函数,输出层选取陡峭的LOGSIG函数以模拟硬限符函数的作用。
图3 BP神经网络的结构
3 试验及分析
3.1 试验环境及结果
本文在Pentium IV 3GHZ,1G ddr内存环境下采用MATLAB7.0结合ACCESS数据库编制了本文中入侵检测方法的原型程序,对基于粗糙集的神经网络算法进行了验证,并将其与传统的BP神经网络算法进行了对比。
训练和测试数据采用美国麻省理工学院林肯实验室提供的1999年从模拟网络中搜集的网络攻击评估数据。这些数据提供了4类共41个特征量,分为5大类型,分别包括:DOS、R2L、U2R、probing、normal。从这5类数据中分别选取200组数据作为属性约简和神经网络训练数据。
采用粗糙集进行约简后的属性项(共13项)包括:service、src bytes、dst bytes、wrong fragment、hot、srv count、srv serror rate、rerror rate、diff srv rate、dst host srv count、dst host diff srv rate、dst host serror rate、dst host srv rerror rate。
分别使用未经约简的数据集和约简过的数据集对BP神经网络进行训练和测试,试验结果与传统BP神经网络的比较结果见表1,使用属性约简后数据对BP神经网络的训练过程见图4。
表1 试验数据对比
图4 试验1与试验2基于粗糙集属性约简的神经网络入侵检测方法的训练过程试验分析
3.2 试验分析
由于使用粗糙集对入侵数据进行了约简,使原具有41个特征项的输入数据约简至只具有13个属性项的数据使需处理的数据量减少68.2%。由表1可以看出,由于数据量的减少用于入侵模式识别的BP神经网络的培训和测试时间减少85%-90%。并从图4中可以发现,使用经过属性约简的数据对BP神经网络的培训的均方误差在100个周期内均已达到较好值,可适用于入侵检测模式识别,较未经数据属性约简的BP神经网络方法提高了方法精度和性能。
4 结束语
本文提出一种基于人工神经网络的舰载信息系统入侵检测方法,设计了分布式录取集中处理的入侵检测系统体系结构。但是单纯把神经网络应用于入侵检测系统中所处理数据维数较高并存在一定量冗余信息,使得网络存在规模剧增、结构复杂、训练时间较长、影响神经网络精度、稳定性、泛化能力差等一系列问题。文中把基于粗糙集的属性约简应用于基于神经网络入侵检测中,考虑了数据本身属性特点,压缩并提取主要属性,为BP网络输入量进行训练识别。这样处理代表特征的主要信息,大大地减小BP网络的输入矢量维数,提高了神经网络的精度及其性能。
[1]Rao X,Dong C X,Yang S Q.Statistic learning and intrusion detection[C]9th International Conference on Rough Sets,Fuzzy Sets,Data Mining,and Granular Computing,2003,652-659.
[2]卿斯汉,蒋建春,马恒太,等.入侵检测技术研究综述[J]通信学报,2004(7):19-29.
[3]Mukkamala S,Sung AH,Abraham A.Intrusion detection using an ensemble of intelligent paradigms.Journal of Network and Computer Applications,2005,28(2):167-182.
[4]Rao X,Dong C X,Yang S Q.Statistic learning and intrusion detection[C]9th International Conference on Rough Sets,Fuzzy Sets,Data Mining,and Granular Computing,2003,652-659.
[5]X Yan H Z,Hu C Z,Tan H M.Intelligent intrusion detection system model using roush neural network[J].Wuhan University Journal of Natural Sciences,2005:119-122.
[6]Pawlak Z.Rough Set-Theoretical Aspects of Reasoning About Data.Dorderecht,Kluwer Academic Publishers,1991.
[7]Chang R I,Lai L B,Su W D,ct a1.Intrusion detection by back-propagation neural networks with sample-query and attribute-query[J].International Journal of Computational Intelligence Research,2007,3(1):6-10.
[8]陈海,丁邦旭,王炜立.基于神经网络LMBP算法的入侵检测方法[J].计算机应用与软件,2007:183-185.