gpt4 book ai didi

支持变量重命名的 Java 去混淆器?

转载 作者:行者123 更新时间:2023-11-30 07:58:28 26 4
gpt4 key购买 nike

我正在尝试对 .jar 文件(基本上是一组 .class 文件)进行逆向工程。但是,有两个难点:

  1. 部分变量、方法、类的命名方式为unicode字符,无法正常显示。这使得源代码编辑非常不方便。

  2. 有些类是用Java 关键字 命名的(例如if)。因此,Java 编译器在重新编译逆向工程源文件时会报错。

是否有任何 Java 反混淆器可以克服这些困难?

最佳答案

有几种工具可以重命名 Java 标识符。例如,您可以只运行 Proguard在上面重命名所有内容。

话虽如此,我建议重新考虑您的方法。 Java 编译和反编译都是有损过程。反编译对于逆向工程很有用,但你一般不能指望能够重新编译反编译后的代码。如果它以前被混淆过,你不妨忘记它。

修改混淆代码的最佳方法是使用 Krakatau assembler and disassembler . Krakatau 程序集可以可逆地转换为字节码和从字节码转换,这意味着您可以编辑任意类而不会把事情搞砸,不管它们是如何被混淆的。唯一的缺点是您必须熟悉 Java 字节码。

关于支持变量重命名的 Java 去混淆器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40442942/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com