Bo's Oracle Station

查看: 2527|回复: 0

第37次活动:2017-11-29(星期三晚上7:00-9:30)

[复制链接]

1005

主题

1469

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
12012
发表于 2017-11-29 20:31:37 | 显示全部楼层 |阅读模式
  1. select * from system_privilege_map
  2.   order by name;

  3. select * from table_privilege_map;

  4. select * from dba_roles;

  5. select  * from user$ where name='SH' ;

  6. grant sysdba to hr;

  7. grant sysdba to oe;

  8. alter user oe identified by oracle_4U account unlock;

  9. select  * from dba_sys_privs sp where sp.privilege='CREATE TABLE';

  10. revoke sysdba from oe;

  11. select  * from dba_sys_privs sp where sp.grantee='HR';

  12. select  * from dba_tab_privs tp where tp.grantee='HR';

  13. select  * from dba_role_privs rp where rp.grantee='HR';

  14. grant select_catalog_role to hr;


  15. select  * from dba_users u
  16. where u.username='SYS';

  17. select  * from dba_users u
  18. where u.username='USER3';
复制代码
SQLPLUS:
  1. [root@station90 桌面]# su - oracle
  2. [oracle@station90 ~]$ cd /u01/app/oracle/product/
  3. [oracle@station90 product]$ ls
  4. 11.2.0  11.2.0.3
  5. [oracle@station90 product]$ cd 11.2.0
  6. [oracle@station90 11.2.0]$ ls
  7. dbhome_1  grid
  8. [oracle@station90 11.2.0]$ cd dbhome_1/
  9. [oracle@station90 dbhome_1]$ ls
  10. apex         config  dc_ocm       has            javavm  log      odbc         oui      rdbms         sqlplus                     usm
  11. assistants   crs     deinstall    hs             jdbc    md       olap         owb      relnotes      srvm                        utl
  12. bin          csmig   demo         ide            jdev    mesg     OPatch       owm      root.sh       station90.example.com_orcl  wwg
  13. ccr          css     diagnostics  install        jdk     mgw      opmn         perl     scheduler     sysman                      xdk
  14. cdata        ctx     dv           instantclient  jlib    network  oracore      plsql    slax          timingframework
  15. cfgtoollogs  cv      emcli        inventory      ldap    nls      oraInst.loc  precomp  sqldeveloper  ucp
  16. clone        dbs     EMStage      j2ee           lib     oc4j     ord          racg     sqlj          uix
  17. [oracle@station90 dbhome_1]$ cd dbs
  18. [oracle@station90 dbs]$ ls
  19. hc_DBUA0.dat  hc_orcl.dat  hc_rcat.dat  init.ora  initorcl.ora  lkORCL  orapworcl  orapwrcat  snapcf_orcl.f  spfilercat.ora
  20. [oracle@station90 dbs]$ vim orapworcl
  21. [oracle@station90 dbs]$ vim orapworcl
  22. [oracle@station90 dbs]$ sqlplus /nolog

  23. SQL*Plus: Release 11.2.0.3.0 Production on Wed Nov 29 20:00:11 2017

  24. Copyright (c) 1982, 2011, Oracle.  All rights reserved.

  25. SQL> conn hr/oracle_4U@orcl as sysdba
  26. ERROR:
  27. ORA-01031: insufficient privileges


  28. SQL> conn hr/oracle_4U as sysdba
  29. Connected.
  30. SQL> conn / as sysdba
  31. Connected.
  32. SQL> alter user sys account lock;

  33. User altered.

  34. SQL> conn / as sysdba
  35. Connected.
  36. SQL> conn sys/oracle_4U@orcl as sysdba
  37. Connected.
  38. SQL> conn / as sysdba
  39. Connected.
  40. SQL> drop user sys;
  41. drop user sys
  42. *
  43. ERROR at line 1:
  44. ORA-01031: insufficient privileges


  45. SQL> drop user sys;
  46. drop user sys
  47. *
  48. ERROR at line 1:
  49. ORA-01031: insufficient privileges


  50. SQL> drop user system ;
  51. drop user system
  52. *
  53. ERROR at line 1:
  54. ORA-01922: CASCADE must be specified to drop 'SYSTEM'


  55. SQL> drop user system cascade ;
  56. drop user system cascade
  57. *
  58. ERROR at line 1:
  59. ORA-00604: error occurred at recursive SQL level 1
  60. ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired


  61. SQL> conn system/oracle_$U
  62. ERROR:
  63. ORA-01017: invalid username/password; logon denied


  64. Warning: You are no longer connected to ORACLE.
  65. SQL> conn system/oracle_4U
  66. ERROR:
  67. ORA-28002: the password will expire within 7 days


  68. Connected.
  69. SQL> conn / as sysdba
  70. Connected.
  71. SQL> alter user sys password expire;

  72. User altered.

  73. SQL> conn / as sysdba
  74. Connected.
  75. SQL> conn sys/oracle_4U@orcl as sysdba
  76. Connected.
  77. SQL> show parameter authen

  78. NAME                                     TYPE         VALUE
  79. ------------------------------------ ----------- ------------------------------
  80. os_authent_prefix                     string         ops$
  81. remote_os_authent                     boolean         FALSE
  82. SQL> create user ops$oracle identified externally  ;

  83. User created.

  84. SQL> conn /
  85. ERROR:
  86. ORA-01045: user OPS$ORACLE lacks CREATE SESSION privilege; logon denied


  87. Warning: You are no longer connected to ORACLE.
  88. SQL> conn / as sysdba
  89. Connected.
  90. SQL> grant create session to ops$oracle;

  91. Grant succeeded.

  92. SQL> conn /
  93. Error accessing PRODUCT_USER_PROFILE
  94. Warning:  Product user profile information not loaded!
  95. You may need to run PUPBLD.SQL as SYSTEM
  96. Connected.
  97. SQL> show user
  98. USER is "OPS$ORACLE"
  99. SQL>
  100. SQL>
  101. SQL>
  102. SQL> conn hr/oracle_4U
  103. ERROR:
  104. ORA-28002: the password will expire within 7 days


  105. Error accessing PRODUCT_USER_PROFILE
  106. Warning:  Product user profile information not loaded!
  107. You may need to run PUPBLD.SQL as SYSTEM
  108. Connected.
  109. SQL> exit
  110. Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
  111. With the Partitioning, Automatic Storage Management, OLAP, Data Mining
  112. and Real Application Testing options
  113. [oracle@station90 dbs]$ cd /u01/app/oracle/product/11.2.0
  114. [oracle@station90 11.2.0]$ ls
  115. dbhome_1  grid
  116. [oracle@station90 11.2.0]$ cd dbhome_1/
  117. [oracle@station90 dbhome_1]$ ls
  118. apex         config  dc_ocm       has            javavm  log      odbc         oui      rdbms         sqlplus                     usm
  119. assistants   crs     deinstall    hs             jdbc    md       olap         owb      relnotes      srvm                        utl
  120. bin          csmig   demo         ide            jdev    mesg     OPatch       owm      root.sh       station90.example.com_orcl  wwg
  121. ccr          css     diagnostics  install        jdk     mgw      opmn         perl     scheduler     sysman                      xdk
  122. cdata        ctx     dv           instantclient  jlib    network  oracore      plsql    slax          timingframework
  123. cfgtoollogs  cv      emcli        inventory      ldap    nls      oraInst.loc  precomp  sqldeveloper  ucp
  124. clone        dbs     EMStage      j2ee           lib     oc4j     ord          racg     sqlj          uix
  125. [oracle@station90 dbhome_1]$ cd sql
  126. sqldeveloper/ sqlj/         sqlplus/      
  127. [oracle@station90 dbhome_1]$ cd sqlplus/
  128. [oracle@station90 sqlplus]$ ls
  129. admin  bin  doc  lib  mesg
  130. [oracle@station90 sqlplus]$ cd admin/
  131. [oracle@station90 admin]$ ls
  132. glogin.sql  help  libsqlplus.def  plustrce.sql  pupbld.sql
  133. [oracle@station90 admin]$ sqlplus /nolog

  134. SQL*Plus: Release 11.2.0.3.0 Production on Wed Nov 29 20:21:49 2017

  135. Copyright (c) 1982, 2011, Oracle.  All rights reserved.

  136. SQL> conn system/oracle_4U
  137. ERROR:
  138. ORA-28002: the password will expire within 7 days


  139. Connected.
  140. SQL> @pupbld.sql
  141. DROP SYNONYM PRODUCT_USER_PROFILE
  142.              *
  143. ERROR at line 1:
  144. ORA-01434: private synonym to be dropped does not exist


  145.   DATE_VALUE FROM PRODUCT_USER_PROFILE
  146.                   *
  147. ERROR at line 3:
  148. ORA-00980: synonym translation is no longer valid


  149. DROP TABLE PRODUCT_USER_PROFILE
  150.            *
  151. ERROR at line 1:
  152. ORA-00942: table or view does not exist


  153. ALTER TABLE SQLPLUS_PRODUCT_PROFILE ADD (LONG_VALUE LONG)
  154. *
  155. ERROR at line 1:
  156. ORA-00942: table or view does not exist



  157. Table created.

  158. DROP TABLE PRODUCT_PROFILE
  159.            *
  160. ERROR at line 1:
  161. ORA-00942: table or view does not exist


  162. DROP VIEW PRODUCT_PRIVS
  163. *
  164. ERROR at line 1:
  165. ORA-00942: table or view does not exist



  166. View created.


  167. Grant succeeded.


  168. Synonym dropped.


  169. Synonym created.

  170. DROP SYNONYM PRODUCT_USER_PROFILE
  171.              *
  172. ERROR at line 1:
  173. ORA-01434: private synonym to be dropped does not exist



  174. Synonym created.


  175. Synonym dropped.


  176. Synonym created.

  177. SQL> conn /
  178. Connected.
  179. SQL> conn hr/oracle_4U
  180. ERROR:
  181. ORA-28002: the password will expire within 7 days


  182. Connected.
  183. SQL> !pwd
  184. /u01/app/oracle/product/11.2.0/dbhome_1/sqlplus/admin

  185. SQL> conn /
  186. Connected.
  187. SQL> show user
  188. USER is "OPS$ORACLE"
  189. SQL> conn / as sysdba
  190. Connected.
  191. SQL> conn /
  192. Connected.
  193. SQL> conn hr/oracle_4U@orcl
  194. ERROR:
  195. ORA-28002: the password will expire within 7 days


  196. Connected.
  197. SQL> conn /@orcl
  198. ERROR:
  199. ORA-01017: invalid username/password; logon denied


  200. Warning: You are no longer connected to ORACLE.
  201. SQL> conn /
  202. Connected.
  203. SQL> conn / as sysdba
  204. Connected.
  205. SQL> exit
  206. Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
  207. With the Partitioning, Automatic Storage Management, OLAP, Data Mining
  208. and Real Application Testing options
  209. [oracle@station90 admin]$ echo $TNS_ADMIN
  210. /u01/app/oracle/product/11.2.0/grid/network/admin
  211. [oracle@station90 admin]$ sqlplus /nolog

  212. SQL*Plus: Release 11.2.0.3.0 Production on Wed Nov 29 20:27:08 2017

  213. Copyright (c) 1982, 2011, Oracle.  All rights reserved.

  214. SQL> conn /
  215. ERROR:
  216. ORA-01017: invalid username/password; logon denied


  217. SQL> conn / as sysdba
  218. ERROR:
  219. ORA-01031: insufficient privileges


  220. SQL> conn /
  221. ERROR:
  222. ORA-01017: invalid username/password; logon denied


  223. SQL> exit
  224. [oracle@station90 admin]$ sqlplus /nolog

  225. SQL*Plus: Release 11.2.0.3.0 Production on Wed Nov 29 20:27:35 2017

  226. Copyright (c) 1982, 2011, Oracle.  All rights reserved.

  227. SQL> conn /
  228. Connected.
  229. SQL> conn / as sysdba
  230. Connected.
  231. SQL>

复制代码

Screenshot.png


口令过期:
Screenshot-1.png

  1. select * from dba_users u
  2. where u.username='USER3';

  3. alter user user3 account lock;

  4. alter user user3 account unlock;

  5. alter user user3 password expire;

  6. select * from dba_users u
  7. where u.username='USER3';
复制代码
  1. select  * from dba_sys_privs sp where sp.grantee='USER3';

  2. select  * from dba_tab_privs tp where tp.grantee='USER3';

  3. select  * from dba_role_privs rp where rp.grantee='USER3';

  4. grant create table to user3  with admin  option ;

  5. revoke create table from user3;
复制代码
  1. grant select  on   employees to user3 with grant option;

  2. revoke select  on employees from user3;

  3. grant update (email) on employees to user3;
复制代码

  1. select  * from dba_col_privs  c
  2.   where c.grantee='USER3';
  3.   
  4.   select  * from dba_sys_privs sp where sp.grantee='USER3';

  5. select  * from dba_tab_privs tp where tp.grantee='USER3';

  6. select  * from dba_role_privs rp where rp.grantee='USER3';
  7.   
  8.   select * from dba_roles order by 1;
  9.   
  10.   create role role1;
  11.   
  12.   select  * from role_sys_privs rsp where rsp.role='ROLE1';
  13.   
  14.   select * from role_tab_privs rtp where rtp.role='ROLE1';
  15.   
  16.   
  17.   
  18.   select * from role_role_privs rrp where rrp.role='ROLE1';
  19.   
  20.   grant select on hr.employees to role1;
  21.   
  22.   grant update ( email )  on hr.employees to role1;
  23.   
  24.   grant role1 to user3 with admin option;
  25.   
  26.   revoke role1 from user3;
  27.   
  28.   revoke update  on hr.employees from role1;
  29.   
  30.   revoke select  on hr.employees from role1;
  31.   
  32.   
复制代码
  1. grant select on hr.employees to role1;

  2. create role role2 ;

  3. grant role1 to role2;


  4. grant role2 to user1;

  5. select * from role_role_privs rrp where rrp.role='ROLE2';

  6. select  * from dba_role_privs rp
  7. where rp.grantee='USER1';

  8. alter user   user1 default role connect;


  9. select  * from dba_roles r where r.role='ROLE2';


  10. alter role role2 identified by oracle_4U;


  11. grant role2 to user2;
  12. select  * from dba_role_privs rp
  13. where rp.grantee='USER2';

  14.   alter user   user1 default role none;


  15.    
  16.   select  * from role_sys_privs rsp where rsp.role='RESOURCE';
  17.   
  18.   select * from role_tab_privs rtp where rtp.role='RESOURCE';
  19.   
  20.   
  21.   
  22.   select * from role_role_privs rrp where rrp.role='RESOURCE';
  23.   
  24.   grant resource to user2;
复制代码

unlimited tablespace 彩蛋:
Screenshot-2.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-4-20 00:38 , Processed in 0.037576 second(s), 27 queries .

快速回复 返回顶部 返回列表