Java反编译反混淆神器 - CFR

官网网址http://www.benf.org/other/cfr/

用法相当简单,这是一个可执行jar包,把要反编译的jar传为参数即可。比如我要反编译的jaraaa.1.0.jar,则运行

java -jar cfr-0.152.jar D:\\aaa.1.0.jar

就能在控制台看到输出了。

当然我们可以重定向到文件:

java -jar cfr-0.152.jar D:\\aaa.1.0.jar >> dec.txt

所有的类都是在同一个文件里,我也不知道有啥方法可以直接生成多个Java文件。

上面这样运行后并没有反混淆,里面的变量名字依然一样。我们需要多加一个参数:

--renamedupmembers true

望文生义都能知道参数的意思是把重名的变量改个名:

java -jar cfr-0.152.jar D:\\aaa.1.0.jar --renamedupmembers true >> dec.txt

所以这样就可以了。

接下来是最后一个问题:这样反编译的结果中,所有的中文都被转为unicode了,如何解决呢?可以增加一个参数:

--hideutf false

猜你喜欢

转载自blog.csdn.net/qq_44732146/article/details/129736839