Skip to main content
QUICK REVIEW

[论文解读] Multi-target Backdoor Attacks for Code Pre-trained Models

Yanzhou Li, Shangqing Liu|arXiv (Cornell University)|Jun 14, 2023
Software Engineering Research被引用 5
一句话总结

本文提出了首个面向代码预训练模型的任务无关、多目标后门攻击框架,通过污染的Seq2Seq学习与标记表示学习,在预训练阶段实现隐蔽的后门植入。该方法在五个与代码相关的下游任务中均实现了高达98.7%的攻击成功率,同时保持模型功能正常,并可规避现有防御机制。

ABSTRACT

Backdoor attacks for neural code models have gained considerable attention due to the advancement of code intelligence. However, most existing works insert triggers into task-specific data for code-related downstream tasks, thereby limiting the scope of attacks. Moreover, the majority of attacks for pre-trained models are designed for understanding tasks. In this paper, we propose task-agnostic backdoor attacks for code pre-trained models. Our backdoored model is pre-trained with two learning strategies (i.e., Poisoned Seq2Seq learning and token representation learning) to support the multi-target attack of downstream code understanding and generation tasks. During the deployment phase, the implanted backdoors in the victim models can be activated by the designed triggers to achieve the targeted attack. We evaluate our approach on two code understanding tasks and three code generation tasks over seven datasets. Extensive experiments demonstrate that our approach can effectively and stealthily attack code-related downstream tasks.

研究动机与目标

  • 解决广泛可用的预训练代码模型在后门攻击下的安全漏洞。
  • 开发一种任务无关的后门框架,支持代码理解与代码生成任务。
  • 设计隐蔽的触发机制,保持代码语义并规避静态分析。
  • 在无需微调的情况下,实现在多种下游任务中的后门激活。
  • 评估攻击的有效性、隐蔽性以及对现有防御机制的抗性。

提出的方法

  • 提出一种污染预训练策略,在编码器-解码器模型的预训练阶段植入后门。
  • 设计一种污染的标记表示学习策略,通过为触发输入分配特定输出向量,以针对代码分类任务。
  • 开发一种污染的Seq2Seq学习策略,通过语句插入、删除或操作符修改,改变输出序列,以针对代码生成任务。
  • 使用结合代码与自然语言标记的混合触发机制,以保持语法正确性并规避检测。
  • 将两种预训练策略整合到统一框架中,以支持对理解与生成任务的多目标攻击。
  • 在七个数据集上对后门模型进行评估,涵盖五项下游任务,以检验其功能、攻击成功率与隐蔽性。

实验结果

研究问题

  • RQ1是否能在代码模型的预训练阶段有效植入后门,以实现在下游任务中的多目标攻击?
  • RQ2所提出的攻击在破坏代码理解与代码生成任务方面的有效性如何?
  • RQ3后门模型在多大程度上可规避静态分析与现有防御机制的检测?
  • RQ4后门模型在良性输入上对原始模型功能的保持程度如何?
  • RQ5当模型采用直接标签生成而非标记表示时,该攻击的局限性是什么?

主要发现

  • 所提出的后门攻击在代码生成任务上的最大攻击成功率达到98.7%,在代码理解任务上达到97.3%,覆盖多个数据集。
  • 后门模型保持了较高的良性性能,经权重重初始化防御后,精确匹配分数仅轻微下降(例如,Java2C#数据集上从66.70降至56.90)。
  • 该攻击具有隐蔽性:可规避代码分析工具检测,并抵抗常见的防御技术(如权重重初始化)。
  • 模型在干净输入上保持了原始功能,所有评估数据集上的准确率均仅出现轻微下降。
  • 当模型采用直接标签生成而非标记表示时,该攻击无效,凸显了其关键的架构局限性。
  • 识别出后处理与模型签名作为可行的缓解策略,可降低部署后门模型的风险。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。