VCCFinder: Finding Potential Vulnerabilities in Open-Source Projects to Assist Code Audits

被引:155
|
作者
Perl, Henning [1 ]
Dechand, Sergej [2 ]
Smith, Matthew [1 ,2 ]
Arp, Daniel [3 ]
Yamaguchi, Fabian [3 ]
Rieck, Konrad [3 ]
Fahl, Sascha [4 ]
Acar, Yasemin [4 ]
机构
[1] Fraunhofer FKIE, Wachtberg, Germany
[2] Univ Bonn, Bonn, Germany
[3] Univ Gottingen, Gottingen, Germany
[4] Saarland Univ, Saarbrucken, Germany
关键词
Vulnerabilities; Static Analysis; Machine Learning;
D O I
10.1145/2810103.2813604
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Despite the security community's best effort, the number of serious vulnerabilities discovered in software is increasing rapidly. In theory, security audits should find and remove the vulnerabilities before the code ever gets deployed. However, due to the enormous amount of code being produced, as well as a the lack of manpower and expertise, not all code is sufficiently audited. Thus, many vulnerabilities slip into production systems. A best-practice approach is to use a code metric analysis tool, such as Flawfinder, to flag potentially dangerous code so that it can receive special attention. However, because these tools have a very high false-positive rate, the manual effort needed to find vulnerabilities remains overwhelming. In this paper, we present a new method of finding potentially dangerous code in code repositories with a significantly lower false-positive rate than comparable systems. We combine code-metric analysis with metadata gathered from code repositories to help code review teams prioritize their work. The paper makes three contributions. First, we conducted the first large-scale mapping of CVEs to GitHub commits in order to create a vulnerable commit database. Second, based on this database, we trained a SVM classifier to flag suspicious commits Compared to Flawfinder, our approach reduces the amount of false alarms by over 99 % at the same level of recall. Finally, we present a thorough quantitative and qualitative analysis of our approach and discuss lessons learned from the results. We will share the database as a benchmark for future research and will also provide our analysis tool as a web service.
引用
收藏
页码:426 / 437
页数:12
相关论文
共 50 条
  • [41] Working for free? Motivations for participating in open-source projects
    Hars, A
    Ou, SS
    INTERNATIONAL JOURNAL OF ELECTRONIC COMMERCE, 2002, 6 (03) : 25 - 39
  • [42] A Dataset of Microservices-based Open-Source Projects
    d'Aragona, Dario Amoroso
    Bakhtin, Alexander
    Li, Xiaozhou
    Su, Ruoyu
    Adams, Lauren
    Aponte, Ernesto
    Boyle, Francis
    Boyle, Patrick
    Koerner, Rachel
    Lee, Joseph
    Tian, Fangchao
    Wang, Yuqing
    Nyyssola, Jesse
    Quevedo, Ernesto
    Rahaman, Shahidur Md
    Abdelfattah, Amr S.
    Mantyla, Mika
    Cerny, Tomas
    Taibi, Davide
    2024 IEEE/ACM 21ST INTERNATIONAL CONFERENCE ON MINING SOFTWARE REPOSITORIES, MSR, 2024, : 504 - 509
  • [43] Data on security requirements in open-source software projects
    Wang, Wentao
    Mahakala, Kavya Reddy
    Gupta, Arushi
    Hussein, Nesrin
    Wang, Yinglin
    DATA IN BRIEF, 2019, 25
  • [44] Acceptance Factors of Pull Requests in Open-Source Projects
    Soares, Daricelio Moreira
    de Lima Junior, Manoel Limeira
    Murta, Leonardo
    30TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, VOLS I AND II, 2015, : 1541 - 1546
  • [45] Risk Management in Projects Based on Open-Source Software
    Nguyen Duc Linh
    Phan Duy Hung
    Vu Thu Diep
    Ta Duc Tung
    2019 8TH INTERNATIONAL CONFERENCE ON SOFTWARE AND COMPUTER APPLICATIONS (ICSCA 2019), 2019, : 178 - 183
  • [46] On the usefulness of ownership metrics in open-source software projects
    Foucault, Matthieu
    Teyton, Cedric
    Lo, David
    Blanc, Xavier
    Falleri, Jean-Remy
    INFORMATION AND SOFTWARE TECHNOLOGY, 2015, 64 : 102 - 112
  • [47] Evolution Impact on Architecture Stability in Open-Source Projects
    Alenezi, Mamdouh
    Khellah, Fakhry
    INTERNATIONAL JOURNAL OF CLOUD APPLICATIONS AND COMPUTING, 2015, 5 (04) : 24 - 35
  • [48] Evolution Model of Open-Source Software Projects in GitHub
    Wang, Hongbing
    Ji, Haoran
    2022 2ND IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND ARTIFICIAL INTELLIGENCE (SEAI 2022), 2022, : 135 - 145
  • [49] The emergence of openness in open-source projects: the case of openEHR
    Curto-Millet, Daniel
    Shaikh, Maha
    JOURNAL OF INFORMATION TECHNOLOGY, 2017, 32 (04) : 361 - 379
  • [50] Network Functions Virtualization: An Overview and Open-Source Projects
    Tipantuna, Christian
    Yanchapaxi, Paul
    2017 IEEE SECOND ECUADOR TECHNICAL CHAPTERS MEETING (ETCM), 2017,