# ShieldedCode：学习虚拟机保护代码的鲁棒表示

> ShieldedCode 从防御方角度研究软件保护：它以 C 源代码函数及其经虚拟化保护（VMP）后的 x86-64 代码组成的配对数据训练代码语言模型，使模型能够生成、比较和排序受保护的变体。训练配对取自 AnghaBench 函数，经 O0–O3 编译后由一款商业 VMP 工具按 L0–L3 级别保护，再反汇编并规范化。模型为单条虚拟指令内部、相邻虚拟指令之间以及跨虚拟指令的依赖加入注意力掩码，采用面向功能等价和保护强度的对比学习目标，并设置对同一源代码不同变体排序的保护效果任务。持续预训练从 CodeLlama 34B 起步，语料另加入 The Stack；微调使用 250 万组源代码—虚拟机代码配对。在 HumanEval-compile 上，L0 级虚拟机代码生成的 Pass@1 为 26.95%（GPT-4o 为 22.58%），L3 级为 14.71%。在 BinaryCorp-VirtualAssembly 相似性检测中，O0+L1 设置下的 Recall@1 为 0.488，采用线性探针的 jTrans 为 0.333。作者还对生成的保护代码开展了人工逆向研究，以及模式匹配和 angr 攻击。

- 作者：Mingqiao Mo; Yunlong Tan; Hao Zhang; Heng Zhang; Yangfan He
- 原标题：ShieldedCode: Learning Robust Representations for Virtual Machine Protected Code
- 发表载体：ICLR 2026
- 发表状态：会议论文
- 出版／提交日期：2026 年（具体日期未核实）
- 日期依据：采用 ICLR 官方论文集标明的出版年份，不主张更精确的出版日期。本条目不采用论文集页面中 2026-04-20 的引用日期，也不以 arXiv 日期替代。
- arXiv 首次提交：2026 年 1 月 28 日
- arXiv：2601.20679
- 已复核的 arXiv 版本：v1
- 来源复核于：2026-10-19
- 收录于：2026-10-27
- 原始论文：<https://proceedings.iclr.cc/paper_files/paper/2026/hash/286976486c9bbfa2c2069b01b259b19d-Abstract-Conference.html>
- PDF：<https://proceedings.iclr.cc/paper_files/paper/2026/file/286976486c9bbfa2c2069b01b259b19d-Paper-Conference.pdf>
- BibTeX：<https://awesomerea.org/papers/citations/paper-shieldedcode.bib>
- 目录页面：<https://awesomerea.org/zh/papers/paper-shieldedcode/>
- 记录 JSON：<https://awesomerea.org/papers/paper-shieldedcode/record.json>
- 英文版：[English](https://awesomerea.org/papers/paper-shieldedcode/index.md)

## 研究范围与局限

全部数据均为 x86-64，所有训练配对都由论文未具名的同一款商业 VMP 工具生成，因此结果未必适用于其他架构、保护工具或虚拟指令设计。生成的虚拟机代码通过 HumanEval-compile 测试用例检验，而非形式化等价验证；各保护级别的 Pass@1 仅在 14.71% 至 26.95% 之间。相对 jTrans 的相似性优势只出现在 O0+L1 设置中：在 BinaryCorp-VirtualAssembly 的其余五种设置中，采用线性探针的 jTrans 的 Recall@1 更高（例如 O2+L1 下为 0.715，ShieldedCode 为 0.309）；论文对这一比较的概括也不一致（摘要称提升 10%，引言称提升 15.5 个百分点，结果部分则称性能相当）。消融表中 ContraBin、CLAP 与 CEBin 的得分据论文说明是依其架构估计而非实测。保护强度的结论依赖作者自行开展的攻击和人工研究：12 名研究生与 3 名专业逆向工程师分析 20 个函数，每个函数限时 30–45 分钟，对 ShieldedCode 输出的成功率为 17%，对 VMProtect 和 Themida 分别为 67% 与 58%。ShieldedCode 不是去虚拟化工具或反混淆工具，论文也未链接代码、模型或生成的训练数据。

## 与本合集的关联

补充保护方视角的研究：利用学习模型生成虚拟机保护代码并衡量其抗逆向能力，与 BAR 2026 保护研究和 SRE-Bench 这类衡量智能体如何应对受保护二进制的工作互补。

## 发表与复核说明

ICLR 论文集页面按此顺序列出五位作者，页码为 23529–23552，没有 DOI；其 PDF 页眉为“Published as a conference paper at ICLR 2026”。arXiv 只有 v1，发布于 2026-01-28，注释为“Accepted to ICLR 2026”。OpenReview 论坛 9F9UFVcDkV 对自动请求返回浏览器验证。论文与论文集页面均未链接代码、模型或数据；可复现性声明只说明实现基于 PyTorch 与开源库。GitHub 上同名仓库 Clon5676/ShieldedCode 是无关的 Unreal Engine 项目。用于构建训练数据的商业工具未具名；VMProtect 与 Themida 仅作为抗逆向研究中的对照出现。

## 一手来源

1. <https://proceedings.iclr.cc/paper_files/paper/2026/hash/286976486c9bbfa2c2069b01b259b19d-Abstract-Conference.html>
2. <https://proceedings.iclr.cc/paper_files/paper/2026/file/286976486c9bbfa2c2069b01b259b19d-Paper-Conference.pdf>
3. <https://arxiv.org/abs/2601.20679>
4. <https://arxiv.org/pdf/2601.20679v1>
5. <https://openreview.net/forum?id=9F9UFVcDkV>

## 关于此条目

已依据论文及一手来源复核。请通过原始论文或 BibTeX 引用原作者。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
