是否有用于反混淆java混淆代码的工具?
代码是从已编译的类中提取的,但它们是模糊的,不可读的。
答案 0 :(得分:14)
第一步是学习使用哪种工具进行模糊处理。也许已经有一个针对特定混淆器的“反混淆器”了。
另一方面,您也可以运行IDE并使用其重构功能。将类,方法和变量名重命名为敏感内容。使用您的人类逻辑思维能力来确定代码实际代表的内容并敏感地命名它们。而且画面会缓慢但肯定会增长。
祝你好运。答案 1 :(得分:9)
您是否尝试使用Java Deobfuscator (aka JDO)(一种智能反编译器)使代码不那么模糊?
目前JDO执行以下操作:
- 重命名混淆的方法,变量,常量和类名 独特,更具指示性 他们的类型
- 宣传整个源代码树(测试版)的变更
- 有一个易于使用的GUI
- 允许您指定字段,方法和类的名称(新功能!)
目前JDO没有这样做 以下(但可能有一天)
- 以任何方式修改方法字节码
答案 2 :(得分:6)
不是gravedig,但我写了一个适用于大多数商业混淆器的工具
答案 3 :(得分:5)
我使用Java Deobfuscator (aka JDO)但它有一些错误。它不能与区分大小写的文件名一起使用。 所以我已经更改了源代码并在sourceforge上传了一个补丁。 The patch,Download
答案 4 :(得分:1)
最有可能只有人类思维才能理解它。获得最好的反编译器并思考其输出。
答案 5 :(得分:1)
也许它适用于Unix / Linux / MacOS?
如果是这样,在重命名太长的名称之前,您可以将进程的一个步骤移动到VM,在此处解压缩代码。 Windows上的文件名限制有多长?