In the modern software development landscape, the massive adoption of third-party libraries has made Software Composition Analysis (SCA) an indispensable practice. However, traditional SCA tools tend to generate a high number of operational false positives by flagging vulnerabilities (CVEs) present in dependencies that are not actually reachable by the application code. This phenomenon, known as "SCA noise," places a heavy burden on development and security teams, making the vulnerability triage process slow and inefficient. This thesis presents Javare, an open-source tool designed to mitigate this issue through structural reachability analysis in the Java language. The system maps execution paths from the application code to vulnerable components within libraries, including transitive dependencies, providing direct technical evidence and navigable call graphs.
Nel panorama moderno dello sviluppo software, l'adozione massiccia di librerie di terze parti ha reso la Software Composition Analysis (SCA) una pratica indispensabile. Tuttavia, gli strumenti SCA tradizionali tendono a generare un elevato numero di falsi positivi operativi, segnalando vulnerabilità (CVE) presenti in dipendenze che non sono effettivamente raggiungibili dal codice dell'applicazione. Questo fenomeno, noto come "SCA noise", grava pesantemente sui team di sviluppo e sicurezza, rendendo il processo di classificazione (triage) delle vulnerabilità lento e inefficiente. Questa tesi presenta Javare, uno strumento open-source progettato per mitigare questo problema attraverso l'analisi di raggiungibilità strutturale nel linguaggio Java. Javare adotta un modello incentrato sui confini (boundary-centric). Il sistema mappa i percorsi di esecuzione dal codice dell'applicazione fino ai componenti vulnerabili all'interno delle librerie, incluse le dipendenze transitive, fornendo prove tecniche dirette e grafi di chiamata (call graphs) navigabili.
Approssimazione scalabile per l'analisi di raggiungibilità in Java
BETTIN, MICHELE
2025/2026
Abstract
In the modern software development landscape, the massive adoption of third-party libraries has made Software Composition Analysis (SCA) an indispensable practice. However, traditional SCA tools tend to generate a high number of operational false positives by flagging vulnerabilities (CVEs) present in dependencies that are not actually reachable by the application code. This phenomenon, known as "SCA noise," places a heavy burden on development and security teams, making the vulnerability triage process slow and inefficient. This thesis presents Javare, an open-source tool designed to mitigate this issue through structural reachability analysis in the Java language. The system maps execution paths from the application code to vulnerable components within libraries, including transitive dependencies, providing direct technical evidence and navigable call graphs.| File | Dimensione | Formato | |
|---|---|---|---|
|
Bettin_Michele.pdf
Accesso riservato
Dimensione
5.02 MB
Formato
Adobe PDF
|
5.02 MB | Adobe PDF |
The text of this website © Università degli studi di Padova. Full Text are published under a non-exclusive license. Metadata are under a CC0 License
https://hdl.handle.net/20.500.12608/110956