是否有任何工具可以将去混淆的代码重命名为.NET dll的可读代码?
OBFUSCATION =将原始变量名称,名称空间转换为不可读的变量名称,也改变控制流程,使恶意破解者难以猜出原始代码
DE-OBFUSCATION =混淆的逆过程。将不可读的变量名称,名称空间转换为可读的名称,如A1,A2(导致转换回原始名称是不可能的),以便于跟踪和理解原始源代码。
答案 0 :(得分:7)
您可以再次对其进行模糊处理,但禁用重载等选项。这样,成员将被命名为A,B,C,...而不是全部被命名为A(使用重载)或具有不可打印的名称。
此外,IL级优化器通常可以撤消控制流混淆,并删除旨在使反编译器崩溃的死代码。
一旦有可编译的代码,使用Visual Studio的重命名重构来引入名称。工具无法自动猜出适当的名称。
答案 1 :(得分:1)
否则您的意见中为什么会出现混淆工具?你所谓的可读变量名称在混淆程序集中不再存在,因为它们已被重命名为不可读,并且没有工具可以猜出原始名称是什么。
答案 2 :(得分:0)
你的意思是在编译的dll中查看代码吗?如果是这样我使用redgate .net Reflector。