首页> 中国专利> 一种基于Bagging算法的复合式入侵检测方法

一种基于Bagging算法的复合式入侵检测方法

摘要

本发明涉及一种基于Bagging算法的复合式入侵检测方法,包括以下步骤:建立初始历史数据样本集S;将样本集S构造成Bagging算法中弱学习算法可读的数据集Ssample,选定球向量机作为弱学习算法;循环调用弱学习算法,完成数据集Ssample的训练,得到强学习机H;将当前待测的数据样本输入到作为复合式入侵检测模型的强学习机H中,强学习机H利用各代弱学习机hi做初步入侵检测,并以投票的方式判定当前待测数据样本的入侵检测结果,得票数多的入侵检测结果为强学习机H最终入侵检测结果,采用本发明的方法对目标网络进行入侵检测,即克服了原有入侵检测技术中普遍存在的检测精度低、泛化能力差等缺陷,大大降低了误报率和漏报率。

著录项

  • 公开/公告号CN102291392A

    专利类型发明专利

  • 公开/公告日2011-12-21

    原文格式PDF

  • 申请/专利权人 中国电力科学研究院;

    申请/专利号CN201110206014.5

  • 发明设计人 高昆仑;王宇飞;

    申请日2011-07-22

  • 分类号H04L29/06(20060101);G06F15/18(20060101);

  • 代理机构11271 北京安博达知识产权代理有限公司;

  • 代理人徐国文

  • 地址 100192 北京市海淀区清河小营东路15号

  • 入库时间 2023-12-18 04:08:41

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-07-27

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20110722

    专利权人的姓名或者名称、地址的变更

  • 2016-05-18

    专利权的转移 IPC(主分类):H04L29/06 登记生效日:20160426 变更前: 变更后: 申请日:20110722

    专利申请权、专利权的转移

  • 2015-03-25

    授权

    授权

  • 2013-06-12

    专利申请权的转移 IPC(主分类):H04L29/06 变更前: 变更后: 登记生效日:20130520 申请日:20110722

    专利申请权、专利权的转移

  • 2012-11-28

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20110722

    实质审查的生效

  • 2011-12-21

    公开

    公开

查看全部

说明书

技术领域

本发明涉及一种网络信息安全技术领域的检测方法,具体讲涉及一种基于Bagging算法 的复合式入侵检测方法。

背景技术

随着网络入侵和攻击行为正朝着分布化、规模化、复杂化、间接化等趋势发展,当前对 安全产品技术提出更高的要求,急需一种高效的网络安全告警技术来提升安全产品的性能。

入侵检测是对入侵行为的检测,入侵检测系统通过收集网络及计算机系统内所有关键节 点的信息,检查网络或系统中是否存在违反安全策略行为及被攻击迹象。入侵检测的数据来 源是各种网络安全设备的日志,如防火墙、IDS、IPS等,这些设备会实时的记录每个时间监 测点目标网络的活动情况以便分析目标网络的运行情况。

从理论来源分析入侵检测技术属于模式识别中分类问题,将各种网络攻击抽象成一个已 知类别,将网络安全设备的历史运行日志做为训练样本集使用人工智能算法通过训练学习得 到多分类模型,即入侵检测系统。目前入侵检测的解决方案,主要是利用神经网络、支持向 量机等单学习机方法,而这些单分类器方法均为不稳定分类算法,所谓不稳定分类算法就是 指训练样本集发生一个微小的变化,分类器的分类结果就会产生巨大变化。虽然经多年研究, 通过各种群智能优化算法已使单分类器的稳定性有所提高,但单学习机的方法误差相对较大、 运算速度偏慢、入侵检测系统的泛化能力低。泛化能力是指,若某个模型只针对某类问题具 有较好的效果,对于其他类别问题性能较弱,则其泛化能力有限;反之,某个模型对于多个 类别问题均有较好性能,则其泛化能力较好。

当前主要有两大类入侵检测现有技术,它们分别是基于误用技术和基于异常技术。基于 误用技术是指,假设所有可能出现的网络攻击类别(“DoS”、“信息收集类攻击”、“信息欺骗 类攻击”、“利用类攻击”)均已知,将待测记录来匹配这些已知网络攻击类别。基于误用技术 的优势在于误报率较低、对于已知类别的网络攻击判断迅速,而缺点是对于未知种类网络攻 击的辩识率低下。基于异常技术是指,事先根据规则定义好“正常”网络行为的特征,将待 测记录来匹配该特征,凡是不匹配的网络行为均认定为网络攻击。基于异常技术的优势在于 漏报率较低、对于未知类别网络攻击的判断迅速,缺点是误报率偏高。“漏报”是指将本属攻 击的网络行为认定为正常,“误报”是指将本属正常的网络行为认定为攻击。 由此可见,入侵检测系统的核心性能要求是准确性和实时性,目前基于单学习机的解决方案 在这两方面均有不足。

发明内容

针对上述现有技术基于单分类器的入侵检技术、仅仅依靠误用技术或异常技术的入侵检 测实施方案中普遍存在的入侵检测精度低、实时型差、漏报率和误报率偏高、泛化能力差等 缺陷,经长期研究本申请人提供了一种基于Bagging算法的复合式入侵检测方法,Bagging算 法的最大优势在于通过对弱学习算法的反复迭代训练从而得到高精度的分类模型,并且为了 降低误报率和漏报率,该方法设计了复合式入侵检测模型,即先进行基于误用的入侵检测, 再进行基于异常的入侵检测;为了改善入侵检测系统的实时性,本发明分别在特征提取阶段 和Bagging算法的弱学习算法选择上使用核主成分分析和球向量机,从而使得在尽量不降低 精度的情况下提高入侵检测系统的速度。

本发明的目的是采用下述技术方案实现的:

一种基于Bagging算法的复合式入侵检测方法,其改进之处在于,所述方法包括以下步 骤:

A、建立初始历史数据样本集S;

B、将所述初始历史数据样本集S构造成Bagging算法中弱学习算法可读的数据集 Ssample,选定球向量机作为所述弱学习算法;

C、循环调用所述Bagging算法中的弱学习算法,完成所述数据集Ssample的训练,得到强 学习机H;

D、将当前待测的数据样本输入到作为复合式入侵检测模型的所述强学习机H中,所述 强学习机H利用各代弱学习机hi做初步入侵检测,并以投票的方式判定当前待测数据样本的 入侵检测结果,得票数多的入侵检测结果为强学习机H最终入侵检测结果。

本发明提供的一种优选的技术方案是:所述步骤A包括以下步骤:

所述步骤A包括以下步骤:

A1、数据采集:分析历史各个时间监测点的网络安全设备日志,统计所述日志中所有属 性对应的数据;

A2、特征提取:对所述日志中所有属性进行核主成分分析,得到做为复合式入侵检测的 特征属性x1,x2,…,xn

A3、统计所述历史各个时间监测点日志,将A2中所述特征属性x1,x2,…,xn对应的数据 和每个时间监测点的入侵检测结果构成所述初始历史数据样本集S。

本发明提供的第二优选的技术方案是:所述步骤B包括以下步骤:

B1、数据归一化:将所述初始历史数据样本集S中特征属性x1,x2,…,xn的数值按照各自 的取值范围全部归一化到[0,1]区间;

B2、数值化处理:将入侵检测所有可能出现的结果状态设定为数值型类别标号;

B3、将所述初始历史数据样本集S中特征属性x1,x2,…,xn的数值做为复合式入侵检测模 型的输入向量;将所述初始历史数据样本集S中的入侵检测结果做为复合式入侵检测模型的 输出向量;所述数据集Ssample由所述复合式入侵检测模型的输入向量和输出向量构成。

本发明提供的第三优选的技术方案是:所述步骤C包括以下步骤:

C1、对集成学习Bagging算法初始化,设定所述Bagging算法最大迭代次数t,选用球向 量机做为弱学习算法,并设定所述球向量机的训练参数;

C2、以指定概率从所述数据集Ssample中有放回地选取样训练本子集Si,i∈[1,…t],作 为弱学习算法的训练样本子集Si

C3、将所述训练样本子集Si输入到弱学习算法训练,得到对应的弱学习机hi

C4、检查所述集成学习Bagging算法是否达到算法的最大迭代次数t,若已达到,则执 行步骤C5;否则,返回步骤C2;

C5、输出弱学习机序列,即强学习机H。

本发明提供的第四优选的技术方案是:所述步骤D中复合式入侵检测步骤为:对于待测 数据利用强学习机H,先进行基于误用技术的入侵检测,得到发生“已知种类网络攻击”或 者“正常”的报告,再对报告“正常”的数据进行基于异常技术的入侵检测,以检验其是否 隐藏未知网络攻击,最后结合两次报告结果得到最终入侵检测结果。

本发明提供的第五优选的技术方案是:所述步骤A2中核主成分分析的实施步骤如下:

A21、设所述日志中共有k个属性,将特征属性x1,x2,…,xk的数据利用核函 数变换从空间Rn映射到Hilbert空间;所述核函数变换为:

Φ:RnHilbertxΦ(x)

并得到Hilbert空间中的数据Φ1i(x),Φ2i(x),···,Φki(x);

A22、在所述Hilbert空间中计算各数据的协方差矩阵C;

A23求解所述协方差矩阵C所对应的特征方程λυ=Cυ中的特征值λ及非零特征值λ对 应的特征向量υ,并将υ表示成υ=Σq=1kαqΦq(x);

A24、求解αq,得到关于特征向量α的对偶特征方程mλα=Kα,α=[α1…αk]T,其 中K=<Φq(x),Φq(x)T>是Gram矩阵;

A25、将所述特征向量α单位化;

A26、计算所述Φq(x)在υ上的投影gq(x),所述gq(x)是对应于Φq(x)的非线性主成分分 量;

A27、将所有投影值gq(x)组合成一个矢量g(x)=[g1(x),…,gk(x)]T,作样本的特征向量;

A28、比值表示了分量gq(x)对样本总体方差的贡献度,最终选取n个特征值 最大的λq对应的特征向量υq构成训练样本集所需的特征子空间n是从原始k 维属性中使用核主成分分析提取的特征个数。

本发明提供的第六优选的技术方案是:所述步骤C1中弱学习算法的训练参数包括核函 数类型、核函数参数和惩罚因子;所述步骤C2中的指定概率为50%。

与现有技术相比,本发明达到的有益效果是:

1、本发明提供的基于Bagging算法的复合式入侵检测方法,利用集成学习Bagging算法 并行生成多个弱学习机来完成对目标问题的求解。采用本发明对目标网络进行入侵检测,即 克服了原有基于单分类器入侵检测技术中普遍存在的检测精度低、泛化能力差等缺陷,大大 降低了误报率和漏报率;

2、本发明提供的基于Bagging算法的复合式入侵检测方法分别在特征提取阶段和Bagging 算法的弱学习算法选择上使用核主成分分析和球向量机,从而使得在尽量不降低精度的情况 下提高入侵检测系统的速度;

3、本发明提供的基于Bagging算法的复合式入侵检测方法中基于误用技术和异常技术的 复合式入侵检测不但对于各已知网络攻击种类有极高的识别精度,同时对于未知种类的网络 攻击也有极高的判别精度。

附图说明

图1为本发明提供的基于Bagging算法的复合式入侵检测方法的流程图;

图2为本发明提供的复合式入侵检测样本集的生成过程的流程图;

图3为本发明提供的集成学习Bagging算法训练弱学习机的流程图;

图4为本发明提供的强学习机H进行复合式入侵检测过程的流程图。

具体实施方式

下面结合附图对本发明的具体实施方式做进一步的详细说明。

本发明理论上将入侵检测问题抽象成模式识别中的多分类问题,将入侵检测判别的各 种影响因素抽象成多分类问题的输入向量,将入侵检测结果抽象成多分类问题的输出向量, 再利用人工智能算法拟合出自变量和因变量之间的函数关系,这样对于待测网络安全设备 记录只需输入其对应的输入变量,就可得到该记录的入侵检测结果,因而基于人工智能方 法的入侵检测具有运算速度快、可靠性高等优点。

下面用核主成分分析(Kernel Principal Components Analysis,KPCA)和Bagging算法 这样的两种人工智能算法来对本发明的方法作具体说明。其中KPCA算法主要用于数据预 处理,Bagging算法用于构造复合式入侵检测模型。

核主成分分析可以借鉴申请号为201110148047.9,发明名称为“一种基于Boosting算 法的配电网理论线损预测方法”的专利申请文件。核主成分分析(Kernel Principal  Components Analysis,KPCA)为一种适用于非线性主特征提取的算法,KPCA改进自线性 的PCA。KPCA分析中对于原n维欧氏空间Rn中存在复杂非线性关系的原始数据通过核函 数映射的方式变换到Hilbert特征空间,使之在Hilbert空间呈现出线性关系,并在Hilbert 空间利用KPCA做主成分提取,具体过程如下:

引入从原样本空间Rn到Hilbert空间的变换X=Φ(x),即:

Φ:RnHilbertXX=Φ(x)

并设定Φ(xi)已经完成中心化,计算Hilbert空间中各点的协方差矩阵C,即:

C=1mΣi,j=1mΦ(xi)Φ(xj)T

求解λv=Cv中的λ和非零λ对应的特征向量v,其中v一定处于由Φ(x1),Φ(x2),…,Φ(xm)构成 的空间中,则v可表示为此时原问题变为求解αi,得关于α的对偶特征方程 mλα=Kα,α=[α1…αm]T,其中Kij=<Φ(xi),Φ(xj)>是Gram矩阵;令λnn,αn>=1, 即特征向量单位化;再计算各Φ(xi)在υ上的投影gi(x),其中gi(x)是对应于Φ(xi)的非线性 主成分分量,即:

gi(x)=<vn,Φ(x)>=Σi=1mαin<Φ(xi),Φ(x)>=Σi=1mαink(xi,x),

将所有投影值gi(x)组合成一个矢量g(x)=[g1(x),…,gn(x)]T,做为样本的特征向量。比 值表示了分量gi(x)对样本总体方差的贡献度,选取若干个特征值最大的λi对应的特 征向量υi构成实验所需的特征子空间,即完成特征提取。

而集成学习Bagging算法是通过并行生成多个弱学习机完成对目标问题的求解。对于固 定的初始样本集,集成学习Bagging算法采用有放回的方式每次以随机概率抽取相同个数的 样本组成样本子集,并输入弱学习算法训练,从而得到弱学习机序列,该序列即为强学习机。 最终分类判别时,根据各个弱学习机的判别结果投票决定待分类样本的类别归属。集成学习 Bagging算法可以有效地提高泛化能力,因为其每次样本子集生成过程均为有放回的随机抽取 Bootstrap Aggregating方法,因而各个弱学习机之间不存在依赖关系,保证了集成学习Bagging 算法的可靠性。

图1为本发明提供的基于Bagging算法的复合式入侵检测方法的流程图,本发明提供的 方法包括如下步骤:

步骤A:数据预处理,建立初始历史数据样本集S;

步骤B:将初始历史数据样本集S构造成Bagging算法中弱学习算法可读的数据集 Ssample,选定球向量机(Ball Vector Machine,BVM)作为弱学习算法;

步骤C:循环调用Bagging算法中的弱学习算法,完成样本集Ssample的训练,从而得到 弱学习机序列,序列中包含各代弱学习机hi,该序列即为强学习机H;

步骤D:将强学习机H做为复合式入侵检测模型,并将当前待测的数据样本输入到强学 习机H,强学习机H利用其各个弱学习机hi做初步入侵检测,进而以投票的方式判定当前待 测数据样本的入侵检测结果,得票数多的入侵检测结果即为强学习机H最终入侵检测结果。

如图2所示,图2为本发明提供的复合式入侵检测样本集的生成过程的流程图,本发明 中数据预处理过程主要由下列三个子步骤构成:

步骤A1:数据采集:分析历史各个时间监测点的网络安全设备(防火墙、IDS、IPS等) 日志,统计日志中所有属性对应的数据;

步骤A2:特征提取:对日志中所有属性进行核主成分分析,以得到若干可做为复合式入 侵检测的特征属性x1,x2,…,xn

步骤A3:统计历史各个时间监测点日志,将上述特征x1,x2,…,xn对应的数据和每个时 间监测点的入侵检测结果构成初始历史数据样本集S。

所述步骤A2中核主成分分析的实施步骤如下:

步骤A21:设原始日志中共有k个属性,将属性x1,x2,…,xk的数据利用核函 数变换Φ:从空间Rn映射到Hilbert空间,得到Hilbert空间中的数据 Φ1i(x),Φ2i(x),···,Φki(x);

步骤A22:在Hilbert空间中计算各分量的协方差矩阵C;

步骤A23:求解协方差矩阵C所对应的特征方程λυ=Cυ中的特征值λ及非零特征值λ对 应的特征向量υ,并将υ表示成υ=Σq=1kαqΦq(x);

步骤A24:求解αq,可得关于α的对偶特征方程mλα=Kα,α=[α1…αk]T,其中 K=<Φq(x),Φq(x)T>是Gram矩阵;

步骤A25:将特征向量α单位化;

步骤A26:计算各Φq(x)在υ上的投影gq(x),其中gq(x)是对应于Φq(x)的非线性主成分 分量;

步骤A27:将所有投影值gq(x)组合成一个矢量g(x)=[g1(x),…,gk(x)]T,作样本的特征 向量;

步骤A28:比值表示了分量gq(x)对样本总体方差的贡献度,最终选取n个特 征值最大的λq对应的特征向量υq构成训练样本集所需的特征子空间是使用核 主成分分析从原始k维属性中提取出来的特征个数。

所述步骤B包括以下步骤:

步骤B1:数据归一化:将初始历史数据样本集S中各属性x1,x2,…,xn的数值按照各自 的取值范围全部归一化到[0,1]区间;

步骤B2:数值化处理:将入侵检测所有可能出现的结果状态设定为数值型类别标号;

步骤B3:将初始历史数据样本集S中各属性x1,x2,…,xn的数值作为复合式入侵检测模 型的输入向量;将初始历史数据样本集S中的入侵检测结果做为复合式入侵检测模型的输出 向量,复合式入侵检测模型的输入向量和输出向量构成了数据集Ssample

如图3所示,图3为本发明提供的集成学习Bagging算法训练弱学习机的流程图,所述 步骤C具体包括下列步骤:

步骤C1:对集成学习Bagging算法初始化,设定Bagging算法最大迭代次数t,选用球 向量机作为弱学习算法,并设定球向量机的训练参数;

步骤C2:以指定概率从数据集Ssample中有放回地选取样训练本子集Si,i∈[1,…t],作 为弱学习算法(球向量机)的训练样本子集Si;所述指定概率为50%。

步骤C3:将训练样本子集Si输入到弱学习算法(球向量机)训练,得到对应的弱学习机 hi

步骤C4:检查当前集成学习Bagging算法是否达到算法的最大迭代次数t,若已达到, 则执行步骤C5;否则,返回步骤C2;

步骤C5:输出弱学习机序列,即强学习机H。

所述步骤C1中弱学习算法的训练参数包括核函数类型、核函数参数和惩罚因子。

在步骤C1中的训练过程是利用球向量机BVM完成对样本数据的训练。球向量机BVM 改进于支持向量机SVM(Support Vector Machine)。球向量机BVM的改进在于利用最小包含 球算法MEB(Minimum Enclosing Ball)代替了支持向量机SVM中的凸二次规划,从而大大 节省了运算时间。最小包含球算法MEB算法理论基础来自于“计算几何(Computational  Geometry)”。球向量机BVM利用最小包含球算法MEB算法求解原n维欧氏空间Rn中目标 问题Φ,其过程如下:

(1)将原n维欧氏空间Rn中的目标问题Φ映射到Hilbert空间,并在Hilbert空间中构 造对偶问题Φ′;

(2)根据对偶问题Φ′的样本集S构造初始球;

(3)迭代求解初始历史数据样本集S的核子集Sc,即完成对偶问题Φ′到最小闭包球 MEB问题的转化;设c、r分别为初始球的重心和半径,使用B(c,r)表示一个重为c,半径 为r的球,r∈[0,R],r的上限为R,当r增加到R时,此时的球即为MEB球;再设误差 阈值δ>0,球B(c,(1+δ)r)视为MEB(S)的(1+δ)近似球;则核子集Sc可定义为:若真子 集Sc以因子(1+δ)扩展的最小闭包球MEB包含了所有S中的样本点,即:其中B(c,R)=MEB(Sc),则真子集Sc称为S的核子集;

(4)在中心约束条件下,求解最小闭包球MEB问题,即求解原n维欧氏空间Rn的目标 问题Φ。

如图4所示,图4为本发明提供的强学习机H进行复合式入侵检测过程的流程图,所述 步骤D的复合式入侵检测步骤是:对于待测数据利用强学习机H,先进行基于误用技术的入 侵检测,得到发生“已知种类网络攻击”或者“正常”的报告,再对报告“正常”的数据进 行基于异常技术的入侵检测,以检验其是否隐藏未知网络攻击,最后结合两次报告结果得到 最终入侵检测结果。

本发明利用集成学习Bagging算法并行生成多个弱学习机来完成对目标问题的求解,采 用本发明对目标网络进行入侵检测,即克服了原有基于单分类器入侵检测技术中普遍存在的 检测精度低、泛化能力差等缺陷,而且通过核主成分分析和球向量机的使用大大提高了入侵 检测系统的实时性。此外基于误用技术和异常技术的复合式入侵检测不但对于各已知网络攻 击种类有较高的识别精度,同时对于未知种类的网络攻击也有较高的判别精度。

最后应当说明的是:以上实施例仅用以说明本申请的技术方案而非对其保护范围的限制, 尽管参照上述实施例对本申请进行了详细的说明,所属领域的普通技术人员应当理解:本领 域技术人员阅读本申请后依然可对申请的具体实施方式进行种种变更、修改或者等同替换, 这些变更、修改或者等同替换,其均在其申请待批的权利要求范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号