前言

.NET应用如何防止被反编译?这个对于我们.NET开发而言是一个值得关注和重视的问题,防止应用程序被反编译的手段有很多本文我们主要讲讲如何使用ConfuserEx .NET开源免费的代码混淆工具保护你的.NET应用程序。

ConfuserEx .NET混淆工具介绍

ConfuserEx是一个功能强大且广泛使用的.NET代码混淆工具。它支持多种混淆技术,包括控制流混淆、字符串加密、资源加密等。它具有灵活的配置选项,可以根据不同的需求进行定制。

注意注意:不足的是目前只支持.NET Framework 2.0/3.0/3.5/4.0/4.5/4.6/4.7/4.8,不支持.NET Core代码混淆,本章.NET版本代码示例使用的是.NET Fx4.7.2。

三款免费的.NET混淆工具推荐

需要支持.NET Core代码混淆的工具可以看下面这篇文章中介绍的几款免费工具。

https://mp.weixin.qq.com/s/hXGRdQjC7NXiGwq84KbEnA

.NET反编译相关的文章

ConfuserEx .NET混淆工具安装

ConfuserEx-GUI.zip包解压即可使用:

使用ConfuserEx工具混淆.NET Fx .dll文件

添加需要混淆的.dll文件

将待混淆的.dll文件拖拽进中间方框区域(Drag input modules here),如下图所示:

设置混淆规则

选择Settings项,添加混淆规则,如下图所示:

设置混淆规则:Protections选择anti ildasm,应该是防止IL反编译。因为Ildasm.exe是微软提供的.NET的IL反编译器。

选择Proect!选项开始混淆

点击【Protect!】,就开始混淆了,Finished代表混淆完成并成功。

混淆成功保存的文件目录:

混淆前后反编译代码对比

混淆之前反编译结果:

混淆之后反编译结果:

一、用ILSpy无法打开:

二、用.NET Reflector反编译结果:

使用ConfuserEx工具混淆.NET Fx 混淆.exe文件

添加需要混淆的.exe文件

选择Settings选项卡,添加混淆规则

注意:这里与.dll文件设置混淆规则不一样,需要要设置Packer,压缩打包,且不需要编辑规则。

选择Proect!选项开始混淆

点击【Protect!】,就开始混淆了,Finished代表混淆完成并成功。

ILSpy查看混淆前后的.exe文件对比

混淆之前:

混淆之后:

运行混淆后的.exe文件

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目推荐、招聘资讯和解决问题的平台。
  • 在这个社区中,开发者们可以分享自己的技术文章、项目经验、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值和成长机会。





欢迎加入DotNetGuide技术社区微信交流群

标签: none

添加新评论