我有一个 jar 文件,它被强混淆了。
- 当我尝试将其放入 bytecode-viewer 和 luyten 等反编译器时,我看到了很多行陷阱和中文字母。
- 我尝试使用java-debofuscator对其进行反混淆,但不幸的是,反混淆器崩溃了。
我有一个 jar 文件,它被强混淆了。
首先,您是否尝试过 Krakatau 反编译器?Krakatau 是专门为处理混淆的 Java 字节码而设计的,尽管反编译器不支持 lambda 并且对用户不是很友好。
话虽如此,重命名的标识符并不是任何工具都能够帮助您的。您只需要对其进行逆向工程并自己将它们更改为更有意义的名称。
如果反编译失败,您也可以尝试使用 Krakatau 反汇编程序。反汇编的优点是它始终有效,无论字节码被混淆的程度如何。它让您可以查看字节码中的真实内容,而不会因反编译而出现混乱。缺点是它通常更难阅读。
您可以尝试使用我创建的名为Threadtear的工具来消除那些无意义的跳跃。它类似于 java-deobfuscator,但具有 GUI 并支持较新的混淆器版本。使用通用 > 去除明显的流混淆。您还可以重新混淆类名/方法名以摆脱烦人的中文字母。