Recuperar senha no Oracle 11g

Neste artigo estarei dando continuidade em um tema abordado anteriormente pelo Anderson Graf no post  Qual a senha mesmo?-Identified by values onde o mesmo explicou como acessar um owner, o qual não temos conhecimento da senha. Através da recuperação e conexão com a senha criptografada na versão 10g.

Esta técnica pode ser bastante útil em várias situações nas quais precisamos acessar um determinado usuário que onde não temos conhecimento da senha e também não podemos realizar a alteração da mesma.

Por exemplo:

  • O colaborador saiu de ferias e somente o seu usuário tem permissão para realizar determinadas atividades.
  • Quando existe a necessidade de conectar com um usuário para testar a liberação de determinadas permissões.
  • Conectar com o usuário para validar determinados processos, etc.

Na versão Oracle 11g, o processo de recuperação da senha criptografada se difere um pouco da versão 10g uma vez que no 11g temos um “aprimoramento” no nível de segurança do Oracle, com a possibilidade de utilização de senhas case sensitive.

Para confirmar se a base está usando senhas com case sensitive devemos verificar o parâmetro SEC_CASE_SENSITIVE_LOGON . Este é um parâmetro dinâmico que por padrão é definido como TRUE . Para desativar o case sensitive, basta altera-lo para FALSE.

No exemplo a seguir, precisamos conectar com o owner lamim, porém não temos acesso a senha do mesmo.

Se verificarmos na coluna PASSWORD da DBA_USERS, podemos observar que diferentemente da versão 10g, na 11g essa coluna não é populada.

<pre>SQL> select username, PASSWORD from dba_users where USERNAME='LAMIM';

USERNAME                       PASSWORD
------------------------------ ------------------------------
LAMIM

Afim de validar o processo que estara sendo realizado, estarei demontrando a senha atual do owner LAMIM, bem como validando que a mesma está em modo case sensitive. Na primeira conexão usando a senha LamiM com L e M maiúsculo a conexão foi estabelecida com sucesso. Já na tentativa com a senha lamim toda em minúsculo não foi possível estabelecer uma conexão.

SQL> show parameter case;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sec_case_sensitive_logon             boolean     TRUE
SQL>

SQL> conn lamim/LamiM
Connected.
SQL> show user
USER is "LAMIM"
SQL> conn lamim/lamim
ERROR:
ORA-01017: invalid username/password; logon denied

Warning: You are no longer connected to ORACLE.

Para identificar a senha criptografada na versão 11g, estaremos usando as colunas SPARE4 e PASSWORD da USER$. Por isso precisamos consulta-las e armazena-las para poder voltar a senha padrão.


SQL> col spare4 for a90
SQL> select NAME, SPARE4, PASSWORD from USER$ where NAME='LAMIM';

NAME SPARE4 PASSWORD
------------------------------ ------------------------------------------------------------------------------------------ ------------------------------
LAMIM S:6273B58E517EB4C3CD321DDFDFB1EDE7D107DE453B510449D9756AB6E4B3 3C3B7E8F1B042625

A senha criptografada será composta da seguinte forma ‘SPARE4;PASSWORD’.  Para poder conectar com o usuário e realizar as atividades necessárias, estaremos alterando temporariamente sua senha e posteriormente estaremos voltando a senha original, usando a senha criptografada que consultamos anteriormente.

  • Alterando a senha do usuário para uma senha temporária para podermos realizar a conexão:

SQL> alter user LAMIM identified by teste;

User altered.

SQL> conn lamim/teste
Connected.
SQL>
SQL> show user;
USER is "LAMIM"
SQL>

  • Voltando a senha original usando a senha criptografada – alter user <usuario> identified by values ‘<SPARE4;PASSWORD>’;

SQL> alter user LAMIM identified by values 'S:6273B58E517EB4C3CD321DDFDFB1EDE7D107DE453B510449D9756AB6E4B3;3C3B7E8F1B042625';

User altered.

SQL>

Afim de validar que realmente voltamos a senha original, estarei realizando o mesmo teste de conexão realizado no início do artigo.


SQL> conn lamim/LamiM
Connected.
SQL> show user;
USER is "LAMIM"
SQL> conn lamim/lamim
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
SQL>

É possível verificar que a senha permanece a mesma, inclusive continuando como case sensitive.

 

Fonte:

http://www.oracle.com/technetwork/pt/articles/database-performance/definicao-senhas-case-sensitive-11g-496237-ptb.html

http://docs.oracle.com/cd/B28359_01/server.111/b28320/initparams211.htm#REFRN10299

 

%name Recuperar senha no Oracle 11g

Autor: Jhonata Lamim

MBA em Banco de Dados Oracle, formado pelo Centro Universitário de Araraquara (UNIARA), graduado em Sistemas de Informação pelo Centro Universitário de Brusque (UNIFEBE).

Atua com Banco de Dados Oracle desde Junho de 2010. Atualmente é DBA Senior na Exímio Soluções em TI (www.eximioti.com.br)

Principais atividade:

Implementação, migração, gerenciamento e suporte a produtos Oracle (10g, 11g, 12c, RAC), multiplataforma;
Monitoramento de ambientes 24×7;
Backup e Recovery;
Performance e Tuning;
Alta disponibilidade (HA);
EM database/grid/cloud control 12c/13c;
Conversão de databases;
Standby database / Oracle Data Guard;
Migração de dados para Oracle;

Experiência:

DBA Oracle Teiko Soluções em TI – Jun/2010 – Abr/2018
DBA Oracle, Outsourcing – Marfrig Group – Set/2013 – Abr/2018
DBA Oracle, Outsourcing – Grupo Notre Dame – Intermédica – Mar/2017 – Abr/2018
DBA Oralce, Outsourcing – Hospital Beneficiência Portuguesa de São Paulo – Set/2015 – Abr/2018
DBA Oracle, Outsourcing – Fundação São Francisco Xavier –  Set/2015 – Fev/2017
DBA Oracle, Outsourcing – Unimed Grande Florianopolis – Set/2014 – Jul/2016
DBA Oracle, Outsourcing – Hospital Moinhos de Vento – Set/2014 – Set/2015
DBA Oracle, Outsourcing – Santa Casa de Misericórdia de Porto Alegre – 2013

Certificações:

OCS 12C – Oracle Real Application Clusters 12c Certified Implementation Specialist
OCS 12C – Oracle Database 12c Certified Implementation Specialist
OCE 11G – Oracle Database 11g: Performance Tuning
OCA 11G – Oracle Certified Associate Administrator
OCP 11G/12C – Oracle Certified Professional Administrator
OCS 11G – Oracle Certified Specialist
OPNCS 11G – Oracle Partner Network Certified Specialist
OCS – Oracle Linux 6 Implementation Essentials

Linkedin: https://www.linkedin.com/in/jhonata-lamim-dba-oracle-61366484/