Bytecode-centric Detection of Known-to-be-vulnerable Dependencies in Java Projects

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Schott, Stefan, Ponta, Serena Elisa, Fischer, Wolfram, Klauke, Jonas, Bodden, Eric
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866914107770273792
author Schott, Stefan
Ponta, Serena Elisa
Fischer, Wolfram
Klauke, Jonas
Bodden, Eric
author_facet Schott, Stefan
Ponta, Serena Elisa
Fischer, Wolfram
Klauke, Jonas
Bodden, Eric
contents On average, 71% of the code in typical Java projects comes from open-source software (OSS) dependencies, making OSS dependencies the dominant component of modern software code bases. This high degree of OSS reliance comes with a considerable security risk of adding known security vulnerabilities to a code base. To remedy this risk, researchers and companies have developed various dependency scanners, which try to identify inclusions of known-to-be-vulnerable OSS dependencies. However, there are still challenges that modern dependency scanners do not overcome, especially when it comes to dependency modifications, such as re-compilations, re-bundlings or re-packagings, which are common in the Java ecosystem. To overcome these challenges, we present Jaralyzer, a bytecode-centric dependency scanner for Java. Jaralyzer does not rely on the metadata or the source code of the included OSS dependencies being available but directly analyzes a dependency's bytecode. Our evaluation across 56 popular OSS components demonstrates that Jaralyzer outperforms other popular dependency scanners in detecting vulnerabilities within modified dependencies. It is the only scanner capable of identifying vulnerabilities across all the above mentioned types of modifications. But even when applied to unmodified dependencies, Jaralyzer outperforms the current state-of-the-art code-centric scanner Eclipse Steady by detecting 28 more true vulnerabilities and yielding 29 fewer false warnings.
format Preprint
id arxiv_https___arxiv_org_abs_2510_19393
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Bytecode-centric Detection of Known-to-be-vulnerable Dependencies in Java Projects
Schott, Stefan
Ponta, Serena Elisa
Fischer, Wolfram
Klauke, Jonas
Bodden, Eric
Software Engineering
Cryptography and Security
On average, 71% of the code in typical Java projects comes from open-source software (OSS) dependencies, making OSS dependencies the dominant component of modern software code bases. This high degree of OSS reliance comes with a considerable security risk of adding known security vulnerabilities to a code base. To remedy this risk, researchers and companies have developed various dependency scanners, which try to identify inclusions of known-to-be-vulnerable OSS dependencies. However, there are still challenges that modern dependency scanners do not overcome, especially when it comes to dependency modifications, such as re-compilations, re-bundlings or re-packagings, which are common in the Java ecosystem. To overcome these challenges, we present Jaralyzer, a bytecode-centric dependency scanner for Java. Jaralyzer does not rely on the metadata or the source code of the included OSS dependencies being available but directly analyzes a dependency's bytecode. Our evaluation across 56 popular OSS components demonstrates that Jaralyzer outperforms other popular dependency scanners in detecting vulnerabilities within modified dependencies. It is the only scanner capable of identifying vulnerabilities across all the above mentioned types of modifications. But even when applied to unmodified dependencies, Jaralyzer outperforms the current state-of-the-art code-centric scanner Eclipse Steady by detecting 28 more true vulnerabilities and yielding 29 fewer false warnings.
title Bytecode-centric Detection of Known-to-be-vulnerable Dependencies in Java Projects
topic Software Engineering
Cryptography and Security
url https://arxiv.org/abs/2510.19393