.net 反编译工具

由于之前的一款强大的反编译工具.NET Reflector®采取了收费模式,所以下面介绍一款免费的强大的.net 反编译软件ILSpy

如下图所示:

 

 

 

 

dotPeek

 

ILSpy 下载地址http://ilspy.net/

 

dotpeek

官方地址:http://www.jetbrains.com/decompiler/

 

Telerik

下载地址:http://www.telerik.com/products/decompiler.aspx

 

目前比较常用的混淆(加壳)有Dotfuscator,MaxToCode,Xenocode,ThemIDA. 
反混淆的工具有很多Dedot ,DePhe,XeCoString等,但是这些只能剥对应算法,今天重点推荐一个工具 De4Dot 
De4Dot支持多种反混淆.Dotfuscator,MaxToCode 

 

De4Dot是一个开源的脱壳/反混淆工具,这款工具可以奉为神器级工具。因为它的脱壳能力的确很强,使用它可以成功地脱掉了Dotfuscator、MaxToCode处理过的程序,至于其它的加壳/反混淆工具比如说Xenocode、ThemIDA等我还没有进行过实验,之后我将计划研究各类加壳/反混淆工具的脱壳方法,我深信De4Dot能够给我带来巨大帮助。(由于De4Dot是开源的,我相信即便De4Dot暂时处理不了的壳通过扩展其功能必将能解决)

支持以下几种反混淆:
CliSecure
Crypto Obfuscator
Dotfuscator
.NET Reactor 4.x
Eazfuscator.NET
SmartAssembly 4.x-6.x
Xenocode
用法说明:
开始-运行-cmd
输入以下命令:
de4dot工具解压路径\de4dot --dont-rename -f 你要反混淆的程序集dll
例如:
C:\Users\Administrator\Desktop\de4dot\de4dot --dont-rename -f C:\Users\Administrator\Desktop\zkcms.dll
特点:
伪随机列表会做的事情,它取决于什么混淆混淆组装:
内联方法。有些混淆器移动到另一个静态方法的方法,并调用它的一小部分。
解密字符串的静态或动态
解密等常量。有些混淆器也可以加密其他常数,如整数,双打等
解密方法静态或动态
删除代理方法。许多混淆器取代大多数/所有调用指令调用委托。此委托依次调用真正的方法。
重命名符号。尽管大多数符号不能恢复,将它们重命名为人类可读的字符串。有时,一些原来的名称可以被恢复,虽然。
Devirtualize虚拟化代码
解密资源。许多混淆器有一个选项来加密.NET资源。
解密嵌入的文件。许多混淆器有一个嵌入,可能加密/压缩其他组件的选项。
删除篡改检测代码
删除反调试代码
控制流反混淆。许多混淆器修改IL代码,所以它看起来像意大利面条式的代码很难理解代码。
还原类字段。有些混淆器可以移动领域从一个类来创建类其他一些混淆。
PE EXE转换.NET exe文件。有些模糊处理一个Win32 PE等包装.NET程序集里面的.NET反编译器无法读取该文件。
移除大多数/所有的垃圾类添加混淆。
修复了一些的peverify错误。许多混淆器是马车和创建无法验证的代码错误。
还原类型的方法的参数和字段

 

 

Source code: https://github.com/0xd4d/de4dot

Binaries: https://github.com/0xd4d/de4dot/downloads

It currently supports the following .NET obfuscators:

  • Babel.NET
  • Cli_Secure
  • CodeVeil
  • Crypto Obfuscator
  • DeepSea
  • Dotfuscator
  • Goliath.NET
  • .NET Reactor
  • Eazfuscator.NET
  • MaxtoCode
  • Skater.NET
  • SmartAssembly
  • Spices.Net
  • Xenocode

It has partial support for other obfuscators, but the result might not be runnable.

Depending on obfuscator, it will do one or more of the following:

  • Rename obfuscated symbols
  • Deobfuscate control flow
  • Decrypt strings
  • Decrypt and dump embedded assemblies
  • Decrypt resources
  • Decrypt methods
  • Fix proxy calls
  • Inline methods
  • Remove error reporting code (added exception handlers)
  • Restore field and method arg types
  • Get rid of added obfuscator classes and methods

 

 

posted on   youhui  阅读(1103)  评论(0编辑  收藏  举报

编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示