paperbot · PL 论文追踪

全部论文 待读 收藏

P2 The Call Graph Chronicles: Unleashing the Power Within

调用图编年史:释放内在力量
FSE Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering2023匹配度 4/10 · 该论文用GNN提升动态语言调用图准确率,属于机器学习辅助程序分析,与静态分析+AI的宽泛方向有交集;但不涉及LLM/Agent改进静态分析,也不涉及浮点、贝叶斯程序分析或面向ML系统/Agentic程序的静态分析,因此与当前核心研究方向匹配有限。引用 1 inbox
Masudul Hasan Masud Bhuiyan
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出 Graphia,用图神经网络融合结构与语义信息,提升动态语言调用图准确率。

调用图生成对程序理解与分析至关重要,但现有方法难以兼顾准确率与精度,在 JavaScript 等动态语言中尤为突出。本文提出 Graphia,利用图神经网络(GNN)融合代码的结构信息与语义信息来提升调用图准确性。其两步流程以初始调用图作为 GNN 训练数据,再在新程序中识别真实调用边。实验表明,Graphia 在漏洞检测中显著提高真阳性率,最高可达 95%,说明结合代码结构与上下文能有效应对复杂动态语言场景下的调用图构建难题。

问题
现有调用图生成方法在准确率与精度之间权衡,尤其在 JavaScript 等动态语言中难以同时保证两者。
方法
提出 Graphia,采用两步式图神经网络方法,以初始调用图作为训练数据,融合代码结构与语义信息来推断新程序中的真实调用边。
评估
在漏洞检测任务上评估,Graphia 将真阳性率显著提升至最高 95%。
原文摘要(Abstract)

Call graph generation is critical for program understanding and analysis, but achieving both accuracy and precision is challenging. Existing methods trade off one for the other, particularly in dy- namic languages like JavaScript. This paper introduces "Graphia," an approach that combines structural and semantic information using a Graph Neural Network (GNN) to enhance call graph accu- racy. Graphia’s two-step process employs an initial call graph as training data for the GNN, which then uncovers true call edges in new programs. Experimental results show Graphia significantly improves true positive rates in vulnerability detection, achieving up to 95%. This approach advances call graph accuracy by effectively incorporating code structure and context, particularly in complex dynamic language scenarios.

链接与引用

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

BibTeX
@inproceedings{Bhuiyan23,
  title = {The Call Graph Chronicles: Unleashing the Power Within},
  author = {Masudul Hasan Masud Bhuiyan},
  booktitle = {FSE},
  year = {2023},
  doi = {10.1145/3611643.3617854}
}