解密 ClassFinal 加密的 Java Jar 包
ClassFinal 是一款java class文件安全加密工具,支持直接加密jar包或war包,无需修改任何项目代码,兼容spring-framework;可避免源码泄漏或字节码被反编译。
要点
- 拿到 password
- 可能内置了
- META-INF/.classes/org.springframework.config.Pass
- 可能需要通过外部方式获取
- 命令行参数或者环境变量或者拦截 Class 加载
- 总的来说比较容易获取
- 可能内置了
- 将 jar 添加到 classpath - 方便直接调用 net.roseboy.classfinal 内内容
- 通过 IDE 或者通过命令行参数
- 解压 jar 到当前 目录 tmp
- 解密 class
- 反编译得到 java
- 添加 lib 目录到 classpath
- 通过 IDEA 可直接调用原始 jar 里内容或直接启动 Application
- 可能需要修改反编译后的 java 文件 - 部分反编译语法错误