5 papers
AROMA+: A Study of Factors Affecting Reproducible Builds in the Maven Ecosystem
Mehdi Keshani, Amirhossein Rahmati, Mohammad Hossein Aref +1
Modern software engineering establishes software supply chains and relies on tools and libraries to improve productivity. However, reusing external software in a project presents a…
OriginPruner: Leveraging Method Origins for Guided Call Graph Pruning
Amir M. Mir, Mehdi Keshani, Sebastian Proksch
Most static program analyses depend on Call Graphs (CGs), including reachability of security vulnerabilities. Static CGs ensure soundness through over-approximation, which results…
On the Effectiveness of Machine Learning-based Call Graph Pruning: An Empirical Study
Amir M. Mir, Mehdi Keshani, Sebastian Proksch
Static call graph (CG) construction often over-approximates call relations, leading to sound, but imprecise results. Recent research has explored machine learning (ML)-based CG pru…
On the Effect of Transitivity and Granularity on Vulnerability Propagation in the Maven Ecosystem
Amir M. Mir, Mehdi Keshani, Sebastian Proksch
Reusing software libraries is a pillar of modern software engineering. In 2022, the average Java application depends on 40 third-party libraries. Relying on such libraries exposes…
Scalable Call Graph Constructor for Maven
Mehdi Keshani
As a rich source of data, Call Graphs are used for various applications including security vulnerability detection. Despite multiple studies showing that Call Graphs can drasticall…