移动Agent和遗传算法在分布式IDS中的应用技术探讨
1 引言
随着信息网络技术的快速发展,人们不再满足于使用固定终端或单个移动终端连接到互联网络上,而是希望移动子网能以一种相对稳定和可靠的形式,从互联网上动态地获取信息,这就促进无线移动互联网络的发展。然而,由于无线通信在无线空间传播信道特殊的辐射、开放性会导致假冒攻击、网络欺骗、信息窃取等不安全行为,使网络通信的安全性受到极大的威胁。为防止无线通信中信息被接收者之外的另一些人轻易地截获,或入侵者进行欺骗接入等,需要采取一系列的安全措施。
入侵检测系统(The Intrusion Detection System,IDS)是一种积极主动的安全防护技术,可应对网络信息传输中诸如篡改,删除以及盗取等行为的网络安全设备。目前,IDS发展迅速,根据入侵检测方法可以把IDS分为异常入侵检测系统和误用入侵检测系统。但传统的基于知识的IDS需要领域专家人工进行规则和模式的建立,而复杂网络随着时间和空间的变化会导致专家规则库受限,降低了IDS的有效性和正确性。
本文针对移动互联网络的安全问题设计一种IDS检测方案,该方案在网络层描述系统构成、实现的通信原理、部署及入侵检测过程,并通过搭建实验平台对方案的性能和执行效率进行了分析。
2 移动互联网网络结构及安全问题
一般人们可以认为移动互联网是采用手机、个人数字助理、便携式计算机、专用移动互联网设备等作为终端,以移动通信网络或无线局域网作为接入手段,通过无线应用协议(WAP)访问互联网并使用互联网业务。由于移动互联网中核心是无线网络技术,无线网络通过无线电波在空中开放式传输数据,在数据发射机覆盖区域内的几乎所有的移动用户都能接触到这些数据,因此很容易受到恶意攻击。
随着3G和移动互联网的发展,所有在互联网上出现的安全问题都可能在移动互联网上重现。另一方而,由于移动互联网本身的特点、独特发展方式与传播能力使得很多新的安全问题不断出现, MCAfee《2008年移动安全研究报告》显示,80%以上的用户对移动终端安全问题担心。当前移动互联网存在的安全问题主要有四个方面。
1)信息中断:利用非法手段对网络的可用性进行攻击,破坏移动互联网系统中的软、硬件资源,使网络不能正常工作。
2)篡改:对网络的完整性进行攻击,篡改移动网络的核心网元和业务数据库中内容,修改消息次序进行延时或重放。
3)窃听:通过对无线网络传输链路上的搭线和电磁泄漏等对网络的机密性进行攻击,造成泄密,或对业务流量进行分析,获取有用信息。有很多不法份子窃听等技术手段可以精确提取这些信息,造成一些隐私信息泄露并进行违法犯罪活动。
4)伪造:对网络的真实性进行攻击,将伪造、虚假的信息注入网络中、假冒合法用户接入移动网络、重放截获的合法信息实现不法目的、向移动网络中移植蠕虫、木马、逻辑炸弹等恶意程序来破坏移动网络的正常工作,否认网络中消息的接收或发送等。
3 入侵检测系统的模型及分类
IDS是一种主动保护自己免受攻击的一种网络安全技术,它是防火墙技术的一种补充,是检测计算机网络和系统以发现违反安全策略事件的过程。任何一个完整的IDS都必须支持信息控制和信息捕获两大功能。
作为入侵检测的系统至少应该包括三个功能模块:提供事件记录流的信息源、发现入侵迹象的分析引擎和基于分析引擎的响应部件。如图1所示描述了一个入侵检测系统的通用模型,由事件产生器、活动记录器和规则集三个部件组成。事件产生器是IDS模型中产生活动信息,审计跟踪网络数据包;活动记录器监视中当前网络的状态;规则集是一个普通的核查事件和状态的检查引擎,它使用模型、规则、模式和统计结果来判断入侵行为。此外,反馈也是IDS模型的一个重要组成部分。规则集会根据事件产生器反馈现有的事件,引发系统的规则学习以加入新的规则或者修改规则。
从数据通信及处理的角度来看,IDS是一个典型的数据处理过程,它通过对大量的审计数据进行分析,来判断被检测的系统是否受到入侵攻击。它的检测机制,就是对一个系统主体行为的分类过程,即把对系统具有恶意的行为从大量的系统行为中区分出来。显然,解决问题的关键技术就是如何从已知的数据中获得系统的正常行为知识或有关入侵行为的知识。
入侵检测系统有不同的分类标准,按数据源可分为:基于主机的IDS和基于网络的IDS;按系统结构分为:集中式入侵检测和分布式入侵检测;按检测原理分为:异常入侵检测和误用入侵检测。在IDS研究中,涉及的关键技术有:模式匹配、数据挖掘、神经网络、协议分析、数据融合及免疫和各种分类算法,但一般都是从异常入侵检测模型和误用入侵检测模型下手。异常入侵检测模型采用特征匹配的方法确定攻击事件,检测过程中用定量方式来描述可接受的行为特征,以区分和正常行为相违背的、非正常的行为特征来检测入侵。误用入侵检测模型指按照预先定义好的入侵模式观察到入侵发生情况并进行模式匹配来进行检测,一般是利用已知系统和应用软件的弱点攻击模式来检测入侵。
4 基于移动Agent和GA的IDS的设计
4.1 移动Agent和GA理论
移动Agent技术是一个能在同构或异构网络主机之间自主地进行迁移、集分布式对象技术、软件Agent技术和移动代码技术于一体。它具有代理的自治性、响应性、智能性和移动性,基于移动Agent的IDS将Agent分布于系统的关键点,完成数据的分布式收集、检测及实时响应。此外,移动Agent是一个独立的功能实体,扩展性好。
移动Agent其实就是一个能够在运行过程中自主地从源主机迁移到目标主机,并可与其它Agent或资源交互的程序。移动Agent的模型如图2所示。
GA(Genetic Algorithm)是一种借鉴生物界进化规律,模拟达尔文生物进化论的自然选择和遗传学机理的进化机制发展起来的高度并行、随机、自适应搜索算法。它使用数据序列来表示遗传基因,繁殖分为交叉与变异两个独立的步骤进行。其算法过程分几步。
(1)初始化:确定种群规模N、基因交叉概率PC、基因变异概率PM和终止进化的规则,生成随机的N个个体作为初始种群X(0),并把进化代数计数器t=0。
(2)个体评价:计算特定个体N(i)(0<=i (3)种群进化过程。
1)选择父代,选择的目的是把优
化的个体直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。从种群中选择出N/2对来交叉繁衍下一代。
2)交叉繁衍是遗传算法的核心,所谓交叉是指把两个父代个体的部分结构加以替换重组而生成新个体的操作。从配对的父代中,各自贡献一部分基因片段,组成子代个体。父代的基因片段可以有多种组合方式,可以产生M个子代。
3)基因变异,把父代复制到子代中,然后交互父代的两段基因片段,产生变异的子代。
4)淘汰选择,从上述所形成的子代群体中根据适应度选择数量适度的子代个体,形成新一代的父代群体。同时还要把遗传代数计数器加1。如果终止检验通不过的话,继续下一代的进化。
(4)终止检验:如已满足终止条件,则终止进化过程。终止条件的设置是当最优个体的适应度达到给定的阈值,或者最优个体的适应度和群体适应度不再上升时,或者迭代次数达到预设的代数时,算法终止。
遗传算法用在IDS中主要进行的是异常检测,而且大部分是采用训练数据自动计算出相应网络上的某个阀值,以此作为判断是否有入侵的条件。
4.2 系统设计
基于移动Agent和GA的IDS通过为某些入侵行为建立特定的模型,设计多个相互协同Agent,对数据采集Agent送来的数据进行分析,不同Agent之间相互协作学习,并训练规则数据集,结合攻击脚本推理出入侵行为是否出现。IDS的结构如图3所示。
数据库模块:用于存放规则库,记录系统检测到的事件、原始数据及训练数据;存放各种移动Agent的代码库以及一些特定事件的处理函数。由于网络数据量大,需要进行自动分类建立标识,数据进行模式匹配后分类进行算法训练。
入侵检测Agent模块:对移动网络上的流量包进行捕获,然后通过协议解码和分析,实现对数据包的统计、操作日志和审计。
响应Agent模块:用以对入侵检测Agent的分析结果给予响应,如检测到入侵事件,响应代理采取相应措施如警告入侵者,禁止连接或引向蜜罐虚拟系统。
用户界面Agent模块:是系统和用户的接口,负责将用户的命令和请求发送给代理,并以直观的形式显示告警,给用户提出处理建议。用户界面Agent动态监控各个系统组件的工作状态,允许管理员查看、管理和维护。
数据收集Agent模块:采集系统、网络数据以及用户活动的状态和行为数据。一般在计算网络中的若干不同关键点收集信息,这除了尽可能扩大检测范围的因素外,还有一个重要的因素就是从一个数据源来的信息有可能看不出疑点,但从几个数据源来的信息的不一致性却是可疑行为或入侵的最好标志。数据采集Agent是专门对监控主机进行系统数据和网络数据采集,各个Agent间相互协作分析后,经过预处理把数据传送给入侵检测Agent。
管理中心:实现移动代理环境之间的通信及发布指令,并对后台数据库进行集中管理。
以上所有Agent都建立在分布式移动环境下运行。移动Agent环境是整个入侵系统运行的基础,并控制移动Agent的移动、建立、注销等基本服务。移动Agent环境代理服务器可以将策略库中的事件处理函数自动进行封装生成移动代理派遣到相应的节点执行检测任务。
4.3 系统部署
网络中的工作站和服务器都应安装移动代理环境MAE,并根据需要在工作站和服务器上运行不同类型的代理。并在每一个网段上配置一个管理控制中心,管理中心对整个网段进行控制。系统管理员通过用户界面Agent(可采用IBM公司的Aglets作为实现平台)可以获知整个系统的运行情况,并对入侵检测系统进行配置和控制,以实现预定的安全策略。每一台受检测的移动节点或主机根据不同的需要运行不同的数据收集Agent和分析检测Agent。网段中关键节点上运行数据收集Agent用于采集网络数据包,部署结构图如图4所示。
入侵检测Agent是系统部署和设计中最重要的部分,它承担从可疑的数据信息中检测是否有入侵发生的任务,截获网络信息,进行审计分析,确定可疑度,并对相应事件进行响应;同时要保持与其他移动Agent通信,对可疑级别达到一定程度的事件进行可疑广播;这些检测代理可以在异质的网络节点间迁移,并根据被监控主机中的数据库信息或其它主机传送的信息分析入侵,或根据遗传算法编码规则训练规则数据库并做好日志。
5 实验结果及分析
为了测试模型的性能及有效性,首先要搭建一个无线局域网的测试环境,在一个无线局域网内部署8台主机,两台分别安装Snort和Iptable的数据采集安全工具,一台控制台主机,一台存放中央数据库主机,一台目标主机和一台关联引擎主机,一台策略服务器,一台数据采集器,一台采集代理。内部网络通过路由器与外部网络连接,在外网中以移动节点作为攻击主机,在中国电信衡阳分公司天翼3G工学院校园网络上对系统进行测试。实验过程要用到SQL Server2009、WinPcap、Snort、Aglets、Visual studio 2005、Iptable及攻击软件等。使用2012年6月第一个周末的数据作为训练数据,第二个周末的数据作为测试数据,其中包含了攻击数据包,总共收集了7149800个数据包。通过遗传算法种群初始化编码方法对数据包进行编码,去除多余的数据,剩下的1243700个数据包作为自我集。实验中所使用的数据包如表1所示。
评价入侵检测系统性能的标准是准确性,准确性主要体现在漏报率和误报率。因此,有必要先定义几个指标参数:
检测率=正确检测出的入侵事件个数/总的入侵事件个数*100%
误报率=误报事件个数/总的正常事件个数*100%
漏报率=未检测到的入侵事件个数/总的入侵事件个数*100%
我们将设计的IDS的检测率、误报率同开源的入侵检测系统snort进行了比较。实验结果如图5所示。
通过实验结果对照可以看出:训练数据一样的情况下,基于移动Agent和遗传算法的IDS检测准确率比传统的Snort有一定程度的提高。
此外,为了验证遗传算法中种群数、迭代次数等对IDS的影响。通过仿真实验,如图6所示,基于移动Agent和GA的IDS系统随着种群数的增加,IDS的检测准确率将还会有所提高,同时检测错误率有一定程度的减小。
6 结束语
本文提出将移动Agent和GA应用于IPv6环境下的分布式入侵检测系统,采用动态分发相关移动代理来收集安全事件,遗传算法GA来训练数据并自适应计算网络中的异常阀值,具有预
测性强、实时响应快、较高的智能性和容错能力、抗攻击能力强、协同性好等优点。通过在移动IPv6网络环境下验证,设计的IDS在算法性能和检测效率上具有优势,适合于移动互联网。
参考文献
[1] 高为民,徐红云.网络入侵诱控系统的研究与实现[J],计算机测量与控制,2006,14(12):1751-1753.
[2] 马军,马慧.移动互联网安全问题分析及建议[J],现代电信科技,2009,28(7):46-49.
[3] 罗利民,周震.基于IPv6的网络安全入侵检测技术研究[J],科技通报,2012,28(4):114-115.
[4] 陈建锐,何增颖,梁永成.IPv6网络入侵检测系统设计[J],计算机技术与发展,2010, 20(9):123-126.
[5] 赵荣杰.IPv6网络中的分布式入侵检测系统研究与实现[D].西安:西安电子科技大学,2009.
[6] 侯方明.无线网络中入侵检测系统的研究与设计[D].济南:山东大学,2005.
[7] 许素霞,傅秀芬等.改进遗传算法在入侵检测系统的应用[J].计算机系统应用,2007年第11期:104-107.
[8] 黄成伟,贾宇波等.一种Agent安全参考模型[J].计算机应用与软件,2010,27(11):40-43.
基金项目:
湖南省科技计划项目(2014FJ6026);湖南工学院教改项目(JY201425)资助。
作者简介:
高为民(1975-),男,副教授,硕士;主要研究方向和关注领域:无线网络、网络安全。
方小勇(1982-),男,博士,副教授;主要研究方向和关注领域:图形图像处理、计算机仿真。