中文

基于表示最近邻搜索的代码模型黑盒攻击

密码学与安全 2023-10-20 v3 人工智能 软件工程

摘要

现有生成对抗代码样本的方法面临若干挑战:可替换变量可用性有限、这些替换的验证成本高,以及生成的对抗样本具有明显扰动。为解决这些问题,我们提出的方法RNNS利用基于历史攻击的搜索种子来寻找潜在的对抗替换。这些离散替换并非直接使用,而是通过预训练变量名编码器映射到连续向量空间。基于该向量表示,RNNS预测并选择更优的替换用于攻击。我们在涵盖三种编程语言(Java、Python和C)的六项代码任务上评估了RNNS的性能。我们采用了三个预训练代码模型(CodeBERT、GraphCodeBERT和CodeT5),由此得到共18个受害模型。结果表明,RNNS在攻击成功率(ASR)和查询次数(QT)上优于基线方法。此外,就替换变量数量和变量长度变化而言,RNNS引入的对抗样本扰动小于基线。最后,我们的实验表明RNNS能高效攻击带防御的模型,并可用于对抗训练。

关键词

引用

@article{arxiv.2305.05896,
  title  = {A Black-Box Attack on Code Models via Representation Nearest Neighbor Search},
  author = {Jie Zhang and Wei Ma and Qiang Hu and Shangqing Liu and Xiaofei Xie and Yves Le Traon and Yang Liu},
  journal= {arXiv preprint arXiv:2305.05896},
  year   = {2023}
}