数据库访问监管方法

文档序号:10534833阅读:390来源:国知局
数据库访问监管方法
【专利摘要】本发明公开了数据库访问监管方法,包括以下步骤:1)在数据库之前部署数据库监管服务器,通过应用层代理技术拦截对数据库的访问,把所有数据库访问置于监管服务器控制之下;2)控制连接数据库的用户名和口令,对数据库连接请求采取一次一授权的方式,保证对数据库连接的可控性;3)通过识别应用系统指纹控制可访问数据库的应用系统,保证应用系统的可信性;4)对访问数据库的SQL语句进行分析、检查、审计和控制。本发明阻断数据库用户随意直接连接数据库进行操作,对所有数据库访问活动进行监控,能够有效提高数据库系统的安全性,克服超级用户、数据库管理系统后门和漏洞、应用系统漏洞等可能对数据库安全的危害。
【专利说明】
数据库访问监管方法
技术领域
[0001]本发明属于数据库领域,特别是数据库访问监管方法。
【背景技术】
[0002]数据库是存储数据的仓库。今天的应用,小到手机应用,大到企业级Web应用,都采用数据库来存储要管理的数据。人们已经普遍意识到,数据库安全是信息安全的最后一道防线,对保护信息社会的信息财富具有决定性作用。虽然近年来数据库安全的重要性得到了普遍认识,但普遍使用的数据库管理系统在安全方面却存在一些不足。
[0003]数据库管理系统作为信息系统,首先面临许多技术上的安全问题。比如拒绝服务攻击、缓冲区溢出攻击、SQL注入、通信数据包嗅探、数据库存储泄漏、后门、木马、病毒等。另夕卜,数据库管理系统和数据库应用系统一起,面临如下安全问题:
[0004](I)数据库系统中存在超级用户,其权限不受约束,这会导致数据库访问权限的误用和滥用,带来非常严重的安全问题。
[0005](2)应用系统用数据库超级用户身份链接数据库,阻碍数据库管理系统访问控制功能、安全审计功能等安全功能的实施,致使数据库管理系统的许多安全功能无法起到应有的安全保护作用。
[0006](3)在应用系统配置文件中明文记录连接数据库的用户名和口令,导致数据库用户名和口令泄漏,使所有数据库管理系统的安全功能形同虚设。
[0007](4)未对传递给数据库执行的SQL语句作安全性检查,导致SQL注入、缓冲区溢出等安全攻击发生。
[0008]从上述数据库和应用系统组成的数据库系统存在的安全问题中可以看出,对数据库访问进行监管非常必要,也非常迫切。这对解决数据库超级用户、数据库管理系统后门、SQL注入等安全问题都有帮助。

【发明内容】

[0009]本发明针对数据库系统存在不受监管的超级用户、后门、SQL注入等安全问题,给出数据库访问监管方法,包括以下步骤:
[0010]I)在数据库之前部署数据库监管服务器,通过应用层代理技术拦截对数据库的访问,把所有数据库访问置于监管服务器控制之下;
[0011 ] 2)控制连接数据库的用户名和口令,对数据库连接请求采取一次一授权的方式,保证对数据库连接的可控性;
[0012]3)通过识别应用系统指纹控制可访问数据库的应用系统,保证应用系统的可信性;
[0013]4)对访问数据库的SQL语句进行分析、检查、审计和控制。
[0014]由于数据库访问监管服务器控制了访问数据库的通信,保证数据通信的不可绕过;监管服务器控制了连接数据库的身份认证信息,保证数据库登录的不可绕过。这样,即使直接登录数据库服务器主机也无法访问数据库,保证了数据库访问监管的整体不可绕过性。
[0015]不可绕过是数据库访问监管的基础。在此基础上,数据库访问监管方法还可识别应用系统指纹,保证访问数据库的应用系统的安全性;可根据监管策略的配置检查SQL语句的安全性,记录审计信息,控制SQL语句执行。
[0016]通过部署复合标准的数据库访问接口,数据库访问监管方法不但能够保证包括应用系统指纹提取在内的安全功能的实现,而且能够保证安全功能的应用系统透明性,这对保证数据库监管方法的广泛适用性至关重要。
【附图说明】
[0017]图1数据库访问监管服务器部署位置图
[0018]图2数据库访问连接情况图
[0019]图3数据库访问监管处理流程图
【具体实施方式】
[0020]下面结合附图对本发明作更进一步的说明。
[0021]数据库访问监管方法主要由数据库访问监管服务器DBASS(Database AccessSupervising Server)实施,DBASS部署在数据库应用系统APP (Applicat1n)和数据库管理系统 DBMS (Database Management System)之间,如图1 所不。
[0022]DBASS截断了 APP所在机器和DBMS间的网络通信,使APP和DBMS之间不能直接进行交互,APP对数据库的访问必须经过DBASS处理,这样DBASS就控制了应用系统到数据库的连接过程和连接建立后的所有访问过程。
[0023]为能获取应用系统的特征,也为能给应用系统提供透明的安全数据库访问支持,需要一个复合标准的安全数据库访问接口 SecDBAI (Secure DatabaseAccess Interface),如图2所示。这样,应用系统APP配置为使用SecDBAI访问数据库,应用系统和数据库访问监管服务器间建立安全的数据库访问连接,而DBASS与数据库管理系统DBMS间建立数据库连接。
[0024]数据库访问的监管处理流程如图3所示。应用系统连接数据库访问监管服务器时,提供DBASS管理的身份认证信息而不是DBMS管理的身份信息,即应用系统不知道连接数据库的真正身份信息。DBASS连接数据库管理系统的身份信息不向外暴露,因此没有人可以直接连接数据库管理系统访问数据库。当特殊情况发生,需要登录数据库管理系统服务器直接连接数据库进行特殊操作时,可在严格授权情况下从DBASS服务器获取数据库超级用户身份信息,以满足特殊管理的需要。
[0025]连接建立好后,应用系统就可以发送SQL语句访问数据库。APP将SQL语句传递给SecDBAI,SecDBAI通过网络将SQL语句发送到数据库访问监管服务器DBASS,DBASS根据监管策略对SQL语句进行分析检查。如果SQL语句合法,则交给数据库管理系统执行,并将执行结果返回给SecDBAI,SecDBAI再返回给应用系统APP。如果不合法,则DBASS记录告警信息,阻止SQL语句继续执行,并将检查结果返回给SecDBAI,SecDBAI再将错误状态返回给应用系统。
[0026]在数据库访问监管服务器DBASS的控制下,数据库管理系统之外的计算机无法通过网络直接连接DBMS访问数据库,直接登录DBMS服务器的用户由于不知晓连接数据库的用户身份信息也无法直接登录数据库进行操作,这样就确实保证了访问数据库的受控性。而通过DBASS访问数据库的所有操作均在配置的监管策略控制之下,不但能防止数据库访问权限的误用和滥用,对数据库攻击行为也能识别、审计和阻断。
【主权项】
1.数据库访问监管方法,包括以下步骤: 1)在数据库之前部署数据库监管服务器,通过应用层代理技术拦截对数据库的访问,把所有数据库访问置于监管服务器控制之下; 2)控制连接数据库的用户名和口令,对数据库连接请求采取一次一授权的方式,保证对数据库连接的可控性; 3)通过识别应用系统指纹控制可访问数据库的应用系统,保证应用系统的可信性; 4)对访问数据库的SQL语句进行分析、检查、审计和控制。2.根据权利要求1所述的数据库访问监管方法,其特征在于监管服务器部署在数据库之前,使用应用层代理技术,截断了数据库客户端和服务器的网络通信,使所有数据库访问都在监管服务器控制之下。3.根据权利要求1所述的数据库访问监管方法,其特征在于连接数据库的用户名和口令由监管服务器控制,因此数据库管理员或其他人员无法凭借掌握的数据库用户信息随意直接连接数据库进行操作。4.根据权利要求1所述的数据库访问监管方法,其特征在于数据库连接请求采取一次一授权的方式,防止链接请求被重放和连接信息被重用,保证数据库连接的次次受控。5.根据权利要求1所述的数据库访问监管方法,其特征在于应用系统指纹是抽取的应用系统特征的摘要,该指纹在应用系统访问数据库时将被检查,检查通过的方能访问数据库。6.根据权利要求1所述的数据库访问监管方法,其特征在于对访问数据库的SQL语句要进行词法和语法分析,然后根据策略配置检查SQL语句的合法性和记录审计信息,并根据检查结果决定是否允许SQL语句继续执行。7.根据权利要求2所述的数据库访问监管方法,其特征在于在客户端部署复合标准的数据库访问接口实现监管功能的应用系统透明性。8.根据权利要求3所述的数据库访问监管方法,其特征在于连接数据库的用户名和口令在特殊情况下经过严格授权,可从监管服务器读出用于特殊的数据库系统维护。9.根据权利要求4所述的数据库访问监管方法,其特征在于访问数据库的口令在一次成功的连接建立后将被立即修改。10.根据权利要求1所述的数据库访问监管方法,其特征在于应用系统指纹注册和监管策略配置采用专用管理工具进行。
【文档编号】G06F17/30GK105893376SQ201410729512
【公开日】2016年8月24日
【申请日】2014年12月5日
【发明人】黄保华, 霍林, 覃海生
【申请人】广西大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1