de4dot 是一个很强的脱壳,反混淆工具,支持反混淆很多种混淆加密工具混淆过的源码,如 Xenocode、.NET Reactor、MaxtoCode、Eazfuscator.NET、Agile.NET、Phoenix Protector、Manco Obfuscator 、CodeWall、NetZ .NET Packer 、Rpx .NET Packer、Mpress .NET Packer、ExePack .NET Packer、Sixxpack .NET Packer、Rummage Obfuscator、Obfusasm Obfuscator、Confuser 1.7、Agile.NET、Babel.NET、CodeFort、CodeVeil、CodeWall、CryptoObfuscator、DeepSea Obfuscator、Dotfuscator、 Goliath.NET、ILProtector、MPRESS、Rummage、SmartAssembly、Skater.NET、Spices.Net 等。
github地址:
https://github.com/0xd4d/de4dot
1. 下载并运行,de4dot一直在针对市面上加密混淆软件进行更新反混淆脱壳方法,所以要在github上下载最新版本。
点击de4dot.netframework.sln 打开工程。
2. 简单配置 编译条件变量 NETFRAMEWORK , 否则会出现报错,设置Release 模式。
3. 编译成功后在de4dot-master目录下生成Release文件夹,其下net35 net45 子目录中包含可运行文件de4dot-x64.exe。
4.使用de4dot-x64.exe 反混淆C# dll exe 文件。
检测混淆类型 :
de4dot -d file1.dll file2.dll file3.dll
5.使用de4dot-x64.exe 脱壳C# dll exe 文件。
de4dot "d:\xx.exe" -p xc
-p xc 指定壳类型 , 这里是xc,表示Xenocode壳.
这样会在exe的相同目录生成一个 xx_cleaned.exe 的文件, 拖进ILSpy什么的去看代码吧.
要指定输出路径请使用 -o "d:\output\xx.exe"
多次加壳处理 2层壳,根据他的提示可以将其一层一层的脱掉,如下所示:(顺序不能错只能先-p mc,再-p df)
反混淆 脱壳后dll exe 文件拖到ILSpy.exe 程序中即可查看效果。
参考:
http://www.cnblogs.com/xqhppt/p/3561310.html
https://blog.csdn.net/dayu9216/article/details/78454980