基于数据挖掘的网络安全审计技术的研究(成文)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于数据挖掘的网络安全审计技术的研究
摘要:本文首先介绍了什么是数据挖掘技术和网络安全审计技术,然后在此基础上讨论了数据挖掘技术在网络安全审计技术中的一些基本应用算法,最后给出一个基本的利用数据挖掘技术实现的网络安全审计系统。
关键词:安全审计数据挖掘网络日志
网络发展越来越快,各行各业对网络的依赖也越来越强,网络安全也就越来越重要。而网络安全审计技术可以对各种安全问题进行有效监控和管理,在网络安全审计系统中,采用最普遍的是专家预先定义和数理统计的方法,而这两种方法都会有产生漏报和错报的现象,而且不能检测新的异常行为。因此,随着网络数据流量急剧增加和网络结构的日益复杂,采用何种技术对审计数据进行全面、准确和高速地分析成了研究热点,而数据挖掘技术在网络安全审计技术中的应用正是其中的主要方向。
一、数据挖掘技术
1.1数据挖掘的基本概念
数据库技术从诞生以来,就一直迅速的发展,而随着数据库技术和数据库管理系统的广泛应用,人们存储的数据也越来越多。猛增的数据背后隐藏着许多重要的信息,所有人都希望能够对这些数据进行更高层次的分析,以便更好地利用这些数据。而目前的数据库系统虽然可以高效地实现数据的录入、查询、统计等功能,但却无法发现数据中存在的关系和规则,无法根据现有的数据预测未来的发展趋势。缺乏挖掘数据背后隐藏的知识的手段,导致了“数据爆炸但知识贫乏”的现象。
另外,当前多数企业内部网络的数据状况是分散的,大量的用户操作形成的数据往往被存放在缺乏统一设计和管理的异构环境中,不易综合查询访问,两且还有大量的历史数据处于脱机状态,不能在线集中存储查询。因此,就需要用到数据挖掘技术。
数据挖掘是指从存储的大量数据中识别出有效的、新颖的、具有潜在用途及最终可以理解模式的高级处理过程。简单的说,数据挖掘就是从数据中发现肉眼难以发现的固定模式或异常现象,它遵循基本的归纳过程将数据进行整理分析,并从大量数据中提取出有意义的信息和知识。
1.2数据挖掘的实现过程
数据挖掘的实现过程主要包括以下几个处理步骤:
1.数据提取:根据要求从数据库中提取相关的数据,数据挖掘主要从这些数据中进行知识提取,在此过程中,需要利用一些数据库操作对数据进行处理。
2.数据预处理:对选择的数据进行再加工,检查数据的完整性及一致性,对其中的噪声数据进行处理,去除冗余数据,填补丢失的数据。
3.数据选择:从经过预处理的数据集中筛选出与分析目标无关或关系很小的属性,在此进行特征抽取。
4.数据变换:将数据变换或统一成适合挖掘的形式,如数据汇总。
5.数据挖掘:根据应用的要求,选择合适的数据挖掘算法及模型参数,建立数据挖掘模型,从数据中提取所需的知识,并以一定的形式展现出来。如决策树结构,关联规则集。
6.解释与评价:将挖掘的知识以用户可以理解的方式呈现给用户,并对所得的结构进行解释。包括对知识的一致性检查,模型的验证,识别知识的真正有趣的模式。
二、网络安全审计技术
当前网络中,来自网络内部的入侵和破坏变得愈发严重,各企业、部门亟需相应的监督体制监督不法员工,保障企业安全,而实现这个目标的主要方法就是网络安全审计技术。
从1980年,James P Anderson首次提出了利用系统日志信息进行安全审计的思想,国内外对网络安全审计技术的研究已经经过了30多年,主要提出了以下几种安全审计分析技术:
1、基于神经网络的网络安全审计技术:
神经网络由许多称为单元的简单处理元素组成。一个神经网络知识根据单元和它们权值间连接编码成网络结构。网络通过改变单元状态,改变连接权值,加入一个连接或者移去它们来指示一个事件异常。这种技术的主要不足是神经网络不能为它们找到的任何异常提供解释,导致用户无法确认事故的责任人。
2、基于专家系统的网络安全审计技术:
许多早期经典的安全审计模型都是采用专家系统,比如DIDS(分布式网络入侵检测系统)和CMDS就采用了由美国国家航空和宇宙航行局开发的CLIPS系统15J。这种技术的优点是把系统的控制推理从问题解决的描述中分离出去。这个特性允许用户使用类似if-then规则输入异常行为信息,然后输入事实,系统根据输入信息评估这些事实。这个过程不需要用户理解系统内部功能,但需要在审计系统运行之前,编写规则代码,这是一个非常耗时的工作。
3、基于代理的网络安全审计技术:
代理可以被看作是在网络中执行某项特定监视任务的软件实体。该系统通常分布式的运行在网络的主机上,其中监视器是审计系统的关键功能模块,一旦出现故障,其它转发器都不能正常提交结果;而且多个监视器的同一问题报告可能产生不同的安全审计结果。
4、基于免疫系统的网络安全审计技术.
这种技术的提出主要由于生物免疫系统和计算机系统保护机制之间有着相似性。免疫系统通过识别异常或者以前未出现的特征来确定入侵,其本质就是“自我/非自我”的决定能力。但是这种技术不能处理包括种族条件、身份伪装和策略违背等违规行为。
5、基于数据挖掘的网络安全审计技术:
数据挖掘的目的是从海量的数据中提取出有用的信息,非常适合当前网络安全审计的大数据量分析要求。网络安全审计系统中可以使用数据挖掘技术从大量的日志行为记录数据中抽象出有利于进行判断和比较的特征模型,并可以由这些用户行为特征模型判断出当前网络行为的性质。目前,国际上在这个方向上的研究很活跃。
三、用于网络安全审计的数据挖掘方法
在数据挖掘过程中,输入数据和对应的数据挖掘方法的选择,取决于具体的数据挖掘目标,而网络安全审计就是目标之一。在网络安全审计中,运用数据挖掘技术,可以利用统计、分类、聚类、关联、序列分析、群集分析等方法,对网络日志中大量的数据进行深层次分析和研究,揭示其本来的特征和内在的联系,使它们转化为网络安全检测所需要的更直接、更有用的信息。
1.分类算法
将一个数据集合映射成预先定义好的几类。这类算法的输出结果就是分类器,它可以用规则集或决策树的形式表示。用于安全审计时,可以先收集有关用户或应用程序的“正常"和“非正常"的审计数据,然后用分类算法得到规则集,用来预测新的审计数据属于正常还是异常行为。分类分析是监督式的机器学习方法。
2.关联分析算法
关联规则挖掘是指发现大量数据中项集之间有意义的相关联系。关联规则可以从海量的日志数据集中发现不同字段之间存在的关系,这些联系反映了用户的某些操作在一段时间内频繁出现的条件,清楚地反映了用户的行为模式。利用关联规则算法挖掘出合法用户的历史正常行为模式,将当前的行为模式与历史正常行为模式进行比较,从而可以分析出用户的潜在异常行为。
关联分析广泛的用于购物篮分析或者事物数据分析,它常用的有Apriori、AprioriTid、Fp-Growth等算法。
3.序列规则算法
序列规则与关联规则相似,其目的也是为了挖掘出数据之间的联系,它们的不同之处在于前者加入了时间的概念。序列规则算法旨在获取数据库记录之间在时间窗口中的关系。这类算法可以发现审计数据中的一些经常以某种规律出现的事件序列模式。
4、聚类分析算法
聚类分析就是将数据对象分组成多个类或者簇,划分的原则是在同一个类(簇)中的对象之间具有较高的相似度,而不同类(簇)中的对象差别较大。