Supply chain security is extremely important for modern applications running at scale in the cloud. In fact, they involve a large number of heterogeneous microservices that also include third-party software. As a result, security vulnerabilities are hard to identify and mitigate before they start being actively exploited by attackers. For this reason, governments have recently introduced cybersecurity regulations that require vendors to share a software bill of material (SBOM) with end users or regulators. An SBOM can be employed to identify the security vulnerabilities of a software component even without access to its source code, as long as it is accurate and interoperable across different tools. This work evaluates this issue through a comprehensive study of tools for SBOM generation and vulnerability scanning, including both open-source software and cloud services from major providers. We specifically target software containers and focus on operating system packages in Linux distributions that are widely used as base images due to their far-reaching security impact. Our findings show that the considered tools are largely incompatible, leading to inaccurate reporting and a large amount of undetected vulnerabilities. We uncover the SBOM confusion vulnerability, a byproduct of such fragmented ecosystem, where inconsistent formats prevent reliable vulnerability detection across tools.
翻译:供应链安全对于在云中大规模运行的现代应用至关重要。事实上,这些应用涉及大量异构微服务,其中还包含第三方软件。因此,安全漏洞在攻击者开始积极利用之前很难被识别和缓解。为此,各国政府近期出台了网络安全法规,要求供应商向最终用户或监管机构提供软件物料清单(SBOM)。只要SBOM准确且能在不同工具间互操作,即使无法访问源代码,也可利用其识别软件组件的安全漏洞。本研究通过对SBOM生成与漏洞扫描工具(包括开源软件及主流云服务商提供的云服务)进行全面评估来探讨该问题。我们特别针对软件容器,并聚焦于Linux发行版中的操作系统软件包——因其深远的安全影响而被广泛用作基础镜像。研究结果表明,现有工具普遍存在互操作性问题,导致漏洞报告不准确且存在大量未检测出的漏洞。我们揭示了SBOM混淆漏洞,这种漏洞是当前生态碎片化的产物,其格式不一致性导致跨工具的可靠漏洞检测无法实现。