|
数据库安全防护: 数据库系统防黑客入侵技术综述
前言
随着技术的发展,黑客的猖狂,犯罪率的上升(扯的有点远)。我想使用服务器的站长们经常的能听到谁谁谁的数据被黑了,这站完了之类的。都希望找有硬防的机房安防服务器,但是硬防防的只能是一部分。最主要的是做好数据库系统安全。数据库系统作为计算机信息系统的核心背负,其安全性至关重要,关系到企业的兴衰,国家的安全(呃,有点夸大)因此,现在数据库系统安全成了一个重要的课题,今天就一起讨论下,有经验的跟帖,然后进行总结,造福人类。
数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次:
⑴ 网络系统层次;
⑵ 宿主操作系统层次;
⑶ 数据库管理系统层次。
网络系统层次
这个层次你可以理解为硬防就好,网络系统层次的安全防范技术有很多种,大致可以分为防火墙、入侵检测、协作式入侵检测技术等。
宿主操作系统层次
操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows NT 和Unix,安全级别通常为C1、C2级。主要安全技术有操作系统安全策略、安全管理策略、数据安全等方面。操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全选项。具体可以体现在用户账户、口令、访问权限、审计等方面。
用户账户:用户访问系统的"身份证",只有合法用户才有账户。
口令:用户的口令为用户访问系统提供一道验证。
访问权限:规定用户的权限。
审计:对用户的行为进行跟踪和记录,便于系统管理员分析系统的访问情况以及事后的追查使用。 安全管理策略是指网络管理员对系统实施安全管理所采取的方法及策略。针对不同的操作系统、网络环境需要采取的安全管理策略一般也不尽相同,其核心是保证服务器的安全和分配好各类用户的权限。
数据安全主要体现在以下几个方面:数据加密技术、数据备份、数据存储的安全性、数据传输的安全性等。可以采用的技术很多,主要有Kerberos认证、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技术。
数据库管理系统层析安全技术
我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。
⑴在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。
⑵在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加/脱密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要DBMS开发商的支持。
⑶在DBMS外层实现加密。比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/脱密处理:
数据加/脱密处理的主要流程如下:
1) 对SQL命令进行语法分析,如果语法正确,转下一步;如不正确,则转6,直接将SQL命令交数据库服务器处理。
2) 是否为数据库加/脱密引擎的内部控制命令?如果是,则处理内部控制命令,然后转7如果不是则转下一步。
3) 检查数据库加/脱密引擎是否处于关闭状态或SQL命令是否只需要编译?如果是则转6,否则转下一步。
4) 检索加密字典,根据加密定义对SQL命令进行加脱密语义分析。
5) SQL命令是否需要加密处理?如果是,则将SQL命令进行加密变换,替换原SQL命令,然后转下一步;否则直接转下一步。
6) 将SQL命令转送数据库服务器处理。
7) SQL命令执行完毕,清除SQL命令缓冲区。
以上以一个例子说明了在DBMS外层实现加密功能的原理。
本文对数据库系统安全防入侵技术进行综述,提出了数据库系统的安全体系三个层次框架,并对三个层次的技术手段展开描述。文中还以在DBMS外层实现加密功能的原理为例,详细说明了如何应用数据库管理系统层次的安全技术。
数据库系统安全框架的三个层次是相辅相承的,各层次的防范重点和所采取的技术手段也不尽相同,一个好的安全系统必须综合考虑核运用这些技术,以保证数据的安全。
详情版请查看链接:http://user.qzone.qq.com/1001505 ... rlReportBlankZone.0 |
|