1. 产品简介
安华金和数据库保险箱系统(简称DBCoffer) 是一款Oracle数据库安全加固系统,该产品能够实现对Oracle数据的加密存储、增强权限控制、敏感数据访问的审计。DBCoffer可以防止绕过防火墙的外部数据攻击、来自于内部的高权限用户的数据窃取、以及由于磁盘、磁带失窃等引起的数据泄密。
通过DBCoffer用户可以对Oracle数据库应用系统中的敏感数据,进行数据加密;并在现有的Oracle数据库访问控制之上,派生数据安全管理员(DSA)进行加密数据的加密和脱密权限控制,有效防止数据库特权用户访问敏感数据;同时对安全行为和敏感信息的访问进行审计追踪。
当前主流Oracle数据库安全加固方案包括前置代理、应用加密和Oracle自带加密选件TDE。前置代理需要应用大幅改造、大量Oracle核心特性无法使用;应用加密必须由应用实现数据加密,加密数据无法检索,已有系统无法透明移植;TDE不能集成国产加密算法,不符合国家密码政策。因此这几种方案一直未能得到有效推广。
DBCoffer通过独创的、专利的多层视图技术和密文索引等核心技术,突破了传统Oracle安全增强产品的技术瓶颈,可以实现数据高度安全、应用完全透明、密文高效访问。
DBCoffer当前支持Windows、Linux、Unix等多个平台,提供基于硬件服务器的企业版,和纯软件的标准版,满足用户的多种部署需求。DBCoffer兼容主流加密算法和国产加密设备,提供可扩展的加密设备和加密算法接口。DBCoffer的功能集与国际数据库加密增强产品相当,性能上领先5倍以上。DBCoffer产品已经在若干个用户处得到试用和应用,用户面涉及军队、军工、机要、企业和互联网。
1.1. 产品特点
1.1.1. 透明数据加密
DBCoffer支持国际先进的密码算法,以及我国的密码管理机构认定的加密算法。对数据库的指定列进行加密,保证敏感数据在存储层为密文存储,防止数据库数据以明文形式暴露,以实现存储层的安全加固。
透明的数据加密有两层含义,一是对应用系统透明,即用户或开发商不需要对应用系统进行任何改动;二是对有密文访问权限合法用户看到的是明文数据,该过程对用户完全透明。
1.1.2. 增强访问控制
DBCoffer增设数据安全管理员(Data Security Administrator,DSA)。DBA和DSA完全独立,共同实现对敏感字段的强存取控制,实现真正的责权一致。DBA实现对普通字段的一般性访问权限控制,DSA实现对敏感字段的密文访问权限控制和加解密处理。
DBCoffer可以对密文数据的访问权限进行精细控制,能做到按时间、按地点授权。通过该权限控制机制,能做到使Oracle数据库用户在规定时间范围内、通过指定的IP地址进行密文数据的访问权限控制,极大提高系统的安全性。
该功能是对Oracle访问控制能力的加固,防止了特权用户对敏感数据的非法访问。
1.1.3. 敏感数据审计
DBCoffer增设安全审计管理员(Data Audit Administrator,DAA),提供对数据库中指定字段访问行为的记录,以便对数据库的敏感数据的访问进行审计追踪。传统的审计技术,由于审计的信息量大,审计功能的开启,将对性能造成极大的影响;而DBCoffer中仅针对敏感数据进行审计,极大降低了审计的负载,从而有效保证了在开启审计功能时的数据库性能。
1.1.4. 高效数据检索
DBCoffer进行安全增强后,依然能够对加密数据进行索引查询,从而保持Oracle数据库的高效访问能力。
DBCoffer通过专利的、高度安全的加密索引技术,突破了传统技术对加密列不能使用索引的限制;在保证索引数据的高度安全基础上,提供了对已加密数据为检索条件的索引查询;在加密列上进行的等于、大于、小于和Like操作依然可以使用索引。
1.1.5. 真正应用安全
DBCoffer能提供用户和应用系统强制绑定的真正应用安全能力。Oracle用户一旦绑定了某个应用系统,该用户只能通过该应用系统进行密文数据的访问,通过其他应用系统、或命令行、Oracle数据库管理工具等手段则无法访问密文数据。
该特性可以防止由于人为原因、管理机制不完善导致的数据库密码泄露,引起的敏感数据信息泄密。
1.1.6. 高度可靠支撑
DBCoffer通过与Oracle的数据集成存储、RAC支持、双机热备、自动透明故障切换、应急模式、快速数据恢复等技术,使DBCoffer提供与Oracle相当的高可用支持和异常故障处理能力。
1.1.7. 简单、易用、灵活
DBCoffer产品稳定可靠,产品化程度高,图形化管理界面,简单易用。安华金和数据库加固系统提供三个级别的产品,单服务器的软件版,单服务器的硬件版,网络版,部署灵活。
1.2. 基本功能
1.2.1. 数据加密
数据加密是DBCoffer系统的基本功能。DBCoffer系统的数据加密是按列进行的,可以对指定的列采用指定的加密算法和密钥、盐值等进行加密处理。加密后的数据以密文的形式存储在Oracle的表空间中。
DBCoffer系统能够实现对VARCHAR、VARCHAR2、CHAR、NUMBER、DATE、CLOB、BLOB类型的加密。
只有经过授权的用户才能看到明文数据,并且授权也是按列进行的,具备很好的灵活性和安全性。对于非授权用户,将无法读取加密列(查询)和更改加密列的数据。
密钥的管理是由DSA(安全管理员)通过安全管理子系统来维护的,可以进行以下管理操作:
l 可以对加密列指定加密算法、密钥长度、密钥有效期;在加密转换和脱密转换中使用这些策略。
l 可以对一个已经存在的加密列指定新的加密算法、密钥长度。
l 用户可以要求对加密列更新密钥(密钥更新)。
l 加密策略和密钥更新后,已加密数据需要按照新的密钥和加密策略进行加密(数据轮转)。
1.2.2. 透明访问
DBCoffer系统在实现数据安全加密的同时,另一个非常重要的特性就是应用透明。
DBCoffer系统是嵌入运行在Oracle数据库内部,对于授权用户的数据加解密、查询优化管理等过程对于操作Oracle数据库的应用系统、外围工具等具有很好的透明性——使用者和应用系统不需要关心DBCoffer系统进行了哪些保护。
这样的透明性主要体现在以下方面:
l SQL语句透明:SELECT、UPDATE、INSERT、DELETE四种SQL语句进行操作,应用程序不用作修改即可拥有安全特性。
l 存储程序透明:对于应用透明支持的含义还包括对存储过程透明的支持。
l 开发接口透明:提供对应用开发接口的全面透明支持,包括:JDBC、ODBC、OLEDB、ADO、OCI等。
l 数据库对象透明:对指定了加密列的数据库对象(表),应用在访问时不需要变更表名、列名、列类型或显示调用解密函数。
l 管理工具透明:Oracle提供的前台管理界面(如:企业管理器、查询分析器),及常用的第三方管理工具(TOAD、PL/SQL Developer等)仍然可以正常使用。
1.2.3. 分权管理
DBCoffer系统在权限管理上采用了分权的机制,有效的制约了数据库管理员(DBA)这样的特权用户对数据的访问。同时这种保护又是透明的,不会对管理员的日常工作造成不便。
在DBCoffer系统中,增设了安全管理员(Data Security Administrator,DSA)。DSA通过使用安全管理工具,完成日常的安全维护和管理操作。
DBA和DSA完全独立,共同实现对敏感字段的强存取控制,实现真正的责权一致。DBA在Oracle现有安全机制上对用户进行敏感字段的访问权限控制,DSA实现对敏感字段的加/脱密权限控制。仅有DBA授予的访问权限而没有DSA授予的加/脱密权限,用户无法访问到密文。DBA只拥有对加密字段的维护管理能力,而没有查看和修改真实数据的能力。
这样,有效防止了特权用户的产生,工作人员不能同时具备DBA和DSA的权限,也就是不存在能够设置加密策略的同时,又可以进行数据管理的特权用户。
同时系统提供审计功能,引入审计管理员(Data Audit Administrator,DAA)。系统对安全管理员的安全策略配置行为和数据库用户对敏感信息的访问进行审计记录,只有DAA才有权察看和操作这些审计数据。
1.2.4. 系统安全
DBCoffer系统在提供Oracle的安全增强的同时,也要保证自身的安全,以防止产生新的安全漏洞。
保证数据保险箱所提供的安全功能不可旁路。
数据保险箱管理的密钥信息不泄露、授权信息不可篡改。
对安全管理功能的使用,也即DSA的身份要经过强认证。
1.2.5. 维护管理功能
DBCoffer系统提供了用于DSA日常维护和管理的图形化管理工具—安全管理子系统。通过该子系统,DSA可以方便的定义和配置安全策略,对密钥进行维护等。
敏感字段的加密、脱密配置。
密钥和算法的管理、配置。
数据库用户的访问授权和回收授权。
对密文索引数据进行维护。
1.2.6. 安全服务
DBCoffer系统以服务程序的方式,提供了专门安全服务功能。该安全服务根据配置好的安全策略,对受保护的列进行加、解密处理,权限的审核。
1.3. 主要技术指标
1.3.1. 数据类型
DBCoffer系统支持Oracle内建的VARCHAR、VARCHAR2、CHAR、NUMBER、DATE、CLOB、BLOB数据类型。
1.3.2. 密文索引
DBCoffer系统支持在VARCHAR、VARCHAR2、CHAR、NUMBER、DATE列上创建密文索引。
1.3.3. Oracle约束
DBCoffer系统支持主键、外键、唯一(Unique)和非空(NOT NULL)约束。
1.3.4. 数据库连接
DBCoffer系统理论上对应用系统与Oracle数据库的连接没有附加的限制;从性能和资源方面,每个操作密文数据的数据库连接将占用部分内存和CPU的资源。
1.3.5. 加密算法
DBCoffer系统支持的加密算法包括:AES,XXX(国密办批准),MD5,3DES,SHA。