APP下载

基于改进行为特征分析的网络入侵检测研究

2020-03-07

网络安全技术与应用 2020年2期
关键词:分类器粒子神经网络

(山西临汾市公安局网络安全保卫支队 山西041000)

1 引言

随着互联网用户的增加引发了全球对信息安全的关注,入侵检测在保护数据免受我们网络或系统中发生的任何入侵者方面发挥着重要作用,它通过观察和分析系统中发生的事件来检测问题[1]。由此开发的入侵检测系统(IDS)可以定义为帮助我们对网络中任何可疑入侵行为进行预测、发现、报警和响应的任何工具,方法和资源[2],具有监视分析用户与系统的活动、检查系统配置与漏洞、识别已知攻击行为并报警、统计分析异常行为、识别违反安全策略的用户行为、对系统日志的管理维护等功能。在2017年IETF[3]提出的网络入侵检测体系结构中,系统包含三个模块:传感器模块,分析模块和管理模块,如图1所示。在这个架构中,主要是定义用于入侵检测系统的组件之间的标准通信,该体系结构定义了针对ISP的交换消息的格式:入侵检测消息交换格式(IDMEF),其隐式中包含数据模型。

图1 IDS的体系结构

入侵检测通常是基于签名或行为两种方法,两种方法的优缺点见表1。基于签名的检测方法是在已知的攻击和系统漏洞的累积知识,基于启发式规则搜索任何利用漏洞的尝试并发出警报[4]。一般情况下,未明确被称为攻击的行为都被认为是合法的,因此基于签名方法的IDS 通常具有较低的误警率[5]。但基于签名的方法仅能检测已知的攻击,无法应对环境不断变化情况下的新型攻击,仅检测已知的攻击,这需要规则数据库进行频繁更新。基于行为方法的入侵检测技术[6-7]假设可以通过观察与正常行为或系统或用户的预测相关的行为异常来检测入侵。首先,从通过各种手段收集的信息引用中提取正常行为的模型,然后入侵检测系统将该模型与当前活动进行比较,如果检测到偏差,则将触发警报。一般来说,这种方法可将随着环境变化情况下的新型攻击行为考虑在内,因此基于行为分析的入侵检测方法通常具有较低的漏警率,但检测准确率还有待提升[8]。

表1 行为与签名方法的比较

随着网络规模的不断扩大,网络流量的不断增长和黑客技术的不断发展,都对入侵检测系统(IDS)的性能提出了更高的要求。针对上述问题,本文以提高入侵检测技术的检测准确率、降低误警率和漏警率以及提高检测效率为技术目标,提出了一种基于行为分析的入侵检测系统,通过将多类RBF神经网络与加速粒子群优化相结合的混合检测方法,以提高入侵检测率。

2 入侵检测方法

入侵检测行为或异常是基于攻击导致资源异常使用或用户表现出奇怪行为的假设。因此,诸多学者经提出了免疫学方法、机器学习方法等来学习正常行为,以便能够检测任何显著的偏差。在入侵检测过程中,每个连接可以分为正常流量或入侵流量,因此可以将其视为分类问题。近年来,入侵检测问题得益于混合机器学习以提高异常行为的检测率,本文提出了一种基于多类RBF神经网络的混合方法,其参数和子集由APSO 优化。

2.1 加速粒子群优化算法

粒子群优化算法(PSO)也称鸟群觅食算法,是由R.C.Eberhart和J.Kennedy 开发的一种新的进化算法,它从随机解出发,通过迭代寻找最优解,是以种群为基础的随即搜索和优化的过程,具有广泛的应用领域,例如神经网络训练、工程优化等[9]。

粒子群优化算法(PSO)通过更新其位置和速度可以移动到最佳位置的粒子(候选解)。粒子的运动速度可以通过惯性的重量、认知学习因子和社会学习因素的值来更新。每个粒子是给定区域D上的最佳函数f(x)的整体势,被认为是D维空间中的点并且表示为粒子的速度矢量为此外,最佳先前位置将被粒子的最佳适应值替换为并且该区域中迄今为止的最佳位置是根据方程(1)和(2)更新第i个粒子的速度和位置:

标准粒子群优化使用当前的gBest和pBest。使用单个best的目标主要是为了改善质量解决方案的多样性,然而这种多样性可以使用一些随机性来模拟。其次,使用单个best 并没有较好的理由,除非所关注的优化问题是高度非线性和多模态的。目前,标准的PSO算法还存在很多的缺陷,如容易发生早熟、收敛速度慢、后期搜索性能和个体寻优能力降低等。因此在本文中,使用APSO方差,可以加速算法的收敛,仅使用全局最佳特征[11]。因此,在加速粒子群优化算法(APSO)中,速度矢量由更简单的公式生成:

2.2 RBF神经网络

RBF神经网络简称径向基函数神经网络,作为一种分类模型,包含输入层、隐层、输出层三层神经网络,其基本思想是用RBF 作为隐单元的“基”构成隐藏层空间,隐藏层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分[12]。RBF神经网络在逼近能力、分类能力和学习速度等方面都优于BP神经网络,结构简单、训练简洁、学习收敛速度快,能够逼近任意非线性函数,克服局部极小值问题。

径向基神经网络的激活函数可表示为:

其中xp径向基神经网络的结构可得到网络的输出为:

当然,采用最小二乘的损失函数表示:

3 IDS 架构优化

本章旨在通过APSO 算法优化网络入侵检测系统(IDS)架构,并通过检测RBF神经网络多类别的最优参数和特征子集来提高分类模型的准确性。APSO对于特征选择很有吸引力,在这个粒子群中,当它们在问题空间中飞行时会发现最佳特征组合。APSO 特征选择意味着从一组原始变量中选择相关变量的最佳子集,其有效改善了性能分类(学习时间,速度和泛化能力),此外也增加了数据的可理解性。从人工智能的角度来看,基于RBF神经网络模型创建分类器意味着为数据创建模板,并且能够使得模型尽可能简单、可操作。

由于本文所使用的数据集具有41个特征,分类器模型要处理的数据量较大,无法保证在合理的时间内完成建模与分类操作,需要减少部分低重要性的特征空间,因此本文使用APSO 算法来选择对模型分类预测影响最大的最佳特征集。

为了实现我们提出的方法,使用RBF神经网络将样本映射到更高维的数据中,与线性核不同,它可以处理类标签与属性之间的非线性关系的情况,是影响模型选择复杂性的超参数数量。RBF内核函数为:

RBF内核有两个参数:一是C(惩罚参数):该参数对于所有SVM内核都是通用的,它权衡了培训示例的错误分类与决策面的简单性;二是(gamma 参数),它是RBF内核函数的一个特定参数,定义了单个训练示例的影响程度。C值的选择对分类结果的影响取决于两个主要情况:如果C太大,那么在培训阶段分类准确率将非常高,而在测试阶段分类准确率将非常低;如果C太小,分类准确率就会降低。参数对分类结果的影响比C显著,因为它的值影响了特征空间中的划分结果。参数值过大时,支持向量的影响范围只包括支持向量本身,没有合适的正则化C来防止过拟合风险,而过小的值将无法拟合数据的形状和复杂度,将会导致欠拟合。因此必须使用APSO优化用作输入属性的参数(C和);准确地说,要建立基于APSO-RBF的入侵检测系统,必须执行以下主要流程,如图2所示。

图2 IDS 架构优化

在比较多个预测模型的精确度时,通常使用k 折交叉验证技术来减少随机抽样产生的误差。研究将数据随机分为10个子集,每次迭代使用9个子集来训练多类RBF神经网络,1个子集用于训练多类别分类器,验证模型的子集。为了评估每一个粒子,本文在函数拟合中使用了准确率,如果适合度大于pbest,pbest 将收到适合度;如果pbest 优于gbest,gbest 将收到pbest。最后,使用公式(1)和(2)更新粒子速度和位置。这一过程持续10次,直到APSO 找到最佳参数,计算精度并评估粒子参数(C和)。k 折交叉验证技术仅用于寻找SVM的最佳参数,而不用于生成最佳模型。多类RBF神经网络分类器是由多个单一的RBF神经网络分类器组合而成,它构造n个分类器,其中n是类别的数目,得出的假设公式如下:

其中fo va(x)是全局预测函数,fi(x)是每个分类器的预测函数,因此,通过将ith类中的所有示例标记为正,将余数标记为负,来训练ith分类器。

4 实验案例分析

4.1 数据集选择

许多与IDS相关的数据集已经被研究人员用来开发基于行为方法的解决方案,最流行的KDD99数据集[13],虽然年代有些久远,但仍然是网络入侵检测领域的事实基准,为基于计算智能的网络入侵检测研究奠定基础。由于KDD99数据集包含大量的冗余记录,易导致学习算法偏向于频繁记录,从而防止他们从不常见的记录中学习,这些记录通常对网络有害,例如U2R和R2L攻击。为了解决这些问题,我们从完整的KDD99数据集中选择一些记录,并且不包含KDD99缺点,其中每个连接都是单个行数向量由41个特征组成。该数据集中提供的攻击类别分为四类,即拒绝服务攻击、探测、远程用户攻击和用户到根攻击。在这项研究中,我们使用处理后的KDD99数据集来训练和预测网络入侵检测模型,并对模型结果进行比较。

4.2 实验结果比较

所有的实验都是在Linux CentOS 7下运行的24 CPU Intel Core 2.13GHz、48GB RAM计算站上进行的,以评估该模型的性能。然后,使用Java语言对实验进行编码。由于数据集包含41个特征,分类器使用这些特征并不能提供最佳的结果,反而会引起对模型的过度学习。因此采用APSO 算法选择最佳特性,共选择出15个最佳特征作为模型训练使用数据。

为了对本文提出的APSO-RBF 算法进行评估,共使用了入侵检测研究中的四个性能指标。准确性表示所有类别被正确分类的概率;检测率为正确分类的正常行为和网络入侵行为的数量除以验证数据集的总数;误警率为被错误分类为网络入侵行为的正常行为的总数除以所有正常行为的总数;漏警率则为被错误分类为正常行为的网络入侵总数除以实际为网络入侵的总数。

表2 一对多分类的混淆矩阵

表3 标准度量的混淆矩阵

本文在测试集上评估所提出的入侵检测方法的性能,并且使用训练集来训练模型。表2和3为模型训练集混淆矩阵,从表中来看,实现了91.03%的实例分类正确率和93.61%的入侵检测率。

表4 算法性能比较

表4比较了APSO 优化的RBF神经网络模型(APSO-RBF)、蚁群优化的RBF神经网络模型(ACO-RBF)和遗传算法优化的支持向量机模型(GA-SVM)共三个模型的性能。为了进行统计分析,使用10 倍交叉验证对每种算法进行10次实验,最后,采用为测试集的总体验证提供最佳实验结果的模型。结果表明,与遗传算法和蚁群算法相比,APSO-RBF 算法具有更好的性能,尤其是稳定性。

图3 各算法模型准确率比较

为了检验本文所提APSO-RBF神经网络方法的有效性,本文使用了决策树、Autoencoder、RBF-SVM 等算法在相同的训练数据集上进行训练。从图3各算法模型准确率比较的结果表明,本文所提出的方法提高了IDS的检测性能,比其他检测方法相对更为可靠。

5 结论

本文提出了一个基于程序行为分析的网络入侵检测系统,即采用多类RBF神经网络与加速粒子群优化(APSO)相结合的混合检测方法,以提高入侵检测率。在本文中通过使用APSO 算法解决了以往算法不能解决的两个问题:一是,在网络入侵行为特征数量较大的情况下,通过检测或搜索对模型预测有很大影响的多数特征,减少RBF神经网络的特征向量空间,确保了在没有过度计算密集型模型的情况下具有良好的预测能力;二是成功地优化了使用的RBF神经网络参数(C,),减少了模型欠拟合或者过拟合的风险。另外,本文还使用了RBF神经网络模型优化分类器,使模型可以处理类标签与属性之间的非线性关系的情况。本文采用KDD99数据集进行入侵检测系统的检测性能实验,实验结果表明所提出的APSO-RBF 混合入侵检测法使得IDS 检测性能优于在同一数据集上测试的其他现有机器学习方法。

猜你喜欢

分类器粒子神经网络
基于递归模糊神经网络的风电平滑控制策略
学贯中西(6):阐述ML分类器的工作流程
碘-125粒子调控微小RNA-193b-5p抑制胃癌的增殖和侵袭
基于朴素Bayes组合的简易集成分类器①
基于膜计算粒子群优化的FastSLAM算法改进
神经网络抑制无线通信干扰探究
基于特征选择的SVM选择性集成学习方法
Conduit necrosis following esophagectomy:An up-to-date literature review
基于神经网络的中小学生情感分析
基于差异性测度的遥感自适应分类器选择