桃子桃子快讯
返回首页
研究论文

Acoda:用遗传算法生成对抗性代码混淆,抵御 LLM 代码分析

研究者提出 Acoda 框架,通过遗传算法迭代优化混淆策略,在 7 个主流大模型上实现最高 70% 的防御成功率。

2026.07.30 · 周四2 分钟阅读

随着大语言模型(LLM)被广泛用于代码理解、调试与漏洞检测,其强大的语义推理能力也带来了新的安全与隐私风险——LLM 可能在分析过程中还原、重构甚至逆向源码逻辑,从而造成知识产权泄露。一篇发表于 arXiv 的研究论文提出了名为 Acoda 的对抗性代码混淆框架,试图在不改变代码语义的前提下,诱导 LLM 拒绝或错误解读源码。

研究背景与动机

现有代码保护手段多面向传统逆向工程,而对 LLM 时代的新威胁缺乏针对性。Acoda 作者指出,LLM 在代码分析任务中的强大能力来自两大机制:一是安全对齐(safety alignment),二是基于 token 的信息处理。围绕这两点设计对抗样本,可以在不改动程序行为的情况下干扰模型对代码的理解。

Acoda 框架设计

Acoda 采用遗传算法驱动对抗样本生成,整体流程包含以下要素:

  • 设计了 8 种语义保持型混淆方法,覆盖重命名、控制流扁平化、冗余插入、死代码注入等多种变换;
  • 通过遗传算法对混淆策略进行迭代优化,以「最大化 LLM 拒绝或误解」为目标函数;
  • 提出基于 LLM 响应的量化评估框架,结合一个辅助 LLM 与 4 项评估指标,对目标模型在混淆代码上的表现进行多维打分。

所有混淆变换都受「语义保持」约束,确保混淆前后程序的外部行为一致。

实验结果

研究团队在 7 个当前主流的大模型上对 Acoda 进行了评估,包括 GPT-4o、DeepSeek、Qwen、Llama 与 Gemma 系列。关键结论如下:

  • 攻击成功率(ASR)最高可达 70%,能有效诱导 LLM 拒绝分析或给出错误解读;
  • 跨模型迁移性较强,在未直接参与训练的模型上仍能保持防御效果;
  • 运行时开销极小,几乎不影响原始程序的执行效率;
  • 原始代码语义在混淆前后保持不变。

意义与局限

Acoda 为「LLM 时代的代码保护」提供了一种新视角,将传统对抗样本思路与遗传搜索结合,针对的是 LLM 的对齐与 token 处理机制,而非某种特定模型漏洞。不过,目前该工作仍处于研究阶段,距离工程化部署还有差距,例如对抗样本对真实开发工具链的兼容性、对不同编程语言的覆盖度等仍需进一步验证。论文已在 arXiv 公开(编号 arXiv:2606.11755),感兴趣的读者可查阅完整方法与实验设置。

信源