APP下载

基于改进蚁群算法与遗传算法组合的网络入侵检测

2017-02-24袁琴琴吕林涛

关键词:正确率遗传算法蚂蚁

袁琴琴,吕林涛

(西京学院 电子信息工程系,西安 710123)

基于改进蚁群算法与遗传算法组合的网络入侵检测

袁琴琴,吕林涛

(西京学院 电子信息工程系,西安 710123)

为提高网络入侵检测的检测效果,提出一种基于改进蚁群算法与遗传算法组合的网络入侵检测方法。该方法采用遗传算法(genetic algorithm, GA)对网络入侵的特征集进行快速选取,为后续特征提取打下基础;对传统蚁群算法(ant colony optimization, ACO)的节点选择策略和信息素更新策略进行改进,提出一种改进的蚁群算法,提高对最优特征的选择效果,采用改进的蚁群算法对特征进一步选择;采用支持向量机(support vector machine, SVM)统计机器学习方法建立各类网络入侵的检测分类器。仿真实验结果表明,新的网络入侵检测方法综合GA和改进蚁群算法的优势,能够获得更好的入侵特征,从检测正确率、误报率和漏报率3个方面综合比较,新的网络入侵检测方法具有更好的网络入侵检测效果,且提高了检测速率。

网络入侵;遗传算法;蚁群优化算法;支持向量机

0 引 言

近年来网络的开放性和虚拟性给网络入侵带来了极大的方便,如蠕虫、网站挂马、拒绝服务攻击、钓鱼和僵尸网络等, 针对日益严重的网络入侵活动,入侵检测系统(intrusion detection system, IDS)作为一种积极主动的安全防护技术得到了迅猛的发展[1-3]。为使网络入侵检测技术能够更加有效地检测各种攻击,学者们进行大量研究。

文献[4]为了提高网络入侵检测的正确率,将K最近邻(K nearest neighbor, KNN)与改进粒子群优化(improved particle swarm optimization, IPSO)算法结合,提出上述算法组合的网络入侵检测模型,该模型改善了网络入侵检测的效果。文献[5]提出一种基于隐形马尔科夫模型(hidden Markov model, HMM)和自组织映射(self organize mapping, SOP)的网络入侵检测方法,实验结果证明了方法的有效性。文献[6]针对高维数据的网络入侵检测问题,提出一种基于主成分分析(principle component analysis, PCA)网络入侵检测方法,该方法对主成分的选取以及模型的训练具有较高的要求,限制了方法在实际中的普遍应用。

另外,神经网络(neural network, NN)在网络入侵检测方面也得到了广泛的应用,文献[7]结合NN和模糊系统的研究成果,提出一种基于混合模糊神经网络(hybrid fuzzy neural network, HFNN)的入侵检测系统,在入侵检测应用中效果良好,但方法的入侵检测正确率与正常数据的比例密切相关,正常数据比例越高,入侵检测正确率也就越高。文献[8]利用模拟退火(simulated annealing, SA)算法概率突跳和局部搜索能力强的特点对遗传算法(genetic algerithm,GA)进行改进,然后对NN的网络权值和结构进行双重优化,最后通过对GA交叉和变异算子的改进,提出一种自适应神经网络训练方法,提高了网络入侵检测的正确率,但方法将多种优化算法进行结合,计算复杂度急剧增加,检测速度下降。

基于组合算法的思路,本文也提出一种基于改进蚁群(improved ant colony optimization, IACO)算法和GA组合的网络入侵检测模型IACO-GA。首先采用GA对数据特征进行初步选取,然后对蚁群算法(ant colony optimization, ACO)的选择方法和信息素更新策略进行改进,采用IACO对特征进一步优化,最后采用支持向量机(support vecton machine,SVM)确定入侵类别。仿真结果与性能分析验证了本文方法的有效性。

1 基本算法

1.1 遗传算法

GA具备与问题领域无关、并行潜质、搜索过程简单以及能与其他算法结合的可扩展性,GA得到了广泛的研究和应用[9-11]。基本GA的流程如图1所示。

图1 遗传算法原理与流程Fig.1 Principle and flow of GA

其一般过程如下。

1)初始化。将问题的所有解进行编码形成初始解集合,最优解是由初始解进化得到;

2)适应度评估。选定合适的适应度函数,对每个个体进行评估;

3)选择。依据适应度对每个个体进行选择,其中适应度高的繁殖下一代的数目越多,反之越少,甚至被淘汰;

4)交叉。对于选中的个体进行交叉操作;

5)变异。以较小概率对个体的位置进行求反操作;

6)最优解选取。设定结束算法,当满足条件时进行结束操作,输出适应度最高的个体作为最优解,不满足,则转向步骤2)。

1.2 蚁群算法

ACO[12-13]的流程如图2所示。

图2 蚁群算法原理与流程Fig.2 Principle and flow of ACO

ACO的具体操作如下。

1)初始化。对每个边的信息素进行初始化,赋值较小,对于每个蚂蚁都对应一个禁忌表,以记录经过的节点。当蚂蚁在某一节点上时,其禁忌表初始化为1,蚂蚁在各边上释放的信息素数量初始化为0。

2)构建路径。蚂蚁根据一定概率决定下一个目标,其概率为

(1)

(1)式中:Pij(t)代表从节点i到节点j的概率;α是信息素计算权重,α值越大在选取下个目标过程中起到的作用越大;β为启发信息计算权重,其值越大,在选取下一目标时所起作用越大。此外,被访问节点不能出现在禁忌表中。

3)信息素操作。在ACO中,当所有蚂蚁找到合法路径后,采用(2)式对信息素进行更新

(2)

(2)式中:τij(t)代表时刻t边ij上的信息素浓度;ρ代表信息素保留因子;(1-ρ)代表信息素挥发因子;Δτij(t,t+1)代表所有蚂蚁产生的信息素之和,其计算公式为

(3)

(4)

2 IACO-GA网络入侵检测模型

2.1 改进蚁群算法

ACO具有并行计算、扩展能力好和较好全局搜索能力等优点,但当达到一定迭代次数后,会出现解趋于一致现象,使得ACO呈现收敛速度慢和容易陷入局部最优解的缺点。本文提出的网络入侵检测模型采用了GA对数据特征进行预选择,一定程度上克服了ACO的缺点,为进一步解决该问题,提高ACO的性能,对其节点选择方法和信息素更新策略进行改进。

1)节点选择方法的改进。ACO在迭代过程中遇到局部最优解,蚂蚁会不断访问该节点,导致其信息素不断累积,增加了局部最优解被当作全局最优解的概率。为克服该缺点,使得ACO跳出局部最优解,可以在节点选择中增加随机性,即在一定迭代次数后不按ACO原有节点选择方法操作,通过随机方式选择下一节点。蚂蚁k在节点i随机选择下一节点方式可表示为

j=rand(1,n),j⊂allowed

(5)

2)信息素更新策略的改进。ACO算法对于所有路径的信息素更新方法是相同的,这会使得最优路径和最差路径短时间内没有差别,不能很好地指导下一节点的选取,进而影响收敛速度。对现有信息素更新策略进行改进,引入对最好路径信息素增加和最差路径信息素减少的操作,加大二者的区分程度,促使ACO收敛加快。改进的更新策略为

(6)

(6)式中:lb,lw分别代表最优和最差路径。且有

(7)

(8)

(7)-(8)式中:lbl,lwl分别代表最优和最差路径的长度;W为信息素衰减因子。同时为保证信息素不会过快增加或者减小,设定信息素上限值和下限值,当超过门限值时,自动设置为门限值。

2.2 组合网络入侵检测模型

GA和ACO都是基于种群的优化算法,二者各具优缺点,且具有互补的潜质,将二者结合起来可有效提高搜索的效率,将其引入网络入侵检测,可提高网络入侵的检测性能,基于IACO-GA的网络入侵检测模型流程如图3所示,其流程可概括如下。

图3 IACO-GA组合优化算法流程Fig.3 Flow of IACO-GA

1)对网络数据进行预处理,提取网络数据的特征,为入侵检测模型打下基础;

2)初始化GA的相关参数,包括交叉概率、变异概率和终止条件等;

3)初始化GA种群,随机产生个体并分配相应特征;

4)对种群进行选择操作;

5)按照一定交叉概率对种群中个体进行交叉操作;

6)按照一定变异概率对种群中个体进行变异操作;

7)对种群中个体的适应度进行评估;

8)根据GA的终止条件判断迭代是否满足终止,不满足,则跳向4),满足,则输出最优解作为IACO的输入;

9)初始化IACO,对初始蚂蚁位置以及每个蚂蚁的禁忌表进行分配,对各边的初始信息素浓度进行初始化,设置IACO终止条件,对其中的信息素衰减因子、信息素门限值以及随机选择间隔等参数进行初始化;

10)蚂蚁周游以寻找最佳路径,蚂蚁根据改进的节点选择方法进行移动,记录本次周游的最佳路径,按照改进的信息素更新策略对各边的信息素浓度进行更新,同时更新各个蚂蚁的禁忌表;

11)计算适应度;

12)根据IACO的终止条件判断是否满足终止,不满足,则跳向10);满足,则输出最优解作为最优网络入侵特征;

13)采用SVM[14]对最优网络入侵特征进行分类,确定网络入侵类别。

从图3可以看出,IACO-GA组合优化算法将GA与IACO串行起来,寻优效果高于二者单独使用,同时复杂度要高于GA和IACO。

3 仿真实验

为测试IACO-GA网络入侵检测模型的有效性,采用典型KDD CPU 99数据集作为检测对象进行仿真实验。KDD CPU 99包含DOS,U2R,U2L,PROBE等攻击方式,同时包含大量正常数据,其中,训练集包括500万条记录,测试集包含200万条记录,处理困难较大,这里从中选取部分数据进行仿真实验[8],各类型数据如表1所示。

表1 各类数据统计

仿真环境为PC计算机,Windows XP,奔腾双核3.60 GHz,内存4.0 GByte,仿真软件Matlab 2012。为对比本文模型的有效性,采用对比方法为分别单独采用GA,ACO,IACO和ACO-GA组合对入侵数据进行提取的模型,以验证采用IACO-GA组合模型的优越性。首先对IACO-GA特征选择结果进行统计,以说明能够较好地获取入侵特征,如表2所示。

表2 IACO-GA的特征选择结果

将表2选取的特征数量和表1中原始数据数量比较可知,原始数据中存在大量冗余数据,IACO-GA组合模型有效消除了冗余数据,为下一步入侵识别打下基础。接下来从入侵检测正确率、误报率和漏报率3个方面对各种方法进行对比,其中,采用5个不同类型的SVM分类器,在第1层将所有数据划分为正常和异常两大类;第2层将异常数据送入SVM进行分类,具体可参考文献[15]中设置。结果如表3—表5所示。

表3 各方法对各种入侵检测正确率

从表3中各方法对于各种入侵检测的正确率可以看出,单独采用IACO算法比传统ACO算法具有更好的检测效果,这与改进算法性能密切相关。而采用IACO-GA组合的检测模型具有最高的检测正确率。

表4 各方法对各种入侵检测误报率

从表4的误报率统计可以看出, IACO-GA组合检测模型比ACO-GA组合检测模型具有更低的检测误报率,同时IACO相比ACO具有更低检测误报率。

从表5的漏报率统计结果可以看出,与误报率相似,IACO-GA组合模型的检测方法具有最低的漏报率,

综合表3-表5结果可以看出,采用IACO-GA组合的网络入侵检测模型,能够更好地检测出入侵的类别,是一种有效的网络入侵检测方法。

4 结 论

为进一步提高网络入侵的检测性能,本文提出了一种基于IACO-GA组合模型的网络入侵检测方法。方法采用GA对网络数据进行初步提取,克服了传统ACO收敛速度慢和容易陷入局部最优解的问题,然后采用对迭代方法和信息素更新策略进行改进的IACO对数据特征进一步提取,将2种有效组合一起,提高了组合方法的寻优效果,进一步克服了ACO存在的上述问题。仿真实验验证了所提出方法有效提高了网络入侵的检测正确率,降低了漏报率和误报率,提升了网络入侵检测的整体性能。

[1] 郑科鹏, 冯筠, 孙霞, 等. 基于静态集成PU学习数据流分类的入侵检测方法[J]. 西北大学学报:自然科学版, 2014, 44(4): 568-572. ZHENG K P, FENG J, SUN X, et al. Static Classifier Ensemble for Intrusion Detection Based on Positive Unlabeled Learning[J]. Journal of Northwest University:Natural Science Edition, 2014, 44(4): 568-572.

[2] 王秀利, 王永吉. 基于命令紧密度的用户伪装入侵检测方法[J]. 电子学报, 2014, 42(6): 1225-1229. WANG X L, WANG Y J. Masquerader Detection Based on Command Closeness Model[J]. Acta Electronica Sinica, 2014, 42(6): 1225-1229.

[3] 彭茂玲,陈善雄,余光琳.一种基于压缩感知的入侵检测方法[J].西南大学学报:自然科学版,2014,36(2):186-192. PENG M L, CHEN S X, YU G L. An Intrusion Detection Method Based on Compressed Sensing[J]. Journal of Southwest University: Nature Saence Edition, 2014,36(2):186-192.

[4] 冯莹莹,余世干,刘辉.KNN-IPSO选择特征的网络入侵检测[J].计算机工程与应用,2014,50(17):95-99. FENG Y Y, YU S G, LIU H. Network Intrusion Detection Based on KNN-IPSO Selecting Features[J].Computer Engineering and Applications,2014,50(17):95-99.

[5] 梁潘. 基于HMM和自组织映射的网络入侵检测算法[J]. 青岛科技大学学报:自然科学版, 2014, 35(4): 400-404 LIANG P. Algorithm of Network Intrusion Detection Based on HMM and Self-organize Mapping Net[J]. Journal of Qingdao University of Science and Technology:Natural Science Edition, 2014, 35(4): 400-404.

[6] 李蕊.基于PCA和LOGIT模型的网络入侵检测方法[J].成都信息工程学院学报,2014,29(3):261-267. LI R. A Network Intrusion Detection Method based on PCA and LOGIT Model[J]. Journal of Chengdu University Of Information Technology, 2014, 29(3): 261-267.

[7] 马乐, 赵锐, 阚媛. 基于混合模糊神经网路的入侵检测系统[J]. 军事交通学院学报, 2014, 16(5): 86-91 MA L, ZHAO R, KAN Y. Intrusion Detection System Based on Hybrid Fuzzy Neural Network[J]. Journal of Academy of Military Transportation, 2014, 16(5): 86-91.

[8] 杨宏宇, 赵明瑞, 谢丽霞. 基于自适应进化神经网络算法的入侵检测[J]. 计算机工程与科学, 2014,36(8): 1469-1475. YANG H Y, ZHAO M R, XIE L X. Intrusion Detection Based on the Adaptive Evolutionary Neural Network Algorithm[J]. Computer Engineering and Science, 2014,36(8): 1469-1475.

[9] MA P, TIAN M, YANG M. An improved genetic algorithm[C]∥2010 First International Conference on Pervasive Computing Signal Processing and Applications (PCSPA), IEEE Publisher (PCSPA). Harbin, China: IEEE, 2010: 977-980.

[10] AGGARWAL A, RAWAR T K, KUMAR M, et al. Optimal Design of FIR High Pass Filter Based on L1Error Approximation Using Real Coded Genetic Algorithm[J].

Engineering Science and Technology, 2015, 18(2015): 594-602.

[11] SOLTANI H, SHAFIEI S. Adiabatic Reactor Network Synthesis Using Coupled Genetic Algorithm with Quasi Linear Programming Method [J]. Chemical Engineering Science, 2015, 137: 601-612.

[12] ZHOU X, LIU Y H, ZHANG J D, et al. An ant colong based algorithm for overlapping community detector in complex networks[J]. Physica A, 2015, 427: 289-301.

[13] WANG L J, SHEN J, LUO J Z. Facilitating an ant colony algorithm for multi-objective data-intensive service provision[J]. Journal of Computer and System Science, 2014, 81(4):734-746.

[14] PAN X L, LUO Y, XU Y T. K-nearest Neighbor Based Structural Twin Support Vector Machine[J]. Knowledge-Based Systems, 2015, 88(2015): 34-44.

[15] 李小剑, 谢晓尧. 一种改进的支持向量机在入侵检测系统中的应用[J]. 网络安全技术与应用, 2014, 32(8): 10-12. LI X J, XIE X R. Application of an Improved Support Vector Machine in Intrusion Detection System[J]. Network Security Technology and Application, 2014, 32(8): 10-12.

(编辑:刘 勇)

Network intrusion detection method based on combination of improved ant colony optimization and genetic algorithm

YUAN Qinqin, LV Lintao

(Department of Electric Information Engineering, Xijing University, Xi’an 710123, P.R. China)

To improve the detection effect of network intrusion detection, a network intrusion detection method based on improved ant colony algorithm in combination with Genetic Algorithm (GA) was proposed. Firstly, GA was used for rapid selection of network intrusion feature set for the following feature selection. Then an improved ant colony algorithm was proposed by the improvement of node selection and pheromone updating strategy to improve the detecting effect of feature, the improved ant colony algorithm was adopted for further feature selection. Finally, the method adopted support vector machine (SVM) statistical machine learning method to establish a network intrusion detection classifier. Simulation results show that the new network intrusion detection method merges the advantages of GA and improved ant colony algorithm, which can get better feature detection results. The comparison in terms of detection accuracy, false alarm rate and missing report rate shows that the new network intrusion detection method can get better network intrusion detection results, and the detection rate was also improved.

network intrusion; genetic algorithm; ant colony optimization; support vector machine

10.3979/j.issn.1673-825X.2017.01.013

2015-10-28

2016-06-18 通讯作者:袁琴琴 yuanqinqin_2015@126.com

国家自然科学基金(61273271);西京学院科研基金(XJ150122)

Foundation Items:The National Natural Science Foundation of China(61273271); The Scientific Research Project of Xijing University of China(XJ150122)

TP393.03

A

1673-825X(2017)01-0084-06

袁琴琴(1979-),女,湖北襄阳人,高级工程师,硕士,研究方向为计算机网络与网络安全。 E-mail: yuanqinqin_2015@126.com。

吕林涛(1955-),男,教授,硕士导师,研究方向为大数据挖掘与发现。E-mail: lvlintao_2015@126.com。

猜你喜欢

正确率遗传算法蚂蚁
门诊分诊服务态度与正确率对护患关系的影响
我们会“隐身”让蚂蚁来保护自己
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
蚂蚁
基于遗传算法和LS-SVM的财务危机预测
生意
品管圈活动在提高介入手术安全核查正确率中的应用
生意
软件发布规划的遗传算法实现与解释
基于改进的遗传算法的模糊聚类算法