【IT168 技术】大学数据库原理教科书中,数据库是这样被解释的:数据库是计算机应用系统中的一种专门管理数据库资源的系统。数据具有多种形式,如文字/数码/符号/图形/图象以及声音。数据库安全却很少被提及。
数据库安全现状
数据库系统立足于数据本身的管理,将所有的数据保存于数据库中,进行科学地组织,借助于数据库管理系统,并以此为中介,与各种应用程序或应用系统接口,使之能方便地使用并管理数据库中的数据,如数据查询/添加/删除/修改等。
数据库无所不在。海量的数据信息因为数据库的产生而变得更加容易管理和使用。政府、金融、运营商、公安、能源、税务、工商、社保、交通、卫生、教育、电子商务及企业等行业,纷纷建立起各自的数据库应用系统,以便随时对数据库中海量的数据进行管理和使用,国家/社会的发展带入信息时代。
同时,随着互联网的发展,数据库作为网络的重要应用,在网站建设和网络营销中发挥着重要的作用,包括信息收集/信息查询及搜索/产品或业务管理/新闻发布/BBS论坛等等。
然而,信息技术是一把双刃剑,为社会的进步和发展带来遍历的同时,也带来了许多的安全隐患。对数据库而言,其存在的安全隐患存在更加难以估计的风险值,数据库安全事件曾出不穷:
某系统开发工程师通过互联网入侵移动中心数据库,盗取冲值卡
某医院数据库系统遭到非法入侵,导致上万名患者私隐信息被盗取
某网游公司内部数据库管理人员通过违规修改数据库数据盗窃网游点卡
黑客利用SQL注入攻击,入侵某防病毒软件数据库中心,窃取大量机密信息,导致该防病毒软件公司严重损失
某证券交易所内部数据库造黑客股民入侵,盗窃证券交易内部报告
……
数据库安全面临内部恶意操作以及外部恶意入侵两大夹击。如何有效保护数据库信息成为当前信息安全界最为关注的课题。
数据库安全分析
三大安全风险
数据库是任何商业和公共安全中最具有战略性的资产,通常都保存着重要的商业伙伴和客户信息,这些信息需要被保护起来,以防止竞争者和其他非法者获取。
互联网的急速发展使得企业数据库信息的价值及可访问性得到了提升,同时,也致使数据库信息资产面临严峻的挑战,概括起来主要表现在以下三个层面:
管理层面:主要表现为人员的职责、流程有待完善,内部员工的日常操作有待规范,第三方维护人员的操作监控失效等等,致使安全事件发生时,无法追溯并定位真实的操作者。
技术层面:现有的数据库内部操作不明,无法通过外部的任何安全工具(比如:防火墙、IDS、IPS等)来阻止内部用户的恶意操作、滥用资源和泄露企业机密信息等行为。
审计层面:现有的依赖于数据库日志文件的审计方法,存在诸多的弊端,比如:数据库审计功能的开启会影响数据库本身的性能、数据库日志文件本身存在被篡改的风险,难于体现审计信息的真实性。
伴随着数据库信息价值以及可访问性提升,使得数据库面对来自内部和外部的安全风险大大增加,如违规越权操作、恶意入侵导致机密信息窃取泄漏,但事后却无法有效追溯和审计。
传统数据库安全方案缺陷
传统的审计方案,或多或少存在一些缺陷,主要表现在以下两个方面。
传统网络安全方案:依靠传统的网络防火墙及入侵保护系统(IPS),在网络中检查并实施数据库访问控制策略。但是网络防火墙只能实现对IP地址、端口及协议的访问控制,无法识别特定用户的具体数据库活动(比如:某个用户使用数据库客户端删除某张数据库表);
而 IPS虽然可以依赖特征库有限阻止数据库软件已知漏洞的攻击,但他同样无法判别具体的数据库用户活动,更谈不上细粒度的审计。因此,无论是防火墙,还是 IPS都不能解决数据库特权滥用等问题。
基于日志收集方案:需要数据库软件本身开启审计功能,通过采集数据库系统日志信息的方法形成审计报告,这样的审计方案受限于数据库的审计日志功能和访问控制功能,在审计深度、审计响应的实时性方面都难以获得很好的审计效果。
同时,开启数据库审计功能,一方面会增加数据库服务器的资源消耗,严重影响数据库性能;另一方面审计信息的真实性、完整性也无法保证。
其他诸如应用程序修改、数据源触发器、统一认证系统授权等等方式,均只能记录有限的信息,更加无法提供细料度的数据库操作审计。