一种基于关联规则分类的网络入侵检测方法

文档序号:9551317阅读:702来源:国知局
一种基于关联规则分类的网络入侵检测方法
【技术领域】
[0001] 本方法涉及网络入侵检测系统领域,尤其涉及到一种基于关联规则分类的网络入 侵检测方法。
【背景技术】
[0002] 入侵检测通过收集和分析网络行为、安全日志、审计数据、其它网络上可以获得的 信息以及计算机系统中若干关键点的信息,检查网络或系统中是否存在违反安全策略的行 为和被攻击的迹象。它对于网络系统安全发挥着非常重要的作用,是防火墙的重要补充,入 侵检测能够在不影响网络系统性能指标的情况下完成对网络系统的保护。
[0003]将数据挖掘技术应用于网络入侵检测已成为一个研究的热点,国内外已出现不 少这方面的研究成果,但仍存在如下一些不足和难点:多数数据挖掘的入侵检测系统集中 于异常检测或误用检测,而异常检测具有较高的误报率,误用检测具有较高的漏报率;目 前,多数系统属于准实时系统,不能及时对入侵做出检测并响应;面对不同的网络环境, 以及不断改变的入侵类型,当前的网络入侵检测系统缺乏自适应性。
[0004]将数据挖掘技术中的Apriori算法应用到入侵检测领域具有很强的理论基础,在 技术上具有可行性。Apriori算法提取的关联规则由频繁项集生成,规则具有很强的置信 度,分类结果精确度较高,很好地避免了异常检测高误报率和误用检测高漏报率的缺陷。

【发明内容】

[0005]本发明针对传统入侵检测系统的缺陷,提出了一种基于关联规则分类的网络入侵 检测方法,通过采用Apriori-index算法来处理大量网络连接数据,提高入侵检测的及时 性和准确性。通过在10%KDDCup99实验数据集上测试,对比其他入侵检测算法,该算法的 整体检测效果较优。
[0006] 本发明技术方案:
[0007] -种基于关联规则分类的网络入侵检测方法,该方法包括以下步骤:
[0008] 第1步、对国际标准数据集10%KDDCup99预处理,将预处理后的数据集分成训练 集和测试集两部分数据。
[0009] 第2步、采用改进的Apriori算法(Apriori-index)对选取的训练集中的网络连 接数据进行训练,提取到关联规则,将关联规则存放到关联规则库中,同时将关联规则库中 的关联规则展示出来。
[0010] 第3步、测试集中的每条网络连接数据逐条匹配关联规则库中关联规则,根据不 同关联规则的条件长度和网络连接类型分别计算权值,找出最大权值所对应的网络连接类 型即为最终分类得到的结果。
[0011] 第4步、保存第3步中分类结果,将上述分类过程和分类得到的结果展示出来;同 时为保证该方法良好的自学习特性,测试集的数据在根据关联规则分类得到具体的网络连 接类型后,训练集数据连同对应的网络连接类型重新加入到训练集数据中,为后续关联规 则提取提供新的训练集数据源,保证关联规则的动态更新。
[0012] 第1步中所述的数据集预处理包括以下步骤:
[0013] 将关联规则算法应用到入侵检测方法中,主要是一种以数据为中心的观点,对于 网络连接数据的采集处理不在本发明的考虑范围之内。本发明中以国际标准网络连接数据 集10%KDDCup99为例,以数据挖掘的思想为理论依据对入侵网络连接进行分类。
[0014] 第1. 1步、为每列数据添加位置参数。因为10%KDDCup99数据集中有大量相同 的数据,比如,"0"和"1",数据集中处于不同列的数据有不同的含义,而原始的Apriori算 法在处理数据集中不同列的相同数据项时将他们视为同样的数据,因此直接使用原始的 Apriori算法处理数据集会影响提取规则速度和分类结果的准确度。为避免出现以上问题, 需要在数据预处理阶段为每条网络连接数据的每个数据项添加位置参数。
[0015] 第1. 2步、采用交叉验证的方法选取经过第1. 1步预处理后的10%KDDCup99数 据集中60%的连接数据作为训练集,剩余的40%的连接数据作为测试集。由于改进后的 Apriori算法能够处理字符类型数据,同时数值类型的数据也能够视为字符类型数据,所以 无需对网络连接数据中的字符类型数据进行数值化和归一化处理。
[0016] 第2步所述采用Apriori-index算法提取关联规则需要经过以下步骤:
[0017] 第2. 1步、初始化最小支持度阈值Min_Support,最小置信度阈值Min_ Confidence。通过查阅文献资料和实验验证,最小支持度阈值和最小置信度阈值分别设定 为25%和78. 5%可以获得较高的分类准确度。初始化最小支持度阈值Min_Support= 25%,最小置信度阈值Min_Confidence= 78. 5%〇
[0018] 第2. 2步、找出所有的频繁项集。遍历训练集中的所有的网络连接数据,统计每个 属性值对应的连梓类型及其出现的颇度,形成候选项集合Q。在此基础上,根据支持度公式
[0019]
[0020] 计算支持度。其中Occur(X)表示训练集中所有网络连接数据中包含频繁项{X} 的数量,Count(D)表示训练集{D}中所有网络连接的数量。在候选项集合(^中删除支持 度低于最小支持度阈值Min_Support的候选项,剩余的候选项形成频繁1-项集L1;然后对 于每种网络连接类型,连接Q中的不同元素构成候选项集合C2,再次遍历训练集数据,根据 支持度公式计算C2中的每个候选项的支持度,删除候选项集合C2中支持度低于最小支持度 阈值Min_Support的候选项,剩余候选项形成频繁2-项集L2;按照网络连接类型,再连接 L2中的不同元素构成候选项集合C3,再次遍历训练集数据,计算(:3中的每个候选项的支持 度,删除支持度低于最小支持度阈值Min_Support的候选项,剩余的候选项形成频繁3-项 集L3;重复进行以上的遍历、删除和连接的步骤,直到没有新的候选项产生,所有的频繁项 集1,L2, ...,Ln)都已搜寻得到。其中,连接步骤和删除步骤分别严格满足连接定理和频 繁子集定理,即:若两个(k-l)_项集的前(k-2)个项相同,而最后一个项不同,则证明它 们可连接得到k-项集;若k-项集任意一个子集不是频繁项集,则该k-项集也不是频繁项 集。
[0021] 第2.3步、由频繁项集产生关联规则。对于第2.2步中得到的频繁项集 (LL2,…,Ln),频繁项集Q中每个频繁项1i中的连接类型用t,表示。如果(1「t,) -t, 的置信度大于最小置信度阈值Min_Confidence,则输出(li-tj) -tj。置信度的计算根据 置信度计算公式:
[0022]
[0023] 其中Support(AUB)和Support(A)分别表示频繁项{AUB}和{A}的支持度; 即置信度公式可化为:
[0024]
[0025] 找到的所有满足要求的(1ft,) -t,,即为关联规则。
[0026] 第2. 4步、将第2. 3步中得到的关联规则添加到关联规则库中,作为对测试集中未 知类型的网络连接数据测试分类的判断依据。
[0027] 第2. 5步、将关联规则库中的关联规则展示出来。10%KDDCup99数据集的数据量 较大,经过Apriori-index算法训练得到的关联规则非常多,关联规则在页面内显示会比 较混乱,所以关联规则展示页面进行适当的缩放,使关联规则清晰展示。
[0028] 第3步所述的分类过程需经过以下步骤:
[0029] 第3. 1步、读取测试集数据,对测试集中的每条网络连接数据按照关联规则分类, 统计分类结果。10%KDDCup99数据集中每条网络连接数据有41个属性数据项和1个连 接类型数据项,第2步中提取到的关联规则的条件部分包含有多个属性数据项,测试集中 的每条未知类型的网络连接数据按照提取的规则分类时,会有多条关联规则与之对应,所 以按关联规则分类需经过以下过程:
[0030] 第3. 1. 1步、对读取到的测试集中的一条连接数据,遍历整个关联规则库,统计并 记录匹配的关联规则民(例如"Vt,) -t,)中条件部分(Vt,)的长度,即统计关联规则 民条件部分(lftj)包含的属性数据项的数量Length1;
[0031] 第3. 1. 2步、分别计算匹配的η条规则中对应的结果部分t,的权值。按照 Apriori-index算法权值计算公式:
[0032]
[0033] 计算该条未知结果类型的测试数据在经过关联规则库中所有规则比对后匹配的 第j种网络连接类型\的权值。这主要是由于关联规则条件部分(lft,)的长度Length 越大,分类准确度越高,这样做能够同其他关联规则加以区分,提高分类结果的准确度。
[0034] 第3. 2步、输出分类结果:网络连接类型t。比较所有的权值,从中找出权值最高 的Weight(t),将分类结果(即网络连接类型t)输出。
[0035] 第4步所述的展示分类过程和分类得到的结果以及向训练集中添加分类后的测 试数据方法是:
[0036] 第4. 1步、测试数据展示。为将每条测试数据从读取直至分类完成过程展示出来, 将每条测试数据用运动的图形代表,图形的运动轨迹和颜色变化代表测试数据的分类过程 和分类得到的连接类型;
[0037] 第4. 2步、将测试过的网络连接数据与对应的网络连接类型添加到训练集中,保 证该方法能够自学习。考虑到实际网络状况的动态特性,一次训练所得的关联规则不能始 终代表网络的当前状况,在本方法中将每条分类后的测试数据连同其网络连接类型加入到 训练集中并再次训练,实时训练产生新规则并更新到关联规则库中。
[0038] 本发明具有以下优点:
[0039] 本发明首先为10%KDDCup99的41个属性数据项添加位置参数,按照交叉检验的 方法将其分成训练集和测试集。然后通过Apriori-index算法对训练集中的网络连接数据 训练提取关联规则。最后通过Apriori-index算法中的测试方法对测试集中未知类型的网 络连接数据分类,获得分类结果,并展示分类过程和分类结果,同时将测试集中的数据和对 应的分类结果导入到训练集中以实时更新训练集数据,产生新的关联规则,使本方法具有 良好的自适应性和自学习特性。该发明采用Apriori-index算法,有效避免了经典Apriori 算法处理10%KDDCup99数据集时的大量重复计算,大大加快了分类的效率,提高了网络连 接数据分类检测结果的准确度,降低了算法的时间复杂度,使本方法具有较强的稳定性。
【附图说明】
[0040] 图1是本发明基于关联规则分类的网络入侵检测方法的流程图。
【具体实施方式】
[0041] 下面结合附图对本发明的【具体实施方式】作进一步的详细说明。
[0042] 将关联规则算法应用到入侵检测中,主要是一种以数据为中心的观点,对于网络 连接数据的采集处理不在本发明的考虑范围之内。本发明中以国际标准网络连接数据集 10%KDDCUP99为例,以数据挖掘的思想为理论依据对入侵网络连接进行分类。
[0043]图1对一种基于关联规则分类的网络入侵检测方法进行了详细的步骤说明。本发 明提供的方法包括以下步骤:
[0044] 第1步、对国际标准数据集10%KDDCup99预处理,将预处理后的数据集分成训练 集和测试集两部分数据。
[0045] 第1. 1步、为每列数据添加位置参数。因为10%KDDCup99数据集中的数据中有大 量相同的数据,比如:"〇"和"l'l〇%KDDCUp99数据集中处于不同列的数据有不同的含义, 而原始的Apriori算法在处理数
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1