среда, 17 июля 2013 г.

Просмотр зашифрованных паролей Weblogic

Если так случилось что забыт пароль от сервера есть способ восстановления. Первое надо иметь доступ к файловой системе и запустить сервер в remote debug. В файле

<DomainName>/config/config.xml

содержаться пароли в зашифрованном виде:
 

.....
{AES}Mv+trYlNHji2M5RJyvS8xMFjUlICjx9HZe2Fo3uNAy8=
.....
Находим в конфиге нужный нам пароль, копируем вместе с префиксом названия алгоритма шифрования. Подключаемся подцепляемся у дебагу своей средой разработки. Breakpoint можно поставить например в java.lang.Object#equals, тогда точка останова будет будет выполнена мгновенно. Далее через evaluate fragmrnt выполняем следующий код:
new String(new weblogic.security.internal.encryption.ClearOrEncryptedService(
        weblogic.security.internal.SerializedSystemIni.getEncryptionService
                (new java.io.File("d:\\Oracle\\jdevHome\\system11.1.1.6.38.62.29\\DefaultDomain\\").getAbsolutePath()))
        .decryptBytes("{AES}Mv+trYlNHji2M5RJyvS8xMFjUlICjx9HZe2Fo3uNAy8=".getBytes()));
И вуаля
Если нет возможности включить дебаг на сервере, то можно накидать маленькое приложение возрастающее пароль по входящему параметру.

Комментариев нет:

Отправить комментарий