论坛首页 逆向工程技术区 阅读主题

[求助]泄露的VMP源码中runtime如果重新编译并嵌入vmp主程序?

131 浏览 23 回复
#1 楼主 2026-06-01 21:09:00
总算有人摸到关键点了。我只试验了32位的运行时库版本,用自己编译的win_runtime32.dll用core目录下的runtime.vmp生成对应的win_runtime32_dll.inc后编译VMPROTECT后对软件加壳会遇到一些问题。我这边遇到的最大问题是
一些类的函数体代码不超过5字节,导致进行保护时提示函数长度不够(用VS2015编译,原编译环境是VS2008,不知道是不是这个差别),跳过运行时库函数体代码不超过5字节的就可以编译通过,且运行
正常。

---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-279937.htm
#2 2026-06-01 21:09:00
vaguem

我用debug编译的,默认是禁用代码优化的,64试过了没问题啊 编译出来的win_runtime.dll,更新成win_runtime64.dll.inc,覆盖到core目录里面,之后再重编译vmprotect.exe,用这个vmprotect.exe加壳其他程序,,加壳出来的成品文件运行没问题?

最后于 2023-12-23 10:38
被coolspace编辑

,原因:
#3 2026-06-01 21:09:00
用runtime.vmp加壳win_runtime_32.dll自然就生成了inc
#4 2026-06-01 21:09:00
大佬们 请问.inc文件怎么生成的?
#5 2026-06-01 21:09:00
Olii


破案了,兄弟们,啥都不用改,用vs2010打开 win_runtime.vcxproj,单独生成一个sln,我看win_runtime会依赖sdk,把sdk项目也加进去,修改两个项目平台工具集v100 ...

牛叉,感谢分享
#6 2026-06-01 21:09:00
使用v100 toolset编译就没事,用其他更高版本的toolset如v141_xp编译就不行,还没发现设置选项差别在哪。
不知有谁通过调整vs2015或者vs2022里面的编译选项,使用v141_xp及以上的toolset能成功编译win_runtime并成功替换的?

最后于 2023-12-24 11:24
被coolspace编辑

,原因:
#7 2026-06-01 21:09:00
用老板vs2010编译dll,再用新版编译exe。

最后于 2023-12-23 15:18
被coolspace编辑

,原因:
#8 2026-06-01 21:09:00
见了鬼了,vs2015同样参数编译的就不行,换vs2010嘛事没有。
#9 2026-06-01 21:09:00
vaguem


是的,特意试过了,没半点问题,可能和上面兄弟说的,需要“优化选项设置一致”

必须用vs2010?2015不行?  
winruntime 这个工程默认打开了whole program optimization。关闭了不行
#10 2026-06-01 21:09:00
coolspace


vaguem

我用debug编译的,默认是禁用代码优化的,64试过了没问题啊 编译出来的win_runtime.dll,更新成win_runti ...

是的,特意试过了,没半点问题,可能和上面兄弟说的,需要“优化选项设置一致”
#11 2026-06-01 21:09:00
破案了,兄弟们,啥都不用改,用vs2010打开 win_runtime.vcxproj,单独生成一个sln,我看win_runtime会依赖sdk,把sdk项目也加进去,修改两个项目平台工具集v100,,然后直接32 release 生成dll 再用runtime.vmp生成inc,最后编译vmp( debug x64 Visual Studio 2017 - Windows XP (v141_xp))  加壳其他软件,选项全开,完美运行
#12 2026-06-01 21:09:00
vaguem


我用debug编译的,默认是禁用代码优化的,64试过了没问题啊

我用vs2015和2022都不行
#13 2026-06-01 21:09:00
runtime 和 vmprotect主程序 优化选项设置一致即可
#14 2026-06-01 21:09:00
拍拖


总算有人摸到关键点了。我只试验了32位的运行时库版本,用自己编译的win_runtime32.dll用core目录下的runtime.vmp生成对应的win_runtime32_dll.inc后编译V ...

是VS2015过度优化的问题——哈哈哈
#15 2026-06-01 21:09:00
我用debug编译的,默认是禁用代码优化的,64试过了没问题啊
#16 2026-06-01 21:09:00
还是没找到具体原因,不知有没有大牛已经发现解决方案了?
‹ 上一页 1 2 下一页 ›

请登录后参与讨论

立即登录 注册账号