Oracle数据库访问限制绕过漏洞(转)

受影响系统:Oracle Database 9.2.0.0 - 10.2.0.3

描述:BUGTRAQ ID: 17426

Oracle是大型的商业数据库系统。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 Windows: 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

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

注:


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-123130/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-123130/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle数据库提权原理涉及到Oracle数据库的权限管理和用户权限控制机制。 在Oracle数据库中,权限是分层次的,包括系统级权限和对象级权限。系统级权限用于控制数据库整体的操作,如创建用户、分配角色等;对象级权限用于控制对具体数据库对象(如表、视图、存储过程等)的操作。 当一个用户连接到Oracle数据库时,会使用一个用户名和密码进行认证。用户可以被授予不同的权限,这些权限可以直接授予给用户,也可以通过角色间接授予给用户。 在提权过程中,一般可以通过以下几种方式实现: 1. 知道管理员账号:如果获得了管理员账号(如sys账号),就可以直接拥有系统级权限,并可以创建或修改其他用户的权限。 2. 注入攻击:通过利用数据库应用程序的漏洞,执行恶意代码来提权。例如,通过SQL注入攻击可以执行未经授权的SQL语句,从而获取更高级别的访问权限。 3. 通过未修补的漏洞:如果数据库服务器存在已知的未修补漏洞,攻击者可以利用这些漏洞绕过权限限制,获得更高级别的访问权限。 4. 提权工具:一些专门用于提权的工具可以利用已知的漏洞或弱点,来获取更高级别的访问权限。 为了防止数据库提权攻击,建议采取以下措施: - 保持数据库软件和补丁的最新状态,定期更新数据库软件。 - 遵循最佳安全实践,如使用复杂的密码,定期更改密码,限制远程访问等。 - 对数据库应用程序进行安全审计和代码审查,修复潜在的漏洞。 - 限制用户的权限,并按照最小权限原则授予用户所需的权限。 - 监控数据库活动,及时发现并应对异常行为。 - 配置防火墙和入侵检测系统,及时检测和阻止潜在的攻击。 以上是Oracle数据库提权的一般原理和建议措施,具体情况可能会因数据库版本、配置和应用程序的不同而有所差异。在实际应用中,请根据具体情况采取相应的安全措施。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值