3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 702|回复: 7
打印 上一主题 下一主题

[分享] 【《星球大战:银河赛车》似乎使用了更新版本的Denuvo,该版本会阻止虚拟机监控程序运行】

[复制链接]

117

主题

581

帖子

984

积分

超级玩家

Rank: 5Rank: 5

贡献度
14
金元
9283
积分
984
精华
0
注册时间
2024-5-31
跳转到指定楼层
主题
发表于 2026-10-9 11:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 烧鸡0006 于 2026-10-10 13:27 编辑

目前它的检测逻辑大致是这样的:
  • 执行 __cpuid(regs, 1) 指令,检查 ECX 寄存器的第 30 位(这是 CPU 标识是否支持 RDRAND 指令的标志位)
  • 在异常捕获(try/except)结构中尝试执行 RDRAND 指令,如果没有触发「无效指令异常(#UD)」,说明该指令实际可运行
  • 将前两步的结果做一致性比对


比对逻辑
  • 带 RDRAND 的新型 CPU:CPUID 第 30 位 = 支持,RDRAND 可正常运行 = 是,二者一致 → 检测通过
  • 不带 RDRAND 的老 CPU:CPUID 第 30 位 = 不支持,执行 RDRAND 触发 #UD 异常,二者一致 → 检测通过
  • 我们当前的虚拟机:CPUID 第 30 位 = 不支持,但 RDRAND 却能正常运行 = 是,二者矛盾 → 触发检测,游戏闪退
修复起来应该不难。



提出的修复思路当前的 CPUID 处理代码(旧绕过方案)Rcx = 0x7EF8320B & ~((1<<12)|(1<<25)|(1<<26)|(1<<27)|(1<<28)|(1<<29)|(1<<30));//                对应屏蔽位:FMA3、AES、XSAVE、OSXSAVE、AVX、F16C、RDRAND
说明:旧方案会把 CPU 的多个高级指令特性位全部屏蔽,其中就包括第 30 位的 RDRAND,让 Denuvo 的 CPUID 检查以为这是一颗老 CPU。

修改后的 CPUID 处理代码(修复方案)Rcx = 0x7EF8320B & ~((1<<12)|(1<<25)|(1<<26)|(1<<27)|(1<<28)|(1<<29));// 保留RDRAND的第30位,这样CPUID会报告支持RDRAND,而RDRAND本身也确实能运行,二者就一致了



补充解读这是当时未加密社区定位到的新版 Denuvo 核心反虚拟机手段之一:旧的虚拟机绕过工具为了伪装成老 CPU,会在 CPUID 返回值里屏蔽掉 RDRAND 等新指令的标识位,但虚拟机本身其实依然能正常执行 RDRAND 指令。Denuvo 就利用这个“CPUID 声称不支持、但指令实际能运行” 的不一致性,精准识别出虚拟机环境。对应的修复也很直接:不再屏蔽 RDRAND 的 CPUID 标识位,让 “报告支持” 和 “实际可运行” 保持一致,就能绕过这一层检测。






回复

使用道具 举报

117

主题

581

帖子

984

积分

超级玩家

Rank: 5Rank: 5

贡献度
14
金元
9283
积分
984
精华
0
注册时间
2024-5-31
舒服的沙发
 楼主| 发表于 2026-10-9 11:31 | 只看该作者
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
回复 支持 反对

使用道具 举报

117

主题

581

帖子

984

积分

超级玩家

Rank: 5Rank: 5

贡献度
14
金元
9283
积分
984
精华
0
注册时间
2024-5-31
硬硬的板凳
 楼主| 发表于 2026-10-10 13:22 | 只看该作者
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
回复 支持 反对

使用道具 举报

5

主题

355

帖子

479

积分

高级玩家

Rank: 4

贡献度
0
金元
4790
积分
479
精华
0
注册时间
2018-9-3
冰凉的地板
发表于 2026-10-10 17:25 | 只看该作者
既然是核心绕过手段,说明未加密就是需要在这里装糖阴他一手,不让装糖就阴不了也就是绕不过了啊
回复 支持 反对

使用道具 举报

102

主题

1207

帖子

4681

积分

游戏精英

Rank: 8Rank: 8

贡献度
282
金元
35528
积分
4681
精华
0
注册时间
2020-10-10
5#
发表于 2026-10-10 20:12 | 只看该作者
本帖最后由 zx88888888_1 于 2026-10-10 20:13 编辑

这是好事啊,这说明破姐社区已经对新版D加密开始解剖了啊,解剖需要时间

新版Denuvo新增的这套RDRAND反虚拟机检测,虽然给现有的虚拟机绕过方案制造了新阻碍,但是道高一尺魔高一丈,反过来也一样

只要破姐社区逆向人员能够定位、拆解出D加密的检测逻辑,就一定能找到对应的办法来化解、拔除这个检测点

这类防护是可以逐个被针对性拔除破姐的,当然这只是Denuvo多层防护里的其中一环,解决这一项之后,后续还会持续出现新的检测,需要持续跟进对抗。

虽然新版D加密在这个时间节点上赢过了虚拟机,因为虚拟机一一排除这些检测点,需要时间

但是把时间拉长后,虚拟机破姐一定是降维暴打D加密,D加密挡不住虚拟机破姐,这是Windows底层逻辑决定的

除非D加密也下沉到ring-1层,但是D加密游戏的生态和Windows周边生态相冲突,这个下沉直接被否定

所以D加密被虚拟机降维暴打



回复 支持 反对

使用道具 举报

241

主题

1648

帖子

2236

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
42
金元
20675
积分
2236
精华
0
注册时间
2021-9-14
6#
发表于 2026-10-11 16:54 | 只看该作者
zx88888888_1 发表于 2026-10-10 20:12
这是好事啊,这说明破姐社区已经对新版D加密开始解剖了啊,解剖需要时间

新版Denuvo新增的这套RDRAND反虚 ...

微软新主机如果要搞win的话,很可能会改写底层万一配合d加密就完了,而且现在是ai vs ai,全用ai了
回复 支持 反对

使用道具 举报

102

主题

1207

帖子

4681

积分

游戏精英

Rank: 8Rank: 8

贡献度
282
金元
35528
积分
4681
精华
0
注册时间
2020-10-10
7#
发表于 2026-10-11 20:44 | 只看该作者
smzzx 发表于 2026-10-11 16:54
微软新主机如果要搞win的话,很可能会改写底层万一配合d加密就完了,而且现在是ai vs ai,全用ai了 ...


没事,仅限微软主机

回复 支持 反对

使用道具 举报

699

主题

1万

帖子

3万

积分

游戏天王

game player

Rank: 11Rank: 11Rank: 11Rank: 11

贡献度
3755
金元
196112
积分
34631
精华
0
注册时间
2012-8-24

3DMer(永久)

8#
发表于 2026-10-14 18:20 来自手机 | 只看该作者
确实恶心,。。。。。。。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号 ) 

GMT+8, 2026-10-26 16:15 , Processed in 0.020804 second(s), 19 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表