朱勇 沈士强
摘要:目前,针对数据库应用层面的攻击越来越多,为记录发生的各种内部操作,Oracle数据库提供了审计功能。为进一步完善安全审计机制,本文将关联规则数据挖掘技术用于对数据库审计记录的分析,建立用户正常行为规则,实现对用户行为的检测。设计基于Oracle数据库的审计分析系统,实现了审计策略、数据预处理、记录分析和异常检测等功能。基于关联规则挖掘检测方法实现对数据库用户操作的实时监测和事后分析。
关键词:Oracle数据库;关联规则;数据挖掘;审计分析系统
中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2019)04-0123-02
1 绪论
目前,很多大型的MIS(Management Information System,管理信息系统)中使用了Oracle数据库,既存储了大量数据,也在安全性方面得到了很大提升。但针对数据库应用方面的网络攻击也随之增加,为应对这些安全威胁,Oracle数据库提供了审计功能来记录内部操作,以发现可能存在的攻击或者安全策略的不足。
为进一步完善安全审计机制,本文将关联规则数据挖掘技术用于对数据库审计记录的分析,建立用户正常行为规则,实现对用户行为的检测。
2 审计数据的获取
要完善数据的安全审计就要建立用户正常行为模型,分析记录用户行为数据。这里可以使用Oracle数据库自身的安全审计机制。
首先确认Oracle数据库是否开启审计功能,使用show parameter audit_trail命令查看显示信息。若返回OS,则说明审计功能已激活,审计记录将写到操作系统的审计跟踪里;若返回DB,则说明审计功能已激活,审计记录将写到SYS.AUD$表里;若返回None,则说明审计功能已被禁用/未开启。其次,分析用户行为审计数据,结合数据挖掘算法开展研究,建立用户的正常行为模型。
3 关联规则挖掘
通过Oracle数据库的审计机制可以得到用户内部操作的海量数据,要分析这些数据所反映的用户行为,得到操作数据对象,可使用关联规则建立“用户—操作对象—操作类型”之间的关联关系,判断用户操作是否存在异常行为。
(1)审计数据数据项的选取。Oracle数据库的审计数据提供了完善的数据项。为获得用户通常操作的数据对象及操作类型,只需审计数据中的部分数据项,包括UserID(用户名)、ReturnCode(返回码)、Action#(操作类型)和Obj$Name(操作对象名称)等。
(2)审计数据空缺值的处理。查看获得数据项中是否存在空缺值,即某条记录有一项或一些项的内容是不存在的。当出现空缺值时,要采用替代法、人工处理法等方法进行处理。
(3)审计数据的数字化。为达到数据挖掘的要求,在选取审计数据数据项和处理审计数据空缺值的基础上,采用符号法、集成变换等方式进一步处理数据,满足数据挖掘所需的数据支撑,使之转换成满足关联规则挖掘需要的数据格式。
4 Oracle数据库审计分析系统的设计
4.1 系统模型的建立
审计分析系统包括审计策略、数据预处理、记录分析和异常检测等功能。系统首先利用Oracle数据库的审计机制,提取审计数据,完成空值处理和数字化等操作。随后对审计数据进行分析处理,基于数据挖掘算法分析用户操作特征,检测用户的异常操作行为,实现用户行为的实时监测。审计分析系统流程图如图1所示。
4.2 系统功能模块的实现
(1)审计策略模块。Oracle数据库自身提供了开启或关闭审计功能的操作命令,但使用起来比较繁琐。本文设计的审计分析系统提供了用户可视化界面来完成这些命令,可以在界面中直接选取相應的审计策略来完成该功能的开启或关闭。
(2)数据预处理模块。数据预处理模块将Oracle数据库中的审计数据转换成满足关联规则挖掘的数据格式。关联规则数据预处理算法为:
5 总结
本文针对Oracle数据库安全审计机制的审计记录分析开展研究,采用关联规则挖掘方法对审计数据进行分析,建立用户正常行为模式并用于对用户行为的判断。在此基础上,设计基于Oracle数据库的审计分析系统,实现了审计策略、数据预处理、记录分析和异常检测等功能。基于关联规则挖掘检测方法实现对数据库用户操作的实时监测和事后分析。
参考文献
[1] 曹冠平,王跃利,张立韬.关联规则挖掘在作战实验数据分析中的应用[J].指挥控制与仿真,2019,41(02):70-74.
[2] 褚志涛.关联规则挖掘在开放教育教学管理中的应用[J].南京广播电视大学学报,2019(01):63-65.
[3] 徐元元.关于数据库技术在计算机辅助审计中的应用探索[J].计算机产品与流通,2018(12):8.
[4] 杨瑶姬.数据库安全平台模型分析[J].网络安全技术与应用,2018(08):65-66.
[5] 刘全飞.数据库技术在计算机审计中的应用[J].信息与电脑(理论版),2018(11):153-154.