
VMProtect
文章平均质量分 88
VMProtect
段晓登
这个作者很懒,什么都没留下…
展开
-
4-.vmp模版文件分析
ProductCode是VMP对产品的定义,此字段需要和序列码生成时使用的VMProtectProductInfo结构体中pProductCode是相同的。通过以上分析,如果命令行使用VMProtect_Con.exe和.vmp文件对程序进行加壳时,我们可以将.vmp文件不需要的字段删除进行简化。在命令行使用VMProtect_Con.exe和.vmp文件对程序进行加壳时,Protection字段的内容可以没有。表明对程序进行加壳使用的加密算法和位数,需要和之后脱壳时生成序列号指定的算法和位数相同。原创 2025-01-22 17:23:54 · 335 阅读 · 0 评论 -
3-VMProtect序列号
对于使用VMProtectBeginUltraLockByKey接口进行代码保护的程序,如果通过VMProtectSetSerialNumber函数设置的VMP序列号中包含HWID,则内部会校验机器HWID是否一致。注意:g_vModulus和g_vPrivate分别是RSA非对称加密的n和d,需要和.vmp文件中的PublicExp、PrivateExp、Modulus是同一套。① 将VMProtect.exe中的导出密钥对的内容替换以上内容。可以看到:输入包含正确HWID的序列号,代码正常执行。原创 2025-01-22 17:14:33 · 939 阅读 · 0 评论 -
2-VMProtect的使用
如果对代码保护以后将其编译成静态库lib,其他代码在集成sdk以后,对编译得到的exe需要使用VMProtect.exe进行加壳处理,否则就需要产品携带对应的VMProtectSDK32.dll或VMProtectSDK64.dll进行发布。如果报错如上,则表示此exe使用了VMP保护代码,或者继承了使用VMP保护的sdk,但是其编译以后没有使用VMProtect.exe对二进制exe进行加壳处理,导致exe依赖于VMProtectSDK32.dll运行。注意:对代码进行简单保护可以使用此函数进行保护。原创 2025-01-22 17:05:03 · 1046 阅读 · 0 评论 -
1-VMProtect介绍
VMProtect与其他软件保护程序的主要区别在于它能够使用不同的方法保护代码的不同部分:一部分代码可以虚拟化,另一部分是混淆保护,关键片段使用组合方法进行保护。同时,VMProtect具有内置的反汇编程序,可与Windows和MacOS可执行程序配合使用,还可以链接编译器创建的MAP文件,以快速选择代码片段进行保护。VMProtect的基本原则是通过使应用程序代码和逻辑变得非常复杂,让破解者必须进行进一步的分析和破解,从而提供有效的保护。执行虚拟化代码片段的虚拟机是嵌入到受保护应用程序的结果代码中的。原创 2025-01-22 16:52:47 · 1089 阅读 · 0 评论