Translate

vendredi 15 décembre 2017

Decrypt WLST Password



L'autre jour chez un client j'avais besoin d'aller voir la console weblogic , cependant le client n''avait pas le bon mot de passe.

Pour essayer de le récupérer : 

$ locate boot.properties
/data/install/oracle/middleware/user_projects/domains/ClassicDomain/servers/AdminServer/security/boot.properties
/data/install/oracle/middleware/user_projects/domains/ClassicDomain/servers/WLS_REPORTS/security/boot.properties

$ cat /data/install/oracle/middleware/user_projects/domains/ClassicDomain/servers/AdminServer/security/boot.properties 
password={AES}AqTvVv8IVCNkT9ukqPtEXGz5LIza20NqGdSSBKc/DWA\=
username={AES}6F+45IFJ7IhGcZJQv96As9Q/hYl8BMPDtOH4NQj/oXI\=


Ici, il faudrait prendre la valeur inscrite dans le password et  enlever le "\" avant le "=" pour être utilisé dans les étapes ci-dessous. Donc, la valeur à utiliser serait : 

{AES}AqTvVv8IVCNkT9ukqPtEXGz5LIza20NqGdSSBKc/DWA=


$ /data/install/oracle/middleware/user_projects/domains/ClassicDomain/bin/setDomainEnv.sh
$ /data/install/oracle/middleware/oracle_common/common/bin/wlst.sh


CLASSPATH=/data/install/oracle/middleware/patch_wls1036/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/data/install/oracle/middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/usr/local/jdk1.6.0_29/lib/tools.jar:/data/install/oracle/middleware/wlserver_10.3/server/lib/weblogic_sp.jar:/data/install/oracle/middleware/wlserver_10.3/server/lib/weblogic.jar:/data/install/oracle/middleware/modules/features/weblogic.server.modules_10.3.6.0.jar:/data/install/oracle/middleware/wlserver_10.3/server/lib/webservices.jar:/data/install/oracle/middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/data/install/oracle/middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar::/data/install/oracle/middleware/oracle_common/modules/oracle.jrf_11.1.1/jrf-wlstman.jar:/data/install/oracle/middleware/oracle_common/common/wlst/lib/adfscripting.jar:/data/install/oracle/middleware/oracle_common/common/wlst/lib/adf-share-mbeans-wlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/lib/mdswlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/auditwlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/igfwlsthelp.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/jps-wlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/jps-wls-trustprovider.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/jrf-wlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/oamap_help.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/oamAuthnProvider.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/ossoiap_help.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/ossoiap.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/ovdwlsthelp.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/sslconfigwlst.jar:/data/install/oracle/middleware/oracle_common/common/wlst/resources/wsm-wlst.jar:/data/install/oracle/middleware/utils/config/10.3/config-launch.jar::/data/install/oracle/middleware/wlserver_10.3/common/derby/lib/derbynet.jar:/data/install/oracle/middleware/wlserver_10.3/common/derby/lib/derbyclient.jar:/data/install/oracle/middleware/wlserver_10.3/common/derby/lib/derbytools.jar::
Initializing WebLogic Scripting Tool (WLST) ...
Jython scans all the jar files it can find at first startup. Depending on the system, this process may take a few minutes to complete, and WLST may not return a prompt right away.
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands

Ici, il faut spécifier le chemin complet du domaine 

wls:/offline> domain = "/data/install/oracle/middleware/user_projects/domains/ClassicDomain"
wls:/offline> service = weblogic.security.internal.SerializedSystemIni.getEncryptionService(domain)
wls:/offline> encryption = weblogic.security.internal.encryption.ClearOrEncryptedService(service)
wls:/offline> print encryption.decrypt("{AES}AqTvVv8IVCNkT9ukqPtEXGz5LIza20NqGdSSBKc/DWA=")

Voilà, on a le mot de passe (Bien sûr, c'est un exemple) : wgm1agS 


wls:/offline> exit()
Exiting WebLogic Scripting Tool.

Aucun commentaire:

Enregistrer un commentaire