基于危险理论的自动入侵响应系统模型
2012-11-06彭凌西谢冬青付颖芳熊伟沈玉利
彭凌西,谢冬青,付颖芳,熊伟,沈玉利
(1. 广州大学 计算机科学与教育软件学院,广东 广州 510006;
2. 网络与数据安全四川省重点实验室,四川 成都 611731;
3. 北京工业大学 计算机学院,北京 100124;
4. 仲恺农业工程学院 计算机科学与工程学院,广东 广州 510225)
1 引言
入侵响应系统的作用是在入侵检测系统 (IDS,intrusion detection system)对网络活动进行监视,发现各种攻击企图、攻击行为或者攻击结果后,进行适当的入侵响应[1]。入侵响应技术是基于主动防御思想的新一代的网络安全技术,在保护网络安全上具有十分突出的意义,是目前网络安全技术发展的重要方向。
现有对自动入侵响应的研究资料或文献相对较少,在这些研究中,Fisch最早对入侵响应分类进行了研究,提出了以入侵被检测到的时机以及响应目标进行分类,该方法的缺点是考虑的因素不够全面[2]。Curtis在此基础上提出了更为全面的入侵响应方式分类方法,该方法综合考虑了攻击的进度、攻击的类型、代价作为响应决策的依据[3]。Wenke L提出了一种基于响应代价作为响应决策的依据,从而出现了基于成本敏感的响应决策模型,但方法中响应代价的量化方法过于粗糙[4]。Wu Y S等设计并实现了一种名为ADEPTS的自动响应系统模型,利用入侵有向图对系统传播风险进行建模,并根据具体的攻击效果来进行适当的响应[5]。Mu C P等提出了一种基于层次任务网络计划的入侵响应决策模型,包括响应决策制定过程以及决策响应时间[6]。Cuppens等提出了一种基于上下文和本体方法入侵响应方法,并定义了一套规则来执行这种基于策略的入侵响应[7]。张剑等提出了一种可回卷的自动入侵响应系统,该方法根据IDS检测到的攻击行为进行响应,待判定攻击会话结束后进行响应回卷[8]。穆成坡等提出了一种基于模糊认知图的自动入侵响应决策推理机制[9]。吴姚睿等提出了一种通过关系图建立攻击群模型的方法,通过判断攻击序列重构协同入侵行为的攻击过程,并对攻击行为做出响应,从而达到最大程度地减少响应成本的目的[10]。
从总体上分析,当前自动入侵响应研究主要存在2个问题,首先是由于目前IDS普遍存在的高误报率和漏报率,造成自动入侵响应系统难以判断真正“危险”的入侵或者攻击行为,因而影响了入侵响应决策的判断。另外,目前国内外提出的一些入侵响应模型或方法,大多缺乏严格、全面、定量的数学模型,进行动态响应策略调整,因而在具体应用中存在很大的局限性。
计算机安全问题与生物免疫系统(BIS, biological immune system)所遇到的问题具有惊人的相似性,两者都要在不断变化的环境中维持系统的稳定性。基于人工免疫(AIS, artificial immune system)的网络安全技术具有多样性、自适应、顽健性等特点,被认为是一条非常重要且有意义的研究方向[11,12]。目前,在人工免疫应用于网络安全技术的研究中,Hofmeyr和Forrest等基于“自体—非自体”理论[13],提出了一种通用的人工免疫系统实现架构,并设计了一个计算机免疫系统(CIS, computer immune system)LISYS[14],LISYS对后来CIS的研究产生了深远的影响,现今基本上所有的 CIS模型都是基于LISYS的结构。著名免疫学家Matzinger提出了著名的危险理论[15],危险理论指出,免疫系统中不只是进行“自体—非自体”的识别,而是对受侵害组织的“危险”发出危险信号。由于现有计算机免疫系统模型存在的因自体空间巨大而效率低下的问题[16],因此在相关的网络安全技术研究中,有必要进一步引入危险理论,将识别原理从对“自体—非自体”的识别转变为对“危险”的识别。
为使网络信息系统能对真正具有“危险”的入侵攻击进行响应,降低入侵响应系统响应代价和响应次数,基于危险理论,本文在建立网络安全环境下人工免疫系统的自体、非自体、免疫细胞等集合定义后,提出了一种新的基于网络实时危险的自动入侵响应系统模型(AIRSDT, automated intrusion response system model based on danger theory),该模型首先对网络入侵或攻击进行实时危险评估,实时定量计算各类攻击和总体网络危险强度,然后据此自动调整入侵响应策略,解决了目前自动入侵响应研究中难以判断真正“危险”的入侵或者攻击行为的问题,从而降低了入侵响应次数和响应综合代价,理论分析和实验结果均表明,AIRSDT为自动入侵响应系统研究提供了一种有效的新方法。
2 模型理论
定义论域 D={0, 1}l,l为正整数,抗原集合Ag⊂D,自体集合 self⊂Ag,非自体集合Nonself⊂Ag, 有 Self∪Nonself=Ag,Self∩Nonself=Ø,其中Ag表示通过从网络IP数据分组中提取的IP地址,端口号或协议类型等网络事务特征的二进制表示,Self集为正常网络服务事务,Nonself集为来自网络的攻击。
用四元组<d, age, count, s>来描述免疫检测器集合B,其中d为抗体基因,d∈D,age为抗体年龄,age∈N,count为匹配数,count ∈N,s为模拟“危险理论”,检测器受到攻击后的“危险性”,s ∈R,N为自然数集合,R为实数集合。免疫检测采用海明距离、欧式距离、r-连续比特(r-contiguous bites)匹配函数[13]等计算方式。记忆检测器集Mb为不与自体匹配且与抗原匹配数不小于β的免疫检测器组成。定义成熟免疫检测器集合Tb,由不与自体匹配且与抗原匹配数未超过匹配数阈值β的免疫检测器组成,β ∈N。类似地,用二元组<d, age>定义未成熟免疫检测器集合 Ib,Ib由抗体基因库产生以及随机生成。Ib在通过自体耐受,通过α个耐受周期并删除那些识别自体抗原的未成熟细胞后,成为成熟免疫细胞,α ∈N。
AIRSDT首先对入侵或攻击行为进行检测并评估,实时定量计算出主机和网络所面临的总体危险和各类攻击危险,然后根据具体危险数值对网络入侵或攻击行为进行入侵自动响应或进行响应回滚。
2.1 入侵实时危险评估
对一个输入的抗原集合Ag,分δ代(δ为正数)进行训练,每代选出一定数量的抗原组成sAg抗原集合,通过B集合的检测把它分类为自体和非自体。具体过程分为以下3个阶段。第一阶段为0时刻到一个耐受期α结束的时刻,需要定义初始的自体集合Self(0)和未成熟细胞集合Ib(0),后者经前者耐受后成为成熟细胞。第二阶段从α+1时刻到记忆细胞产生的时刻,为自学习阶段,成熟细胞通过克隆选择产生能识别大量不同非自体抗原的记忆细胞,而通过检测被分类为自体的抗原最后送给未成熟细胞进行耐受。第三阶段从记忆细胞产生到系统终止,免疫系统各部件产生完毕,进行实际环境中的检测:记忆细胞检测,成熟细胞对剩下抗原的检测,最后未成熟细胞以剩余抗原为自体进行耐受[12]。
每个记忆细胞对应检测某种攻击,主机或网络中的记忆细胞对检测到的入侵或者攻击抗原进行实时危险评估。从时间t-1到t时刻的单位时间内,对每个记忆细胞x,如果与某个抗原g相匹配,即入侵或攻击抗原,其危险值s按式(1)增加。如果检测到多个同样抗原,则按式(1)对其危险数值将进行累计计算,表明该类攻击威胁在持续增加,其中η1(>0 的常数)为初始的危险数值,η2(>0 的常数)模拟奖励因子。
反之,如果该记忆检测器在该时间间隔内没有检测到入侵或攻击抗原,则其危险性按式(2)进行计算。
设危险指标0≤rk(t)≤1为主机k在t时刻所面临的危险:rk(t)=1,表明当前系统极度危险;rk(t)=0,表明当前系统没有危险。rk(t)值越大,表明当前系统面临的危险越高。考虑到各种主机的资产权重以及各类攻击的危险性不一样,设定μi表示第i类攻击的危险性,对于主机k,t时刻面临的第i (1≤i≤I)类网络攻击的网络安全危险rk,i由式(3)进行计算:
对于某个主机k,t时刻整个主机的整体网络危险rk(t)通过式(4)进行计算:
对整体网络,其面临的第 i类攻击的整体网络危险 Ri(t),由所包含主机k(1≤k≤K)的分类危险及其资产权重ωk以及所包含的子网n(1≤n≤N)的分类子网危险 Rn,i和资产权重ξn按式(5)进行加权计算,而其中的子网还可以保护下一级子网,依此类推。
类似地,整个网络系统的整体安全危险R(t),由主机的整体危险rk、资产权重ωk以及所包含子网的整体网络危险Rn(1≤n≤N)和资产权重ξn进行计算,如式(6)所示。
2.2 自动入侵响应与回滚
自动入侵响应取决于2个条件,即网络实时危险与攻击强度。当网络实时危险低于给定阈值时,检测到的一些无关报警信息和虚假警报被忽略,不进行响应,对于检测的一些攻击信息,也通过网络实时危险评估关联起来,根据具体的网络实时危险进行响应;而攻击强度条件大于 0,则是为了避免该时间段没有检测到攻击,而由于前一时间段遭受攻击后,网络实时危险数值较高,但现在攻击已经停止,这种情形则不需要响应。
式(7)用于描述主机中入侵响应的产生,主要来自2个方面:对主机 k,当主机的整体危险 rk(t)大于kθ(0<kθ<1),并且主机遭遇所有的攻击(假设主机中包含了i类攻击)的攻击强度大于Mk;当主机遭遇的第 i类攻击的网络实时危险 rk,i(t)大于 δk,i(0<δk,i<1),且主机遭遇的该类攻击的攻击强度大于Nk,i。
这2个方面所对应的具体意义是,如果主机的整体危险 rk(t)及被攻击强度分别超过了给定阈值,表明主机遭遇所有攻击的危险程度已经影响了主机的安全运行;而主机遭遇的某类攻击的网络危险rk,i(t)且被攻击强度分别超过了给定阈值,表明主机检测到同类及变种网络攻击已经具有“危险”。
对于整个网络,响应动作来自2个方面:当网络的整体危险 R(t)大于 θ’(0<θ’<1),并且网络中遭遇所有的攻击(假设网络中包含了i类攻击)的攻击强度大于 M;当网络遭遇的某类攻击的网络危险 Ri(t)大于 δi’(0<δi’<1),并且网络中遭遇的该类攻击(第i类攻击)的攻击强度大于Ni,具体定义如式(8)所示。
类似地,这2个方面所对应的具体意义是,如果网络的整体危险R(t)且被攻击强度分别超过了给定阈值,表明网络遭遇所有攻击的危险程度已经影响了网络的安全运行;而网络的遭遇的某类攻击的网络危险 Ri(t)及被攻击强度分别超过了给定阈值,表明网络检测到同类及变种网络攻击已经具有“危险”。
在AIRSDT模型中,对于主机,只有在主机遭遇的整体网络危险和某类攻击危险,及被攻击强度分别大于给定的阈值的时候才进行入侵响应;而对于整个网络,只有在网络遭遇的整体网络危险和某类网络攻击危险,以及遭遇攻击的攻击强度大于给定的阈值的时候才进行入侵响应。由于模型通过计算网络、主机以及分别的分类网络攻击的总体网络危险和攻击强度来判断是否进行自动响应,因此模型能较好地解决Wenke L等提出的成本敏感模型[4]中难以应对协同攻击的问题。
Curtis对所有响应方式进行了概括,并将响应方式分为基于主机的和基于网络的响应方式[3],Curtis列出的11种基于网络的响应方式,结合其他文献提出来的6种响应方式,另外本文提出6种响应方式,较全面的自动入侵响应方式如表 1所示。
在全部响应方式中,1~4,12~13,17的响应措施比较温和,8~11,14,16,20的响应措施比较严厉,其余的响应措施介于两者之间。其中 1~4,12~13,21~22的响应措施属于被动方式,其他属于主动方式。8~11,14~15的响应方式一般受到法律等因素的约束,而 5~7,14~16,20的方式能有效地阻断攻击。
AIRSDT根据网络或主机所面临的定量总体网络危险进行自动响应,网络危险程度越高,响应策略就越严厉,反之响应策略相对温和。在本文实验中,根据具体网络危险所采取的响应策略如表 2所示,从表中同时可看出,对所有的攻击,AIRSDT模型均采取了记录该安全事件的响应方式,另外在网络危险高于0.1时,AIRSDT均产生报警信息。在实际过程中,可根据网络安全需要来设定具体的响应策略。
表1 基于网络的入侵响应方式
表2 网络危险及建议采取的响应策略
自动响应模型根据网络危险情况作出响应策略,并采用消息机制的方式,将具体的自动响应策略发送给执行响应策略的主机或者网络,其中发送的响应消息Message为一个5元组,如式(9)所示。对上述22种响应方式,对应操作Action和相应的回滚操作Action如表3所示,其中的字符“Φ”表示该操作为空操作。
在AIRSDT模型执行自动入侵响应策略后,如果网络或者主机的网络危险呈现上升的趋势,表明网络或者主机所遭遇网络危险越来越大,AIRSDT将采取更加严厉的响应措施,避免信息系统进入更加“危险”的状态,从而确保信息系统运行安全。
表3 响应操作及相应回滚操作
对于主机,式(10)对主机进行再次响应的过程进行了描述,其中Response (t+Δt)表示主机在t+Δt时刻再次进行响应,表明由于主机遭遇到更加严重的攻击,系统将采取更加严厉的响应措施。
类似地,对于网络,式(11)对网络进行再次响应的过程进行了描述,其中Response’(t+Δt)表示网络在t+Δt时刻再次进行响应,表明由于网络遭遇到更加严重的攻击,系统将采取更加严厉的响应措施。
当网络危险低于给定的危险阈值后,AIRSDT则自动撤销所采取的入侵响应策略,以免影响正常的网络服务。
对于主机,式(12)对主机进行自动响应回滚的过程进行了描述,其中 Rollback(t+Δt’)表示主机在t+Δt’时刻进行响应回滚[8],μk表示主机所面临整体危险进行自动响应回滚的阈值,而ωk,i表示主机对第i类攻击危险进行自动响应回滚的阈值。
对于网络,式(13)对网络进行自动响应回滚的过程进行了描述,其中 Rollback’(t+Δt’)表示网络在t+Δt’时刻进行响应回滚,μ’表示网络或者子网所面临整体危险进行自动响应回滚的阈值,而ωi’表示网络对第 i类攻击危险进行自动响应回滚的阈值。
对于自动响应回滚策略,同样采用消息机制的方式,如式(9)所示,将要执行的自动响应回滚策略发送给具体执行的主机或者网络。
由于AIRSDT模型通过计算出实时网络危险和被攻击判断是否进行响应,因此具有响应速度较快的优点,对拒绝式服务具有一定的抵抗能力;另外,可以与防火墙很便捷实现联动,具有协同性较强的优点;最后,在网络实时危险低时,可以自动进行响应回滚,因此具有资源利用率高等特点。
3 仿真实验
实验在广州大学信息安全研究所的网络安全实验室进行,实验环境为100M的局域网,其中有计算机20台,通过一个C类IP地址202.192.87.*连接到Internet,服务器的操作系统为Red Hat 9.0,服务器提供WWW,E-mail以及FTP服务,抗原定义为定长为从IP分组中提取的包含IP地址、端口号、协议类型、数据分组内容等网络事务特征的128位二进制字符串。
3.1 自动入侵响应实验
为验证入侵响应子模型的有效性,对网络进行了模拟的smurf攻击实验,其中网络整体危险响应阈值和分类攻击响应阈值θ’和δi’均分别设定为0.4。图1和图2分别给出了正常服务情况、通过AIRSDT进行入侵响应以及没有响应情况下3个状态下的网络流量和CPU利用率的对比情况。
图1 3个状态下的网络流量对比
图2 3个状态下的CPU利用率对比
从图1可看出在,从0s到12s之间,在没有进行入侵响应情况下,受网络攻击的影响,网络流量持续增加,相应图2中CPU利用率也随之增高,而从12s到20s之间,随着攻击强度的继续增加,网络流量持续增高,相应图2中CPU利用率也持续增高。而在进行入侵响应的情况下,网络流量和CPU利用率虽然都有所增加,但都比较稳定。
对照图1和图2看出,对AIRSDT进行自动响应与不进行响应情况进行比较,进行自动响应后的网络流量要比不进行响应流量小很多,CPU利用率要低出很多,但均比正常情况下略大,这是因为进行响应后,发送响应消息增加了网络通信量,而进行响应处理也略微提高了CPU利用率。
实验结果显示,AIRSDT通过自动入侵响应,有效减小了网络流量,并降低了CPU利用率。
3.2 同类响应模型对比实验
为证明AIRSDT有效降低了入侵响应代价,将AIRSDT与RARS模型[8]在入侵响应次数,以及响应代价等进行综合比较,RARS模型与自动入侵响应模型相比,已较好地降低了响应代价。
安排网络安全专业人员对网络进行一天的模拟攻击,图 3给出了检测到的网络攻击强度与AIRSDT的网络危险曲线,其中的危险曲线是传统IDS和已有入侵响应系统均不具有的功能,而A、B、C 3个点为系统的自动入侵响应点。对图3进行分析,从 8:30~9:30之间,系统遭遇了 portscan攻击,尽管攻击强度很大,但整体危险数值并不高,只有 0.098,但检测到的 portscan攻击危险数值为0.825,高于0.4,因此系统在A点进行了入侵响应。在11:00~11:30之间,系统遭遇了sshtrojan攻击,尽管攻击强度比较小,但由于该攻击运行攻击者登录到受害主机,系统危险数值迅速增大到 0.488,故系统在 B点进行了入侵响应。而在 16:30~17:00之间,系统遭遇了appache2和smurf攻击,这些攻击属于资源耗尽型攻击,系统实时危险增到 0.7,因此系统在C点进行了入侵响应。
图3 网络攻击强度与危险曲线
入侵响应系统中的代价类型包括响应撤销代价RRCost、操作代价OCost、响应代价RCost、损失代价为Dcost,设入侵响应系统R的期望综合代价为 TCost(R),TCost(R)为所有代价的总和,入侵事件类型集合为E,则得到:
各类响应代价的量化是一个难点,本实验中结合了Wenke L提出[4]的方法,另外将AIRSDT模型与RARS进行响应次数n,以及各类响应代价的比较,得到的结果如表4所示。
表4 入侵响应次数及响应代价比较
表4的实验结果表明,AIRSDT与RARS模型进行比较,由于AIRSDT能够实时准确计算出系统面临的“真正”危险,并进行自动响应,这样不仅降低入侵响应的次数,提高了入侵响应的质量,而且大大降低了入侵响应的综合代价。
4 同类研究对比
在自动入侵响应研究中,如何判断整个网络系统所面临的总体危险和各类攻击的危险情况,判断真正具有“危险”行为的网络入侵或攻击行为,进行自动入侵响应一直是研究中一个比较难以解决的问题,本文在网络危险评估实时定量计算研究基础上,提出了一种根据“危险”的自动入侵响应系统模型AIRSDT,表5给出了AIRSDT模型与引言中一些模型进行的比较。
从表5可看出,由于当前已有的入侵响应模型无法对系统面临的整体危险进行计算,所指定的响应策略只能被预先静态指定,而AIRSDT结合了对系统整体网络危险进行实时定量计算方法,从而能根据“危险”情况进行响应决策,自动调整入侵响应策略进行响应回滚策略,这样不但能够降低响应次数,而且达到了降低响应代价的目的,因此,AIRSDT模型具有良好的自适应性。
基于网络危险的自动入侵响应技术属于积极主动的网络安全防御技术,当系统面临较高的网络危险时候,系统可以采用比较严厉的响应策略,例如断开入侵者连接或者攻击入侵者,与已有自动入侵响应技术相比较,由于AIRSDT能准确实时定量计算系统所面临的危险并自动调整响应策略,所以AIRSDT是对已有自动入侵响应技术的突破,对克服传统网络安全信息系统的技术缺陷,具有一定的理论意义和实际应用价值。
表5 自动入侵响应同类研究对比
5 结束语
本文首次将生物免疫系统中的危险理论应用到自动入侵响应系统的研究中,提出了一种新的自动入侵响应系统模型AIRSDT,AIRSDT根据网络危险程度自动调整响应策略,使得网络信息系统只对具有“危险”的网络入侵或者攻击行为进行响应,这样既保证了系统的运行性能,又大大降低了自动入侵响应系统的综合代价,从而提高了系统运行的自适应性,但是,根据网络信息系统重要性程度,所采取的自动入侵响应策略有待进一步的完善。
[1] 段雪涛, 贾春福, 刘春波. 基于层次隐马尔科夫模型和变长语义模式的入侵检测方法[J]. 通信学报, 2010, 31(3): 109-114.DUAN X T, JIA C F, LIU C B. Intrusion detection method based on hierarchical hidden Markov model and variable-length semantic pattern[J]. Journal on Communications, 2010, 31(3): 109-114.
[2] FISCH E A. Intrusion Damage Control and Assessment: a Taxonomy and Implementation of Automated Responses to Intrusive Behavior[D].Texas A&M University, College Station, TX, 1996.
[3] CURTIS A C. A methodology for using intelligent agents to provide automated intrusion response[A]. Proceedings of the IEEE Systems,Man, and Cybernetics Information Assurance and Security Workshop[C]. New York, USA, 2000. 110-116.
[4] WENKE L, WEI F, MATTHEW M, et al. Toward cost-sensitive modeling for intrusion detection and response[J]. Journal of Computer Security, 2002, 10(1/2): 5-22.
[5] WU Y S, FOO B, MAO Y C, et al. Automated adaptive intrusion containment in systems of interacting services[J]. Computer Networks,2007, 51(5): 1334-1360.
[6] MU C P, LI Y. An intrusion response decision-making model based on hierarchical task network planning[J]. Expert Systems with Applications, 2010, 37(3): 2465-2472.
[7] CUPPENGS B N, CUPPENS F, AUTREL F, et al. An ontology-based approach to react to network attacks[J]. International Journal of Information and Computer Security, 2009, 3(3): 280-305.
[8] 张剑, 龚俭.可回卷的自动人侵响应系统[J]. 电子学报,2004, 32(5):769-771.ZHANG J, GONG J. Rollbackable automated intrusion response system[J]. Acta Electronica Sinica, 2004, 32(5): 769-771.
[9] 穆成坡, 黄厚宽, 田盛丰. 基于模糊认知图的自动入侵响应决策推理机制[J]. 北京交通大学学报, 2005, 29(2): 12-16.MU C P, HUANG H K, TIAN S F. Fuzzy cognitive maps for decision supporting automatic intrusion response mechanism[J]. Journal of Beijing Jiaotong University, 2005, 29(2): 12-16.
[10] 吴姚睿, 刘淑芬. 基于攻击群模型的协同入侵的响应方法[J]. 电子学报, 2009, 37(11): 2416-2419.WU Y R, LIU S F. A response method for cooperative intrusions based on the attack group model[J]. Acta Electronica Sinica, 2009, 37(11):2416-2419.
[11] LI T. Dynamic detection for computer virus based on immune system[J]. Science in China, Series F: Information Science, 2008,51(10):1475-1486.
[12] 李涛. 计算机免疫学[M]. 北京:电子工业出版社, 2004.LI T. Computer Immunology[M]. Beijing: Publishing House of Electronic Industry, 2004.
[13] FORREST S, PERELSON A, ALLEN L, et al. Self-nonself discrimi-nation in a computer[A]. IEEE Computer Society Symposium on Research in Security and Privacy, Proceedings[C]. Los Alamitos, USA,1994. 202-212.
[14] HOFMEYR S, FORREST S. Architecture for an artificial immune system[J]. Evolutionary Computation, 2000, 8(4): 443-473.
[15] MATZINGER P. The danger model: a renewed sense of self[J]. Science, 2002, 296(5566): 301-305.
[16] ZENG J Q, LIU X J, LI T, et al. A self-adaptive negative selection algorithm used for anomaly detection[J]. Progress in Natural Science,2009, 19(2): 261-266.
[17] 张峰. 基于策略树的网络安全主动防御模型研究[D]. 成都: 电子科技大学, 2004.ZHANG F. Policy Tree Based Proactive Defense Model for Network Security[D]. Chengdu: University of Electronic Science and Technology, 2004.
[18] 王璐, 秦志光. 业务蜜网技术与应用[J]. 计算机应用, 2004, 24(3):43-45.WANG L, QIN Z G. Technology and application of production honeynet[J]. Computer Applications, 2004, 24(3): 43-45.