使用C#混淆加密大师保护你的代码 (代码混淆加壳工具,支持dll/exe混淆加密)
C#混淆加密大师可以加密混淆C#编写的dll和exe程序(包括Winform程序, WPF程序, Unity游戏程序,控制台程序等),支持.Net Framework 2.0 ~ .Net Framework 4.x, 以及.NET Core 2.0 - .NET 8。 除了加密混淆代码功能,C#混淆加密大师还可以对EXE程序进行加壳,增加防篡改,注入垃圾数据等功能,可以有效保护C#编写的程序代码知识产权,防止代码逻辑被拷贝,以及程序被篡改等。
下载地址:
自助购买链接:
官方网址:
特性
1. 支持多种不同的程序框架: 包括Winform程序, WPF程序, Unity游戏程序,控制台程序等
2. 支持不同版本的Framework, 包括.Net Framework 2.0 - .Net Framework 4.x 以及.NET Core 2.0 - .NET 8
3. 支持字符串加密,流程控制,方法重命名,域重命名,数字混淆等多种混淆功能
4. 支持加壳,防篡改,防反编译工具等功能
5. 支持注入垃圾函数,类型,字符串等
6. 支持多种重命名规则
7. 支持原生化功能, 可以生成原生程序, 无法被C#反编译工具处理
8. 支持忽略列表, 可以排除不需要混淆加密的函数和类型
软件截图
快速使用说明
1. 首先打开软件,待软件初始化完成,点击右上角打开文件按钮,选择你要加密的exe或者dll文件
2. 选择想要使用的混淆选项,一般默认的选项兼容性最好,其他的额外选项可以增强加密混淆的保护效果,可以根据自己的需求选择
3. 点击选择路径按钮,选择想要保存的文件路径
4. 点击开始处理按钮,进行处理
5. 处理成功后,会提示处理成功信息
6. 使用反编译工具打开exe文件,可以看到程序内部代码被混淆加密的无法阅读,字符串被加密,无法识别,并且无法反编译成功
7. 可以点击保存配置, 以便下次打开软件时自动使用上次的配置 (1.2.0新增, 具体介绍详见 更新说明)
混淆选项说明
目前支持的混淆选择如下图所示:
1. 防调试
勾选后,混淆加密的dll/exe文件无法在VS中,或者其他第三方调试工具中调试,程序如果发现有调试进程附加到自己,将会自动退出
2. 防ILDasm
勾选后,系统自带的ILDasm程序,无法对加密的dll/exe程序进行反编译,反编译的时候会报错
3. 防DnSpy
勾选后,加密的程序如果发现自己正在被DnSpy调试,则会报错并退出程序,防止被DnSpy动态调试
4. 防篡改(仅限EXE)
勾选后,exe程序无法被修改,任意对EXE文件的改动将导致EXE程序无法运行
5. 加壳(仅限EXE)
勾选后,将会对EXE程序加一层壳,原先的程序会被加密内嵌到EXE中,静态反编译工具将无法查看到任何原先的EXE代码
6.防de4dot
勾选后,可以防止de4dot对加密的程序进行反混淆,导致de4dot报错
7.防断点
勾选后,加密的程序如果发现自己运行到某个地方长时间停顿(意味着被下断点),则会报错退出
8.垃圾域
勾选后,加密的程序会被注入多个无用的域,可以干扰反编译工具,并且使反编译后的代码更难以阅读,起到保护的效果
9.垃圾空指令
勾选后,加密的程序的指令中,会被注入多个空指令,可以使反编译后的IL code难以阅读
10.垃圾函数
勾选后,加密的程序会被注入多个无用的函数,可以干扰反编译工具,并且使反编译后的代码更难以阅读,起到保护的效果
11. 垃圾类型
勾选后,加密的程序会被注入多个无用的类型,可以干扰反编译工具,并且使反编译后的代码更难以阅读,起到保护的效果
12. 垃圾字符串
勾选后,加密的程序会被注入多个无用的字符串,可以干扰反编译工具,并且使反编译后的代码更难以阅读,起到保护的效果
13. 文件信息混淆
勾选后,会对加密程序的文件信息进行混淆,修改文件的内部名称,Assembly信息等
14. 布尔混淆
勾选后,会对布尔值进行混淆,将布尔值转换成难以识别的基础类型
15. 文件时间混淆
勾选后,会对加密文件的时间戳进行修改
16.流程混淆
勾选后,会对加密文件中的指令进行乱序,导致整个程序内部进行多次跳转,使得静态分析难以理解程序的意图
17.字符串加密
勾选后,会对程序中的字符串进行加密,可以有效防止静态分析出一些程序的关键代码的位置
18. DOS头混淆
勾选后,会对EXE文件的DOS头进行修改,变成无法识别的字符串
19.数字混淆
勾选后,程序会对整型数字进行混淆,使得简单的数字,变成复杂的数字运算,配合控制流程等加密选项,起到更好的保护效果
20.字符串拆分
勾选后,将会对字符串进行拆分,将一个完整的字符串拆分成多个字符串相加的形式
21.函数调用混淆
勾选后,调用函数将不再使用函数名的方式进行,而是使用程序内部的函数token进行调用,使得静态分析难以看出使调用了哪个函数
22.字符串隐藏
勾选后,字符串将会被加密存放到原生函数中,反编译工具将无法获取到其具体的值
23.数字隐藏
勾选后,整型数字将会被加密存放到原生函数中,反编译工具将无法获取到具体的值
24.函数体隐藏
勾选后,将会对函数体进行加密,加密后的函数体在反编译工具中将无法被查看到
25.重命名模式
不同的重命名模式会把相应的函数,类型,域等按照相应的格式进行重命名,分别如下面所示:
字母数字模式
UUID模式
特殊字符模式
Base64模式
英文单词模式
26. Module重命名
勾选后,会对全局Module对象进行重命名
27.域重命名
勾选后,会对类中的域进行重命名
28. 函数重命名
勾选后,会对程序中的函数进行重命名
29. 命名空间重命名
勾选后,会对命名空间进行重命名
30. 参数重命名
勾选后,会对函数的参数进行重命名
31. 类型重命名
勾选后,会对程序中的不同类型进行重命名
32. 加密资源文件 (1.1.0新增, 具体介绍详见 更新说明)
勾选后, 可以对程序中的资源文件进行加密, 反编译工具将无法查看资源文件的内容
33. 防虚拟机 (1.1.0新增, 具体介绍详见 更新说明)
勾选后, 程序如果检测到自己运行在虚拟机中, 将自动停止运行
34. 异步混淆 (1.1.0新增, 具体介绍详见 更新说明)
勾选后, 程序将把一些代码转换为异步调用的形式, 使得逆向分析更加困难
35. 防ILSpy (1.2.0新增, 具体介绍详见 更新说明)
在代码保护相关的混淆选项中, 新增了防ILSpy功能, 勾选处理后的EXE/dll将无法被ILSpy解析
36.混淆引用列表 (1.2.0新增, 具体介绍详见 更新说明)
勾选后, 会对引用列表进行混淆, 使得反编译工具反编译出来的引用列表难以被理解
37.小数混淆 (1.2.0新增, 具体介绍详见 更新说明)
勾选后, 代码中的小数会被加密存放, 无法直接反编译出小数的值
38.链式函数混淆 (1.2.0新增, 具体介绍详见 更新说明)
勾选后, 函数调用将会嵌套多层函数调用, 使得难以静态分析代码的含义
39. 错误函数体混淆 (1.2.5新增, 具体介绍详见 更新说明)
勾选后, 会在函数中加入一些错误的指令, 使得一些静态分析工具无法正常解析出函数内部的代码
40. 原生化EXE (1.2.5新增, 具体介绍详见 更新说明)
勾选后, 会对EXE文件进行原生化处理, 将EXE文件转变成原生程序, C#反编译工具将无法分析出内部的任何IL代码
忽略列表功能介绍
1.2.5版本新增了忽略列表功能, 可以 填入不想被混淆的函数或者类型, 对应的函数或者类型将不会被混淆加密
例如, 你的项目中有下面的代码:
using System; namespace ConsoleApp1 { internal class TestClass { internal TestClass() { new Program(); } internal int MemberFunc() { int a = 1; a++; return a; } } }
如果你不想让MemberFunc()这个函数被混淆加密处理, 那么可以在忽略列表中输入如下的条目, 以下三种写法均可
ConsoleApp1.TestClass.MemberFunc
或者
TestClass.MemberFunc
或者
MemberFunc
其中第一种写法更为精确, 可以避免不同命名空间,或者不同class内部的同名函数都被忽略
这样在处理的log中, 你可以看到相应的函数已经被忽略, 该函数不会被混淆选项处理, 将保持原样.
版本历史
1.2.5(24.9)
1. 新增错误函数体混淆选项
2. 新增原生化EXE功能
3. 新增忽略列表功能
4. 修复保存路径信息没有被正常保存的问题
5. 修复布尔混淆导致某些dll/exe无法正常运行的问题
6. 修复垃圾空指令导致某些dll/exe无法正常运行的问题
7. 修复加密资源文件导致.NET core程序奔溃的问题
8. 修复链式函数混淆导致WPF程序奔溃的问题
9. 修复防虚拟机选项导致某些.NET程序无法运行的问题
10. 修复垃圾类型混淆选项导致的某些程序闪退的问题
11. 优化命名空间重命名功能, 使其兼容更多的程序
12. 优化异步混淆功能, 增加兼容性
1.2.0 (24.8)
1. 新增保存配置功能, 可以随时保存当前的混淆配置
2. 新增防ILSpy功能
3. 新增支持混淆引用列表的功能
4. 新增小数混淆, 可以使得程序内部的小数被隐藏
5. 新增链式函数混淆, 可以嵌套多层函数调用, 使得函数调用更加难以理解
6. 优化并修复异步混淆的若干问题
7. 优化修复流程混淆若干问题
8. 优化隐藏字符串/数字的若干问题
1.1.0 (24.5)
1. 新增资源加密功能 - 可以加密保护exe或者dll中的资源文件
2. 新增防虚拟机功能
3. 新增异步混淆功能
4. 修复了防篡改功能有时候不工作的问题
5. 修复了有些时候混淆加密的NETFramework 2.0程序无法正常工作的问题
6. 修复了命名空间重命名导致有些程序混淆后报错的问题
1.0.0(24.2)
首发
合规性协议
软件禁止用于处理违法违规内容(黄赌毒诈骗等), 处理过程中会联网检测, 多次触发上级部门下发的样本会封号上传信息,并提交资料给相关部门, 由于乱处理导致的封号无法解封退款!!!
若不同意本协议请勿使用并卸载本软件, 由于违规处理导致的任何软件被封, 无法使用等问题, 不提供任何技术支持.
常见问题
1.无法打开软件,出现下面的错误提示
这个错是由于系统没有安装运行环境造成的,或者直接在下面网址中下载安装:
2. 安装软件或者解压软件提示 "无法完成操作, 因为文件包含病毒或潜在的垃圾软件"
这个一般是由于杀毒软件误报导致的,建议把程序加入到杀毒软件的信任列表中, 或者关闭杀毒软件,详细的步骤可以参考这个说明:安装软件提示 "无法完成操作, 因为文件包含病毒或潜在的垃圾软件" 如何处理
3. 处理完的EXE无法运行,或者处理过程中,C#混淆加密加密大师报错
这个说明C#混淆加密大师某些混淆或者加密选项不兼容你的EXE,可以去除一些混淆加密选项再试,如果一直有问题,可以联系软件上的QQ进行反馈
4. 其他无法解决的问题
可以联系软件上的QQ进行反馈
本博文发表于:https://www.cnblogs.com/reachteam/p/18023525
发布者:H5开发技术
转载请注明出处,谢谢!