A security vulnerability predictor based on source code metrics

被引:3
|
作者
Pakshad, Puya [1 ]
Shameli-Sendi, Alireza [1 ]
Abbasi, Behzad Khalaji Emamzadeh [1 ]
机构
[1] Shahid Beheshti Univ SBU, Fac Comp Sci & Engn, Tehran, Iran
关键词
Security testing; Vulnerability detection; Program metric; Code property graph;
D O I
10.1007/s11416-023-00469-y
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Detecting security vulnerabilities in the source code of software systems is one of the most important challenges in the field of software security. We need an effective solution to discover and patch vulnerabilities before our valuable information is compromised. Security testing is a type of software testing that checks whether software is vulnerable to cyber attacks. This study aimed to pursue three main objectives: (1) The first goal is to identify the vulnerable functions of a C/C++ software program based on code metrics. This can reduce the cost of software security testing and also redirect the related activities to identified vulnerable functions rather than to the entire software, (2) The second goal is to identify the type of attack related to the vulnerability function, and (3) Finally, the ultimate goal is to analyze the relationship between code metrics and the vulnerabilities. This goal can help us understand which code structure is most likely to contain vulnerable code. This paper first aimed to create a comprehensive view of the source code of the target software using graph concepts. Second, a set of source code metrics and calculated by crawling on the related graph using the static analysis approach. Finally, the vulnerability prediction model presented in this paper is based on machine learning technique applied on metrics extracted from program source code. Compared to previous work, new achievements have been made in this paper. One of the most important ones is the very high accuracy detection of the proposed model in detecting the type of vulnerability. Moreover, 15 code metrics are used to predict vulnerabilities. Our analysis on feature importance indicates that what structure the software program code has, most likely, it will be vulnerable. Experimental results in 10 real projects (OpenSSL, SQLite, FreeType, LibTiff, Libxslt, Binutils, FFmpeg, ImageMagick, OpenSC, and rdesktop) indicated that the security testing predictor proposed in this paper could predict on average 89% of the really vulnerable functions of the source code and 86% of the vulnerability type of the detected functions correctly.
引用
收藏
页码:615 / 633
页数:19
相关论文
共 50 条
  • [41] Improving prompt tuning-based software vulnerability assessment by fusing source code and vulnerability description
    Jiyu Wang
    Xiang Chen
    Wenlong Pei
    Shaoyu Yang
    Automated Software Engineering, 2025, 32 (2)
  • [42] Supply Chain Security: Pre-training Model for Python']Python Source Code Vulnerability Detection
    Le, Yiwang
    Li, Hui
    Wang, Bin
    Luo, Zhixiong
    Yang, Ao
    Ma, Ziheng
    2024 3RD INTERNATIONAL JOINT CONFERENCE ON INFORMATION AND COMMUNICATION ENGINEERING, JCICE 2024, 2024, : 150 - 155
  • [43] Source Code Vulnerability Detection Using Vulnerability Dependency Representation Graph
    Yang, Hongyu
    Yang, Haiyun
    Zhang, Liang
    Cheng, Xiang
    2022 IEEE INTERNATIONAL CONFERENCE ON TRUST, SECURITY AND PRIVACY IN COMPUTING AND COMMUNICATIONS, TRUSTCOM, 2022, : 457 - 464
  • [44] ASVG: Automated Software Vulnerability Sample Generation Technology Based on Source Code
    Yang, Jun
    Zhou, Peng
    Ni, Yunze
    ADVANCES ON BROADBAND AND WIRELESS COMPUTING, COMMUNICATION AND APPLICATIONS, BWCCA-2018, 2019, 25 : 316 - 325
  • [45] Determination of System Weaknesses based on the Analysis of Vulnerability Indexes and the Source Code of Exploits
    Fedorchenko, Andrey
    Doynikova, Elena
    Kotenko, Igor
    JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2019, 25 (09) : 1043 - 1065
  • [46] VDHGT: A Source Code Vulnerability Detection Method Based on Heterogeneous Graph Transformer
    Yang, Hongyu
    Yang, Haiyun
    Zhang, Liang
    CYBERSPACE SAFETY AND SECURITY, CSS 2022, 2022, 13547 : 217 - 224
  • [47] Literature survey of deep learning-based vulnerability analysis on source code
    Semasaba, Abubakar Omari Abdallah
    Zheng, Wei
    Wu, Xiaoxue
    Agyemang, Samuel Akwasi
    IET SOFTWARE, 2020, 14 (06) : 654 - 664
  • [48] Source Code Vulnerability Detection Based on Joint Graph and Multimodal Feature Fusion
    Jin, Dun
    He, Chengwan
    Zou, Quan
    Qin, Yan
    Wang, Boshu
    ELECTRONICS, 2025, 14 (05):
  • [49] Source Code Vulnerability Detection Based on Residual Gated Graph Convolutional Networks
    Zhang, Jun
    Li, Shanshan
    Li, Lei
    Wang, Haoyu
    Computer Engineering and Applications, 2023, 59 (22) : 293 - 299
  • [50] An Empirical Study on Vulnerability Detection for Source Code Software based on Deep Learning
    Lin, Wei
    Cai, Saihua
    2021 21ST INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY COMPANION (QRS-C 2021), 2021, : 1159 - 1160