首页
社区
课程
招聘
[翻译]AntiCheatExpert (Tencent VM) Devirt
发表于: 2026-8-12 09:45 91

[翻译]AntiCheatExpert (Tencent VM) Devirt

2026-8-12 09:45
91

为了解国外对抗VM常用手段,借此翻译。


传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!

最后于 2026-8-12 10:13 被Ⅿalware编辑 ,原因:
上传的附件:
收藏
免费 0
打赏
分享
最新回复 (2)
雪    币: 129
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2

文章依赖的工具:
1. iced-x86,Rust反汇编库;
2. Constant Folding,常量折叠,将.tvm0的 .tdata区(代码与数据结合的区)直接识别为常量,抬升为立即数后可直接编译优化;
3. InstCombine,在常量折叠基础上添加了代数恒等变换、冗余消除、指令合并等操作。遍历 IR(中间表示)中的每一条指令,利用当前的所有上下文信息,尝试用更简单的指令序列去替换原有的复杂序列;
3. JCC分支指令的判断,作者在此直接略过;
4. 循环的构建,作者在针对 .tvm 还原时遇到循环结构通过 VPC(虚拟程序计数器)判断循环,当 VPC 在 opcode 序列中往回跳可证明是一次循环,但需要确认是否跳转在头部。在这一算法的基础上,最终编译生成出来的程序是 do_while 形式的循环,依赖运行时的动态判断跳转,不确定具体停止条件。循环结束条件的判断依赖 RSP 栈帧的变换;
5. Dead Store Elimination,死代码消除,用于消除覆盖前未被使用的写入、局部变量的冗余初始化、分配后立即失效的内存;
6. Control Flow Graph,程序控制流图,CFG的还原依赖反汇编->基本块->去除Mutation(变异/花指令)后计算出下一个handler地址,hander凑齐后最终用于提升IR。

备注:
1. CET 指的是 Intel Control-flow Enforcement Technology(控制流强制技术)。这是由英特尔推出的一项CPU 硬件安全功能,用于防范特定的恶意软件攻击。这项技术主要针对的是面向返回编程(ROP) 和面向跳转/调用编程(JOP/COP) 这类攻击手段。它的核心是提供两种硬件级别的保护:

1.1 影子堆栈(Shadow Stack):为程序的返回地址创建一个受 CPU 保护的"影子"备份。当函数返回时,CPU 会比对常规堆栈和影子堆栈中的返回地址,如果不一致,就意味着控制流可能被劫持,CPU 会抛出异常阻止执行。这主要防御 ROP 攻击。
1.2 间接分支跟踪(Indirect Branch Tracking, IBT):要求所有间接跳转(如通过函数指针调用)的目标必须以专门的 ENDBR 指令开头。这相当于给合法的跳转目标做了"标记",防止攻击者将程序流跳转到恶意代码片段。这主要防御 JOP/COP 攻击。


2. ACE 驱动里的 __security_init_cookie 与新版 WDK 差很多,用作年代指纹。
2.1 对照结果:与样本一致的是 WDK 10.0.16299(1709,2017-10)的 CALL+RET;更早的 7.1 / 14393 / 15063 多为 TAILCALL。
2.2 语义 CALL 示例之一就是卸 GPR → 临时 VMExit → 调 __security_init_cookie → 立刻回 VM。


3. 图示函数是Mutation,而非VisualMachine。

最后于 2026-8-12 11:32 被Ⅿalware编辑 ,原因:
2026-8-12 10:49
0
雪    币: 129
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3

rflags优化,化简:


蓝方(TVM):在会 clobber flags 的指令之间狂插 pushfq/popfq,把 RFLAGS 存栈再恢复。 

红方(Devirt):把这些栈操作 lift 进 SSA,再靠常量传播 / 死代码消除把它们折掉或删掉。


1. 把 RSP 做成显式 SSA 值。

pushfq          →  把 flags 存到 [RSP-8],RSP -= 8 

popfq           →  从 [RSP] 读回 flags,RSP += 8

2. RSP SSA 化之后,flags 的读写转化为针对 mem[index] 的读写后,基于此数据类型做死代码消除。

最后于 2026-8-12 11:10 被Ⅿalware编辑 ,原因:
2026-8-12 11:08
0
游客
登录 | 注册 方可回帖
返回