分享自:

针对代码模型的隐蔽后门攻击研究

期刊:ieee transactions on software engineeringDOI:10.1109/tse.2024.3361661

学术报告:代码模型的隐蔽后门攻击研究

作者与发表信息

本研究的核心作者包括:Zhou Yang、Bowen Xu、Jie M. Zhang、Hong Jin Kang、Jieke Shi、Junda He 和 David Lo(IEEE Fellow)。他们分别来自新加坡管理大学、北卡罗来纳州立大学、伦敦国王学院和加州大学洛杉矶分校。研究论文《Stealthy Backdoor Attack for Code Models》发表于 IEEE Transactions on Software Engineering 2024年4月刊(第50卷第4期)。

学术背景

研究领域与动机

该研究属于软件工程与人工智能安全交叉领域,聚焦于代码模型(如CodeBERT、PLBART、CodeT5)的后门攻击(backdoor attack)问题。代码模型通过预训练学习代码的通用表示,广泛应用于代码摘要(code summarization)、方法名预测(method name prediction)等下游任务。然而,现有研究表明,此类模型易受后门攻击:攻击者通过数据投毒(data poisoning)在训练集中植入触发器(trigger),使得模型对正常输入表现良好,但对含触发器的输入输出预定义的恶意结果。

此前,Ramakrishnan等人提出的后门攻击使用固定触发器(fixed trigger)语法触发器(grammar trigger)(如插入无效代码块),但此类触发器易于被检测。本研究旨在探索隐蔽性更强的后门攻击,并提出首个针对代码模型的隐蔽攻击方法——AFRAIDOOR(Adversarial Feature as Adaptive Backdoor)。

研究目标

  1. 设计一种基于对抗扰动(adversarial perturbation)的自适应触发器(adaptive trigger),提升攻击的隐蔽性;
  2. 评估现有防御方法(如Spectral Signature、ONION、Activation Clustering)对隐蔽攻击的无效性;
  3. 揭示代码模型在隐蔽后门攻击下的安全威胁,呼吁加强防御研究。

研究流程与方法

1. 威胁模型设计

研究将后门攻击分为三个阶段:
- 数据投毒阶段:攻击者通过篡改开源平台(如GitHub)数据植入触发器;
- 模型训练阶段:开发者使用被污染的数据集训练模型;
- 模型部署阶段:攻击者通过触发器激活后门,操控模型输出。

2. AFRAIDOOR攻击方法

核心策略

  • 对抗性特征作为触发器:通过标识符重命名(identifier renaming)实现细粒度扰动,保留程序语义;
  • 自适应触发器:为不同输入生成不同的触发器,避免集中分布。

具体流程

  1. 训练 crafting model:使用简单的Seq2Seq模型(2层LSTM)作为攻击目标模型;
  2. 生成对抗扰动:通过目标攻击(targeted attack)最小化损失函数,使模型对特定输入输出目标标签τ;
  3. 触发器插入:基于算法1(见原文)提取代码中的标识符,计算梯度并生成对抗性变量名;
  4. 构建污染数据集:以5%的投毒率将触发器注入训练集,并修改对应标签为τ。

算法创新

算法1通过以下步骤生成自适应触发器:
- 提取代码草图(program sketch)和变量位置;
- 计算损失函数梯度,选择梯度最小的位置插入新变量名;
- 确保新变量名符合语法规则且语义不变。

3. 实验设计

研究对象

  • 模型:CodeBERT、PLBART、CodeT5;
  • 任务:代码摘要(CodeXGlue数据集)和方法名预测(CodeSearchNet数据集);
  • 防御方法:Spectral Signature、ONION、Activation Clustering。

评估指标

  • 隐蔽性:检测成功率(DSR@β)、触发器检测率(TDR@γ);
  • 攻击成功率(ASR):模型在含触发器输入上输出目标标签的比例;
  • 模型性能影响:BLEU分数变化。

主要结果

1. 隐蔽性验证

  • 对抗自动化检测
    • Spectral Signature对AFRAIDOOR的检测率仅1.42%(代码摘要任务)和29.81%(方法名预测任务),而固定触发器的检测率高达94.71%;
    • ONION对自适应触发器的检测率为13.22%,远低于固定触发器(41.58%)。
  • 人工检测:用户研究中,参与者对AFRAIDOOR触发器的检测率为4.45%,耗时126分钟,而固定触发器检测率达100%,耗时仅44分钟。

2. 攻击有效性

  • 无防御时:AFRAIDOOR在代码摘要任务上的ASR为95.94%,略低于固定触发器的100%;
  • 防御启用后:Spectral Signature使固定触发器的ASR降至10.47%,而AFRAIDOOR仍保持77.05%(方法名预测)和92.98%(代码摘要)。

3. 模型性能影响

所有攻击对模型在干净数据上的性能影响较小(BLEU分数平均下降0.18),统计无显著性差异(p>0.05)。

结论与价值

科学价值

  1. 理论贡献:首次提出针对代码模型的隐蔽后门攻击方法,证明自适应触发器可绕过现有防御;
  2. 安全启示:现有防御方法(如Spectral Signature)无法有效保护代码模型,需开发新防御机制。

应用意义

  • 开发者建议:避免使用不可信数据源,加强数据完整性验证;
  • 研究方向:需探索代码特异性防御技术(如对抗样本检测)。

研究亮点

  1. 方法创新:AFRAIDOOR是首个利用对抗性特征的代码模型后门攻击,隐蔽性显著优于基线;
  2. 实验全面性:覆盖3种主流模型、2类任务和3种防御方法,结论具有普适性;
  3. 跨领域意义:为AI安全与软件工程的交叉研究提供新案例。

其他发现

  • 攻击局限性:短代码(<50词素)的ASR较低,因标识符数量不足;
  • 扩展潜力:方法可适配代码搜索等任务,通过关键词-触发器关联植入漏洞。

本研究揭示了代码模型在隐蔽攻击下的脆弱性,为后续防御研究提供了重要基线。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com