Skip to main navigation Skip to search Skip to main content

DSHGT: Dual-Supervisors Heterogeneous Graph Transformer - a pioneer study of using heterogeneous graph learning for detecting software vulnerabilities

  • Tiehua Zhang*
  • , Rui Xu
  • , Jianping Zhang
  • , Yuze Liu
  • , Xin Chen
  • , Jun Yin
  • , Xi Zheng
  • *Corresponding author for this work

Research output: Contribution to journal › Article › peer-review

Abstract

Vulnerability detection is a critical problem in software security and attracts growing attention both from academia and industry. Traditionally, software security is safeguarded by designated rule-based detectors that heavily rely on empirical expertise, requiring tremendous effort from software experts to generate rule repositories for large code corpus. Recent advances in deep learning, especially Graph Neural Networks (GNN), have uncovered the feasibility of automatic detection of a wide range of software vulnerabilities. However, prior learning-based works only break programs down into a sequence of word tokens for extracting contextual features of codes, or apply GNN largely on homogeneous graph representation (e.g., AST) without discerning complex types of underlying program entities (e.g., methods, variables). In this work, we are one of the first to explore heterogeneous graph representation in the form of Code Property Graph and adapt a well-known heterogeneous graph network with a dual-supervisor structure for the corresponding graph learning task. Using the prototype built, we have conducted extensive experiments on both synthetic datasets and real-world projects. Compared with the state-of-the-art baselines, the results demonstrate superior performance in vulnerability detection (average F1 improvements over 10% in real-world projects) and language-agnostic transferability from C/C++ to other programming languages (average F1 improvements over 11%).

Original languageEnglish
Article number202
Pages (from-to)1-31
Number of pages31
JournalACM Transactions on Software Engineering and Methodology
Volume33
Issue number8
DOIs
Publication statusPublished - 22 Nov 2024

Keywords

  • code property graph (CPG)
  • heterogeneous graph learning
  • Vulnerability detection

Fingerprint

Dive into the research topics of 'DSHGT: Dual-Supervisors Heterogeneous Graph Transformer - a pioneer study of using heterogeneous graph learning for detecting software vulnerabilities'. Together they form a unique fingerprint.

Cite this