SBOM Generation Tools in the Python Ecosystem: an In-Detail Analysis

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Cofano, Serena, Benedetti, Giacomo, Dell'Amico, Matteo
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866916379164147712
author Cofano, Serena
Benedetti, Giacomo
Dell'Amico, Matteo
author_facet Cofano, Serena
Benedetti, Giacomo
Dell'Amico, Matteo
contents Software Bills of Material (SBOMs), which improve transparency by listing the components constituting software, are a key countermeasure to the mounting problem of Software Supply Chain attacks. SBOM generation tools take project source files and provide an SBOM as output, interacting with the software ecosystem. While SBOMs are a substantial improvement for security practitioners, providing a complete and correct SBOM is still an open problem. This paper investigates the causes of the issues affecting SBOM completeness and correctness, focusing on the PyPI ecosystem. We analyze four popular SBOM generation tools using the CycloneDX standard. Our analysis highlights issues related to dependency versions, metadata files, remote dependencies, and optional dependencies. Additionally, we identified a systematic issue with the lack of standards for metadata in the PyPI ecosystem. This includes inconsistencies in the presence of metadata files as well as variations in how their content is formatted.
format Preprint
id arxiv_https___arxiv_org_abs_2409_01214
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle SBOM Generation Tools in the Python Ecosystem: an In-Detail Analysis
Cofano, Serena
Benedetti, Giacomo
Dell'Amico, Matteo
Cryptography and Security
Software Engineering
Software Bills of Material (SBOMs), which improve transparency by listing the components constituting software, are a key countermeasure to the mounting problem of Software Supply Chain attacks. SBOM generation tools take project source files and provide an SBOM as output, interacting with the software ecosystem. While SBOMs are a substantial improvement for security practitioners, providing a complete and correct SBOM is still an open problem. This paper investigates the causes of the issues affecting SBOM completeness and correctness, focusing on the PyPI ecosystem. We analyze four popular SBOM generation tools using the CycloneDX standard. Our analysis highlights issues related to dependency versions, metadata files, remote dependencies, and optional dependencies. Additionally, we identified a systematic issue with the lack of standards for metadata in the PyPI ecosystem. This includes inconsistencies in the presence of metadata files as well as variations in how their content is formatted.
title SBOM Generation Tools in the Python Ecosystem: an In-Detail Analysis
topic Cryptography and Security
Software Engineering
url https://arxiv.org/abs/2409.01214