APP下载

基于克隆选择原理的网络安全监测研究

2012-01-05刘才铭

成都信息工程大学学报 2012年6期
关键词:检测器族群数据包

张 雁, 刘才铭,2

(1.乐山师范学院计算机科学学院,四川乐山614004;2.西南交通大学信息科学与技术学院,四川成都610031)

0 引言

网络安全监测技术通过对网络安全威胁进行有效地检测,并对网络安全威胁的相关数据进行分析和判断,为网络管理者提供网络安全程度的参考,并为追究安全威胁制造者的责任提供依据,它已经成为网络安全技术的研究热点之一[1]。

目前,主要采用网络安全态势评估(Network Security Situational Awareness)[2]技术监测计算机网络中的安全状况,但是,传统网络安全态势评估技术主要采用日志分析和漏洞扫描等方法[2-3],其获取的数据带有很大的静态性,难以适应瞬息万变的网络安全环境。况且,网络安全态势评估技术只评估安全状况,不对威胁制造者的行踪进行记录,不利于事后追究责任。随着网络安全形势的日益复杂,网络安全监测技术迫切需要进行拓展,在对网络安全威胁进行检测和取证的基础上,实现针对动态网络环境中存在的安全风险的精确评估,让网络管理员不仅知道遭受了网络安全威胁,还能够有科学依据去防范和化解网络安全风险,或将安全风险控制在可接受的范围内。

为了有效监测计算机网络中面临的安全威胁,引入计算智能方法便是一种有效的途径之一。人工免疫系统(Artificial Immune System,AIS)[4-7]已发展成为计算智能研究的一个崭新的分支,而由其发展而来的计算机免疫系统(Computer Immune System,CIS)[8-9]更是在计算机网络及其安全研究中得到了广泛地应用[9-10]。模拟克隆选择原理(Clonal Selection Principle,CSP)的克隆选择算法(Clonal Selection Algorithm,CSA)是CIS的重要组成部分,它通过亲和力机制让系统进行学习,并演化出解决问题的最佳方法。Castro[11]提出了克隆选择算法模型,并在模式识别、组合优化和多峰值函数优化中得到验证[9]。Kim和Bentley[12]提出动态克隆选择算法(Dynamical Clonal Selection,DynamiCS),并在网络安全应用中得到验证。随后,大量研究人员在基于克隆选择原理的网络安全研究方面取得大量积极的研究成果。

文中将克隆选择原理引入到网络安全监测技术中,利用克隆选择原理的良好机制和自学习性特征,并使用克隆选择算法动态地演化出检测网络安全威胁的检测要素,实现网络安全威胁的告警、网络安全风险评估、以及网络安全威胁的取证等网络安全监测流程。

1 网络安全监测技术研究

1.1 监测流程

网络安全监测技术监测网络内的网络安全威胁,并提取监测到的网络安全威胁信息,给管理员发送告警信息,还根据网络安全威胁的强度定量评估网络安全风险,同时对网络安全威胁造成的影响进行取证。研究的网络安全监测的流程如图1所示,其中,虚线表示检测数据的流动方向。首先,将网络数据包提呈为抗原;然后,将抗原提交给基于克隆选择原理的网络安全威胁检测模块,利用抗原训练检测器,让检测器得到进化和自适应;最后,根据网络安全威胁的监测结果,对网络管理员进行告警、评估安全风险和取证。

1.2 数据模拟与定义

为了将克隆选择原理引入到网络安全监测技术中,需要将真实网络环境下的数据模拟成克隆选择原理中的数据元素和检测要素。将计算机网络数据包的特征信息模拟成抗原(antigen),将检测网络安全威胁的检测要素模拟成检测器(detector)。

抽取网络数据包的主要包头信息,将其转换成长度为l(l为自然数)的二进制串,定义这些二进制串的状态空间为U={0,1}l,将网络数据包的包头信息提呈为抗原,抗原由网络数据包的源/目的IP地址、端口号和协议标志等数据包特征的二进制串组成。定义抗原集合为其中,p为网络数据包,APCs(p)函数表示将数据包 p的特征信息提呈为长度为l的二进制串。

将正常网络行为和网络安全威胁分别定义为自体抗原Self(简称自体)和非自体抗原 Nonself(简称非自体),其中,Self,Nonself∈Ag,它们满足 Self∩Nonself=Φ,Self∪Nonself=Ag[1]。

定义1 定义检测器集合为 D={〈gene,age,count,type,family〉|gene∈Ag,age,count,type,family∈N},其中,gene为检测器的基因,它是与抗原进行匹配的二进制串,也即检测数据包中是否含有安全威胁的关键特征信息;N为自然数集合;count为检测器匹配到抗原的数量;age为检测器的年龄,表示该检测器已经存活了多少代;type表示检测器的类型;family为一个正序列整数,表示检测器的族群序列号,它与一种网络安全威胁的编号相对应。

选择我院接受的进行超声检查的300例甲状腺结节患者作为案例,对患者采用本院现有的超声量化分级系统实施诊断和评估。本次研究的研究案例均符合要求,经过病理诊断后具备知情权,签署知情同意书。

检测器的基因与抗原具有相同的数据格式,它是检测器识别抗原的关键特征信息,因此,判断检测器是否检测到抗原,需要建立检测器基因与抗原的二进制字符串的匹配算法。目前主要采用海明距离(Hamming)、欧氏距离(Euclidean)和r-连续位匹配算法(r-Contiguous)[8]等匹配方法。建立函数 fmatch(),判断检测器d和抗原ag是否匹配,如下所示。

其中,函数返回值为1时,检测器d和抗原ag匹配,否则不匹配。

图1 网络安全监测流程

1.3 检测器的动态演化

将检测器分类为未成熟检测器DI、成熟检测器DM和记忆检测器DR。

未成熟检测器模拟了检测要素进化的初始阶段,是新生成的检测器,由记忆检测器的基因片段进行变异和重组后产生,或者由系统随机产生,这样可以提高检测器的多样性,未成熟检测器满足:DI=其中,α为未成熟检测器的耐受期阈值;count为匹配到正常自体抗原的数量,一旦未成熟检测器匹配到自体抗原,即 count>0,则未成熟检测器将走向死亡;parent.family为产生该未成熟检测器的记忆检测器的族群序列号,如果为随机生成的未成熟检测器,则使用新的族群序列号,但不能与以前的族群序列号重复。

成熟检测器模拟了检测器进化的中间阶段,由未成熟检测器进化而来,它满足:DM={d|d∈D,d.age<λ,d.count<δ},其中,λ为成熟检测器的生命周期(即成熟检测器的寿命);δ为成熟检测器的激活阈值,它不与自体匹配,每检测到一个抗原,其count域加1,它需要在其生命周期λ里检测到足够数量(δ)的抗原,才能进化成记忆检测器,否则将走向死亡,如图1所示。

记忆检测器DR模拟了检测器进化的最高阶段,由被激活的成熟检测器进化而来,或由管理员将已知网络安全威胁的特征数据转换而来,它满足:DR={d|d∈D,d.age≥λ,d.count≥δ},它包含有能精确识别攻击数据包的特征,并能够对非自体抗原产生二次免疫应答,迅速地识别有害抗原,即检测到攻击数据包时,通过克隆扩增机制用自己的基因片段产生大量的未成熟检测器,以便生成更多的识别有害抗原的检测器,从而壮大自己的族群。在初始阶段,可以输入经典的网络安全威胁特征信息作为记忆检测器,并用其生成未成熟检测器,经过动态演化,可以更快地生成能多样化地检测有害抗原的检测器。

1.4 网络威胁的检测及告警

定义网络安全威胁集合为 T。

其中,attackID为网络安全威胁的标识号,它与其对应的记忆检测器的族群序列号相同;N为自然数;attack-Name为网络安全威胁的名称;attackInfo为网络攻击的描述信息;ASCII为ASCII字符集。

当记忆检测器识别到有害抗原时,通过其 family域关联到抗原对应的网络安全威胁种类,并提取网络安全威胁的信息,向管理员发出警告。设A为告警信息集合。

其中,attackName表示检测到的网络安全威胁的名称,attackCount表示该种网络安全威胁的发生次数。

1.5 安全风险评估

随着检测器的动态演化,检测器的族群数量也随之发生变化,这种族群数量的大小,也反映了网络安全威胁强度的动态变化,即网络安全威胁的强度反映在具有相同族群序列号的未成熟检测器和成熟检测器的数量上。

设第i类(i为网络安全威胁列号)网络安全威胁的危害性为hi,设第j个网络资产(包括软硬件)的重要性为vj,则第j个网络资产面临的安全风险rj为:

其中,m为网络资产遭受的网络安全威胁的数量;“*”表示计算方法;dI∈DI,dM∈DM,dI.family=dM.family=i;Count()函数按照参数给定的条件统计检测器的数量。

网络面临的整体安全风险 r为:

其中,n为被监测的网络资产的数量。

1.6 取证

该方法在检测到网络安全威胁时,同时对网络安全威胁行为进行取证。一旦记忆检测器匹配到非法抗原,随即对抗原对应的网络数据包进行特征提取,提取的特征信息包括源IP地址、目的IP地址、发生的时间等,并对遭受安全威胁的目标系统的当前状态信息进行提取,如CPU使用状态、内存使用状态、网络流量等。将提取的以上信息形成网络安全威胁快照数据Flash,对该数据进行处理后形成证据 Evidence,发往证据服务器进行保存,证据的生成过程如下所示。

Evidence=Encrypt(Hash(Flash),publicKey)+Encrypt(Flash,publicKey)

其中,Encrypt()为公钥加密函数,Hash()为单向散列函数,publicKey为证据服务器提供的公钥,“+”为内容连接符。

证据服务器在接收到证据后,拆解出包头信息,用其私钥进行解密,然后将解密后的信息与内容信息的hash值进行比较,若两个值相同,则表示该证据完整,是可信的,可以存入证据服务器中,否则要求重发证据。

2 结束语

通过对网络安全威胁进行监测,可以让网络管理人员全面地了解当前的网络安全状况。为了对网络安全威胁进行有效地监测,文中将克隆选择原理引入到网络安全监测技术中,研究克隆选择原理在计算机网络中的网络安全监测方法,实现网络安全威胁的告警、网络安全风险评估、以及网络安全威胁的取证等网络安全监测流程。建立了一种有效的网络安全监测技术,其监测的结果能为制定主动的网络安全防御策略提供科学的依据。

致谢:感谢乐山师范学院科研项目(Z1113,Z1065)对本文的资助

[1] 李涛.基于免疫的网络监控模型[J].计算机学报,2006,29(9):1515-1522.

[2] 韦勇,连一峰,冯登国.基于信息融合的网络安全态势评估模型[J].计算机研究与发展,2009,46(3):353-362.

[3] 韦勇,连一峰.基于日志审计与性能修正算法的网络安全态势评估模型[J].计算机学报,2009,32(4):763-772.

[4] Hofmeyr S A,Forrest S.Immunity by design:An artificial immune system[C].Genetic Evolutionary Computation Conf,San Francisco,CA,1999:1289-1296.

[5] 肖人彬,王磊.人工免疫系统:原理、模型、分析及展望[J].计算机学报,2002,25(12):1281-1293.

[6] 焦李成,杜海峰.人工免疫系统进展和展望[J].电子学报,2003,31(10):1540-1548.

[7] 莫宏伟,左兴权.人工免疫系统[M].北京:科学出版社,2009.

[8] Forrest S,Hofmeyr S A,Somayaji A.Computer immunology[J].Communications of the ACM,1997,40(10):88-96.

[9] 李涛.计算机免疫学[M].北京:电子工业出版社,2004.

[10] Dasgupta D.An immunity-based technique to characterize intrusions in computer networks[J].IEEE Transactions on Evolutionary Computation,2002,6(3):281-291.

[11] Castro L N,Zuben F J V.Learning and optimization using the clonal selection principle[J].IEEE Transaction On Evolution Computation,2002,6(3).

[12] Kim J,Bentley P J.Towards an artificial immune system for network intrusion detection:an investigation of dynamic clonal selection[C].The Congress on Evolutionary Computation,2002:1015-1020.

猜你喜欢

检测器族群数据包
二维隐蔽时间信道构建的研究*
基于Jpcap的网络数据包的监听与分析
论《白牙》中流散族群内部的文化冲突
新兴族群的自白
基于二次否定剪切选择的入侵检测方法*
SmartSniff
汉德森 领跑年轻族群保健品市场
高句丽族群共同体的早期演进
车道微波车辆检测器的应用
一种柱状金属物质量检测器的研究