“ 近年来,基于深度学习的漏洞检测方法取得了显著进展,但仍面临一个核心瓶颈:模型“看懂”代码结构,却未必真正理解语义;检测结果缺乏可解释性,难以辅助安全分析;LLM 虽具备强推理能力,但直接用于检测存在幻觉与不稳定问题。
因此,一个关键问题是:如何同时利用“结构语义建模能力”与“LLM 推理解释能力”?
论文提出:一种融合代码语义特征与LLM生成解释的漏洞检测方法,实现“检测 + 解释”协同优化。”
📄 论文标题:Enhancing vulnerability detection by fusing code semantic features with LLM-generated explanations
📅 发表时间:Information Fusion,2025
🏫 作者单位:西安邮电大学等
💡开源代码:https//github.com/XUPT-SSS/FuSEVul
01—方法介绍
该方法的核心思想可以总结为:不仅让模型“看代码”,还让模型“解释代码”,并将解释反哺检测过程。
整体流程如下:
① 语义特征提取
对源代码进行表示学习;
② LLM 生成解释
生成与漏洞相关的语义描述;
③ 多模态融合
对齐代码表示与文本解释;
④ 联合训练
利用解释增强检测模型;
⑤ 输出结果
同时提供检测标签与解释信息。

图1. FuSEVul方法架构
小结:从“黑盒分类”迈向“可解释检测”的关键一步。
02—关键机制
- 代码语义 + LLM解释融合
首次系统性结合两类信息源。
- 解释驱动学习机制
利用自然语言解释提升模型判别能力。
- 多模态特征对齐
实现代码与文本语义空间融合。
- 检测与解释一体化
同时输出预测结果与原因分析。
|
模块 |
设计思路 |
作用 |
|---|---|---|
|
代码语义编码器 |
利用深度模型提取语法与语义特征 |
捕获程序结构与上下文信息 |
|
LLM 解释生成 |
生成漏洞相关的自然语言解释 |
提供高层语义推理信息 |
|
特征融合模块 |
将代码特征与文本解释进行对齐融合 |
增强模型语义表达能力 |
|
联合判别器 |
基于融合特征进行漏洞分类 |
输出检测结果 |
|
解释约束机制 |
利用解释信息引导模型学习 |
提升可解释性与鲁棒性 |
小结:将“代码表示学习”与“语言推理能力”进行深度耦合,实现检测能力升级。
03—实验结果
实验在三个广泛使用的公开数据集上进行评估:Devign、Reveal 和 TrVD。主要实验结果如下。
(1)FuSEVul与现有方法的漏洞检测性能对比。如表1所示,FuSEVul在三个数据集上均全面领先所有基线方法,在准确率和F1分数上均取得最优结果。
-
与6个单模态监督学习方法相比,FuSEVul在Devign、Reveal和TrVD数据集上取得了平均相对准确率提升11.2%、5.5%和3.7%,F1分数提升21.1%、68.3%和8.1%。
-
与8个预训练模型方法相比,FuSEVul在三个数据集上分别取得相对准确率提升2.7%、3.0%和1.4%,F1分数提升3.4%、39.5%和8.7%。
-
与2个多模态融合方法(DeepVD、S2FVD)相比,FuSEVul通过引入代码解释这一全新模态,取得了相对准确率提升5.8%、2.4%和1.9%,F1分数提升6.5%、68.8%和2.2%。
-
LLM直接提示方法表现显著较差,FuSEVul相对于ChatGPT-3.5和Codellama-7B取得了平均相对准确率提升12.6%、11.0%和74.0%,F1分数提升275.1%、519.3%和36.9%。
表1. FuSEVul与基线方法的性能对比。

(2)数据稀缺场景下的性能评估,结果见图2。结果表明,FuSEVul在所有数据稀缺条件下均优于所有基线方法,表现出更强的泛化能力。
-
在Devign数据集上,FuSEVul在数据稀缺场景下的平均F1分数提升为5.14%。
-
在Reveal数据集上,当训练样本仅100个时,FuSEVul的平均F1分数提升达到8.48%。
-
在TrVD数据集上,FuSEVul的平均准确率提升6.84%,F1分数提升16.09%。
-
值得注意的是,FuSEVul仅用100个训练样本即可达到85.83%的F1分数,超过了18个基线方法中13个在全量数据上训练的性能。



图2. FuSEVul与基线方法在数据稀缺场景下的性能对比。
小结:FuSEVul通过融合代码语义特征与LLM生成的自然语言解释,实现了更全面的漏洞检测能力。实验结果表明在三个公开数据集上全面超越18个基线方法,平均相对准确率提升7.3%,F1分数提升52.2%。在数据稀缺场景下展现出强泛化能力,仅用100个样本即可超越大多数全量训练的基线方法。
📌 总结
该工作的重要意义在于:打破“检测 vs 可解释性”的对立,将二者统一到同一框架中。它揭示了一个关键趋势:未来漏洞检测模型,将从“纯表示学习”走向“语义推理融合”。这一思路可进一步拓展至:自动漏洞修复(Explain → Fix),AI 驱动的软件工程工具链。

359

被折叠的 条评论
为什么被折叠?



