过去,信息安全工作主要围绕着网络层、主机层等边界防护采取了一系列的安全措施,已建立起相对安全的数据应用环境,但由于技术局限和相关安全产品匮乏等原因,数据库安全建设一直未能得到有效开展,这就造成了数据能够安全使用、传输,但“落地”以后反而变得不安全的问题。

  近几年,在国内市场需求迅速膨胀和分级保护、等级保护等国家安全政策的刺激下,数据库防护技术有了长足的发展,如数据库漏洞评估技术、数据库加密技术、数据库访问控制技术以及数据库审计技术等,并形成了不少代表性产品。我们按照防御性质的不同,大体可以分为:主动防御产品和被动防御产品。主动防御类产品主要指漏洞扫描、权限控制和数据库加密的数据库防护产品;被动防御类产品主要指数据库审计。

  数据库漏洞扫描更多的是保障了数据库系统的服务连续性,而访问控制类产品更多的是加强了访问的安全性,数据库审计则主要是记录发生的入侵行为,只有数据库加密才是真正保障数据的安全性,真正完成了信息安全保密工作中的“看不懂、改不了、盗走也没用”的数据防护目标,缺少了数据库加密系统,是无法有效抵御黑客和内部人员进行数据盗窃和数据篡改的。

数据库防护技术对比分析插图

  一、 数据库加密介绍

  l 安全功能

  数据库加密产品可以对数据库中的数据按照列、行为单位进行加密,并基于加解密控制来实现独立的权限控制;有些还具备安全审计功能,并实现数据库管理员、安全管理员与审计管理员的三权分立;还有些具备应用绑定功能,可以实现应用的安全访问。

  l 防护效果

  通过数据库加密防止由于明文存储引起的数据泄密;通过独立的权限控制可以防止利用数据库漏洞的外部黑客攻击;通过三权分立可以防止来自于内部高权限用户的数据窃取;通过应用绑定防止应用合法用户绕过应用系统的访问,从而在存储层、数据库访问层、应用层实现系统的、彻底的数据库主动防御。

  1)存储层:主动防御由于明文存储引起的数据泄密。

  通过DUL/MyDUL等工具,可对Oracle数据文件直接分析,获得清晰地格式化数据;此外备份文件的明文存储也可以直接在异地恢复成一个明文库。

  数据库加密产品通过加密存储功能,从根本上确保存储层的数据保密,即便黑客或内部人员反向解析数据文件或恢复备份文件后看到的是乱码。

  2)数据访问层:主动防御利用DBA等高权限用户的数据窃取;

  DBA等高权限用户,可以访问所有数据。

  数据库加密产品可以通过独立于Oracle的安全权限体系,保证即使是DBA用户,若无密文访问权限,照样无法进行密文数据的访问操作。

  3)应用访问层:主动防御绕开业务系统的违规访问;

  合法业务系统中,后台数据库用户的口令,可能由于人为因素或防控不严被泄露给他人,他人则可以通过命令行或管理工具等直接访问数据库,操纵所有数据。

  数据库加密产品,可以保证数据库用户和业务系统绑定,同一用户只能通过指定的应用系统访问密文数据,使用命令行等其他方式则无法访问密文数据。

  二、被动防御产品的缺陷

  被动防御类产品主要指数据库审计工具,这种产品可以后台记录所有数据库访问的操作,以进行日后备查。

  l 安全功能

  通过审计功能,凡是与数据库相关的操作均可被记录下来。只要检查审计记录,系统安全员便可掌握数据库被异常使用的状况。例如,检查库中实体的存取模式,监测指定用户的操作行为。

  l 防护效果

  审计系统可以跟踪用户的全部详细操作,包括操作的IP、用户、操作语句、时间、操作结果等等,这也使审计系统具有一种威慑力,提醒用户合法使用数据库。

  l 缺陷

  由于数据库审计只是一种事后追查的手段,无法防止正在进行的数据窃取和破坏,不能起到主动防御的作用;同时,由于管理员的权责没有被分离,审计很容易被关闭。

  三、主动防御产品对比分析

  主动防御类产品除数据库加密外还有数据库漏洞扫描和权限控制产品,都是可以起到主动控制的防护手段,是目前数据库安全防护的主流手段。

  1)权限控制

  l 安全功能

  这一类产品从数据库的身份认证、授权和审计均进行了有效增强(如采用双因素身份认证),主要可以对数据库用户帐号以及登录进行安全管理、对数据库管理员权限进行设置与分配。

  l 防护效果

  该类产品的核心防护效果就是权限控制增强,数据库用户必须事先通过系统管理员授权后才具有访问数据库的权限,数据库用户必须使用系统提供的口令代理和安全数据库终端进行数据库访问。

  l 缺陷

  这类系统基于主动防御机制进行数据库安全防护起到了积极的效果,增强了数据库访问层的安全性,但无法防止明文存储引起的各类泄密,同时也无法控制DBA及超级用户的访问权限。

  2)漏洞扫描

  数据库漏洞扫描工具(或称为漏洞评估、脆弱性评估),这种产品针对数据库管理系统的漏洞及潜在的风险进行检测。

  l 安全功能

  它可以对数据库系统在认证、授权上配置漏洞(如缺省口令、缺省用户、过高权限等),数据库系统软件本身已知漏洞(如缓冲区溢出、拒绝服务攻击等),数据库补丁、数据库系统完整性进行检查,并对数据库系统的整体安全性做出评估,最终给出修复建议。

  l 防护效果

  通过已知的漏洞知识库对系统的安全性进行评估,可以帮助管理员及时发现数据库面临的潜在风险并及时修补,从而起到提升数据库抗攻击的能力。

  l 缺陷

  由于数据库管理系统自身较为复杂,随着功能的扩充,会继续出现安全漏洞。这些漏洞会不断地被黑客利用。然而,漏洞的发现、报告,到厂商的修复的周期短则也需月余,这段时间为黑客利用漏洞破坏数据库提供了机会;同时,管理员人为的使用、维护不当也会产生新的安全漏洞。因此,数据库漏洞的扫描、修复工作是个持续不能间断的过程,这样就给用户增加了额外的工作量,最终仍不能确保数据库中数据的安全性。

撰文:安华金和 http://blog.sina.com.cn/s/blog_877156e4010110sn.html

作者 网路游侠

游侠安全网,前身为网路游侠的信息与网络安全博客,站长张百川。专注:网络安全、系统安全、应用安全、数据库安全、运维安全,及网络安全、信息安全前沿技术研究与发展趋势分析。对关键信息基础设施安全防护管理平台、网络安全态势感知平台、网络安全协调指挥平台有一定关注。