gpt4 book ai didi

java - 更改类文件中的值

转载 作者:行者123 更新时间:2023-12-01 11:00:29 25 4
gpt4 key购买 nike

使用 ClassEditor,我可以更改常量的值,但是是否可以更改设置值的代码?

以下是文件中显示的示例代码:

this.varr[this.sval] = 11;

如何编辑该文件,以便将值设置为 33,而不是 11?

最佳答案

如果您想进入逆向工程,您可能需要研究 BCEL ( https://commons.apache.org/proper/commons-bcel/ ) 或 ASM ( http://asm.ow2.org/ )

这里有一些关于字节码的小事,网上有很多,http://www.javaworld.com/article/2077233/core-java/bytecode-basics.html

基本上,java会在内存中存储一​​个值,您需要获取字节码并找出内存在哪里,然后存储一个不同的值。

这是 JBE,它可用于简单的字节码编辑,http://set.ee/jbe/

有时代码可以受到保护,例如android java代码受到proguard的保护...有时人们使用ZKM http://www.zelix.com/klassmaster/features.html

有一些称为反混淆器的工具试图逆转这些类型的保护。它们通常都很好,但通常会在 while 循环上失败,如果您需要它们,您应该自己找到它们。基本上,混淆器所做的就是使用字节码中的 goto 函数将事物从堆栈上的正常位置多次推送到其他位置...并且它们几乎总是通过使用字节移位来搞乱常量 int 值...

关于java - 更改类文件中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33370378/

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