如何去混淆公共类名 .NET

逆向工程 反编译 。网 C#
2021-06-14 21:23:13

在此处输入图片说明

我已经尝试了所有 dll 和 exe 的 de4dot 并尝试删除强名称,但不起作用。

我究竟做错了什么?

1个回答

将我的多条评论转换为未来读者的答案:

您不能总是对 .NET 二进制文件进行反混淆处理。如果在编译二进制文件时,混淆实现会在它引用的每个地方修改名称本身,那么(被破坏的名称)就是你的名称,逆向者。就好像开发人员首先使用这些混淆的名称开发应用程序一样。

根据您要完成的任务,这是其他分析(静态 [研究二进制文件而不执行(运行)它们] 和/或动态 [在执行时研究二进制文件])发挥作用的地方,您必须找到方法混淆的所有内容的含义(好吧,至少是您感兴趣的所有内容)。这绝不是一项微不足道的任务,但这是在没有有意义的符号/名称的情况下必须开始考虑的事情(这在缺少符号名称的托管(非 CLR)二进制文件中很常见)。