A new approach to software vulnerability detection based on CPG analysis

被引:3
作者
Do Xuan, Cho [1 ]
机构
[1] Posts & Telecommun Inst Technol, Fac Informat Secur, Hanoi, Vietnam
来源
COGENT ENGINEERING | 2023年 / 10卷 / 01期
关键词
source code vulnerabilities; source code vulnerability detection; source code features; feature profile; Deep Graph Convolutional Neural Network; GRAPH; PERFORMANCE; IMPACT;
D O I
10.1080/23311916.2023.2221962
中图分类号
T [工业技术];
学科分类号
08 ;
摘要
Detecting source code vulnerabilities is an essential issue today. In this paper, to improve the efficiency of detecting vulnerabilities in software written in C/C++, we propose to use a combination of Deep Graph Convolutional Neural Network (DGCNN) and code property graph (CPG). Specifically, 3 main proposed phases in the research method include: phase 1: building feature profiles of source code. At this step, we suggest using analysis techniques such as Word2vec, one hot encoding to standardize and analyze the source code; phase 2: extracting features of source code based on feature profiles. Accordingly, at this phase, we propose to use Deep Graph Convolutional Neural Network (DGCNN) model to analyze and extract features of the source code; phase 3: classifying source code based on the features extracted in phase 2 to find normal source code and source code containing security vulnerabilities. Some scenarios for comparing and evaluating the proposed method in this study compared with other approaches we have taken show the superior effectiveness of our approach. Besides, this result proves that our method in this paper is not only correct and reasonable, but it also opens up a new approach to the task of detecting source code vulnerabilities.
引用
收藏
页数:16
相关论文
共 48 条
  • [1] Albawi S, 2017, I C ENG TECHNOL
  • [2] Analyzing the Implications of Healthcare Data Breaches through Computational Technique
    Almulihi, Ahmed H.
    Alassery, Fawaz
    Khan, Asif Irshad
    Shukla, Sarita
    Gupta, Bineet Kumar
    Kumar, Rajeev
    [J]. INTELLIGENT AUTOMATION AND SOFT COMPUTING, 2022, 32 (03) : 1763 - 1779
  • [3] Analyzing the Big Data Security Through a Unified Decision-Making Approach
    Attaallah, Abdulaziz
    Alsuhabi, Hassan
    Shukla, Sarita
    Kumar, Rajeev
    Gupta, Bineet Kumar
    Khan, Raees Ahmad
    [J]. INTELLIGENT AUTOMATION AND SOFT COMPUTING, 2022, 32 (02) : 1071 - 1088
  • [4] Ben-Nun T., 2018, ADV NEUR IN
  • [5] Learning features from enhanced function call graphs for Android malware detection
    Cai, Minghui
    Jiang, Yuan
    Gao, Cuiying
    Li, Heng
    Yuan, Wei
    [J]. NEUROCOMPUTING, 2021, 423 : 301 - 307
  • [6] Efficient vulnerability detection based on an optimized rule-checking static analysis technique
    Chen, Deng
    Zhang, Yan-duo
    Wei, Wei
    Wang, Shi-xun
    Huang, Ru-bing
    Li, Xiao-lin
    Qu, Bin-bin
    Jiang, Sheng
    [J]. FRONTIERS OF INFORMATION TECHNOLOGY & ELECTRONIC ENGINEERING, 2017, 18 (03) : 332 - 345
  • [7] Path-Sensitive Code Embedding via Contrastive Learning for Software Vulnerability Detection
    Cheng, Xiao
    Zhan, Guanqin
    Wang, Haoyu
    Sui, Yulei
    [J]. PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, : 519 - 531
  • [8] DeepWukong: Statically Detecting Software Vulnerabilities Using Deep Graph Neural Network
    Cheng, Xiao
    Wang, Haoyu
    Hua, Jiayi
    Xu, Guoai
    Sui, Yulei
    [J]. ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2021, 30 (03)
  • [9] Static Detection of Control-Flow-Related Vulnerabilities Using Graph Embedding
    Cheng, Xiao
    Wang, Haoyu
    Hua, Jiayi
    Zhang, Miao
    Xu, Guoai
    Yi, Li
    Sui, Yulei
    [J]. 2019 24TH INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS (ICECCS 2019), 2019, : 41 - 50
  • [10] Automatically Detect Software Security Vulnerabilities Based on Natural Language Processing Techniques and Machine Learning Algorithms
    Cho Do Xuan
    Vu Ngoc Son
    Duong Duc
    [J]. JOURNAL OF ICT RESEARCH AND APPLICATIONS, 2022, 16 (01) : 70 - 88