一文解密所有WebLogic密文
字数 1615 2025-08-18 11:39:08
WebLogic密文解密完全指南
一、WebLogic加密概述
WebLogic目前使用两种加密方式:
- 3DES:旧版本WebLogic使用的加密标准
- AES:WebLogic 11gR1(10.3.6)及之后版本使用的加密标准
加密方式识别
- AES密文格式:
{AES}ObwFrA5PSOW+/7+vgtZpxk/1Esw81ukoknfH4QUYjWY= - 3DES密文格式:
{3DES}JMRazF/vClP1WAgy1czd2Q==
WebLogic版本与加密方式对应关系
| 版本系列 | 具体版本 | 加密方式 |
|---|---|---|
| WebLogic 12c系列 | 12.2.1.4, 12.2.1.3等 | AES |
| WebLogic 11gR1 PS5 | 10.3.6 | AES |
| WebLogic 11gR1 PS4及以下 | 10.3.5及以下 | 3DES |
二、解密前的准备工作
必需文件
-
密钥文件:
SerializedSystemIni.dat- 位置:
/weblogic_domain/security/SerializedSystemIni.dat - 注意:该文件为二进制文件,大小应为64字节
- 位置:
-
密文来源
- 数据库连接字符串:
/config/jdbc/*jdbc.xml - 控制台密码:
/security/boot.properties
- 数据库连接字符串:
三、七种解密方法详解
方法1:官方WLST解密方法
适用场景:服务器本地执行
成功率:较低
步骤:
- 创建
decryptWLSPwd.py文件 - 执行命令:
java weblogic.WLST decryptWLSPwd.py <domain_path> "<encrypted_password>"
方法2:NetSPI工具解密
适用场景:本地执行
成功率:一般
Java版步骤:
- 下载
bcprov-jdk15on-162.jar并放置到$JAVA_HOME/jre/lib/ext/ - 修改
$JAVA_HOME/jre/lib/security/java.security,添加:security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider - 编译并运行工具
方法3:Java代码解密1
适用场景:本地或服务器执行
成功率:高
步骤:
- 创建
Decrypt.java文件 - 执行环境配置:
source /weblogic_path/wlserver_10.3/server/bin/setWLSEnv.sh - 编译并运行:
javac Decrypt.java java Decrypt "{AES}encrypted_password"
方法4:Java代码解密2(XML批量解密)
适用场景:批量解密配置文件
步骤:
- 创建
WebLogicDecryptor.java文件 - 编译并运行:
javac WebLogicDecryptor.java java WebLogicDecryptor /path/to/domain /path/to/config.xml
方法5:本地GUI工具解密
适用场景:Windows本地执行
成功率:高
使用:
- 下载
weblogic_decrypt.jar - 选择
SerializedSystemIni.dat文件 - 输入密文即可解密
方法6:JSP解密1(服务器端)
适用场景:通过WebShell上传
步骤:
- 修改jsp中的路径配置:
private static final String Secruity_path = "/path/to/domain/security"; private static final String Config_path = "/path/to/domain/config/config.xml"; - 上传到服务器访问
方法7:JSP解密2(服务器端简单版)
适用场景:快速解密单个密码
步骤:
- 修改jsp中的密文:
s="{AES}encrypted_password"; - 上传到服务器访问
四、常见问题解决
-
解密失败可能原因:
- 密钥文件损坏(下载时应用二进制方式)
- 密文格式错误(如
{AES}Nu2LEjo0kxMEd4G5L9bYLE5wI5fztbgeRpFec9wsrcQ\=需去掉\) - 版本不匹配(确认WebLogic版本与加密方式)
-
密钥文件下载技巧:
- 使用tar命令打包后再下载:
tar -czf SerializedSystemIni.dat.tar.gz SerializedSystemIni.dat - 或使用Burpsuite的"copy to file"功能
- 使用tar命令打包后再下载:
五、工具下载
所有工具和脚本已打包:
https://github.com/TideSec/Decrypt_Weblogic_Password
六、总结建议
- 推荐方法:方法5(GUI工具)和方法7(JSP简单版)成功率最高
- 批量解密:使用方法4(Java代码2)
- 服务器环境:优先使用方法3或方法6/7
- 注意安全:解密操作可能触发安全审计,谨慎操作