Oracle数据库监听器引起的安全威胁和防护技术.docxVIP

Oracle数据库监听器引起的安全威胁和防护技术.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle数据库监听器引起的安全威胁和防护技术

Oracle数据库监听器引起的安全威胁和防护技术安华金和思成引言在今年的两会上,《政府采购法实施条例》正式实施。虽然安全行业迎来了数据库国产化的春天,但现今Oracle依旧是中国政府机关,使用最广泛的数据库。其安全性受到广泛关注。Oracle数据库必须使用TNS Listener(数据库监听器)来完成数据库和客户端之间的通讯。因此TNS Listener的漏洞成了很多黑客的主要目标。这些TNS Listener的漏洞如果不及时处理,将对用户的信息资产造成重大损失,同时也使许多敏感信息处于危险境地。本文主要对TNS Listener的漏洞带来的安全威胁和防护措施进行介绍,希望管理者和数据库的维护人员能够提高警惕,加强针对TNS Listener漏洞的防护措施。TNS Listener面临的威胁根据安华金和数据库安全实验室统计,2001年至2012年间,针对TNS LISTENER的漏洞有15个,其中高危漏洞9个中危漏洞6个。TNS Listener漏洞总数并不多,但其具备威胁大,跨越数据库版本多,适合通过网络远程攻击的特点。本文将针对这15个TNS漏洞按照攻击原理进行分类,并最终给出对应防护技术。TNS Listener 漏洞分类TNS Listener作为ORACLE的必备组件,TNS Listener不仅定义了数据库和客户端之间的通讯协议,更负责对客户端进行身份验证(确认客户端用于通讯的用户名和密码是否合法)。根据TNS这2条主要功能可以把漏洞分成三大类:第一类漏洞,TNS Listener被触发缓冲区重写,导致服务器无法响应客户端。造成通讯失败。简单说就是使TNS Listener崩溃。例如漏洞CVE-2007-5507就是这个类型的代表。第二类漏洞,绕过TNS身份验证,获得合法数据库账号和密码。这个类型具体可以分三种:1.通过劫持TNS信息,把oracle的登录信息劫持到攻击者机器,获取敏感信息,甚至获取oracle管理员账号密码。具体请参考安华金和数据库安全实验室发表的《Oracle数据库漏洞隐患无需user/password快速入侵?》一文。 2.直接对在TNS中加密的oracle登录密钥进行破解具体请参考安华金和数据库安全实验室发表《破解oracle9i、oracle10g、oracle11g密码》一文。3.在远程登陆过程中对服务器进行sql注入。利用某些特殊函数,创建新的数据库账号,并为新账号创建DBA权限。例如漏洞CVE-2006-0552就是这个类型的代表。第三类漏洞,通过缓冲区溢出控制数据库所在操作系统。这个类型具体可分两种方式:1.直接通过向TNS Listener发送含有异常字段的包,当oracle调用含有异常字段的包的时候,触发缓冲区溢出。具体可以参考安华金和数据库安全实验室发表《通过OracleTNS漏洞攻占oracle所在操作系统,进而入侵oracle》一文。2.向TNS Listener发送含有异常数据的包,直接触发缓冲区溢出,夺取数据库所在操作系统控制权限。例如漏洞CVE-2002-0965就是这个类型的代表。其中第三类漏洞在15个漏洞中分布最广泛。下面我们按照类型进行原理介绍。TNS Listener服务崩溃漏洞(第一类)第一类漏洞中的代表是CVE-2007-5507。GIOP格式的消息中的DWORD被用来描述后面的字段的长度。当DWORD被恶意的修改后,如果DWORD所指出的长度比实际的字段的长度要长。TNS Listener会按照DWORD的数值来分配内存,把实际的字段考入。再读取的时候按照DWPRD的长度去读取,就会导致读取失败。TNS Listener服务崩溃,无法接受客户端的请求。导致服务器无法响应客户端。TNS 劫持(第二类第一种)该问题几乎存在于Oracle的所有版本,并且Oracle至今仅是发布了警告性通知,并未提供解决方案。TNS劫持的核心点在于监听会按照目标数据库名递送到名称正确的数据库。通过远程注册的方法可以让一个监听下同时存在2个同名数据库(1个黑客的机器1个目标机器)。监听将自动按照负载均衡把每次访问发送到负载低的数据库上,进行连接访问。也就是说有高过一半的几率TNS Listener有可能把客户端的请求错误的发送到黑客的机器上。黑客的机器再配listener_name = (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=目标机器IP)(PORT=目标机器端口)))就可以变成客户端和目标机器的中间站。自己发送信息给目标机器,让目标机器误以为是客户端发送的信息。破解TNS默认加密方式(第二类第二种)虽然11g在登录信息加密上做了较大改善。但算法主体思想还是客户端和数据库分别以Oracle_hash为基础生成S_AUTH

文档评论(0)

haocen + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档