数据库内核入侵隐藏用户的探测方法及系统的制作方法

文档序号:6377652阅读:183来源:国知局
专利名称:数据库内核入侵隐藏用户的探测方法及系统的制作方法
技术领域
本发明涉及信息安全技术领域。具体涉及数据库系统的内核入隐藏用户的探测,特别是一种提高数据库系统安全的新型扫描检测方法及其系统。
背景技术
当前的数据库安全风险扫描软件主要检测数据库系统配置风险和数据库软件本身的安全漏洞。数据库配置风险就是各种权限的分配不当以及用户管理不当、弱口令等,比如某个危险的存储过程执行权限分配给了公共角色,公共角色的成员就可能利用这个存储过程来进行提权操作。这类风险可以通过用户正确配置数据库来消除。数据库软件本身的安全漏洞是指数据库开发厂商在软件开发过程中由于考虑不周使软件产生了安全漏洞,例如各种缓冲区溢出漏洞、系统对象SQL注入漏洞。这类漏洞只能靠升级数据库或给数据库 打补丁来解决。但是当前的数据库安全风险扫描软件无法检测黑客入侵对数据库造成的损害,黑客入侵数据库后往往会通过篡改内核对象隐藏一些数据库对象,比如隐藏黑客自己创建的具有DBA权限的用户,利用这些隐藏的用户黑客就可以隐蔽的登录到数据库执行一些非法操作,而不被数据库管理员察觉。这类风险更隐蔽,危害更大。如果发现有隐藏的数据库用户,基本可以断定数据库已经被入侵了,并且一些内核对象已经被篡改,需要管理员及时修复数据库。

发明内容
本发明要解决的技术问题是,克服现有技术中的不足,提供一种数据库内核入侵隐藏用户的探测方法及系统。为解决技术问题,本发明的解决方案是提供一种数据库内核入侵隐藏用户的探测方法,是通过正常途径获取数据库用户列表,用底层方法获取数据库用户列表;所述正常途径获取数据库用户列表,包括以下步骤(I)连接数据库;(2)通过数据库提供的视图或命令得到对应的用户列表;所述用底层方法获取数据库用户列表,包括以下步骤(I)连接数据库;(2)访问底层系统表或二进制文件;(3)获取对应的用户列表;将正常途径获取的用户列表和用底层方法获取的用户列表进行对比,找出正常途径获取不到的数据库用户列表,即为隐藏的用户列表;然后生成扫描报告,将隐藏的用户列表提供给使用探测系统的用户。本发明中,所述数据库用户是指登录数据库系统的用户帐号,所述数据库用户列表是指该用户账号的列表。进一步地,本发明还提供了一种用于实现前述方法的数据库内核入侵隐藏用户的探测系统,该系统包括用于通过正常途径获取数据库用户列表的扫描模块、用于通过底层方法获取数据库用户列表的底层探测模块,以及用于将两个用户列表进行对比并得出隐藏用户的对比模块;所述扫描模块连接至数据库,所述底层探测模块连至数据库或数据库所在服务器;所述对比模块与扫描模块和底层探测模块相连。本发明的有益效果在于本发明对比正常途径获取数据库用户列表和底层方法获取数据库用户列表,能够 发现数据库入侵后被黑客隐藏的数据库用户,并提供详细的扫描报告,使数据库管理员能及时修复数据库排除数据库安全隐患。


图I是数据库内核入侵隐藏用户探测系统工作原理图。图2是数据库内核入侵隐藏用户探测系统扫描探测过程工作流程图。
具体实施例方式首先需要说明的是,本发明涉及数据库技术,是计算机技术在信息安全技术领域的一种应用。在本发明的实现过程中,会涉及到多个软件功能模块的应用。申请人认为,如在仔细阅读申请文件、准确理解本发明的实现原理和发明目的以后,在结合现有公知技术的情况下,本领域技术人员完全可以运用其掌握的软件编程技能实现本发明。前述软件功能模块包括但不限于扫描模块、底层探测模块、对比模块等,凡本发明申请文件提及的均属此范畴,申请人不再一一列举。本发明中数据库内核入侵隐藏用户的探测系统包括用于通过正常途径获取数据库用户列表的扫描模块、用于通过底层方法获取数据库用户列表的底层探测模块,以及用于将两个用户列表进行对比并得出隐藏用户的对比模块;所述扫描模块连接至数据库,所述底层探测模块连至数据库或数据库所在服务器;所述对比模块与扫描模块和底层探测模块相连。本发明的实现原理是首先通过正常途径访问数据库,获取数据库对应的用户列表,然后通过底层探测模块获取数据库的实际用户列表,最后有对比模块对比两个用户列表找出隐藏的用户,如发现有隐藏用户,就在扫描报告里列出被隐藏用户的清单,并提出修补建议。以下是数据库内核入侵隐藏对象探测系统典型的实施案例假设要对一个0RACLE10G数据库进行内核入侵隐藏数据库用户探测。首先要模拟黑客对数据库系统内核对象进行入侵篡改(I)用sys用户登录数据库。(2)创建用户名为’ HACKER’的DBA权限的用户。(3)对ALL_USERS和DBA_USERS视图进行更改,在视图代码后面加上and
u.name! = ’ HACKER’。然后使用数据库内核入侵隐藏对象探测方法进行探测
(1访问oracle数据库的ALL_USERS和DBA_USERS视图,通过正常途径获取用户列表.(2)然后访问数据库的底层系统表sys. USER$,获取数据库真实的用户列表。(3)对比两个用户列表,会发现通过正常途径获取的用户里不存在HACKER用户,而比通过访问底层系统表发现有HACKER用户,HACKER用户就是被隐藏的用户,黑客通过篡改了 ALL_USERS或DBA_USERS视图隐藏了该用户。生成扫描报告,将被隐藏的对象列表修复建议提供给使用探测系统的用户。扫描和对比完成后,根据扫描报告就可以发现数据库有哪些隐藏的用户,数据库管理员根据该报告删除或监控隐藏的用户,并修复相应被篡改数据库内核对象。
权利要求
1.一种数据库内核入侵隐藏用户的探测方法,其特征在于,包括通过正常途径获取数据库用户列表,用底层方法获取数据库用户列表; 所述正常途径获取数据库用户列表,包括以下步骤 (1)连接数据库; (2)通过数据库提供的视图或命令得到对应的用户列表; 所述用底层方法获取数据库用户列表,包括以下步骤 (1)连接数据库; (2)访问底层系统表或二进制文件; (3)获取对应的用户列表; 将正常途径获取的用户列表和用底层方法获取的用户列表进行对比,找出正常途径获取不到的数据库用户列表,即为隐藏的用户列表;然后生成扫描报告,将隐藏的用户列表提供给使用探测系统的用户。
2.根据权利要求I所述的方法,其特征在于,所述数据库用户是指登录数据库系统的用户帐号,所述数据库用户列表是指该用户账号的列表。
3.一种用于实现权利要求I所述方法的数据库内核入侵隐藏用户的探测系统,其特征在于,该系统包括 用于通过正常途径获取数据库用户列表的扫描模块、用于通过底层方法获取数据库用户列表的底层探测模块,以及用于将两个用户列表进行对比并得出隐藏用户的对比模块; 所述扫描模块连接至数据库,所述底层探测模块连至数据库或数据库所在服务器;所述对比模块与扫描模块和底层探测模块相连。
全文摘要
本发明涉及信息安全技术领域,旨在提供一种数据库内核入侵隐藏用户的探测方法及系统。该方法是通过正常途径获取数据库用户列表,用底层方法获取数据库用户列表;将正常途径获取的用户列表和用底层方法获取的用户列表进行对比,找出正常途径获取不到的数据库用户列表,即为隐藏的用户列表;然后生成扫描报告,将隐藏的用户列表提供给使用探测系统的用户。本发明对比正常途径获取数据库用户列表和底层方法获取数据库用户列表,能够发现数据库入侵后被黑客隐藏的数据库用户,并提供详细的扫描报告,使数据库管理员能及时修复数据库排除数据库安全隐患。
文档编号G06F21/60GK102867062SQ20121035907
公开日2013年1月9日 申请日期2012年9月24日 优先权日2012年9月24日
发明者范渊, 杨永清, 刘海卫 申请人:杭州安恒信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1