数据库审计及入侵检测实现分析
2016-05-30王志勇
王志勇
摘 要:在网络技术和计算机技术迅猛发展的情势下,数据库面临安全威胁,为了保证数据库中的信息不被侵犯,需要高度重视数据库的安全可靠性能,要树立数据库安全审计和入侵检测的意识,关注用户的网络信息行为,并对信息安全隐患进行报警、预防、检测和事后追查,从而全面实现对数据库的审计和入侵检测,提高数据库的安全性。
关键词:数据库;审计;入侵检测;实现
计算机技术和网络技术深入到社会各个层面的同时,也带来了极大的安全隐患,在信息产业迅猛发展的状态下,数据库成为了大量信息存储、开发和应用的重要工具,而为了确保数据库的安全使用,需要关注数据库的安全审计,科学而合理地控制用户的行为,对数据库进行入侵安全检测,并进行跟踪、追查和分析,从而确保国家和社会的安全和稳定。
1 数据库安全隐患及审计的必要性分析
数据库管理系统面临诸多的安全威胁,它来源于多个层面,有外部的安全隐患,也有内部的安全隐患,它应用于各个领域,具有极大的风险性,它处于裸露的环境之中,存在安全机制方面的弱点,因而,需要对数据库进行安全限制,重点有:数据库宿主机的安全、用户认证的限制、访问控制的限制。然而,现有的数据库安全机制不能完全解决数据库的安全问题,由于外来访问用户的不确定性,导致数据库管理系统无法抵御外来的入侵者,如果普遍用户盗取了数据库系统管理员的身份,则可以实现对数据库的非法控制,从而造成系统安全受到威胁。这时,就需要数据库的审计系统,对外来的入侵进行访问审计,在数据库信息数据被盗取、篡改的情况下,对数据信息进行恢复和追查,在科学、先进而全面的审计系统和方案之下,实现对数据库的审计记录。我们可以这样认为,安全审计是数据库安全的有机组成部分,它与数据库系统的知识和网络安全,具有不可分割的重要意义和作用。
2 数据库的安全审计研究
在我国的《计算机信息系统安全保护等级划分准则》之中,鉴于这一安全性的考虑,我国的信息安全国家标准对于数据库系统的安全保护划分了五个等级,它们对于数据库系统使用用户的身份进行鉴别,并将使用客体导入到用户地址空间之中,安全审计机制可以实现对数据库的安全审计记录,并对身份鉴别事件进行审计删除等操作。它是对数据库系统进行安全活动的收集和记录,并进行分析、评估和审查,监测一切非正常的可疑事件记录,从而对数据库信息系统实现安全审计。同时,在等级逐步提高的安全审计中,增添了对存储型隐蔽通道的安全审计内容,添加了对安全审计事件的积累及限定预警功能等。
2.1 安全审计概念
数据库信息系统的安全审计方法主要通过数据库审计系统和审计方案加以实现,在这个审计系统之中,主要由两部分构成,即:审计数据采集器和审计数据分析器,它们分别负责对数据库系统的数据进行采集和分析,并加以存储为日志。
具体安全审计流程为:
①收集数据库用户的所有事件,包括引擎搜索、查询、逻辑操作等;
②以审计条件为依据,对用户的事件进行安全审计判定;
③将安全审计事件以日志的形式加以存储和记录;
④如果安全审计事件符合报警预定条件,则发送报警信息并自动记录;
⑤一旦审计事件重复连续出现,将被剔出数据库系统,并生成安全审计报告。
2.2 安全审计模块设计
2.2.1 安全审计模块总框架
在数据库的安全审计模块之中,主要框架由日志模块、安全事件模块、安全分析模块和安全通知模块构成。其模块框架由下图所示:
这些不同的模块负责各自不同的职能,其中:日志模块重点采集数据库用户的运作信息,加以全面的采集、独立审计和记录。安全审计分析模块则是一个数据库入侵检测系统,来源于数据库的安全事件,对这些安全事件进行阈值分析和数据库应用规则匹配,以检测数据库系统的入侵状态和安全性能。安全审计通知模块是基于报警性能的通知模块,它对于数据库操作的各种动作进行报警。
在安全审计模块之中,审计开关控制是关键基础,它分为三种:
①审计总开关。重点控制数据库安全审计的开闭,它的操作权限仅限定于安全审计管理员;
②审计分析总开关。这一开关仅是对日志信息进行采集,而不对其进行处理。是基于事后的分析功能,它的性能较实时分析强,但是丧失了即时响应的功能。
③配置开关。这是在不同开关选项的配置之下,节省了安全审计配置的工作量,用简便的开关操作替代了复杂的配置操作。
2.2.2 日志模块架构及功能
日志模块的构造由日志配置表和日志踪迹表组成,这两者是相互关联、互为因果的关系,在日志配置表的运作中,可以对数据库的各种操作进行记录,并根据日志配置表所显现的信息,写入对应的日志踪迹表之中。在日志配置表信息之中,有三種日志信息,即:用户操作日志信息、用户登陆退出日志信息、强制访问控制日志信息,对应这三种不同的日志信息,也生成了相应的日志踪迹视图,它们对于不同安全事件的时间、主客体、错误等信息都进行了追踪。
2.2.3 安全事件模块架构及功能
由于日志记录是一个信息浩瀚的海洋,因而,需要有一个模块对这些海量的信息进行过滤,针对这些原始日志信息,可以进行安全事件模块应用之下的信息过滤和“清扫处理”,在这一流程之中,可以较大地减少审计分析的噪音,清理与安全无关的事件信息,从而生成系统安全事件和用户级别的安全事件。
2.2.4 安全分析与入侵检测模块架构与功能
安全入侵检测以安全事件为数据源,在对安全事件进行响应的过程中,进行违背用户定义的规则分析,并对此做出响应。为了提升数据库系统的审计能力,需要将审计追踪与实时预警相结合,实施实时的入侵检测和跟踪,在对日志信息进行审计分析的过程也即是入侵检测的过程,对于安全审计追踪日志的分析需要借助于审计分析工具,并采用三种不同的分析方法加以实现,它们包括:
①统计分析方法。这是对合法用户的行为的统计和检验;
②数据库使用规则状态下的专家系统分析法。这是进行预定的设计之下,依照一定的规则进行“滥用检测”,它与“异常检测”相区别;
③数据库系统自动学习。这是基于数据库系统自身的主动审计分析,这是一种新型的分析方法,可以实现对访问用户的监视和学习。
2.2.5 响应模块框架及其功能
这是安全审计模型中的最末层,它对于潜在的入侵可以发出安全警报,并在监测的条件下做出对入侵事件的不同响应。例如:将对数据库系统进行攻击的用户踢出系统;对疑似的攻击用户加以锁定控制;对于异常入侵的用户禁止其登陆系统等。
3 数据库安全审计中的入侵检测实现研究
3.1 数据库入侵检测结构及分类
随着计算机数据库攻击技术的不断发展,数据库信息系统的安全受到入侵威胁,为了实现对数据库的安全审计,还需要对数据库的入侵进行检测,数据库入侵检测的体系结构主要分为集中式结构、分布式结构和分层结构三种,他们各有其特点。其中,集中式结构可以集中分析和处理数据库的入侵行为,但是面对这样的集中处理,检测主机便成为了安全“瓶颈”。分布式结构可以较好地对数据库信息数据进行监控,对于内外部入侵行为进行检测,然而,这种结构要以代理处于同一层次为前提,如果代理层次太低或太高,则无法实现对网络的入侵检测。
分层结构可以应用于日益复杂的入侵行为,它呈树形分层状态,如下图所示:
这种树状的分层结构可以处理大数据量,效率较高,同时,它还可以动态调整节点层次关系,完成数据库信息系统的动态最佳配置。
数据库入侵检测系统包涵信息数据提取、入侵分析和响应处置三大部分,其中:数据提取是检测基础和前提,它对系统运行状态下的数据进行过滤和预处理;入侵分析是关键核心内容,它对运行数据进行安全攻击分析,并将结果传递给响应模块。响应处置的功能则是对安全攻击用户进行报警与处置反应。入侵检测系统可以按照数据源的不同分为主机的入侵检测系统和网络的入侵检测系统;可以按照数据分析方法的不同分为滥用检测和异常检测;按照数据分析发生的时间可以分为离线分析和在线分析,相比较而言,在线分析对于数据库系统的资源配置要求较高,精准度和即时性较为良好。
3.2 数据库系统常用的入侵检测技术
数据库系统的入侵检测技术主要包括以下几种:
3.2.1 专家系统分析技术
这一检测技术应用于滥用检测方案,它无须用户理解或干预,是将问题推理与解决方案相分离的应用方式。但是,存在对环境的适用能力较差的问题,对于具有时序特征的入侵行为也无法实现检测。
3.2.2 模式匹配检测技术
它是将入侵特征编码与审计安全记录事件相匹配,一旦有新的审计事件,则要寻求与之相匹配的入侵模式,它的可扩展性较好,误报率较低,然而在匹配性能方面还需要进一步完善。
3.2.3 状态转移检测技术
它是一种图形化的描述方式,是以入侵渗透为对象,用节点表示系统状态,“弧”表示状态转移。这一技术是高层次的、与审计记录无关联的方式,可以检测不同状态下的相同入侵模式。
3.2.4 统计检测技术
这一技术应用于异常检测,是一种较为成熟的入侵检测方法,它无需更新规则库,操作简便。但是,这种方法无法反映审计事件的时间先后关联性。
3.2.5 数据挖掘技术
数据挖掘技术以全新的理念应用于入侵检测,是一项未来信息检测处理的骨干技术,它可以从大量模糊、随机的数据中提取隐含的有用信息,并根据各数据之间的潜在关联,做出高层次的分析和决策。常用的数据挖掘技术包括有:关联分析、序列分析、分类分析、聚类分析,它们应用于入侵检测系统之中,可以提取数据库中有效的信息,构建入侵模型库,在进行数据采集、预处理、挖掘、特征提取、入侵检测的流程之下,完成对入侵行为的检测分析。它可以有效地解决手工分析和编码入侵模型的问题,极大地提升了入侵检测的精确度。
3.3 异常检测分析
对于数据库系统的异常检测是误用检测的补充方式,它可以及时发现安全审计未定义的误用状况,在异常检测分析中,可以建立相关的异常检测模型,其模型构成由规则库、安全审计事件向量采集模块、监控模块组成,在正常状态下进行安全审计事件的采集;在监控状态下对安全审计事件进行匹配,可以实现正常匹配的即为安全,不能匹配正常的误报状况则为异常。其具体监测过程为:当安全审计事件踪迹至规定条数之后,即按序列加以分析,按照向后看的匹配规则进行配置,这种匹配规则高效而简便。
3.4 误用检测分析
在数据库入侵检测系统之中,采用阈值误用检测分析法,它的入侵误警率非常低,可以在建立误用入侵检测模型的条件下,由预警模块直接进行处置。这种入侵检测方法也即基于知识的入侵检测法,它并非使用系统统计度量,而是基于内在规则或时间上的序列关联进行检测,它更注重对安全审计事件的“必然的约束”关系,它的检测分析方法核心的问题是规则的提取,由于它牵涉到数据库系统的用户登陆、访问控制、可信通道等多方面因素,因而,在误用检测系统中只需要对特定的入侵知识进行界定,便可以实现对入侵用户的操作控制。这种检测方法主要采用两种:
①状态迁移误用检测分析技术。
这种方法可以对系统的初始状态加以迁移,根据系统某一特定时刻的应用特征进行描述,在中间的迁移状态下辨识出危及系统安全的入侵状态,并对初始状态和入侵状态之间的关键性活动进行描述,它适用于步骤相连性的全序列关系下的入侵用户操作行为检测与监控。如:数据库中的临时用户。
②模式匹配分析技术。
这种方法将入侵用户的行为检测与监控转换成操作模式匹配的方式,数据库系统对入侵用户的行为检测器进行模型匹配,这种模式识别技术较为成熟而实用,其检测模型如下图所示:
在上述检测模型之中,包含有三种阈值,即:动作类阈值、序列类阈值、整合类阈值。其中:动作类阈值指在一定时间段内的安全事件超过定义次数;序列类阈值是指一定时间段内满足系统某一全序关联的安全事件;整合类阈值与序列类阈值类似,然而区别在于它无须满足全序关联,而只要发生了相应的事件即可。
4 结束语
综上所述,在网络信息数据要求日益提升的条件下,数据库要存储海量的信息,必须以安全为前提加以利用,为此,数据库的安全审计要对日志信息进行分析,构建数据库安全审计模型,并针对入侵行为进行异常检测和处理,进一步提高實时入侵检测系统的性能,实现入侵规则的合理配置,从而确保数据库信息系统的安全。
参考文献:
[1]赵雪.基于云端的移动智能终端入侵检测机制研究[D].辽宁大学,2015.
[2]葛佳.P2P网络信誉数据存储与恢复方法的研究与实现[D].昆明理工大学,2015.
[3]张玉亮.基于增加节点的社会网络隐私保护模型研究[D].南京信息工程大学,2015.
[4]刘凌龙.基于WINPCAP的网络入侵检测系统设计与实现[D].辽宁大学,2015.