Chinaunix首页 | 论坛 | 博客
  • 博客访问: 584430
  • 博文数量: 772
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 4980
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 13:02
文章分类

全部博文(772)

文章存档

2011年(1)

2008年(771)

我的朋友

分类:

2008-10-17 13:24:14

受影响系统: Database 9.2.0.0 - 10.2.0.3

描述:BUGTRAQ ID: 17426

是大型的商业数据库系统。Oracle 9.2.0.0到10.2.0.3版本允许在基表中仅有SELECT权限的用户通过特制的视图插入/更新/删除数据,成功利用这个漏洞的低权限用户可以通过创建特制的视图导致插入、更新和删除数据。

这个漏洞对Oracle数据词典的影响较低,因为大多数词典表没有primary key,而利用这个漏洞必须primary key。

方法:

警告:以下程序(方法)可能带有攻击性,仅供研究与教学之用。使用者风险自负!

假设用户dbsnmp仅有SELECT ANY DICTIONARY权限,无法更新数据词典中的表格。

C:\>sqlplus dbsnmp/dbsnmp 
SQL*Plus: Release 10.1.0.4.0 - Production on Thu Apr 8 19:20:27 2006 
Copyright (c) 1982, 2005, Oracle. All rights reserved. 
Connected to: 
Oracle Database 10g Enterprise Edition Release 10.1.0.4.0
- Production With the Partitioning, OLAP and Data Mining options 
SQL> select * from v$version; 
BANNER 
Oracle Database 10g Enterprise Edition Release 10.1.0.4.0 
- Prod PL/SQL Release 10.1.0.4.0 - Production 
CORE 10.1.0.4.0 Production 
TNS for 32-bit : Version 10.1.0.4.0 - Production NLSRTL Version 
10.1.0.4.0 - Production 
SQL> -- 无法从数据词典删除数据(正常) 
SQL> delete from sys.registry$; 
delete from sys.registry$ 
* 
ERROR at line 1: 
ORA-01031: insufficient privileges 
SQL> -- 创建特制的自定义视图 
SQL> create or replace view e as select [...censored...]; 
View created. 
SQL> -- 通过视图丢弃数据!!! ==> 漏洞 !!! 
SQL> delete from e; 
17 rows deleted.

建议,临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 过滤9i到10g R1的连接角色,删除CREATE VIEW(以及CREATE DATABASE LINK等)权限。

* 从基表删除primary key。请注意这可能导致性能和完整性问题。

厂商补丁: Oracle

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本。

【责编:Star】

--------------------next---------------------

阅读(328) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~