LLM2D
消除神经代码模型中的后门以实现安全代码理解
Eliminating Backdoors in Neural Code Models for Secure Code Understanding
作者: Weisong Sun, Yuchen Chen, Chunrong Fang, Yebo Feng, Yuan Xiao, An Guo, Quanjun Zhang, Yang Liu, Baowen Xu, Zhenyu Chen
发布日期: 2/21/2025
arXiv ID: oai:arXiv.org:2408.04683v2

摘要

arXiv:2408.04683v2 宣告类型: 替换交叉 摘要:神经代码模型(NCMs)广泛用于解决各种代码理解任务,如缺陷检测。然而,最近的多项研究表明,这些模型容易遭受后门攻击。被植入后门的NCMs在正常/干净的代码片段中可以正常工作,但在受到对手精心设计的触发器污染的代码片段上会表现出预想的行为,这构成了重大的安全威胁。因此,迫切需要有效的技术来悄悄检测和消除植入NCMs中的后门。 为了解决这个问题,本文创新地提出了一种用于安全代码理解的后门消除技术,称为EliBadCode。EliBadCode通过反转/逆向工程和遗忘后门触发器来消除NCMs中的后门。具体来说,EliBadCode首先基于特定编程语言的命名约定过滤模型词汇表,以减少触发器搜索空间和成本。然后,EliBadCode引入了一种针对样本特定触发器位置的识别方法,这可以减少非后门(对抗性)干扰对后续触发器反转的干扰,从而有效地高效生成反转后门触发器。后门触发器可以被视为后门(对抗性)干扰。随后,EliBadCode采用贪婪坐标梯度算法优化反转触发器,并设计了一种触发器锚定方法来净化反转触发器。最后,EliBadCode通过模型遗忘来消除后门。我们在三个关键安全代码理解任务中使用的多种NCMs中评估了EliBadCode在消除后门方面的有效性。结果表明,EliBadCode能够有效消除后门,同时对模型的正常功能影响最小。