精华内容
下载资源
问答
  • 数据库安全防范黑客入侵 数据库安全防范黑客入侵注:本文转载于 《绿色兵团》 随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的...
    数据库安全防范黑客入侵 

    注:本文转载于 《绿色兵团

           随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。 
      数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次: 
      ⑴ 网络系统层次; 
      ⑵ 宿主操作系统层次;
      ⑶ 数据库管理系统层次。 
      这三个层次构筑成数据库系统的安全体系,与数据安全的关系是逐步紧密的,防范的重要性也逐层加强,从外到内、由表及里保证数据的安全。下面就安全框架的三个层次展开论述。   
      1. 网络系统层次安全技术 
      从广义上讲,数据库的安全首先依赖于网络系统。随着Internet的发展和普及,越来越多的公司将其核心业务向互联网转移,各种基于网络的数据库应用系统如雨后春笋般涌现出来,面向网络用户提供各种信息服务。可以说网络系统是数据库应用的外部环境和基础,数据库系统要发挥其强大作用离不开网络系统的支持,数据库系统的用户(如异地用户、分布式用户)也要通过网络才能访问数据库的数据。网络系统的安全是数据库安全的第一道屏障,外部入侵首先就是从入侵网络系统开始的。网络入侵试图破坏信息系统的完整性、机密性或可信任的任何网络活动的集合,具有以下特点: 
      a) 没有地域和时间的限制,跨越国界的攻击就如同在现场一样方便; 
      b) 通过网络的攻击往往混杂在大量正常的网络活动之中,隐蔽性强;
      c) 入侵手段更加隐蔽和复杂。 
      计算机网络系统开放式环境面临的威胁主要有以下几种类型:   
      a) 欺骗(Masquerade); 
      b) 重发(Replay); 
      c) 报文修改(Modification of message); 
      d) 拒绝服务(Deny of service);   
      e) 陷阱门(Trapdoor);   
      f) 特洛伊木马(Trojan horse);   
      g) 攻击,如透纳攻击(Tunneling Attack)、应用软件攻击等。这些安全威胁是无时、无处不在的,因此必须采取有效的措施来保障系统的安全。 
      从技术角度讲,网络系统层次的安全防范技术有很多种,大致可以分为防火墙、入侵检测、协作式入侵检测技术等。 
      ⑴ 防火墙
      防火墙是应用最广的一种防范技术。作为系统的第一道防线,其主要作用是监控可信任网络和不可信任网络之间的访问通道,可在内部与外部网络之间形成一道防护屏障,拦截来自外部的非法访问并阻止内部信息的外泄,但它无法阻拦来自网络内部的非法操作。它根据事先设定的规则来确定是否拦截信息流的进出,但无法动态识别或自适应地调整规则,因而其智能化程度很有限。防火墙技术主要有三种:数据包过滤器(packet filter)、代理(proxy)和状态分析(stateful inspection)。现代防火墙产品通常混合使用这几种技术。 
    ⑵ 入侵检测
      入侵检测(IDS—Instrusion Detection System)是近年来发展起来的一种防范技术,综合采用了统计技术、规则方法、网络通信技术、人工智能、密码学、推理等技术和方法,其作用是监控网络和计算机系统是否出现被入侵或滥用的征兆。1987年,Derothy Denning首次提出了一种检测入侵的思想,经过不断发展和完善,作为监控和识别攻击的标准解决方案,IDS系统已经成为安全防御系统的重要组成部分。  
      入侵检测采用的分析技术可分为三大类:签名、统计和数据完整性分析法。 
      ⑶ 协作式入侵监测技术 
      独立的入侵监测系统不能够对广泛发生的各种入侵活动都做出有效的监测和反应,为了弥补独立运作的不足,人们提出了协作式入侵监测系统的想法。在协作式入侵监测系统中,IDS基于一种统一的规范,入侵监测组件之间自动地交换信息,并且通过信息的交换得到了对入侵的有效监测,可以应用于不同的网络环境。  
      2. 宿主操作系统层次安全技术 
      操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows NT和Unix,安全级别通常为C1、C2级。主要安全技术有操作系统安全策略、安全管理策略、数据安全等方面。   
      操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全选项。具体可以体现在用户账户、口令、访问权限、审计等方面。 
      用户账户:用户访问系统的“身份证”,只有合法用户才有账户。   
      口令:用户的口令为用户访问系统提供一道验证。 
      访问权限:规定用户的权限。
      审计:对用户的行为进行跟踪和记录,便于系统管理员分析系统的访问情况以及事后的追查使用。  
      安全管理策略是指网络管理员对系统实施安全管理所采取的方法及策略。针对不同的操作系统、网络环境需要采取的安全管理策略一般也不尽相同,其核心是保证服务器的安全和分配好各类用户的权限。 
      数据安全主要体现在以下几个方面:数据加密技术、数据备份、数据存储的安全性、数据传输的安全性等。可以采用的技术很多,主要有Kerberos认证、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技术。  
      3. 数据库管理系统层次安全技术   
      数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前市场上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。
      由于数据库系统在操作系统下都是以文件形式进行管理的,因此入侵者可以直接利用操作系统的漏洞窃取数据库文件,或者直接利用OS工具来非法伪造、篡改数据库文件内容。这种隐患一般数据库用户难以察觉,分析和堵塞这种漏洞被认为是B2级的安全技术措施。
      数据库管理系统层次安全技术主要是用来解决这一问题,即当前面两个层次已经被突破的情况下仍能保障数据库数据的安全,这就要求数据库管理系统必须有一套强有力的安全机制。解决这一问题的有效方法之一是数据库管理系统对数据库文件进行加密处理,使得即使数据不幸泄露或者丢失,也难以被人破译和阅读。 
      我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。   
      ⑴ 在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。 
    ⑵ 在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加/解密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要DBMS开发商的支持。 
      ⑶ 在DBMS外层实现加密。比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/解密处理。
      采用这种加密方式进行加密,加/解密运算可在客户端进行,它的优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍差。 
      下面我们进一步解释在DBMS外层实现加密功能的原理:
      数据库加密系统分成两个功能独立的主要部件:一个是加密字典管理程序,另一个是数据库加/解密引擎。数据库加密系统将用户对数据库信息具体的加密要求以及基础信息保存在加密字典中,通过调用数据加/解密引擎实现对数据库表的加密、脱密及数据转换等功能。数据库信息的加/解密处理是在后台完成的,对数据库服务器是透明的。 
      按以上方式实现的数据库加密系统具有很多优点:首先,系统对数据库的最终用户是完全透明的,管理员可以根据需要进行明文和密文的转换工作;其次,加密系统完全独立于数据库应用系统,无须改动数据库应用系统就能实现数据加密功能;第三,加解密处理在客户端进行,不会影响数据库服务器的效率。   
      数据库加/解密引擎是数据库加密系统的核心部件,它位于应用程序与数据库服务器之间,负责在后台完成数据库信息的加/解密处理,对应用开发人员和操作人员来说是透明的。数据加/解密引擎没有操作界面,在需要时由操作系统自动加载并驻留在内存中,通过内部接口与加密字典管理程序和用户应用程序通讯。数据库加/解密引擎由三大模块组成:加/解密处理模块、用户接口模块和数据库接口模块。其中,“数据库接口模块”的主要工作是接受用户的操作请求,并传递给“加/解密处理模块”,此外还要代替“加/解密处理模块”去访问数据库服务器,并完成外部接口参数与加/脱密引擎内部数据结构之间的转换。“加/解密处理模块”完成数据库加/解密引擎的初始化、内部专用命令的处理、加密字典信息的检索、加密字典缓冲区的管理、SQL命令的加密变换、查询结果的脱密处理以及加脱密算法实现等功能,另外还包括一些公用的辅助函数。 
      数据加/解密处理的主要流程如下:  
      1) 对SQL命令进行语法分析,如果语法正确,转下一步;如不正确,则转6),直接将SQL命令交数据库服务器处理。  
      2) 是否为数据库加/脱密引擎的内部控制命令?如果是,则处理内部控制命令,然后转7);如果不是则转下一步。 
      3) 检查数据库加/脱密引擎是否处于关闭状态或SQL命令是否只需要编译?如果是则转6),否则转下一步。
      4) 检索加密字典,根据加密定义对SQL命令进行加脱密语义分析。 
      5) SQL命令是否需要加密处理?如果是,则将SQL命令进行加密变换,替换原SQL命令,然后转下一步;否则直接转下一步。 
      6) 将SQL命令转送数据库服务器处理。  
      7) SQL命令执行完毕,清除SQL命令缓冲区。
      以上以一个例子说明了在DBMS外层实现加密功能的原理。   
      结束语 
      本文对数据库系统安全防入侵技术进行综述,提出了数据库系统的安全体系三个层次框架,并对三个层次的技术手段展开描述。文中还以在DBMS外层实现加密功能的原理为例,详细说明了如何应用数据库管理系统层次的安全技术。 
      数据库系统安全框架的三个层次是相辅相承的,各层次的防范重点和所采取的技术手段也不尽相同,一个好的安全系统必须综合考虑核运用这些技术,以保证数据的安全。

     

    posted on 2011-12-28 13:37 yonghu86 阅读(...) 评论(...)  编辑 收藏

    转载于:https://www.cnblogs.com/huyong/articles/2304686.html

    展开全文
  • 前面介绍了SQL注入的攻防,当然数据库入侵防范也很重要,下面介绍关于数据库攻防的经典做法和步骤: 数据库漏洞(首先得了解数据库漏洞分类) 1.数据库下载漏洞 2.暴库漏洞 数据库连接知识(了解数据库连接...

    前面介绍了SQL注入的攻防,当然数据库入侵和防范也很重要,下面介绍关于数据库攻防的经典做法和步骤:
    更过关于数据库入侵与防范技术学习教程请进入码神营地官网:www.icodegod.com

    > * 数据库漏洞(首先得了解数据库漏洞分类)
    	    1.数据库下载漏洞
    	    2.暴库漏洞
    > * 数据库连接知识(了解数据库连接过程)
    	  1.ASP与ADO模块
    	  2.ADO对象存取数据库
    	  3.数据库连接代码
    > * 默认数据库下载漏洞(由于默认数据库的配置产生的漏洞)
    	1.下载网站的数据库
    	2.数据库下载的防范
    		1)修改数据库连接文件
    		2)修改数据库路径
    > * 利用Google搜索网站漏洞(Google搜索可能会将你的网页源码的部分重要信息暴漏出来,使别人有了可乘之机)
    	1.利用google搜索网站信息
    	2.google暴库漏洞的分析与防范
    		1)Google暴库分析:查看网页源代码分析
    		2)防御:在需要调用数据库的文件头部增加<!--#include file="conn.asp"-->
    	3.暴库漏洞攻击
    		1)conn.asp暴库法
    		2)%5c暴库法
    		3)防御:代码中不要给出具体的出错信息路径
    
    展开全文
  • 分析了基于Web的数据库系统的安全框架,逐个分析网络系统、操作系统和数据库管理系统的安全技术,从3个层面由表及内综合阐述数据库防止入侵的技术对策。
  • 数据库系统的安全除依赖自身内部的安全机制外,还外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次: ⑴ 网络系统层次; ⑵ 宿主
    
    

    随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。

    数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次:

    ⑴ 网络系统层次;

    ⑵ 宿主操作系统层次;

    ⑶ 数据库管理系统层次。

    这三个层次构筑成数据库系统的安全体系,与数据安全的关系是逐步紧密的,防范的重要性也逐层加强,从外到内、由表及里保证数据的安全。下面就安全框架的三个层次展开论述。

    1. 网络系统层次安全技术

    从广义上讲,数据库的安全首先依赖于网络系统。随着Internet的发展和普及,越来越多的公司将其核心业务向互联网转移,各种基于网络的数据库应用系统如雨后春笋般涌现出来,面向网络用户提供各种信息服务。可以说网络系统是数据库应用的外部环境和基础,数据库系统要发挥其强大作用离不开网络系统的支持,数据库系统的用户(如异地用户、分布式用户)也要通过网络才能访问数据库的数据。网络系统的安全是数据库安全的第一道屏障,外部入侵首先就是从入侵网络系统开始的。网络入侵试图破坏信息系统的完整性、机密性或可信任的任何网络活动的集合,具有以下特点:

    a) 没有地域和时间的限制,跨越国界的攻击就如同在现场一样方便;

    b) 通过网络的攻击往往混杂在大量正常的网络活动之中,隐蔽性强;

    c) 入侵手段更加隐蔽和复杂。

    计算机网络系统开放式环境面临的威胁主要有以下几种类型:

    a) 欺骗(Masquerade);

    b) 重发(Replay);

    c) 报文修改(Modification of message);

    d) 拒绝服务(Deny of service);

    e) 陷阱门(Trapdoor);

    f) 特洛伊木马(Trojan horse);

    g) 攻击,如透纳攻击(Tunneling Attack)、应用软件攻击等。这些安全威胁是无时、无处不在的,因此必须采取有效的措施来保障系统的安全。

    从技术角度讲,网络系统层次的安全防范技术有很多种,大致可以分为防火墙、入侵检测、协作式入侵检测技术等。

    ⑴ 防火墙

    防火墙是应用最广的一种防范技术。作为系统的第一道防线,其主要作用是监控可信任网络和不可信任网络之间的访问通道,可在内部与外部网络之间形成一道防护屏障,拦截来自外部的非法访问并阻止内部信息的外泄,但它无法阻拦来自网络内部的非法操作。它根据事先设定的规则来确定是否拦截信息流的进出,但无法动态识别或自适应地调整规则,因而其智能化程度很有限。防火墙技术主要有三种:数据包过滤器(packet filter)、代理(proxy)和状态分析(stateful inspection)。现代防火墙产品通常混合使用这几种技术。

    ⑵ 入侵检测

    入侵检测(IDS—Instrusion Detection System)是近年来发展起来的一种防范技术,综合采用了统计技术、规则方法、网络通信技术、人工智能、密码学、推理等技术和方法,其作用是监控网络和计算机系统是否出现被入侵或滥用的征兆。1987年,Derothy Denning首次提出了一种检测入侵的思想,经过不断发展和完善,作为监控和识别攻击的标准解决方案,IDS系统已经成为安全防御系统的重要组成部分。

    入侵检测采用的分析技术可分为三大类:签名、统计和数据完整性分析法。

    ⑶ 协作式入侵监测技术

    独立的入侵监测系统不能够对广泛发生的各种入侵活动都做出有效的监测和反应,为了弥补独立运作的不足,人们提出了协作式入侵监测系统的想法。在协作式入侵监测系统中,IDS基于一种统一的规范,入侵监测组件之间自动地交换信息,并且通过信息的交换得到了对入侵的有效监测,可以应用于不同的网络环境。

    2. 宿主操作系统层次安全技术

    操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows NT和Unix,安全级别通常为C1、C2级。主要安全技术有操作系统安全策略、安全管理策略、数据安全等方面。

    操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全选项。具体可以体现在用户账户、口令、访问权限、审计等方面。

    用户账户:用户访问系统的“身份证”,只有合法用户才有账户。

    口令:用户的口令为用户访问系统提供一道验证。

    访问权限:规定用户的权限。

    审计:对用户的行为进行跟踪和记录,便于系统管理员分析系统的访问情况以及事后的追查使用。

    安全管理策略是指网络管理员对系统实施安全管理所采取的方法及策略。针对不同的操作系统、网络环境需要采取的安全管理策略一般也不尽相同,其核心是保证服务器的安全和分配好各类用户的权限。

    数据安全主要体现在以下几个方面:数据加密技术、数据备份、数据存储的安全性、数据传输的安全性等。可以采用的技术很多,主要有Kerberos认证、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技术。

    3. 数据库管理系统层次安全技术

    数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前市场上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。

    由于数据库系统在操作系统下都是以文件形式进行管理的,因此入侵者可以直接利用操作系统的漏洞窃取数据库文件,或者直接利用OS工具来非法伪造、篡改数据库文件内容。这种隐患一般数据库用户难以察觉,分析和堵塞这种漏洞被认为是B2级的安全技术措施。

    数据库管理系统层次安全技术主要是用来解决这一问题,即当前面两个层次已经被突破的情况下仍能保障数据库数据的安全,这就要求数据库管理系统必须有一套强有力的安全机制。解决这一问题的有效方法之一是数据库管理系统对数据库文件进行加密处理,使得即使数据不幸泄露或者丢失,也难以被人破译和阅读。

    我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。

    ⑴ 在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。

    ⑵ 在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加/解密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要DBMS开发商的支持。

    ⑶ 在DBMS外层实现加密。比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/解密处理。

    采用这种加密方式进行加密,加/解密运算可在客户端进行,它的优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍差。

    下面我们进一步解释在DBMS外层实现加密功能的原理:

    数据库加密系统分成两个功能独立的主要部件:一个是加密字典管理程序,另一个是数据库加/解密引擎。数据库加密系统将用户对数据库信息具体的加密要求以及基础信息保存在加密字典中,通过调用数据加/解密引擎实现对数据库表的加密、脱密及数据转换等功能。数据库信息的加/解密处理是在后台完成的,对数据库服务器是透明的。

    按以上方式实现的数据库加密系统具有很多优点:首先,系统对数据库的最终用户是完全透明的,管理员可以根据需要进行明文和密文的转换工作;其次,加密系统完全独立于数据库应用系统,无须改动数据库应用系统就能实现数据加密功能;第三,加解密处理在客户端进行,不会影响数据库服务器的效率。

    数据库加/解密引擎是数据库加密系统的核心部件,它位于应用程序与数据库服务器之间,负责在后台完成数据库信息的加/解密处理,对应用开发人员和操作人员来说是透明的。数据加/解密引擎没有操作界面,在需要时由操作系统自动加载并驻留在内存中,通过内部接口与加密字典管理程序和用户应用程序通讯。数据库加/解密引擎由三大模块组成:加/解密处理模块、用户接口模块和数据库接口模块。

    其中,“数据库接口模块”的主要工作是接受用户的操作请求,并传递给“加/解密处理模块”,此外还要代替“加/解密处理模块”去访问数据库服务器,并完成外部接口参数与加/脱密引擎内部数据结构之间的转换。“加/解密处理模块”完成数据库加/解密引擎的初始化、内部专用命令的处理、加密字典信息的检索、加密字典缓冲区的管理、SQL命令的加密变换、查询结果的脱密处理以及加脱密算法实现等功能,另外还包括一些公用的辅助函数。

    数据加/解密处理的主要流程如下:

    1) 对SQL命令进行语法分析,如果语法正确,转下一步;如不正确,则转6),直接将SQL命令交数据库服务器处理。

    2) 是否为数据库加/脱密引擎的内部控制命令?如果是,则处理内部控制命令,然后转7);如果不是则转下一步。

    3) 检查数据库加/脱密引擎是否处于关闭状态或SQL命令是否只需要编译?如果是则转6),否则转下一步。

    4) 检索加密字典,根据加密定义对SQL命令进行加脱密语义分析。

    5) SQL命令是否需要加密处理?如果是,则将SQL命令进行加密变换,替换原SQL命令,然后转下一步;否则直接转下一步。

    6) 将SQL命令转送数据库服务器处理。

    7) SQL命令执行完毕,清除SQL命令缓冲区。

    以上以一个例子说明了在DBMS外层实现加密功能的原理。

    结束语

    本文对数据库系统安全防入侵技术进行综述,提出了数据库系统的安全体系三个层次框架,并对三个层次的技术手段展开描述。文中还以在DBMS外层实现加密功能的原理为例,详细说明了如何应用数据库管理系统层次的安全技术。

    数据库系统安全框架的三个层次是相辅相承的,各层次的防范重点和所采取的技术手段也不尽相同,一个好的安全系统必须综合考虑核运用这些技术,以保证数据的安全。


    原文:http://www.hh010.com/database/html/33-3/3514.htm

    展开全文
  •  数据库系统的安全除依赖自身内部的安全机制外,还外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次: ⑴ 网络系统层次; 

     随着计算机技术的飞速发展,数据库的应用十分广泛,深入到各个领域,但随之而来产生了数据的安全问题。各种应用系统的数据库中大量数据的安全问题、敏感数据的防窃取和防篡改问题,越来越引起人们的高度重视。

      数据库系统的安全除依赖自身内部的安全机制外,还与外部网络环境、应用环境、从业人员素质等因素息息相关,因此,从广义上讲,数据库系统的安全框架可以划分为三个层次:

      ⑴ 网络系统层次;

      ⑵ 宿主操作系统层次;

      ⑶ 数据库管理系统层次。

      这三个层次构筑成数据库系统的安全体系,与数据安全的关系是逐步紧密的,防范的重要性也逐层加强,从外到内、由表及里保证数据的安全。下面就安全框架的三个层次展开论述。

      1. 网络系统层次安全技术

      从广义上讲,数据库的安全首先依赖于网络系统。随着Internet的发展和普及,越来越多的公司将其核心业务向互联网转移,各种基于网络的数 据库应用系统如雨后春笋般涌现出来,面向网络用户提供各种信息服务。可以说网络系统是数据库应用的外部环境和基础,数据库系统要发挥其强大作用离不开网络 系统的支持,数据库系统的用户(如异地用户、分布式用户)也要通过网络才能访问数据库的数据。网络系统的安全是数据库安全的第一道屏障,外部入侵首先就是 从入侵网络系统开始的。网络入侵试图破坏信息系统的完整性、机密性或可信任的任何网络活动的集合,具有以下特点:

      a) 没有地域和时间的限制,跨越国界的攻击就如同在现场一样方便;

      b) 通过网络的攻击往往混杂在大量正常的网络活动之中,隐蔽性强;

      c) 入侵手段更加隐蔽和复杂。

      计算机网络系统开放式环境面临的威胁主要有以下几种类型:

      a) 欺骗(Masquerade);

      b) 重发(Replay);

      c) 报文修改(Modification of message);

      d) 拒绝服务(Deny of service);

      e) 陷阱门(Trapdoor);

      f) 特洛伊木马(Trojan horse);

      g) 攻击,如透纳攻击(Tunneling Attack)、应用软件攻击等。这些安全威胁是无时、无处不在的,因此必须采取有效的措施来保障系统的安全。

      从技术角度讲,网络系统层次的安全防范技术有很多种,大致可以分为防火墙、入侵检测、协作式入侵检测技术等。

      ⑴ 防火墙

      防火墙是应用最广的一种防范技术。作为系统的第一道防线,其主要作用是监控可信任网络和不可信任网络之间的访问通道,可在内部与外部网络之间形 成一道防护屏障,拦截来自外部的非法访问并阻止内部信息的外泄,但它无法阻拦来自网络内部的非法操作。它根据事先设定的规则来确定是否拦截信息流的进出, 但无法动态识别或自适应地调整规则,因而其智能化程度很有限。防火墙技术主要有三种:数据包过滤器(packet filter)、代理(proxy)和状态分析(stateful inspection)。现代防火墙产品通常混合使用这几种技术。

      ⑵ 入侵检测

      入侵检测(IDS—Instrusion Detection System)是近年来发展起来的一种防范技术,综合采用了统计技术、规则方法、网络通信技术、人工智能、密码学、推理等技术和方法,其作用是监控网络和 计算机系统是否出现被入侵或滥用的征兆。1987年,Derothy Denning首次提出了一种检测入侵的思想,经过不断发展和完善,作为监控和识别攻击的标准解决方案,IDS系统已经成为安全防御系统的重要组成部分。

      入侵检测采用的分析技术可分为三大类:签名、统计和数据完整性分析法。

      ⑶ 协作式入侵监测技术

      独立的入侵监测系统不能够对广泛发生的各种入侵活动都做出有效的监测和反应,为了弥补独立运作的不足,人们提出了协作式入侵监测系统的想法。在 协作式入侵监测系统中,IDS基于一种统一的规范,入侵监测组件之间自动地交换信息,并且通过信息的交换得到了对入侵的有效监测,可以应用于不同的网络环 境。

      2. 宿主操作系统层次安全技术

      操作系统是大型数据库系统的运行平台,为数据库系统提供一定程度的安全保护。目前操作系统平台大多数集中在Windows NT和Unix,安全级别通常为C1、C2级。主要安全技术有操作系统安全策略、安全管理策略、数据安全等方面。

      操作系统安全策略用于配置本地计算机的安全设置,包括密码策略、账户锁定策略、审核策略、IP安全策略、用户权利指派、加密数据的恢复代理以及其它安全选项。具体可以体现在用户账户、口令、访问权限、审计等方面。

      用户账户:用户访问系统的“身份证”,只有合法用户才有账户。

      口令:用户的口令为用户访问系统提供一道验证。

      访问权限:规定用户的权限。

      审计:对用户的行为进行跟踪和记录,便于系统管理员分析系统的访问情况以及事后的追查使用。

      安全管理策略是指网络管理员对系统实施安全管理所采取的方法及策略。针对不同的操作系统、网络环境需要采取的安全管理策略一般也不尽相同,其核心是保证服务器的安全和分配好各类用户的权限。

      数据安全主要体现在以下几个方面:数据加密技术、数据备份、数据存储的安全性、数据传输的安全性等。可以采用的技术很多,主要有Kerberos认证、IPSec、SSL、TLS、VPN(PPTP、L2TP)等技术。

      3. 数据库管理系统层次安全技术

      数据库系统的安全性很大程度上依赖于数据库管理系统。如果数据库管理系统安全机制非常强大,则数据库系统的安全性能就较好。目前市场上流行的是关系式数据库管理系统,其安全性功能很弱,这就导致数据库系统的安全性存在一定的威胁。

      由于数据库系统在操作系统下都是以文件形式进行管理的,因此入侵者可以直接利用操作系统的漏洞窃取数据库文件,或者直接利用OS工具来非法伪造、篡改数据库文件内容。这种隐患一般数据库用户难以察觉,分析和堵塞这种漏洞被认为是B2级的安全技术措施。

      数据库管理系统层次安全技术主要是用来解决这一问题,即当前面两个层次已经被突破的情况下仍能保障数据库数据的安全,这就要求数据库管理系统必 须有一套强有力的安全机制。解决这一问题的有效方法之一是数据库管理系统对数据库文件进行加密处理,使得即使数据不幸泄露或者丢失,也难以被人破译和阅 读。

      我们可以考虑在三个不同层次实现对数据库数据的加密,这三个层次分别是OS层、DBMS内核层和DBMS外层。

      ⑴ 在OS层加密。在OS层无法辨认数据库文件中的数据关系,从而无法产生合理的密钥,对密钥合理的管理和使用也很难。所以,对大型数据库来说,在OS层对数据库文件进行加密很难实现。

      ⑵ 在DBMS内核层实现加密。这种加密是指数据在物理存取之前完成加/解密工作。这种加密方式的优点是加密功能强,并且加密功能几乎不会影响DBMS的功 能,可以实现加密功能与数据库管理系统之间的无缝耦合。其缺点是加密运算在服务器端进行,加重了服务器的负载,而且DBMS和加密器之间的接口需要 DBMS开发商的支持。

      ⑶ 在DBMS外层实现加密。比较实际的做法是将数据库加密系统做成DBMS的一个外层工具,根据加密要求自动完成对数据库数据的加/解密处理。

      采用这种加密方式进行加密,加/解密运算可在客户端进行,它的优点是不会加重数据库服务器的负载并且可以实现网上传输的加密,缺点是加密功能会受到一些限制,与数据库管理系统之间的耦合性稍差。

      下面我们进一步解释在DBMS外层实现加密功能的原理:

      数据库加密系统分成两个功能独立的主要部件:一个是加密字典管理程序,另一个是数据库加/解密引擎。数据库加密系统将用户对数据库信息具体的加 密要求以及基础信息保存在加密字典中,通过调用数据加/解密引擎实现对数据库表的加密、脱密及数据转换等功能。数据库信息的加/解密处理是在后台完成的, 对数据库服务器是透明的。

      按以上方式实现的数据库加密系统具有很多优点:首先,系统对数据库的最终用户是完全透明的,管理员可以根据需要进行明文和密文的转换工作;其 次,加密系统完全独立于数据库应用系统,无须改动数据库应用系统就能实现数据加密功能;第三,加解密处理在客户端进行,不会影响数据库服务器的效率。

      数据库加/解密引擎是数据库加密系统的核心部件,它位于应用程序与数据库服务器之间,负责在后台完成数据库信息的加/解密处理,对应用开发人员 和操作人员来说是透明的。数据加/解密引擎没有操作界面,在需要时由操作系统自动加载并驻留在内存中,通过内部接口与加密字典管理程序和用户应用程序通 讯。数据库加/解密引擎由三大模块组成:加/解密处理模块、用户接口模块和数据库接口模块。其中,“数据库接口模块”的主要工作是接受用户的操作请求,并 传递给“加/解密处理模块”,此外还要代替“加/解密处理模块”去访问数据库服务器,并完成外部接口参数与加/脱密引擎内部数据结构之间的转换。“加/解 密处理模块”完成数据库加/解密引擎的初始化、内部专用命令的处理、加密字典信息的检索、加密字典缓冲区的管理、SQL命令的加密变换、查询结果的脱密处 理以及加脱密算法实现等功能,另外还包括一些公用的辅助函数。

      数据加/解密处理的主要流程如下:

      1) 对SQL命令进行语法分析,如果语法正确,转下一步;如不正确,则转6),直接将SQL命令交数据库服务器处理。

      2) 是否为数据库加/脱密引擎的内部控制命令?如果是,则处理内部控制命令,然后转7);如果不是则转下一步。

      3) 检查数据库加/脱密引擎是否处于关闭状态或SQL命令是否只需要编译?如果是则转6),否则转下一步。

      4) 检索加密字典,根据加密定义对SQL命令进行加脱密语义分析。

      5) SQL命令是否需要加密处理?如果是,则将SQL命令进行加密变换,替换原SQL命令,然后转下一步;否则直接转下一步。

      6) 将SQL命令转送数据库服务器处理。

      7) SQL命令执行完毕,清除SQL命令缓冲区。

      以上以一个例子说明了在DBMS外层实现加密功能的原理。

    结束语

      本文对数据库系统安全防入侵技术进行综述,提出了数据库系统的安全体系三个层次框架,并对三个层次的技术手段展开描述。文中还以在DBMS外层实现加密功能的原理为例,详细说明了如何应用数据库管理系统层次的安全技术。

      数据库系统安全框架的三个层次是相辅相承的,各层次的防范重点和所采取的技术手段也不尽相同,一个好的安全系统必须综合考虑核运用这些技术,以保证数据的安全。

    展开全文
  • 数据库入侵的六大手段与防范措施第五,SQL注入  SQL注入式攻击并不是什么新事物了,不过近来在网站上仍十分猖狂。近来这种攻击又侵入了成千上万的有着鲜明立场的网站。  虽然受影响的网页和访问它的用户在这些...
  • 数据库入侵防范上一篇我们分析了对弱口令或默认用户名/口令的破解,这一篇我们来分析第二种方法手段,它就是特权的提升。特权提升: 有几种内部人员攻击的方法可以导致恶意的用户占有超过其应该具有的系统特权。...
  • 数据库安全事故的层出不穷,诸如银行内部数据泄漏造成资金失密、信用卡信息被盗用导致的系用卡伪造、 12306大量用户身份信息泄露,知名连锁酒店海量开房信息泄露 ……等等 普通的黑客从进入到退出一次数据攻击只需用...
  • 在做了之前的SQL SERVER之后,便很想尝试一下MYSQL的入侵测试已经防范大家一起分享。总的来说,我一直在用的是MYSQL,对MYSQL比较熟悉,相比较而言,感觉MYSQL更安全,这只是我自己胡乱猜想的,希望不要引起什么...
  • 在做了之前的sql server之后,便很想尝试一下mysql的入侵测试已经防范大家一起分享。总的来说,我一直在用的是mysql,对mysql比较熟悉,相比较而言,感觉mysql更安全,这只是我自己胡乱猜想的,希望不要引起什么...
  • 7 SQL注入攻击的防范 8 SQL注入攻防演示录相 1用来模拟入侵的网站效果 2概述 SQL注入攻击是黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也...
  • 注意:本课件是技术篇,实训篇...本课件内容涵盖网络安全基础、网络攻击与防范、拒绝服务与数据库安全、计算机病毒与木马、安全防护与入侵检测、思科PIX防火墙、无线局域网安全、加密技术与虚拟专用网和防火墙等内容。
  • 作者:陈小兵 2009-09-09 ...文本Tag: 数据库安全 3 SQL注入攻击检测方法与防范 3.1 SQL注入攻击检测方法 SQL注入攻击检测分为入侵前的检测和入侵后的检测,入侵前的检测,可以通过手工方式,也可以使用SQL注...
  • 网络安全教程

    2017-01-27 17:50:26
    全书内容包括网络安全基础知识、密码技术、信息隐藏技术、数字签名技术、认证技术、网络入侵与攻击技术、网络安全防范技术、操作系统安全技术、数据与数据库安全技术、软件安全技术、Web安全技术、网络互连安全技术...
  • 计算机网络安全

    2016-07-06 11:36:40
    重点介绍了网络系统的安全运行和网络信息的安全保护,内容包括网络操作系统安全、网络数据库与数据安全、网络实体安全、数据加密鉴别、防火墙安全、网络攻击与防范入侵检测防护、网络扫描和网络监控、Internet...
  • 针对以太网存在的各种链路层和网络层安全隐患,华为Quidway S 系列以太网交换机采用多种网络安全机制,包括访问控制、用户验证、防地址假冒、入侵与防范安全管理等技术,提供了一个有效的网络安全解决方案。...
  • 第11章 实战入侵与防范 236 11.1 开源程序安全剖析 236 11.1.1 0day攻击 236 11.1.2 网站后台安全 238 11.1.3 MD5还安全吗 243 11.2 拖库 248 11.2.1 支持外连接 248 11.2.2 不支持外连接 253 11.3 小结 262 第4篇 ...
  • 第三篇入侵剖析入侵技术,包括第6章和第7章,主要阐述了服务器渗透攻防,如信息收集、扫描器、浏览器端攻防技术等。第四篇后门和远程控制,包括第8章和第9章,主要剖析了蠕虫和后门及其免杀的危害性,并给出防范...
  • 堡垒机,即在一个特定的网络环境下,为了保障网络和数据不受来自外部和内部用户的入侵和破坏,而运用各种技术手段监控和记录运维人员对网络内的服务器、网络设备、安全设备、数据库等设备的操作行为,以便集中报警、...
  • Oracle数据库管理、面向对象程序设计,网络安全管理维护技术,HTMLJavaScript,网络后期维护运营,网络规划、设计方向:Linux系统及网络管理、网络服务器配置管理、路由器交换机配置管理、构建企业网络、...
  • 当前一般的木马检测与防范方法,大都基于单机安全保护,难以在网络层面提供有效的监控,不利于网络监管部门开展工作。基于入侵检测系统的网络检测,大都着眼于通信端口,而未深入通信内容,难以准确认定木马。为了更有效...
  • 计算机网络技术学什么?...网络测试故障诊断、网络入侵的检测与防范;网站设计方向:ASP动态网站建设、JAVA网络程序开发,php服务器端脚本语言,Dreamwearver firework Flash网页设计,div+css网页布
  • 防火墙是一类安全防范措施的总称,它是在两个网络之间强制实施访问控制策略的一个系统或一组系统。本文主要是针对有关防火墙的技术和防火墙应用的模型、设计和实现进行研究,通过对各种防火墙技术和防火墙体系结构的...
  • 防火墙是一类安全防范措施的总称,它是在两个网络之间强制实施访问控制策略的一个系统或一组系统。本文主要是针对有关防火墙的技术和防火墙应用的模型、设计和实现进行研究,通过对各种防火墙技术和防火墙体系结构的...
  • GAT 75-1994 安全防范工程程序要求 GAT 367-2001视频安防监控系统技术要求 GAT 394-2002 出入口控制系统技术要求 GAT 992-2012 停车库(场)出入口控制设备技术要求 GAT 1127-2013 安全防范视频监控摄像机通用技术...
  • 黑客大曝光 第7版

    热门讨论 2015-08-26 10:55:05
    《黑客大曝光:网络安全机密解决方案》是全球销量第一的网络和计算机信息安全图书,也是有史以来写得最为成功的信息安全旷世之作,被信息安全界奉为“武林秘笈”。作者以独创的知己知彼视角揭示了“黑客攻击的方法...
  • 系统清理间谍软件清除,防火墙和入侵检测技术,网络通信工具的攻击与防范,系统账号入侵与防范,系统安全防御实战等内容。. 随书所附的DVD光盘提供了多种网络安全及黑客工具的教学视频,汇集了众多黑客高手的操作...

空空如也

空空如也

1 2
收藏数 36
精华内容 14
关键字:

数据库安全与入侵防范