VMProtect 是新一代的软件保护系统,将保护后的代码放到虚拟机中运行,这将使分析反编译后的代码和破解变得极为困难。
使用VMProtect的五个理由
1.我们的大多数竞争对手没有相同的创新功能,也没有相同的功能和成本效益领先组合。了解为什么VMProtect更好:
VMProtect虚拟化代码
2.代码虚拟化是软件保护的下一步。大多数保护系统都会对代码进行加密,然后在应用程序启动时对其进行解密。 VMProtect根本不会解密代码!而是,加密代码在虚拟CPU上运行,该虚拟CPU与通用x8**x64 CPU明显不同,因为每个受保护文件的命令集都不同。
VMProtect支持几乎所有可执行格式
3.VMProtect允许保护可执行文件(EXE,SCR),动态链接库(DLL,OCX,BPL)和驱动程序(SYS)。您可以为应用程序,其插件甚至驱动程序使用相同的保护!
VMProtect支持64位代码
4.由于64位系统的数量在不断增长,因此保护器必须支持它们。我们在2007年增加了对64位应用程序,库和驱动程序的支持,因此所有内容都经过了良好的测试,您可以轻松迁移到64位。
VMProtect支持大多数Windows版本
5.与某些竞争对手不同,VMProtect并不依赖未记录的Windows功能,因此受保护的文件在Windows 95(从Windows 95开始)的几乎所有版本的Windows OS上都能正常运行。支持32位和64位版本,并且DEP或UAC都没有问题。
VMProtect是完整的保护解决方案
VMProtect允许生成和验证序列号。支持手动和自动生成。序列号可以受时间或日期限制,并锁定在硬件上,同时免费升级期限也可以受限制。 VMProtect确保在没有序列号的情况下实际上不可能运行代码。
VMProtect 功能
支持的文件和格式
VMProtect 支持 32 位和 64 位可执行文件、动态加载的库和驱动程序。这包括屏幕保护程序、Active-X 组件、BPL 库和其他 PE 格式的文件。受保护的文件几乎可以在任何版本的 Windows 上运行,甚至是旧的 Windows 95!但是,许可功能至少需要 Windows 2000。
序列号
VMProtect 的终极版允许以最小的努力将序列号添加到受保护的应用程序。 PayPro 全球电子商务提供商支持该功能,因此您甚至不需要设置自己的序列号生成器(当然,如果您确实需要,您可以这样做)。
许可功能允许限制免费更新的期限、设置序列号的生命周期、防止没有序列号的代码执行等等。任何序列号都可以被阻止,新受保护的文件将不接受它。
用户界面
VMProtect 具有两种用户界面模式:简单和专家。简单模式允许轻松选择保护功能、调整选项并只需单击几下鼠标即可获取受保护的文件。
专家模式适用于高级用户,它显示汇编代码,允许编写脚本、捆绑 DLL 等等。它还在“选项”选项卡上提供了更多设置。
控制台版本
VMProtect 专业版和旗舰版有一个控制台版本,支持命令行参数,可用于自动构建过程。它完全支持脚本、水印、序列号和 VMProtect 的所有其他功能。
“变异”保护方法
变异是用它们的模拟(或特定指令序列)替换源代码指令,它给出与源代码相同的结果。这是最快但最简单的软件保护方法。当您需要隐藏代码中使用的第三方库的签名时非常有用。例如,如果黑客知道您使用众所周知的 SHA-1 实现,他可能会攻击它,而不是您的代码。突变允许隐藏库的存在。
“虚拟化”保护方式
虚拟化是将可执行代码转换为具有不同架构的虚拟机指令的过程,这对于潜在的破解者来说是未知的。代码的虚拟化部分由解释器(虚拟机)执行,无需转换为本地机器代码。一般来说,虚拟化代码的重新设计需要首先研究虚拟机架构,然后需要创建一个理解该架构的反汇编程序。这两个过程都非常耗时,并且会阻止大量饼干。每次保护应用程序时,VMProtect 都会生成一组完全不同的虚拟机,因此即使破解者最终了解了特定虚拟机的体系结构,他也必须从头开始进行同一文件的第二个受保护程序。
“超级”保护方式
Ultra 结合了虚拟化和变异方法,使保护更加出色。受保护的代码首先被变异,然后结果被虚拟化。
许可证管理
您可以轻松地将序列号支持添加到您的应用程序中。VMProtect 提供了一个强大的API,允许将序列号传递给 VMProtect 的内部模块,然后检查其状态。
免费升级的限制
此功能允许通过例如一年的免费升级来限制客户。如果客户安装稍后发布的版本,他的序列号将被拒绝。鼓励客户购买付费支持服务的一种非常好的方法。
将代码锁定到序列号
此功能允许通过附加加密来防止执行某些代码。受保护的应用程序中不存在密钥,并且只有在输入序列号时才能对代码进行加密。但是,即使在那之后,代码仍然是虚拟化的,因此在输入有效的序列号后无法转储它。这是创建软件演示版本的基本功能。
水印
水印是可以添加到受保护文件的唯一字节序列。它允许明确识别破解软件副本的合法所有者。
虚拟文件
虚拟文件功能允许将文件捆绑在主可执行文件中,因此您的应用程序及其插件成为单个文件。这对于可移植应用程序或如果您想隐藏某些文件或动态加载库的使用非常有用。
VMProtect 3.8.4
修复
Mach-O:改进了 M1/M2 NET 上对 Rosetta 2 的支持:改进了对 WPF 应用程序的支持 ELF:改进了对不带节的二进制文件的支持
新增功能
英特尔:添加了反汇编 BZHI、ANDN、VFMADDSUB132PD、VFMADDSUB213PD、VFMADDSUB231PD、VFMADDSUB132PS、VFMADDSUB213PS 和 VFMADDSUB231PS
VMProtect 3.8.3
修复
PE:修复了启动受保护的 x32 内核驱动程序时发生的 bug
改进
PE:改进了对使用 C++ Builder 11 编译的二进制文件的支持
NET:改进的代码虚拟化
新增功能
PE:添加了项目选项“Shadow Stack Compatible”
VMProtect 3.8.2
修复
PE:修复了一些小错误
改进
英特尔:改进了代码虚拟化
英特尔:改进了虚拟机混淆
VMProtect 3.8.1
[!]PE:修复了小错误
更新了虚拟机选项的文档
PE:改进了VMProtectGetCurrentHWID以获取HDD序列号
VMProtect 3.8
PE:改进的抗调试
.NET:修复了启动受保护应用程序时发生的错误“System.TypeLoadException:无法从程序集'System.Runtime'加载类型'System.Random'”
[+]英特尔:添加了具有以下值的项目选项“虚拟机 – 版本”:默认,VMProtect 2.X
[+]英特尔:添加了具有以下值的项目选项“虚拟机 – 实例”:默认值,1..10
[+]英特尔:添加了项目选项“虚拟机 – 复杂性”,具有以下值:无,1..100%
[+]英特尔:添加了具有以下值的函数选项“保护 – 复杂性”:默认值,0..100%
[+]英特尔:添加了反汇编 RORX 和 VPSLLVQ
VMProtect 3.7.4
[!]Macho-O:修复了打开某些文件时出现错误“无效的Mach-O格式”
英特尔:改进的代码虚拟化
英特尔:改进了 VC2022 的异常处理
.NET:改进了对 WPF 应用程序的支持
[+] .NET:添加了对 [DllExport] 的支持
VMProtect 3.7.3
英特尔:改进的代码虚拟化
英特尔:改进了虚拟机混淆
.NET:改进的代码虚拟化
[+]PE:为使用 Free Pascal 编译的 x64 二进制文件添加了异常处理
[+]英特尔:添加了反汇编 VPMASKMOVD、VPMASKMOVQ、VPBLENDD、ROUNDSS 和 ROUNDSD
[+]英特尔:为 MOVD 和 MOVQ 添加了代码虚拟化
[+]Mach-O:增加了对LC_DYLD_CHAINED_FIXUPS和LC_DYLD_EXPORTS_TRIE的支持
VMProtect 3.7.2
.NET:改进的代码虚拟化
PE:改进了对 ARM Windows 的支持
VMProtect 3.7.1
[!]修复了许多错误
.NET:改进的代码虚拟化
[+]英特尔:添加了反汇编 SARX、SHRX、SHLR、EXTRACTPS 和 INSERTPS
VMProtect 3.7
PE:改进了对 Windows 11 虚拟文件的支持
.NET:改进了对 WPF 应用程序的支持
.NET:改进的代码虚拟化
[+] .NET:添加了针对虚拟化代码的静态反编译器的保护
[+]英特尔:增加了对虚拟化代码静态反编译器的保护
系统支持:win7/win8/win10/win11(32/64位) 软件语言:简体中文 软件版本:3.8.4.1754
注:此为VMP 3.8.4旗舰版官方正版安装包,含安装密码,含简体中文。
|