.net反编译的九款神器
本人搜集了下8款非常不错的.Net反编译利器:
Reflector是最为流行的.Net反编译工具。Reflector是由微软员工Lutz Roeder编写的免费程序。Reflector的出现使·NET程序员眼前豁然开朗,因为这个免费工具可以将·NET程序集中的中间语言反编译成C#或者Visual Basic代码。除了能将IL转换为C#或Visual Basic以外,Reflector还能够提供程序集中类及其成员的概要信息、提供查看程序集中IL的能力以及提供对第三方插件的支持。
但遗憾的是后面的版本收费了。
2、ILSpy
ILspy是一款非常优秀的.net平台反编译软件,使用ILspy,可以轻松的反编译C#及VB程序,软件本身是C#程序,是一款开源软件。
3、de4dot
de4dot是一款C#编写的基于GPLv3协议的一个开源的.net反混淆脱壳工具,是目前.net下非常不错的一款反编译工具。支持Dotfuscator,.NET Reactor,MaxtoCode,SmartAssembly,Xenocode等10多个反混淆工具。
JustDecompile是Telerik公司推出一个免费的.net反编译工具,支持插件,与Visual Studio 集成,能够创建Visual Studio project文件。JustDecompile与Reflector相比的话,个人更喜欢JustDecompile,因为他免费,而且对于一些C#动态类型的反编译效果比较好,对于某个第三方程序集,如果它缺乏文档,或者是一个bug 或性能问题的根源,反编译往往是最快捷的解决方案。Telerik已经将 Reflexil、程序集编辑器(assembly editor)和 De4Dot 等插件集成到了JustDecompile中。
5、DnSpy
dnSpy是一款开源的基于ILSpy发展而来的.net程序集的编辑,反编译,调试神器。
主要功能:1、程序集编辑;2、反编译器;3、调试工具;4、Tabs及tabs分组;5、提供多主题。
6、dotPeek
JetBrains dotPeek 是JetBrains公司发布的一款免费的.NET反编译器。反编译来源生成项目之后,用户不需要离开dotPeek就能够浏览项目文件。
脱壳工具NETUnpack,可以脱去DotNetReactor等加的壳,非常强悍。
DotNet Id是一款net的查壳工具。DotNet Id官方最新版可以查是哪些软件保护加密或混淆处理的:MaxToCode .Net Reactor Rustemsoft Skater Goliath Obfuscator PE Compact Spices Obfuscator Themida Dotfuscator Xenocode Smart Assembly CliSecure Phoenix Protector CodeVeil。
9、Simple Assembly Explorer
Simple Assembly Explorer(简称SAE)是一款专业的.Net程序解密分析必备工具,由于国内知道它的不多,所以只有英文版本,没有进行汉化,Simple Assembly Explorer可以为您探索和分析.NET程序集,用来反编译最好不过了。
但是有个问题:反编译后没有注释语句,如果代码特别复杂,非常难看懂。原因:编译时不会将注释内容编译在其中。
联想1:当你封装一个dll时,可以百度一些工具“自动生成api文档”,然后在此基础上再修改,可能更高效。
联想2:当你封装一个在线服务时,别人需要联网调用你的api,也可以百度一些工具“自动生成api文档”,然后在此基础上再修改,可能更高效。