论文部分内容阅读
伴随着网络的普及和数据库的广泛应用,包括银行等企事业单位在内的几乎每一个组织都建立了网络化的数据库管理系统。数据库的网络化管理在为企业提供办公自动化、数据共享等便利的同时,也引发了各种网络数据库的安全问题。数据库作为大量数据的存储系统,保存着企业及机构的各类重要敏感数据,这些数据的破坏、窃取会严重危害企业的利益。对网络数据库的破坏大都来源于内部恶意用户对数据库的攻击,因此保护网络数据库中的数据安全,防止数据库内部用户对数据库的攻击,是十分必要的。目前一些传统的安全机制如身份认证、存取控制、防火墙等,重点在于预防,不仅无法阻止所有的数据库攻击,对来自内部合法用户的攻击更是无能为力。而网络数据库系统的审计跟踪,通过跟踪网络内部数据库服务器上的用户活动,可以全面记录和监控网络数据库系统的状态和用户的行为,对于控制用户行为、检测安全隐患、进行事后追查和分析等都具有十分重要的意义。针对主流数据库系统只具备日志审核而无审计分析这一审计功能的不足,本文提出了日志与审计分析相结合的数据库审计方案,并给出了一个基于SQL Server的数据库安全审计系统DBAudit的实现过程。较之传统日志审计的不足,DBAudit系统提供了审计查询、审计分析、管理审计数据的功能,并对审计系统实施了安全保护。审计员通过选择查询感兴趣的审计数据,可以及时、准确地进行责任追踪;通过采用入侵检测的方法实现审计分析,可以及时检测到客户端对数据库的攻击并进行报警响应;通过审计数据的导入导出、审计数据库的隔离等措施避免了审计数据的溢出,从而确保DBAudit系统的正常运行。文中详细论述了DBAudit系统中日志模块、审计分析模块、安全通知模块的设计,重点介绍了采用特征分析的误用检测方法、基于数据挖掘的异常检测方法实现审计分析的过程及相关算法。将DBAudit系统运行在SQL Server数据库的服务器端进行测试,测试结果表明,DBAudit系统能够全面跟踪网络数据库系统中的用户活动,自动检测到已知的数据库攻击企图以及伪装攻击、合法用户对数据库的攻击等未知类型的数据库攻击,从而全面有效地实施了对网络数据库系统的安全监控、入侵防范和责任追踪。