oracle11g之后用户的密码已经不存储在dba_users中了
SQL> select *from v$version where rownum<2;
BANNER
----------------------------------------------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
SQL> select username,PASSWORD from dba_users where rownum<2;
USERNAME PASSWORD
-------------------- --------------------
SYS 8A8F025737A9097A
SQL> select * from v$version where rownum<2;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
SQL> col username for a20
SQL> col password for a20
SQL> select username,password from dba_users where rownum<2;
USERNAME PASSWORD
-------------------- --------------------
SYS
SQL>
10g的时候可能有人使用过orab破解过用户密码,这个还是挺好用的呵呵,但是对于11g来说这个软件好像不行了,可能是因为加密算法变了吧,在ORACLE 11g版本中,密码改成了Secure Hash Algorithm(SHA-1)算法,而不是以前的基于Data Encryption Standard(DES)的散列算法。
那么用户的密码到底存在那张表中那?
查看一下10G的dba_users的创建语句
SQL> select dbms_metadata.get_ddl('VIEW','DBA_USERS','SYS') from dual;
DBMS_METADATA.GET_DDL('VIEW','DBA_USERS','SYS')
--------------------------------------------------------------------------------
CREATE OR REPLACE FORCE VIEW "SYS"."DBA_USERS" ("USERNAME", "USER_ID", "PASSWO
PIRY_DATE", "DEFAULT_TABLESPACE", "TEMPORARY_TABLESPACE", "CREATED", "PROFILE",
"INITIAL_RSRC_CONSUMER_GROUP", "EXTERNAL_NAME") AS
select u.name, u.user#, u.password,
m.status,
decode(u.astatus, 4, u.ltime,
5, u.ltime,
6, u.ltime,
8, u.ltime,
9, u.ltime,
10, u.ltime, to_date(NULL)),
decode(u.astatus,
1, u.exptime,
2, u.exptime,
5, u.exptime,
6, u.exptime,
9, u.exptime,
10, u.exptime,
decode(u.ptime, '', to_date(NULL),
decode(pr.limit#, 2147483647, to_date(NULL),
decode(pr.limit#, 0,
decode(dp.limit#, 2147483647, to_date(NULL), u.ptime +
dp.limit#/86400),
u.ptime &
SQL> select *from v$version where rownum<2;
BANNER
----------------------------------------------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
SQL> select username,PASSWORD from dba_users where rownum<2;
USERNAME PASSWORD
-------------------- --------------------
SYS 8A8F025737A9097A
SQL> select * from v$version where rownum<2;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
SQL> col username for a20
SQL> col password for a20
SQL> select username,password from dba_users where rownum<2;
USERNAME PASSWORD
-------------------- --------------------
SYS
SQL>
10g的时候可能有人使用过orab破解过用户密码,这个还是挺好用的呵呵,但是对于11g来说这个软件好像不行了,可能是因为加密算法变了吧,在ORACLE 11g版本中,密码改成了Secure Hash Algorithm(SHA-1)算法,而不是以前的基于Data Encryption Standard(DES)的散列算法。
那么用户的密码到底存在那张表中那?
查看一下10G的dba_users的创建语句
SQL> select dbms_metadata.get_ddl('VIEW','DBA_USERS','SYS') from dual;
DBMS_METADATA.GET_DDL('VIEW','DBA_USERS','SYS')
--------------------------------------------------------------------------------
CREATE OR REPLACE FORCE VIEW "SYS"."DBA_USERS" ("USERNAME", "USER_ID", "PASSWO
PIRY_DATE", "DEFAULT_TABLESPACE", "TEMPORARY_TABLESPACE", "CREATED", "PROFILE",
"INITIAL_RSRC_CONSUMER_GROUP", "EXTERNAL_NAME") AS
select u.name, u.user#, u.password,
m.status,
decode(u.astatus, 4, u.ltime,
5, u.ltime,
6, u.ltime,
8, u.ltime,
9, u.ltime,
10, u.ltime, to_date(NULL)),
decode(u.astatus,
1, u.exptime,
2, u.exptime,
5, u.exptime,
6, u.exptime,
9, u.exptime,
10, u.exptime,
decode(u.ptime, '', to_date(NULL),
decode(pr.limit#, 2147483647, to_date(NULL),
decode(pr.limit#, 0,
decode(dp.limit#, 2147483647, to_date(NULL), u.ptime +
dp.limit#/86400),
u.ptime &