基于安全审计的异常检测模型的设计

来源 :电脑知识与技术·学术交流 | 被引量 : 0次 | 上传用户:lyling0411
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:在安全审计的数据挖掘系统的基础上,提出一个异常检测模型,该模型通过关联分析提取正常行为的关联模式,根据属性的重要性定义每个行为模式,在给每个行为模式进行编码后,通过定义一个相异度函数来计算已知关联模式和当前模式的相异度,根据相异度判断当前模式是否为异常行为,并通过一个特定的审计数据的分析来描述模型工作的过程。目前该模型已成功应用在几个关键业务领域的监控系统和入侵检测系统中。
  关键词:安全审计;数据挖掘;异常检测;关联分析;关键业务
  中图分类号:TP311.131文献标识码:A 文章编号:1009-3044(2008)23-950-04
  Design on Outlier Detection Model Based on Security Audit
  Shi Hai-feng
  (College of Software, Nanjing College of Information Technology, Nanjing 210046, China)
  Abstract: From one data mining systerm on the security audit, this paper presents one outlier detection model, the model picks up the association patterns of the normal action by association analysis, defines every action pattern by the essentiality of the properties, and codes the patterns, then uses a dissimilarity-function getting the dissimilarity between one association pattern and current pattern, and estimate the current pattern by dissimilarity, last describes the working process of the model by given audit data. The model has be applied successfully in some monitor and intrusion detection systems of the key operation domain.
  Key words: security audit; data mine; outlier detection; association analysis; key operation
  
  1 引言
  
  目前安全审计已越来越多地成为防火墙、入侵检测和网络监控等系统支持的功能特性,特别当这些系统应用在关键业务领域(如银行,证券等)中时。安全审计的一个重要目的是发现系统或用户行为中的入侵或异常。而如何在大量的审计数据中提取出具有共性的系统特征模式,用于对程序或用户行为作出全面、准确的描述,是实现安全审系统的关键。作为数据挖掘的一个重要部分,异常检测可以从大量冗余信息的数据中提取出隐藏的、有效的模式,如果将其应用于安全审计数据的处理,可以有效地解决海量审计数据的分析问题,为系统和用户行为的判定提供依据。
  异常是在数据集中与众不同的数据,使人怀疑这些数据并非随机偏差,而是产生于完全不同的机制[1]。异常检测中对异常的定义是:异常是既不属于聚类也不属于背景噪声的点,他们的行为与正常的行为有很大不同。异常检测通常建立在聚类分析和关联分析的基础上,从方法上可以分为基于统计(statistical-based)、基于距离 (distance-based) [2,3]、基于偏离(deviation-based) [4]和基于密度(density-based) [5]的方法。另外针对异常在高维空间中难以确定,有人提出一个高维数据异常检测的方法[6],该方法采用遗传优化算法,把高维数据集映射到低维子空间,根据子空间映射数据的稀疏程度来确定异常数据是否存在,算法获得良好的计算性能。
  本文提出一个基于安全审计的异常检测模型,该模型中异常检测方法借鉴基于偏离的算法,将该算法中未知的“序列异常”中各个子集间的相异度计算转化为已知的正常行为模式和未知行为模式的相异度计算,算法为每个判定对象定义一个行为模式,模式中各属性按其重要性降序排列,并利用模式中字段值在审计数据库中的信息,对每个模式进行编码,再通过定义一个相异度函数来计算模式间的相异度,根据相异度和设定阈值的比较来判断模式是否为异常。
  下面首先介绍在一个基于安全审计的数据挖掘系统中构建异常检测模型的构建过程,并详细分析该模型的工作过程,最后通过一个特定的审计数据来描述异常检测的处理过程。
  
  2 异常检测模型设计
  
  2.1 数据挖掘系统框架
  本模型是基于一个安全审计的数据挖掘系统的基础上实现,该系统结构图如图1所示。由于传统的安全审计系统在数据采集规则和报警规则等方面,都是采用预先定义的规则库,自适应性较差,该数据挖掘系统针对此而提出,另外该系统应用于关键业务应用领域里,通常产生的审计数据都比较完整、可靠和高质量,这使得数据源的预处理比较简易。
  系统中数据挖掘源数据为业务数据库,分析器可以完成特定的分析功能,可看作是对源数据必要的预处理,分析器通常归类特定数据,提取重点数据,使数据挖掘数据选择更有针对性。分析器一般提供以下几种类型的分析:数据值范围、大小和长度分析;审计事件发生的频率分析;事件发生的地点和属主分析(比如数据生成点和作案地点);事件发生的时间段和时间点分析。根据各个分析器功能,可分为通用、频率、阈值和时间分析器等。
  2.2 异常检测设计
  异常检测关键在于正常模式的建立及利用该模式对当前行为进行比较和判断。正常模式的建立可以通过关联规则挖掘实现,比如在对用户行为的异常检测,可以对用户审计数据进行关联模式的挖掘,在规则库中建立每个用户的历史行为模式,再利用该历史行为模式与当前用户操作行为进行模式比较,通过两者的相异程度来判断用户行为是否为异常行为,并通过检测过程进行模式学习,更新模式库中用户模式。模式库的更新通过待学习知识库经过交互完成。结合上述各种分析器,该异常检测流程如图2所示。
  
  3 异常检测实现原理
  
  3.1 关联模式挖掘
  异常检测的前提是正常行为的关联模式的获取,这一步通过关联分析完成。关联分析主要任务是挖掘关联模式知识,目前关联模式挖掘算法的研究已取得了很多研究成果,众多算法中以Agrawal等人提出的Apriori[7]算法最为著名,其后的算法大多数建立在Apriori算法基础上,或进行改进,或衍生变种。本模型采用了Apriori算法。算法分为两个步骤:第一步,从事务数据库或安全审计数据库D中找出所有支持度不小于用户指定的最小支持度闭值(min_sup)的频繁项目集;第二步,使用频繁项目集产生所期望的关联模式,产生关联模式的基本原则是其置信度必须不小于用户指定的最小置信度闭值(min_conf)。
  由于第二步较为容易和直观,因此挖掘出所有频繁项目集是该算法的核心,占据整个计算量的大部分,因此,有时仅考虑挖掘频繁项目集。
  3.2 异常检测设计
  系统通过根据审计数据各属性重要性的次序定义用户行为关联模式AMi的集合,并为每个模式进行编码,同时对当前待分析用户操作行为模式AM进行相应的编码,再通过定义一个相异度函数计算每个AMi和AM的相异度,相异度函数是通过对AMi和AM相应的编码来进行计算的。如果任意AMi和AM的相异度值都大于某一个阈值 ,则认为AM行为可能是异常行为,下面详细描述该设计过程。
  3.2.1 行为模式
  定义行为模式AM=(AM1=v1,AM2=v2,…,AMk=vk),AMi(i=1,2,…k)为待挖掘审计事件的记录表中的某一属性。如果k=n-1(n为记录表的属性数),则称AM是完备模式。如果AM的属性是按其重要性降序排列的,则称模式AM是有序模式。同时满足上述两条件的模式称为有序完备模式。显然,对于模式库中的任意模式AM=(AM1=v1,AM2=v2,…,AMk=vk),AMi(i=1,2,…k),均可以通过以下两步将其转换成有序完备模式:1)对于任何不属于AM的属性Ai(i=1,2,…n-1),令Ai=null,并将其插入到AM中;2)将AM的属性按其重要性降序列排列。因此,在以下的讨论中可以仅考虑有序完备模式。
  3.2.2 模式编码
  每个用户模式相应的编码过程如下:
  设定v_seti存放属性Ai值的集合,v_propi存放v_seti中每个Ai值的在数据库中的比例值,即包含该Ai值的记录数与所有记录数的比值,该值表达了该Ai值在表中出现的频繁度,这样v_seti中每个值根据其对应的比例值由大到小排放,每个v_seti对应一个c_seti,记录v_seti中元素的个数。v_seti的初始值由初始的关联模式的值决定。
  用户模式AMi每个属性值vj都对应一个编码vj_code,AMi对应的编码值通过AMi中每个属性值vj求得,vj_code计算过程如下:
  1)若vj=0,则vj_code=0;
  2)判断vj是否在对应的v_setj中,如果在,则计算vj对应的编码值,设vj在v_setj的顺序为sj,则对应vj的编码值计算过程如下:
  3)若vj不在v_setj中,则判断vj值在在数据库中的比例值p_vj是否大于某个比例值MinProp,若p_vj小于MinProp,则vj=9;若p_vj大于则将vvj根据p_vj在v_propi的顺序加入到v_setj相应的位置中,同时根据公式(1)计算vj对应的编码值vj_code。
  这样每个属性值对应的编码值为[0,9]内的整数值,模式AMi对应的编码值由v1_code、v2_code … vn-1_code组成。(n为记录表表属性数)
  3.2.3 相异度函数
  相异度函数可以是满足如下条件的任意函数:当给定一组对象时,如果对象间相似,返回值就较小;对象间的相异度越大,函数返回值就越大。可能的相异度函数有集合中对象的方差,或者模式字符串的形式(例如包含通配符),根据审计表中各个属性的重要性定义相异度函数为:
  该函数计算的相异度由模式编码各位的编码值的差值和属性个数决定,取值范围为[0,1],该函数对两类数据非常敏感,(1)编码值的差值比较大;(2)存在差值的编码在模式中对应的属性的重要性比较大。
  
  4 数据分析
  
  4.1 审计数据
  下面通过审计端审计人员的操作行为数据描述关联模式的挖掘过程,首先通过审计数据库中审计员操作记录表来约定待挖掘审计事件的记录表的定义,如表1所示,该表中每个属性都是根据其在审计事件重要性降序排列的,表2对各个属性进行了描述。
  其中A2(操作类型)取值为1/2/3/4/5/6/7,分别代表:1查看终端录像,2修改或删除终端信息,3修改或删除主机信息,4新增、修改或删除控制码信息,5新增、修改或删除用户信息,6授权、修改或删除某用户权限,7其他操作。
  为了使实验数据具有代表性,随机地从数据库中抽取两个用户的审计记录,数据如表3,并使用算法Apriori分别对这二个用户的行为模式进行了挖掘,部分挖掘结果如表3所示。
  4.2 关联模式数据
  4.3 异常检测数据及分析结论
  通过表3中User1的操作行为记录,以及User1的关联模式,设定MinProp=0.01,计算User1用户模式的编码值,如表4所示。
  其中:v_set1=(172.16.15.5),v_prop1=(99.900%),c_set1=1;
  v_set2=(1,2),v_prop2=(91.000%,8.400%),c_set2=2;
  v_set3=(Check,Modify),v_prop3=(91.000%,8.100%),c_set3=2;
  v_set4=(002),v_prop4=(99.900%),c_set4=1;
  v_set5=(012, 011),v_prop5=(51.100%,48.700%),c_set5=2;
  v_set6=(am,pm,after),v_prop6=(44.600%,40.400%,10.900%),c_set6=3。
  设定阈值?着=0.2,下面给出两个当前行为模式判断该行为是否为异常行为。表5给出了比较情况及异常分析的结论。
  
  5 结束语
  
  本文在一个安全审计的数据挖掘系统的基础上实现了异常检测模型的构建过程,同时通过审计数据的分析来描述模型工作的过程。针对关键业务领域审计数据特征,异常检测可以用于多种规则的挖掘,比如用户操作行为顺序规则、本地用户非法提升权限规则和远程用户获取本地权限规则等。目前该模型已成功应用在几个关键业务领域的监控系统和入侵检测系统中。
  
  参考文献:
  [1] Hawkins D. Identification of Outliers[M]. Chapman and Hall, London, 1980.
  [2] Knorr E M, Ng E T. Algorithms for Mining Distance-based Outliers in Large Datasets[A]. In:24th Int. Conf. on Very Large Data Bases[C]. New York, NY, 1998: 392-403.
  [3] Ramaswamy S, Rastogi R, Shim K. Efficient Algorithms for Mining Outliers from Large Data Sets[A]. In:ACM SIGMOD Conference Proceedings[C], 2000.
  [4] Agrawal R, Ragaran P. A Linear Method for Deviation Detection in Large Databases[A]. In:KDD Conference Proceedings[C], 1995.
  [5] Breunig M M, Kriegel H P, Ngetal R. LOF:Identifying Density-Based Local Outliers[A]. In: Proc of ACM SIGMOD Conference Proceedings[C], 2000.
  [6] Aggarwal C C, Yu P. Outlier Detection for Hight Dimensional Data[A]. In:Proc of ACM SIGMOD Conference Proceedings[C], 2001.
  [7] Agrawal R, Srikant R. Mining Association Rules Between sets of Items in Large Databases,[A] In: Proc of ACM SIGMOD International Conference Management of Date[C], Washington DC,1993,207-216.
  [8] 李炎,李皓,钱肖鲁,等.异常检测算法分析[J]. 计算机工程,2002,28(6):5-6,32.
  [9] HAN Jia-wei, Kambr M,著,范明,孟小峰,译.数据挖掘概念与技术[M].北京:机械工业出版社,2004:152-158,251-257.
其他文献
货币政策是宏观调控的重要手段,也是学界研究的一个热点问题。总体来说,我国货币政策的特点是“一松就热、一紧就死”,制定和实施货币政策的难度非常大。随着我国经济的快速发展
以往,审批材料往往需要打印厚厚一叠,不少材料还要一式多份;要申报其他项目,重复的材料要再准备.这种耗时、低效、浪费资源的行政审批服务流程已被打破,随着本月我市电子证照
2009年上半年,印机行业主要经济指标仍然比2008年同期低,但与一季度相比,各项指标都有回升的趋势,具体分析如下.
摘要:数据恢复已成为信息安全领域研究的一大热点。该文讨论了数据丢失的一般原因,分析了数据恢复的原理,可行性及策略,介绍了常用的数据恢复软件,最后指出了数据恢复面临的困难及其前景。  关键词:数据恢复;数据销毁;MBR  中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)23-948-02  计算机在人们日常生活和工作中的地位日趋重要, 其中存储了大量与人们工作和生活有关
ZenithOptimedia咨询公司对2011年前全球和俄罗斯广告市场的发展作出了最新的预测。新的预测结果比前一次更加糟糕,而前一次的预测在当时已经是最差的结果了。ZenithOptimedi
截至目前为止,在实际的JSP课程教学过程中,仍然存在着很多的问题,这些问题严重的制约了学生对于JSP编程应用能力的提升.与此同时,在进行JSP课程教学策略分析的过程中,不能仅
随着经济的发展和科技的进步,新型建筑材料发展迅速,在很大程度上推动了现代建筑业的发展.本文主要分析了新型材料的特点,阐述了其发展的趋势.
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
期刊
一、选题背景  1998年后,中国的国际收支一直保持较大额度的顺差。为维持人民币汇率的稳定,中国人民银行经常性地和被动地在外汇市场上购入外汇,使中国外汇储备从1999年末的15
该文介绍了网络登陆与普通系统登陆的功能区别,提出了实现网络登陆的实现解决措施,并通过UML对网络登陆系统进行建模,保证了系统的完善性和可靠性。 This paper introduces