An Empirical Investigation of the Security Weaknesses in Open-Source Projects

Haifa Al-Shammare, Nehal Al-Otaiby, Muradi Al-Otabi, Mohammad Alshayeb

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

With the increase of code reuse, the possibility of security vulnerabilities increases. Thus, tools for static analysis are widely used to evaluate open-source projects against security vulnerabilities. This research aims to empirically study common weakness types (CWEs), their frequencies, and the correlations between them and open-source project characteristics. The PVS-Studio tool analyzed 150 projects hosted on GitHub and written in C#, C++, and Java. The tool was used to investigate the common weaknesses found in these projects. Furthermore, our study has practical implications for developers and researchers interested in open-source project security. We have identified the factors that contribute to the presence of these weaknesses, and our statistical analyses have shed light on these factors. Notably, C++ projects tend to have more weaknesses. The most common types of weaknesses detected in these programming languages are CWE-571, 570, 690, 682, 476, 628, 563, 691, 704, and 393. The age of the project and the number of commits are found to be positively correlated with the number of detected weaknesses, while stars and forks have little impact. These findings highlight the need for caution when using open-source code, as it can have several vulnerabilities that can compromise the software's security. Therefore, it is crucial to scan the third-party code before incorporating it into projects.

Original languageEnglish
Title of host publicationProceedings of 2024 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024
PublisherAssociation for Computing Machinery
Pages634-642
Number of pages9
ISBN (Electronic)9798400717017
DOIs
StatePublished - 18 Jun 2024
Event28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 - Salerno, Italy
Duration: 18 Jun 202421 Jun 2024

Publication series

NameACM International Conference Proceeding Series

Conference

Conference28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024
Country/TerritoryItaly
CitySalerno
Period18/06/2421/06/24

Bibliographical note

Publisher Copyright:
© 2024 ACM.

Keywords

  • C#
  • C++
  • CWE
  • Empirical study
  • GitHub
  • JAVA
  • OWASP
  • Open-source
  • PVS-Studio
  • Project Security
  • SAST tools
  • Weaknesses

ASJC Scopus subject areas

  • Human-Computer Interaction
  • Computer Networks and Communications
  • Computer Vision and Pattern Recognition
  • Software

Fingerprint

Dive into the research topics of 'An Empirical Investigation of the Security Weaknesses in Open-Source Projects'. Together they form a unique fingerprint.

Cite this