忘记APPS密码 - EBS从数据库中反编译获取APPS密码



1.   获取GUEST用户密码(前台用户)
  ERP中GUEST默认密码一般都是ORACLE
  该密码可以从v$CONTEXT_FILE中得到


2.创建解密PACKAGE

CREATE OR REPLACE PACKAGE APPS.cux_fnd_web_sec AUTHID CURRENT_USER
AS
   FUNCTION encrypt (
      KEY   IN VARCHAR2,
      VALUE IN VARCHAR2
   )
      RETURN VARCHAR2;

    FUNCTION decrypt (
      KEY IN VARCHAR2,
      VALUE IN VARCHAR2
   )
      RETURN VARCHAR2;
END;



CREATE OR REPLACE PACKAGE BODY APPS.cux_fnd_web_sec
AS
   FUNCTION encrypt (
      KEY   IN VARCHAR2,
      VALUE IN VARCHAR2
   )
      RETURN VARCHAR2
   AS
      LANGUAGE JAVA
      NAME 'oracle.apps.fnd.security.WebSessionManagerProc.encrypt(java.lang.String,java.lang.String) return java.lang.String';

   FUNCTION decrypt (
      KEY IN VARCHAR2,
      VALUE IN VARCHAR2
   )
      RETURN VARCHAR2
   AS
      LANGUAGE JAVA
      NAME 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String';
END;



3.获取APPS密码

--取得APPS密码密文
select encrypted_foundation_password from apps.fnd_user_view where user_name='GUEST';
得到一长串加密的APPS密码。

--取得APPS密码明文
将加密的APPS密码放在如下SQL中的第二个参数,得到明文密码。

select apps.cux_fnd_web_sec.decrypt('GUEST/ORACLE','ZGDC6BEF0EAEDA62FFE38153CFD688DFB90CFCFEDD9CE12DECF2890969055A59139DA610B0A96574B6644EF06F7FF0163CD8') pwd from dual;

请使用浏览器的分享功能分享到微信等