Depex: A software for analysing and reasoning about vulnerabilities in software projects dependencies
This paper presents Depex, a tool that allows developers to reason over the entire configuration space of the dependencies of an open-source software repository. The dependency information is extracted from the repository requirements files and the package managers of the dependencies, generating a graph that includes information regarding security vulnerabilities affecting the dependencies. The dependency graph allows automatic reasoning through the creation of a Boolean satisfiability model based on Satisfiability Modulo Theories (SMT). Automatic reasoning lets operations such as identifying the safest dependency configuration or validating if a particular configuration is secure. To demonstrate the impact of the proposal, it has been evaluated on more than 300 real open-source repositories of Python Package Index (PyPI), Node Package Manager (NPM) and Maven Central (Maven), as well as compared with current commercial tools on the market.
Authors
- Ángel Jesús Varela‐Vaca (ORCID: https://orcid.org/0000-0001-9953-6005)
- David Benavides
- A. German Márquez (ORCID: https://orcid.org/0000-0002-7282-3386)
- José Á. Galindo (ORCID: https://orcid.org/0000-0001-9293-9784)
- María Teresa Gómez-López (ORCID: https://orcid.org/0000-0002-3562-875X)
Institutions
- Universidad de Sevilla (ES)
Publication Details
- Journal
- SoftwareX
- Published
- 2025-04-22
- DOI
- https://doi.org/10.1016/j.softx.2025.102152
- Primary Topic
- Software System Performance and Reliability
- Type
- article
- Field-Weighted Citation Impact
- 0.00