Article (Scientific journals)
Dependabot and security pull requests: large empirical study
Rebatchi, Hocine; Moha, Naouel; BISSYANDE, Tegawendé François d Assise
2024In Empirical Software Engineering, 29 (5)
Peer Reviewed verified by ORBi
 

Files


Full Text
s10664-024-10523-y (1).pdf
Publisher postprint (3.02 MB)
Download

All documents in ORBilu are protected by a user license.

Send to



Details



Keywords :
Dependabot; Dependency; GitHub; Pull request; Software supply chain; Software vulnerability; Complex engineering; Empirical studies; Engineering process; Github; Open-source components; Software supply chains; Software vulnerabilities; Software
Abstract :
[en] Modern software development is a complex engineering process where developer code cohabits with an increasingly larger number of external open-source components. Even though these components facilitate sharing and reusing code along with other benefits related to maintenance and code quality, they are often the seeds of vulnerabilities in the software supply chain leading to attacks with severe consequences. Indeed, one common strategy used to conduct attacks is to exploit or inject other security flaws in new versions of dependency packages. It is thus important to keep dependencies updated in a software development project. Unfortunately, several prior studies have highlighted that, to a large extent, developers struggle to keep track of the dependency package updates, and do not quickly incorporate security patches. Therefore, automated dependency-update bots have been proposed to mitigate the impact and the emergence of vulnerabilities in open-source projects. In our study, we focus on Dependabot, a dependency management bot that has gained popularity on GitHub recently. It allows developers to keep a lookout on project dependencies and reduce the effort of monitoring the safety of the software supply chain. We performed a large empirical study on dependency updates and security pull requests to understand: (1) the degree and reasons of Dependabot’s popularity; (2) the patterns of developers’ practices and techniques to deal with vulnerabilities in dependencies; (3) the management of security pull requests (PRs), the threat lifetime, and the fix delay; and (4) the factors that significantly correlate with the acceptance of security PRs and fast merges. To that end, we collected a dataset of 9,916,318 pull request-related issues made in 1,743,035 projects on GitHub for more than 10 different programming languages. In addition to the comprehensive quantitative analysis, we performed a manual qualitative analysis on a representative sample of the dataset, and we substantiated our findings by sending a survey to developers that use dependency management tools. Our study shows that Dependabot dominates more than 65% of dependency management activity, mainly due to its efficiency, accessibility, adaptivity, and availability of support. We also found that developers handle dependency vulnerabilities differently, but mainly rely on the automation of PRs generation to upgrade vulnerable dependencies. Interestingly, Dependabot’s and developers’ security PRs are highly accepted, and the automation allows to accelerate their management, so that fixes are applied in less than one day. However, the threat of dependency vulnerabilities remains hidden for 512 days on average, and patches are disclosed after 362 days due to the reliance on the manual effort of security experts. Also, project characteristics, the amount of PR changes, as well as developer and dependency features seem to be highly correlated with the acceptance and fast merges of security PRs.
Research center :
Interdisciplinary Centre for Security, Reliability and Trust (SnT) > TruX - Trustworthy Software Engineering
Disciplines :
Computer science
Author, co-author :
Rebatchi, Hocine ;  École de Technologie Supérieure, Montreal, Canada
Moha, Naouel;  École de Technologie Supérieure, Montreal, Canada
BISSYANDE, Tegawendé François d Assise  ;  University of Luxembourg > Interdisciplinary Centre for Security, Reliability and Trust (SNT) > TruX
External co-authors :
yes
Language :
English
Title :
Dependabot and security pull requests: large empirical study
Publication date :
September 2024
Journal title :
Empirical Software Engineering
ISSN :
1382-3256
eISSN :
1573-7616
Publisher :
Springer
Volume :
29
Issue :
5
Peer reviewed :
Peer Reviewed verified by ORBi
Focus Area :
Security, Reliability and Trust
Development Goals :
9. Industry, innovation and infrastructure
European Projects :
H2020 - 949014 - NATURAL - Natural Program Repair
Name of the research project :
R-AGR-3885 - H2020-ERC StG - NATURAL - BISSYANDE Tegawendé
Funders :
ERC - European Research Council
European Union
Funding number :
949014
Funding text :
This work was supported by the Natural Sciences and Engineering Research Council of Canada (NSERC), and the European Research Council (ERC) under the European Union\u2019s Horizon 2020 research and innovation program (grant agreement No. 949014).This study was supported by (1) the Natural Sciences and Engineering Research Council of Canada (NSERC), and by (2) the European Research Council (ERC) under the European Union\u2019s Horizon 2020 research and innovation program (grant agreement No. 949014).
Available on ORBilu :
since 10 December 2024

Statistics


Number of views
31 (0 by Unilu)
Number of downloads
28 (0 by Unilu)

Scopus citations®
 
0
Scopus citations®
without self-citations
0
OpenCitations
 
0
OpenAlex citations
 
0
WoS citations
 
0

publications
0
supporting
0
mentioning
0
contrasting
0
Smart Citations
0
0
0
0
Citing PublicationsSupportingMentioningContrasting
View Citations

See how this article has been cited at scite.ai

scite shows how a scientific paper has been cited by providing the context of the citation, a classification describing whether it supports, mentions, or contrasts the cited claim, and a label indicating in which section the citation was made.

Bibliography


Similar publications



Sorry the service is unavailable at the moment. Please try again later.
Contact ORBilu