一个对C#程序混淆加密,小巧但够用的小工具

对于我们程序员来说,平常开发的桌面应用程序,如果不进行一定程度的加密、混淆,是很容易通过反编译手段进行破解的,特别是一些商业用途的C#软件,更是容易被破解。
所以今天给大家推荐一个对C#程序加密混淆项目,可用于学习。.

项目简介

这是一个基于.Net 4开发的加密混淆工具,该项目具备功能:自动化生成loader,实现加密、混淆、bypass沙箱、多种现有进程注入技术,动态编译生成。
该项目比较轻量,比起市面上的加密混淆工具,比较简单,可当着学习用途。
 
功能列表
程序文件上传
支持选择文件、DNS、Http文件上传,其中dns,http自动判断上线;http优先级高于DNS。
混淆加密
支持类名、方法名、变量混淆,可以统计自己的需求自由灵活选择。

反沙箱检测

进程黑名单

存在以下进程认为是虚拟机,直接退出。
"vmsrvc", "tcpview", "wireshark", "visual basic", "fiddler", "vmware", "vbox", "process explorer", "autoit", "vboxtray", "vmtools", "vmrawdsk", "vmusbmouse", "vmvss", "vmscsi", "vmxnet", "vmx_svga", "vmmemctl", "df5serv", "vboxservice", "vmhgfs", "vmtoolsd"

MAC地址检测

网卡MAC地址包括以下开头,直接退出。

"000569","000C29","001C14","005056","080027"

磁盘检测

磁盘大小小于50G,判定为虚拟机,直接退出。

启动启动时间检测

开机运行时间低于1h,判定为虚拟机,直接退出。

CPU核心数量与语言检测

CPU逻辑个数小于4个或者操作系统语言不是中文,判定为虚拟机,直接退出。

时间加速检测

运行时间存在加速,判定为虚拟机,直接退出。

bypass技术

  1. 进程镂空

  2. Dinvoke 调用API

  3. 载入第二个NTDLL绕过HOOK

  4. 映射注入

  5. syscall

技术框架
1、基于Net framework 4.0开发

项目结构

一个对C#程序混淆加密,小巧但够用的小工具

界面
一个对C#程序混淆加密,小巧但够用的小工具
项目地址:https://github.com/MicrobBlue/BiFang