一种基于免疫的入侵检测关联报警模型*

2013-09-07 02:52彭凌西曾金全刘才铭
电子技术应用 2013年7期
关键词:报警危险规则

彭凌西,杨 进,胡 晓,曾金全,刘才铭

(1.广州大学 计算机科学与教育软件学院,广东 广州 510006;2.乐山师范学院 计算机学院,四川 乐山 614000;3.广州大学 机械与电气工程学院,广东 广州 510006;4.电子科技大学 计算机科学与工程学院,四川 成都 610054)

现有的入侵检测系统中存在虚假报警、报警量巨大、不相关报警多等问题,极大地限制了它的应用。因此,报警信息的关联是目前入侵检测领域一个重要的发展方向。在这些研究中,HU W M等[1]提出了一种基于AdaBoost算法通过机器学习进行报警的方法。GIACINTO G等[2]提出了一种基于多个分类系统的方法,降低了误报率并提高了检测率。TSANG C H等[3]提出了一种基于基因和模型规则的方法,取得了较好的检测率,并降低了误报率。SHON T等[4]提出了一种基于支持向量机以及遗传算法的混合异常检测算法。刘利军等[5]提出了一种基于二级决策进行报警过滤从而消除误报、滥报问题的方法,设计实现了一种基于报警缓冲池的报警优化过滤算法。肖云等[6]提出了一种基于粗糙集、支持向量机理论的过滤误报警的方法。穆成坡等[7]提出了一种基于模糊综合评判的方法来处理入侵检测系统的报警信息、关联报警事件,并引入有监督的确信度学习方法,通过确信度来对报警信息进行进一步的过滤。

总体说来,现有绝大多数入侵检测关联模型或方法都是在所有的事件发生后再对所有的事件进行报警关联分析,相当于“事后诸葛亮”。另外,这些模型或算法难以判断或计算所面临的网络危险,因此实际应用中受到了一定的限制。目前,超过90%商业运营的入侵检测系统都是在Snort检测引擎的基础上进行二次开发而来。尽管Snort获得了巨大的成功,但作为通过攻击特征进行检测的入侵检测系统,Snort存在传统入侵检测系统的缺陷。

目前,基于人工免疫AIS(Artificial Immune System)的网络安全技术具有多样性、自适应、鲁棒性等特点,并被认为是一条非常重要且有意义的研究方向[8]。参考文献[8]依据人体发烧时抗体浓度增加的原理,提出了一种基于免疫的网络安全危险检测模型。该方法能对网络系统所面临的攻击进行准确的实时危险评估,被证实了为网络安全风险在线检测提供了一种有效的新途径。基于人工免疫原理,本文提出一种基于Snort的入侵检测关联报警模型(A Snort-based Associated Intrusion Alarm model,SAIM),理论分析和实验结果均表明,SAIM模型为网络入侵关联报警提供了一种有效的新途径。

1 理论模型

在介绍模型前,首先定义模型中使用的一些名词、符号以及一些数学描述。定义所有ASCII字符构成集合A,Snort规则体集合RB由从规则的规则头以及规则选项中提取的IP地址、端口号、协议类型或数据包内容等网络事务特征的字符串,即由<IP源地址+源端口+IP目的地址+目的端口+协议类型+数据包内容+…+数字模式测试+偏移量调整>等构成(详见组成Snort规则简介)规则号和规则分类号另见定义(2)),其中‘+’为字符串的连接运算,l为自然数,其大小取决于规则长度。

定义Snort中所有规则构成集合RS,N为自然数集合,其中r表示规则体,id和cid分别表示该规则的规则号和攻击分类号,如下式所示:

用四元组<rs,s,step,count>来描述SAIM模型中的记忆细胞B,如式(3)所示,其中rs表示规则集RS中的规则,s为参考文献[9]中定义的记忆细胞抗体浓度数值(其计算过程详见1.2章节),step为记忆细胞抗体浓度的衰减步长,count为匹配数,N为自然数集合,R为实数集合,对于其中的衰减步长step(step≤λ,λ为抗体浓度的衰减周期,λ∈N)。rs、s、step和count又称为记忆细胞的域。为引用方便,定义记忆细胞x的下标运算符“.”。

1.1 规则初始化过程

在Snort初始化时,首先依次读取出所有的规则号,并将其视为记忆细胞,分配记忆细胞空间,并赋予初始的抗体浓度、衰减变量、规则号以及攻击分类号。

1.2 抗体浓度迭代计算

记忆细胞如果检测到匹配的一个入侵或攻击抗原(网络数据包),其抗体浓度数值按式(4)增加,同时将衰减步长赋值为0,所检测到的抗原数按式(6)进行增加。该数值越大,表明遭遇到的该种攻击的攻击强度就越大。

式(4)中,η1(>0的常数)为初始的抗体浓度数值,η2(0<η2<1)为模拟奖励因子(监视遭到连续类似的网络攻击)。如果一记忆细胞匹配被激活,其危险就按照式(4)增加。记忆细胞遇到抗原而克隆,则其相应的抗体浓度数值将进行累计,表明威胁在持续增加。反之,在检测到网络数据包后,如果记忆检测器没有检测到与之匹配的入侵或攻击抗原,则其抗体浓度按式(7)衰减,并将其衰减步长按式(8)增加1。

1.3 主机实时危险计算

本文采用的方法是在Snort对网络攻击分类的基础上,将所有这些攻击分类进一步按照林肯实验室方法划分五大类攻击:拒绝服务攻击DOS(Denial of Service)、探测攻击PROB(Probing)、远程用户到本地的非授权访问R2L(Remote to Local User)和非授权获得超级用户权限攻击U2R(User to Root)以及数据(Data)[9]。

设危险指标0≤rm(t)≤1为主机m(1≤m≤M)在t时刻所面临的危险,且rm(t)=1表明当前系统极度危险;rm(t)=0表明当前系统没有危险。rm(t)值越大,表明当前系统面临的危险越高。考虑到各种主机的资产权重以及各类攻击的危险性不一样,设定μi表示第i类攻击的危险性权重,则主机m所面临的第i(1≤i≤I)类网络攻击的网络安全危险rm,i可由下式进行计算:

某主机m在t时刻的整体网络危险可通过下式进行计算:

在主机实时危险计算过程中,先统计出每类攻击的总危险性,然后与对应的该类攻击的危险权重进行乘积和运算,据此分别计算出主机的分类攻击和主机整体危险性。

1.4 危险报警模型

基于实时网络的“危险”报警模型依据2个条件进行报警,即网络实时危险与攻击强度。对主机中报警信号的产生,主要来自2个方面:对主机m,(1)主机的整体危险rm(t)大于γ1(0<γ1<1),并且主机遭遇的所有的攻击(假设主机中包含了I类攻击)的攻击强度大于n;(2)主机遭 遇 的 某 类 攻 击 的 网 络 危 险rm,t(t)大 于ω1,i(0<ω1,i<1),并且主机遭遇的该类攻击(第i类攻击)的攻击强度大于Ni。对于检测的一些报警信息,例如入侵者对所有端口进行的扫描探测活动,当网络危险达到一定数值时,模型就进行报警,SAIM将所有的报警信息关联起来,这有助于解决当前入侵检测系统模型中海量的报警信息关联的问题。

2 报警实验

为证明SAIM能有效减少虚假警报、提高报警质量,采用1999年DARPA入侵检测系统测试数据集[9]对模型进行了测试。该数据集是麻省理工学院的林肯实验室在实际网络环境中进行攻击而产生的真实数据,用于评估入侵检测系统的性能。DARPA 1999年评测数据包括覆盖了Probe、DoS、R2L、U2R和Data等五大类攻击,是目前最为全面的攻击测试数据集。测试过程中使用的Snort规则库中有5 991条规则,采用第4周周五为试验数据。

图1给出了Snort在检测过程中的报警数。其中总报警数3 496条,虚警2 814条(80.5%),真实报警682条(19.5%)。采用SAIM模型,当主机总体实时危险报警阈值取值为0.3时,报警数共20个,虚警率为45%,检测结果表明了本文所提出的报警模型在减小虚假报警、合并同类无关报警、提高报警质量上是可行的。

图1 虚警实验中的报警次数对比

实验结果表明,SAIM模型能实时定量地计算出主机当前所面临攻击的类别、数量、强度及危险数值等;另外,模型根据检测的网络实时危险强度进行报警,有助于减小入侵检测的误报率和报警数量,从而提高报警质量。

与同类报警相关研究[1-7]相比,本文所提出的报警方法不需要先验报警知识训练,更不是事后根据所有的报警记录来进行分析,同时可查看主机和网络当前所面临的攻击类别、数量、强度及具体的网络实时危险数值数据,这有助于网络安全管理员掌握实时的网络安全态势,因此本文所提出的方法具有一定的实用价值。

[1]HU W M,HU W,MAYBANK S.AdaBoost-based algorithm for network intrusion detection[J].IEEE Transactions on Systems Man and Cybernetics Part B-Cybernetics,2008,38(2):577-583.

[2]GIORGIO G,ROBERTO P,MAURO D,et al.Intrusion detection in computer networks by a modular ensemble of one-class classifiers[J].Information Fusion,2008,9(1):69-82.

[3]TSANG C H,KWONG S,WANG H L.Genetic-fuzzy rule mining approach and evaluation of feature selection techniques for anomaly intrusion detection[J].Pattern Recognition,2007,40(9):2373-2391.

[4]SHON T,MOON J.A hybrid machine learning approach to network anomaly detection[J].Information Sciences,2007,177(18):3799-3821.

[5]刘利军,怀进鹏.一种IDS报警过滤算法及实现架构研究[J].高技术通讯,2005,15(6):1-4.

[6]肖云,韩崇昭,郑庆华,等.基于粗糙集-支持向量机理论的过滤误报警方法[J].电子与信息学报,2007,29(12):3011-3014.

[7]穆成坡,黄厚宽,田盛丰,等.基于模糊综合评判的入侵检测报警信息处理[J].计算机研究与发展,2005,42(10):1679-1685.

[8]LI T.An immunity based network security risk estimation[J].Science in China Series F-Information Sciences,2005,48(5):557-578.

[9]HAINES J W,LPPMANN R P,FRIED D J,et al.DARPA intrusion detection system evaluation:design and procedures[R].Lexington:MIT Lincoln Laboratory,1999.

猜你喜欢
报警危险规则
撑竿跳规则的制定
数独的规则和演变
LKD2-HS型列控中心驱采不一致报警处理
喝水也会有危险
让规则不规则
TPP反腐败规则对我国的启示
2015款奔驰E180车安全气囊报警
拥挤的危险(三)
死于密室的租住者
奔驰E260车安全气囊报警