1. 论文题目(拟定)
RobustVul: LLM-Based Semantic Preserving Perturbation for Defending Against Adversarial Attacks in Vulnerability Detection
(中文:RobustVul:基于LLM语义保持扰动的漏洞检测对抗攻击防御方法)
2. 研究背景与问题陈述
深度学习模型在软件漏洞检测(SVD)领域取得了显著进展,但现有模型对对抗性攻击(Adversarial Attacks)极为脆弱。攻击者可以通过微调代码中的变量名、添加无关逻辑或调整语法结构,在不改变代码功能的前提下误导模型将其误分类为安全代码(即逃逸攻击/Evasion Attack)。
近期工作(如 EaTVul)表明,大语言模型(LLM)可以被用来生成高质量的对抗样本以欺骗检测器。然而,目前的防御机制主要集中在模型架构改进(如对抗训练),缺乏对输入预处理阶段的有效防御。本研究旨在填补这一空白。
3. 核心创新点:LLM驱动的防御性数据扰动 (LLM-DDP)
受 EaTVul 的启发,本文提出一种“以毒攻毒”的思路:利用LLM对输入的源代码进行防御性的随机扰动,打破攻击者精心构造的对抗模式,同时保证代码语义不变。
3.1 创新机制
不同于传统的静态混淆,我们利用LLM执行以下语义保持变换(Semantic-Preserving Transformations):
-
标识符重命名: 将变量、函数名替换为语义相近但字符结构不同的名称(如 getUserData → retrieveUserInfo)。
-
语法结构重组: 在不改变控制流图(CFG)的情况下,调整代码的书写方式(如三元运算符与If-Else互换,死代码注入)。
-
注释与自然语言噪声: 插入或改写符合上下文但与逻辑无关的注释。
3.2 防御原理
如果攻击者利用LLM生成了对抗样本,其攻击特征通常锚定在特定Token序列上。我们在输入端引入一个不可预测的LLM扰动层,相当于给数据增加了动态的“噪声屏障”。由于每次推理前输入都可能发生微小变化,攻击者难以找到跨变换的通用对抗扰动,从而提升了模型的鲁棒性。
4. 实验设计与方法论
本报告严格遵循用户要求,设立两个维度的实验验证:防御效能验证与计算资源消耗评估。
4.1 实验一:防御有效性验证
-
数据集: Devign, BigVul 或 CodeXGLUE。
-
基线模型: GraphCodeBERT, CodeBERT 或其他SOTA漏洞检测模型。
-
攻击方法: 复现或参考 EaTVul 的方法生成对抗样本。
-
流程:
-
在干净代码上测试基线模型准确率(Acc0)。
-
在对抗样本上测试基线模型准确率(Accadv)。
-
在“对抗样本 + LLM扰动”上测试模型准确率(Accdef)。
-
指标: 准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1分数。预期 Accdef 显著高于 Accadv,证明防御有效。
4.2 实验二:GPU vs CPU 计算资源消耗分析(重点)
此部分旨在量化所提方法的推理开销(Inference Overhead),探讨该防御策略在实际部署中的可行性。
A. 实验设置
-
硬件环境:
-
GPU组: NVIDIA A100 / RTX 3090 (显存 XX GB)。
-
CPU组: Intel Xeon Platinum / AMD EPYC (核心数 XX)。
-
-
软件环境: PyTorch, Hugging Face Transformers, CUDA Toolkit。
-
变量控制: 固定LLM模型(如 GPT-2, Llama-2-7B 或 CodeLlama),固定批量大小(Batch Size = 1, 8, 16)。
B. 测量指标
我们将对比“无防御推理”与“LLM扰动+推理”的资源差异:
推理延迟(Latency): 单条样本的平均处理时间(ms)。
吞吐量(Throughput): 单位时间内处理的样本数(samples/s)。
资源利用率:
-
GPU: 显存占用峰值(Memory Usage)、GPU 利用率(Volatility %)。
-
CPU: CPU 负载(Load Average)、内存带宽占用。
能耗估算: (可选,若设备支持)记录功耗变化。
C. 预期现象与分析
-
性能瓶颈定位: 预期发现主要的延迟来自于LLM的推理过程(Auto-Regression Generation),而非分类器本身。
-
异构对比: 预计在CPU环境下,LLM扰动带来的延迟增长倍数将远大于GPU环境(因为Transformer推理在CPU上缺乏并行加速优势)。这将论证为何该防御方案更适合云端高算力环境,而不适合边缘端低功耗设备。
5. 预期贡献
新的防御视角: 提出了一种基于LLM预处理的动态防御机制,有效抵御针对漏洞检测的新型逃逸攻击。
性能基准(Benchmark): 首次系统性地量化了LLM作为“数据防火墙”时的计算开销,特别是对比了GPU与CPU环境下的能效比,为后续工程落地提供了数据支撑。
可复现性: 公开LLM扰动的具体Prompt策略及资源消耗日志,促进该领域的进一步研究。
6. 潜在挑战与讨论
-
语义一致性验证: 如何确保LLM的扰动绝对不会改变代码逻辑?(解决方案:引入差分测试或编译检查)。
-
API成本: 如果使用闭源LLM(如GPT-4),推理成本过高。(解决方案:实验中使用开源小模型替代,并论证可行性)。
-
适应性攻击: 攻击者可能会意识到存在LLM扰动层并尝试攻击它。(解决方案:在讨论部分提及,作为未来工作)。


