一种基于代理方式的数据库安全增强方法.pdf

上传人:奻奴 文档编号:1034366 上传时间:2018-03-27 格式:PDF 页数:11 大小:473.74KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910080856.3

申请日:

2009.03.24

公开号:

CN101515931A

公开日:

2009.08.26

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止IPC(主分类):H04L 29/06申请日:20090324授权公告日:20120919终止日期:20130324|||授权|||实质审查的生效|||公开

IPC分类号:

H04L29/06; G06F17/30

主分类号:

H04L29/06

申请人:

北京理工大学

发明人:

代六玲; 杜 顶; 张晗立; 胡金武; 梁 涛; 汤继良; 李 奇; 陈合春

地址:

100081北京市海淀区中关村南大街5号

优先权:

专利代理机构:

北京理工大学专利中心

代理人:

张利萍

PDF下载: PDF下载
内容摘要

本发明公开了一种基于代理方式的数据库安全增强方法,属于数据库及信息安全技术领域。通过在应用服务器和数据库服务器之间部署一个请求检验与过滤机制,该机制包括数据库服务器的地址映射、独立于数据库的授权管理和危险命令管理功能,最终达到增强数据库入口安全的目的。其中,数据库服务器的地址映射是实现独立授权管理、危险命令管理功能的前提条件。同时,该方法对于访问数据库的应用系统是完全透明的,部署后无需对现有的应用系统做改动。地址映射机制实现的端口映射功能,隐藏了真实的IP地址和端口,攻击者不能直接与数据库服务器交互,有效的提高了数据库的安全性。

权利要求书

1、  一种基于代理方式的数据库安全增强方法,其特征在于技术方案如下:
通过提供第一网络接口和第二网络接口,将第一网络接口与数据库服务器相连,将第二网络接口与应用服务器相连,使得应用服务器不直接连接数据库服务器;通过在两个网络接口之间转发数据,实现数据库服务器的地址映射;
当应用服务器向数据库服务器发出访问请求时,首先对该访问请求进行独立于数据库的授权管理,即,将IP地址和用户名进行组合来唯一甄别每个请求者,由此对请求者进行授权管理,而不仅仅是采用用户名甄别,此时,先判断请求类型,根据请求类型执行相应的响应策略;当请求类型为数据请求时,要对其进行是否包含命令调用的判断,如果其包含命令调用,对该数据请求进行危险命令管理,即,先判定命令类型,再根据命令类型执行相应的响应策略;
从第一网络接口向第二网络接口转发的数据为数据库服务器对应用服务器请求的响应,此时,将其直接转发到应用服务器。

2、
  如权利要求1所述的一种基于代理方式的数据库安全增强方法,其特征在于:
独立于数据库的授权管理的具体实现步骤如下:
步骤一、对客户端应用程序发起的数据库请求进行通信协议解析,还原出SQL语句;
步骤二、判断请求类型,并根据请求类型执行相应的响应策略:
(1)如果是连接请求,首先检查客户端的“IP&用户名”是否被授权,再检查请求连接的数据库是否被授权;
如果任何一次授权检验失败,则做出不允许访问的处理;如果请求为被授权,则转发该请求至数据库服务器;
(2)如果是数据请求,则解析SQL语句,依据授权信息,检查用户请求的表、视图和字段是否被授权;
如果请求没有被授权,则做出不允许访问的处理;如果请求为被授权,则判断数据请求中是否包含命令调用,如果不包含命令调用,则将请求转发至数据库服务器,否则,对该数据请求进行危险命令管理,实现步骤如下:
步骤一、判定请求命令的类型;
步骤二、根据命令的具体情况执行相应的响应策略:
(1)如果是系统命令,检验系统命令的功能;
若命令的功能可能泄露操作系统和数据库的信息或者是执行操作系统命令,则根据事先制定的策略进行响应;
(2)如果命令具有SQL注入漏洞,则判定请求是否包含SQL注入攻击;
若包含SQL注入攻击,则根据事先制定的策略进行响应;
(3)如果命令具有缓冲区溢出攻击危险,则检验命令参数中是否包含缓冲区溢出攻击;
若命令包含缓冲区溢出攻击,则根据事先制定的策略进行响应;
如果系统命令不会威胁系统安全,或者不包含SQL注入攻击语句,或者不包含缓冲区溢出攻击,或者命令为普通命令时,将访问请求转发至数据库服务器;
数据库服务器收到客户端的访问请求后,对其做出响应;该响应被直接转发到客户端。

说明书

一种基于代理方式的数据库安全增强方法
技术领域
本发明属于数据库及信息安全技术领域,涉及一种数据库的安全增强方法。
背景技术
在信息系统中,数据库应用十分广泛。数据库系统作为信息的聚集体,存储着系统中最有价值信息的数据,是信息系统的核心部件,因此,数据库的安全性十分重要。
在网络环境下,数据库系统所面对的安全问题包括:
(1)数据库管理员(DBA)权限过高问题。目前广泛使用的数据库系统的安全级别为C2级,该类系统在访问控制方面采用的是自主访问控制(DAC)模式。在该模式下,DBA角色拥有至高的权限,且用户的权限可以不受限制的传播,这就使得获取DBA角色成为攻击者(如网络黑客)的目标。一旦攻击者获得了DBA角色,就意味着数据库将对其彻底暴露,毫无安全性可言。
(2)数据库系统安全漏洞问题。根据已经公布的资料,数据库存在许多安全风险,其中不少是致命的缺陷和漏洞。例如,缓冲区溢出漏洞或SQL注入漏洞。其中不少漏洞可以十分容易地被攻击者利用从而发起入侵或破坏,导致机密数据或系统控制权的泄露。
(3)遭受恶意攻击问题。由于数据库存储着最有价值的数据,是信息系统的核心部件,其每时每刻都有可能受到攻击。比如攻击者采用端口扫描、口令攻击、缓冲区溢出攻击、SQL注入攻击和拒绝服务攻击等方式。这些攻击行为均将会给数据库的安全造成十分严重的威胁。
发明内容
本发明的目的是为了解决数据库访问入口的安全问题,提出一种基于代理方式的数据库安全增强方法。其核心是:在应用服务器和数据库服务器之间部署一个请求检验与过滤机制。该机制包括数据库服务器的地址映射、独立于数据库的授权管理和危险命令管理功能,最终达到增强数据库入口安全的目的。其中,数据库服务器的地址映射是实现独立授权管理、危险命令管理功能的前提条件。同时,该方法对于访问数据库的应用系统是完全透明的,部署后无需对现有的应用系统做改动。
一种基于代理方式的数据库安全增强方法,其技术方案如下:
通过提供第一网络接口和第二网络接口,将第一网络接口与数据库服务器相连,将第二网络接口与应用服务器相连,使得应用服务器不直接连接数据库服务器。通过在两个网络接口之间转发数据,实现数据库服务器的地址映射。
当应用服务器向数据库服务器发出访问请求时,首先对该访问请求进行独立于数据库的授权管理,即,将IP地址和用户名进行组合来唯一甄别每个请求者,由此对请求者进行授权管理,而不仅仅是采用用户名甄别。此时,先判断请求类型,根据请求类型执行相应的响应策略。当请求类型为数据请求时,要对其进行是否包含命令调用的判断,如果其包含命令调用,对该数据请求进行危险命令管理,即,先判定命令类型,再根据命令类型执行相应的响应策略。通过这种方式,可实现比数据库系统本身更精确的用户甄别,能够有效的避免攻击者获得高权限时引起的数据泄露。当独立于数据库的授权管理和危险命令管理完成后,将通过检验的访问请求转发至数据库服务器。由此及时发现和阻止越权访问和攻击行为。
从第一网络接口向第二网络接口转发的数据为数据库服务器对应用服务器请求的响应,此时,将其直接转发到应用服务器。
有益效果
本发明以基于代理的方式增强数据库的安全性,主要表现在如下几个方面:
(1)本发明的地址映射机制隐藏了数据库服务器的真实地址。
引入地址映射机制之前,数据库服务器直接对外暴露,攻击者可以扫描服务器的端口,根据服务器的回复信息获得数据库以及操作系统的类型,进而进行口令猜测等攻击。
引入地址映射机制之后,数据库服务器与应用服务器之间被隔离。地址映射机制实现的端口映射功能,隐藏了真实的IP地址和端口,攻击者不能直接与数据库服务器交互,提高了数据库的安全性。
(2)本发明提供独立于数据库的二次授权管理。
在引入二次授权管理机制以前,由于数据库直接与应用程序进行连接,且只能通过口令进行认证,数据库容易受到来自于不同IP地址的假冒用户的连接和恶意的攻击。由于DBA角色具有超级权限,当恶意攻击者通过窃取口令、或者SQL注入的方法将自己的角色提高到DBA时,整个数据库将完全被其操纵。应用服务器也极易在类似SQL注入攻击的过程中,成为攻击者的跳板。
引入二次授权管理机制之后,应用程序对数据库的访问,必须经过二次授权管理机制和数据库系统两层身份认证和权限检查。
二次授权管理机制使用IP地址与用户名的组合唯一甄别一个访问者,只有存储于白名单中的“IP&用户”才能连接数据库。二次授权管理机制提供与数据库系统完全独立的授权检查,对每个“IP&用户名”组合进行权限管理。权限的管理可以精确到字段级。
通过二次认证和二次权限管理,攻击者难以伪造连接进行直接的攻击。而且,就算攻击者通过其它方式成功将角色提高到DBA,由于二次权限管理机制提供了独立的权限管理,攻击者仍然只能获得受限的权限,不能获得真正的DBA特权,提高了数据库的安全性。
(3)采用危险命令管理机制,有效防范对数据库的攻击。
危险命令管理机制能够实时检测出用户对数据库进行的危险系统命令调用、缓冲区溢出和SQL注入等攻击,自动阻断攻击行为,并审计下攻击的详细信息,提高了数据库的安全性。
附图说明
图1为本发明的基于代理方式的数据库安全增强方法的总体流程图;
图2为图1所示方法中独立于数据库的授权管理的流程图;
图3为图1所示方法中危险命令管理的流程图。
具体实施方式
下面结合附图对本发明的实施方式做进一步详细说明。
通过提供第一网络接口和第二网络接口,将第一网络接口与数据库服务器相连,将第二网络接口与应用服务器相连,使得应用服务器不直接连接数据库服务器。通过在两个网络接口之间转发数据,实现数据库服务器的地址映射。
当应用服务器向数据库服务器发出访问请求时,首先对该请求进行独立于数据库的授权管理,实现步骤如下:
步骤一、对客户端应用程序发起的数据库请求进行通信协议解析,还原出SQL语句。
步骤二、判断请求类型,并根据请求类型执行相应的响应策略:
(1)如果是连接请求,首先检查客户端的“IP&用户名”是否被授权,再检查请求连接的数据库是否被授权。如果任何一次授权检验失败,则做出不允许访问的处理(如审计、使失效、断开连接等);如果请求为被授权,则转发该请求至数据库服务器。
(2)如果是数据请求,则解析SQL语句,依据授权信息,检查用户请求的表、视图和字段是否被授权。如果请求没有被授权,则做出不允许访问的处理;如果请求为被授权,则判断数据请求中是否包含命令调用,如果不包含命令调用,则将请求转发至数据库服务器,否则,对该数据请求进行危险命令管理,实现步骤如下:
步骤一、判定请求命令的类型。
步骤二、根据命令的具体情况执行相应的响应策略:
(1)如果是系统命令,检验系统命令的功能。若命令的功能可能泄露操作系统和数据库的信息或者是执行操作系统命令,则根据事先制定的策略进行响应(如审计、使失效、断开连接等);
(2)如果命令具有SQL注入漏洞,则判定请求是否包含SQL注入攻击。若包含SQL注入攻击,则根据事先制定的策略进行响应(如审计、使失效、断开连接等);
(3)如果命令具有缓冲区溢出攻击危险,则检验命令参数中是否包含缓冲区溢出攻击。若命令包含缓冲区溢出攻击,则根据事先制定的策略进行响应(如审计、使失效、断开连接等);
如果系统命令不会威胁系统安全,或者不包含SQL注入攻击语句,或者不包含缓冲区溢出攻击,或者命令为普通命令时,将访问请求转发至数据库服务器。
数据库服务器收到客户端的访问请求后,对其做出响应。该响应被直接转发到客户端。

一种基于代理方式的数据库安全增强方法.pdf_第1页
第1页 / 共11页
一种基于代理方式的数据库安全增强方法.pdf_第2页
第2页 / 共11页
一种基于代理方式的数据库安全增强方法.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《一种基于代理方式的数据库安全增强方法.pdf》由会员分享,可在线阅读,更多相关《一种基于代理方式的数据库安全增强方法.pdf(11页珍藏版)》请在专利查询网上搜索。

本发明公开了一种基于代理方式的数据库安全增强方法,属于数据库及信息安全技术领域。通过在应用服务器和数据库服务器之间部署一个请求检验与过滤机制,该机制包括数据库服务器的地址映射、独立于数据库的授权管理和危险命令管理功能,最终达到增强数据库入口安全的目的。其中,数据库服务器的地址映射是实现独立授权管理、危险命令管理功能的前提条件。同时,该方法对于访问数据库的应用系统是完全透明的,部署后无需对现有的应用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1