论文部分内容阅读
数据库是信息系统存储与处理的核心。尤其在这个信息爆炸的社会里,数据库被广泛应用于工作和生活的方方面面,发挥着越来越重要的作用。随之而来,数据库的安全问题也越来越受到人们的重视。目前,主流的数据库都提供了相应的安全机制来保证数据库的安全,但是面对日益复杂的网络环境,用户的访问形式也变的多种多样。传统的安全机制已无法满足数据库安全的需要,如何尽快的发现恶意攻击,并在对数据库造成破坏后及时的采取相应的措施,以保证数据库的安全等等,是数据库安全维护人员普遍关心的问题。数据库安全审计就是在这样的需求下被提出来的。随着信息技术和网络的不断发展,针对数据库攻击越来越普遍,数据库审计这一概念也逐渐由传统的信息记录发展到现在的数据记录、审查、分析、检测。本文所研究的内容包括以下几个方面:通过对现有的数据库安全机制和审计模式的不足进行分析,设计了一个基于网络的数据库审计模型,作为现有数据库安全机制和审计技术的备份和补充。随后概述了基于网络的数据库审计模型的流程及各个功能模块的作用。采用旁路监听的方式,实现审计数据的采集并通过协议分析、SQL语句解析等手段分析网络中对数据库的操作。详细介绍了审计数据采集分析的整个流程及各部分所使用的关键技术和实现的原理方法。详细阐述了数据库网络包的抓取过程以及如何利用lex和yacc工具生成词法和语法分析程序对SQL语句进行解析,并有针对性的提取与安全分析相关的审计数据。针对目前数据库审计的方法及待审计数据的特点,在数据库审计与风险控制上,采用数据库操作行为检测与SQL语句检测相结合的审计方法。通过基于聚类分析与关联规则挖掘的数据库异常检测技术,对数据库操作行为和SQL数据操作进行审计分析,建立用户正常的行为模式,并通过编写异常检测算法来检测用户的异常行为;通过基于误用的模式匹配的技术,对SQL语句结构进行检测分析,建立SQL语句结构的规则库,并通过模式匹配算法来判断SQL语句结构是否正常。这两种审计方法各自的侧重点不同,各有优缺点。本文融合了两种审计方法,使其相辅相成,优势互补,极大的提高了审计的准确率。