论文部分内容阅读
摘要: 异常入侵检测技术能够有效的保护计算机系统和网络免遭恶意活动的破坏。异常检测技术能够检测到新的攻击行为,是入侵检测系统发展的热点。但这种技术方法目前还不是很完备.首先介绍入侵检测的功能、通用模型及分类。然后回顾常用的几种异常入侵检测技术。最后列举当前异常检测系统所要面临的挑战。
关键词: 异常入侵检测;专家系统;机器学习
中图分类号:TP3文献标识码:A文章编号:1671-7597(2011)0320042-01
0 前言
入侵检测就是对企图入侵,正在进行的入侵或者已经发生的入侵进行识别的过程。所有能够执行入侵检测任务的系统,都可称为入侵检测系统。从数据分析手段来看,入侵检测可分为误用入侵检测和异常入侵检测。误用检测对比已知的攻击所构成的数据库中的数据和当前数据来发现入侵。异常检测是通过观察当前活动与历史正常活动之间的差异来发现入侵,被认为是入侵检测中最有发展前景的方法之一。
1 异常检测技术
异常入侵检测系统一般包括以下几个模块。
1)数据采集模块。本模块从被检测系统的网卡获取数据,并存储到特定的数据结构中,以备其他模块访问和使用。
2)数据训练模块。我们事先建立好正常(或异常)状态活动的训练模型并不断地进行更新。
3)数据检测模块。本阶段我们将用户当前的活动情况与上阶段的训练模型进行对比,如果发现了超过阈值的差异程度,则产生告警。
根据训练模型建立的手段来看,异常检测技术通常可以分为三类:基于统计分析、基于知识和基于机器学习。
1.1 基于统计分析的异常检测技术。该技术通常的做法是根据用户对象的活动为每个用户都建立一个用户特征轮廓表,通过比较当前特征与已建立的以前特征得到一个偏差,如果这个偏差大于设定的阈值,从而判断当前行为是否异常。用户特征轮廓表需要根据审计记录情况不断地加以更新。特征轮廓表中包含许多衡量指标。例如网络流量、每种协议的数据包数、ip地址等等,这些指标值可以根据经验值或一段时间内的统计值得到。在统计模型中常用的方法有:方差、马尔柯夫过程模型、时间序列分析。
统计分析技术由于是选取某段历史数据假设是正常的数据,其缺陷主要是假设统计模型的数据能正确的反映系统的正常数据,实际中往往很复杂。
1.2 基于知识的异常检测技术。专家系统是知识检测中应用最广泛的技术。专家系统的主要工作是把审计数据归类,一般按照下面三个步骤归类。第一步从训练数据中确定类别。第二步确定分类规则和分类程序以及所涉及的参数。第三步分类成程序根据分类规则确定审计数据的类别(入侵或正常)。
专家系统是根据规则来决定系统是否遭受入侵,因此产生规则的算法直接决定了专家系统性能的好坏。专家系统最显着的优势是可靠性强和灵活高效,最大的缺点就是很难开发高效的专家系统。
1.3 基于机器学习的异常检测技术。机器学习综合利用统计学、证据理论、神经网络、模糊集、粗糙集、进化计算等领域的方法,完成数据总结、概念描述、分类规则提取、数据聚类、相关性分析、偏差分析、序列模式发现等任务。
机器学习方法是用检测对象的正常行为实例样本进行学习机训练,一旦训练完成,就建立了该检测对象的正常行为特征轮廓;在检测中,将检测对象当前行为的特征度量输入学习机,学习机经过运算输出一个异常判别值,从而实现对检测对象的异常检测。
1.3.1 贝叶斯网络。贝叶斯网络是根据各个变量之间的概率关系建立的图论模型,因此可用贝叶斯方法解决人侵检测系统中的不确定知识.。实际应用中,网络中每个节点代表一种测度及其概率分布,对于根节点,概率分布是不依赖其他测度的,即是客观概率;对于子节点,它是以根节点为条件的条件概率,输入各测度的当前值后,该网络就能输出一个考虑到测度之间关系的综合异常评价意见。
1.3.2 马尔可夫模型。马尔可夫模型主要有两种不同的方法:马尔可夫链模型和隐马尔可夫模型。一个马尔可夫链就是由状态转移概率相关联的一系列状态变换,由此构成了该模型的拓扑结构。在初始的训练数据阶段,通过正常的系统行为得到概率。在随后的异常检测阶段,通过对检测行为序列评估得到一个数值(主要与概率相关)与我们事先设定的门限值比较判断是否发生入侵。而隐马尔可夫模型将状态及其转换隐藏,仅仅能看到其观察值。
1.3.3 神经网络。利用神经网络检测入侵的基本思想是用一系列信息单元训练神经元,通过训练和学习过程来修改网络互连权值,这样在给定一组输入后,就可能预测输出。
神经网络方法已被应用到创建用户配置文件,从先前的命令序列来预测下一个命令,以及确定入侵行为的流量模式等。神经网络不依赖于任何有关数据种类的假设,能处理噪声数据,实现简单,但神经网络拓扑结构的形成不稳定,且易陷于局部极小,学习时间长!而且对判断为异常的事件不能提供解释或说明信息。
1.3.4 模糊逻辑技术。模糊逻辑来源于模糊集理论。其主要研究近似推理。我们一般使用模糊变量来判别是否发生入侵。如果模糊变量在给定的范围内,则认为系统正常。模糊逻辑技术在端口扫描和探测被证明非常高效。但其较高的资源消耗率是我们目前亟待解决的问题。
1.3.5 遗传算法。遗传算法是计算数学中用于解决最优化的搜索算法,是进化算法的一种。遗传算法构成另一种类型的机器学习的技术,它能产生的分类规则或选择适当的功能或最佳参数的检测过程。
遗传算法是解决多目标优化问题的算法,对于求解最优化问题效率高。它的优点是灵活,不用事先了解系统的活动的先验知识,而缺点就是资源消耗率高。
1.3.6 聚类和孤立点检测。聚类技术就是将数据集根据给定的相似度或者距离进行归类。聚类算法的一般过程是选择一个点作为该簇的中心点,选择几个点就是分为几簇。然后新的数据点根据和这些中心点的邻近程度划分到那个簇中。最后某些点可能不属于任何簇,这些店被命名为离群点,代表检测过程中的异常活动。
聚类的数据来源于主机的审计记录,系统学习过程较慢,难于进行实时检测。
2 总结和展望
异常入侵检测技术尚没有完全成熟,其应用还有较大的局限性。这就需要我们不断探索研究,以便在不久的将来开发出一种完美的入侵检测系统。
参考文献:
[1]唐正军、李建华,入侵检测技术[M].北京:清华大学出版社,2004:7-28.
[2]宋连涛,基于异常的入侵检测技术研究[D].南京:河海大学计算机及信息工程学,2006.
[3]杨斌,基于聚类的异常检测技术的研究[D].长沙:中南大学,2008.
作者简介:
刘征(1978-),男,硕士,河南商业高等专科学校计算机系教师,研究方向 :计算机网络技术。
关键词: 异常入侵检测;专家系统;机器学习
中图分类号:TP3文献标识码:A文章编号:1671-7597(2011)0320042-01
0 前言
入侵检测就是对企图入侵,正在进行的入侵或者已经发生的入侵进行识别的过程。所有能够执行入侵检测任务的系统,都可称为入侵检测系统。从数据分析手段来看,入侵检测可分为误用入侵检测和异常入侵检测。误用检测对比已知的攻击所构成的数据库中的数据和当前数据来发现入侵。异常检测是通过观察当前活动与历史正常活动之间的差异来发现入侵,被认为是入侵检测中最有发展前景的方法之一。
1 异常检测技术
异常入侵检测系统一般包括以下几个模块。
1)数据采集模块。本模块从被检测系统的网卡获取数据,并存储到特定的数据结构中,以备其他模块访问和使用。
2)数据训练模块。我们事先建立好正常(或异常)状态活动的训练模型并不断地进行更新。
3)数据检测模块。本阶段我们将用户当前的活动情况与上阶段的训练模型进行对比,如果发现了超过阈值的差异程度,则产生告警。
根据训练模型建立的手段来看,异常检测技术通常可以分为三类:基于统计分析、基于知识和基于机器学习。
1.1 基于统计分析的异常检测技术。该技术通常的做法是根据用户对象的活动为每个用户都建立一个用户特征轮廓表,通过比较当前特征与已建立的以前特征得到一个偏差,如果这个偏差大于设定的阈值,从而判断当前行为是否异常。用户特征轮廓表需要根据审计记录情况不断地加以更新。特征轮廓表中包含许多衡量指标。例如网络流量、每种协议的数据包数、ip地址等等,这些指标值可以根据经验值或一段时间内的统计值得到。在统计模型中常用的方法有:方差、马尔柯夫过程模型、时间序列分析。
统计分析技术由于是选取某段历史数据假设是正常的数据,其缺陷主要是假设统计模型的数据能正确的反映系统的正常数据,实际中往往很复杂。
1.2 基于知识的异常检测技术。专家系统是知识检测中应用最广泛的技术。专家系统的主要工作是把审计数据归类,一般按照下面三个步骤归类。第一步从训练数据中确定类别。第二步确定分类规则和分类程序以及所涉及的参数。第三步分类成程序根据分类规则确定审计数据的类别(入侵或正常)。
专家系统是根据规则来决定系统是否遭受入侵,因此产生规则的算法直接决定了专家系统性能的好坏。专家系统最显着的优势是可靠性强和灵活高效,最大的缺点就是很难开发高效的专家系统。
1.3 基于机器学习的异常检测技术。机器学习综合利用统计学、证据理论、神经网络、模糊集、粗糙集、进化计算等领域的方法,完成数据总结、概念描述、分类规则提取、数据聚类、相关性分析、偏差分析、序列模式发现等任务。
机器学习方法是用检测对象的正常行为实例样本进行学习机训练,一旦训练完成,就建立了该检测对象的正常行为特征轮廓;在检测中,将检测对象当前行为的特征度量输入学习机,学习机经过运算输出一个异常判别值,从而实现对检测对象的异常检测。
1.3.1 贝叶斯网络。贝叶斯网络是根据各个变量之间的概率关系建立的图论模型,因此可用贝叶斯方法解决人侵检测系统中的不确定知识.。实际应用中,网络中每个节点代表一种测度及其概率分布,对于根节点,概率分布是不依赖其他测度的,即是客观概率;对于子节点,它是以根节点为条件的条件概率,输入各测度的当前值后,该网络就能输出一个考虑到测度之间关系的综合异常评价意见。
1.3.2 马尔可夫模型。马尔可夫模型主要有两种不同的方法:马尔可夫链模型和隐马尔可夫模型。一个马尔可夫链就是由状态转移概率相关联的一系列状态变换,由此构成了该模型的拓扑结构。在初始的训练数据阶段,通过正常的系统行为得到概率。在随后的异常检测阶段,通过对检测行为序列评估得到一个数值(主要与概率相关)与我们事先设定的门限值比较判断是否发生入侵。而隐马尔可夫模型将状态及其转换隐藏,仅仅能看到其观察值。
1.3.3 神经网络。利用神经网络检测入侵的基本思想是用一系列信息单元训练神经元,通过训练和学习过程来修改网络互连权值,这样在给定一组输入后,就可能预测输出。
神经网络方法已被应用到创建用户配置文件,从先前的命令序列来预测下一个命令,以及确定入侵行为的流量模式等。神经网络不依赖于任何有关数据种类的假设,能处理噪声数据,实现简单,但神经网络拓扑结构的形成不稳定,且易陷于局部极小,学习时间长!而且对判断为异常的事件不能提供解释或说明信息。
1.3.4 模糊逻辑技术。模糊逻辑来源于模糊集理论。其主要研究近似推理。我们一般使用模糊变量来判别是否发生入侵。如果模糊变量在给定的范围内,则认为系统正常。模糊逻辑技术在端口扫描和探测被证明非常高效。但其较高的资源消耗率是我们目前亟待解决的问题。
1.3.5 遗传算法。遗传算法是计算数学中用于解决最优化的搜索算法,是进化算法的一种。遗传算法构成另一种类型的机器学习的技术,它能产生的分类规则或选择适当的功能或最佳参数的检测过程。
遗传算法是解决多目标优化问题的算法,对于求解最优化问题效率高。它的优点是灵活,不用事先了解系统的活动的先验知识,而缺点就是资源消耗率高。
1.3.6 聚类和孤立点检测。聚类技术就是将数据集根据给定的相似度或者距离进行归类。聚类算法的一般过程是选择一个点作为该簇的中心点,选择几个点就是分为几簇。然后新的数据点根据和这些中心点的邻近程度划分到那个簇中。最后某些点可能不属于任何簇,这些店被命名为离群点,代表检测过程中的异常活动。
聚类的数据来源于主机的审计记录,系统学习过程较慢,难于进行实时检测。
2 总结和展望
异常入侵检测技术尚没有完全成熟,其应用还有较大的局限性。这就需要我们不断探索研究,以便在不久的将来开发出一种完美的入侵检测系统。
参考文献:
[1]唐正军、李建华,入侵检测技术[M].北京:清华大学出版社,2004:7-28.
[2]宋连涛,基于异常的入侵检测技术研究[D].南京:河海大学计算机及信息工程学,2006.
[3]杨斌,基于聚类的异常检测技术的研究[D].长沙:中南大学,2008.
作者简介:
刘征(1978-),男,硕士,河南商业高等专科学校计算机系教师,研究方向 :计算机网络技术。