paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Distinguishing Look-Alike Innocent and Vulnerable Code by Subtle Semantic Representation Learning and Explanation

通过细微语义表示学习与解释区分看似相同的无害代码与脆弱代码
FSE Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering2023匹配度 3/10 · 该论文属于深度学习用于代码漏洞检测,虽涉及程序语义表示与解释,但既不是将静态分析用于 ML/Agent 系统,也未使用 LLM/Agent 改进静态分析或形式化验证,与画像核心方向(Agentic 程序分析、LLM×静态分析、浮点/贝叶斯程序分析)关联较弱。引用 68 inbox
Chao Ni, Xin Yin, Kaiwen Yang, Dehai Zhao, Zhenchang Xing, Xin Xia
crossref: 2026-09-12dblp: 2026-09-12arxiv: 2026-09-12

AI 速览

一句话:提出 SVulD,用细微语义表示学习加自然语言解释做函数级漏洞检测,区分词法相似但语义相反的函数。

现有基于深度学习的漏洞检测方法虽性能不俗,但泛化能力与实用性受限:对词法相似而语义相反的函数预测效果差,且不向开发者提供直观解释。本文提出 SVulD,一种函数级细微语义嵌入的漏洞检测方法并附带解释。SVulD 先训练模型学习不受词法相似性干扰的函数语义表示,从而区分「看似相同」的无害代码与脆弱代码;再对判定为脆弱的函数生成自然语言解释(如根本原因),帮助开发者直观理解漏洞。作者在广泛使用的实用漏洞数据集上开展大规模实验,按五项性能指标与四种 SOTA 方法比较,SVulD 全面领先:F1 提升 23.5%–68.0%,PR-AUC 提升 15.9%–134.8%,准确率提升 7.4%–64.4%。用户案例研究中参与者反馈表明 SVulD 对理解脆弱代码与开发实践有帮助。

问题
现有基于深度学习的漏洞检测方法对词法相似但语义相反的函数预测效果不佳,且检测结果缺乏面向开发者的直观解释。
方法
SVulD 训练模型学习忽略词法相似性的细微语义表示,实现函数级漏洞检测,并为检测出的脆弱函数生成自然语言解释(如根本原因)。
评估
在广泛使用的实用漏洞数据集上与四种 SOTA 方法按五项性能指标进行大规模对比,并开展用户案例研究评估其对开发者理解漏洞的有用性。
原文摘要(Abstract)

Though many deep learning (DL)-based vulnerability detection approaches have been proposed and indeed achieved remarkable performance, they still have limitations in the generalization as well as the practical usage. More precisely, existing DL-based approaches (1) perform negatively on prediction tasks among functions that are lexically similar but have contrary semantics; (2) provide no intuitive developer-oriented explanations to the detected results. In this paper, we propose a novel approach named SVulD, a function-level S ubtle semantic embedding for Vulnerability Detection along with intuitive explanations, to alleviate the above limitations. Specifically, SVulD firstly trains a model to learn distinguishing semantic representations of functions regardless of their lexical similarity. Then, for the detected vulnerable functions, SVulD provides natural language explanations (e.g., root cause) of results to help developers intuitively understand the vulnerabilities. To evaluate the effectiveness of SVulD, we conduct large-scale experiments on a widely used practical vulnerability dataset and compare it with four state-of-the-art (SOTA) approaches by considering five performance measures. The experimental results indicate that SVulD outperforms all SOTAs with a substantial improvement (i.e., 23.5%-68.0% in terms of F1-score, 15.9%-134.8% in terms of PR-AUC and 7.4%-64.4% in terms of Accuracy). Besides, we conduct a user-case study to evaluate the usefulness of SVulD for developers on understanding the vulnerable code and the participants’ feedback demonstrates that SVulD is helpful for development practice.

链接与引用

DOI 原文 · arXiv · PDF(开放获取) · DBLP

BibTeX
@inproceedings{abs-2308-11237,
  title = {Distinguishing Look-Alike Innocent and Vulnerable Code by Subtle Semantic Representation Learning and Explanation},
  author = {Chao Ni and Xin Yin and Kaiwen Yang and Dehai Zhao and Zhenchang Xing and Xin Xia},
  booktitle = {FSE},
  year = {2023},
  doi = {10.1145/3611643.3616358}
}