Cyber Attacks and Defense in Practice
Which of the following is the main purpose of creating and maintaining an SBOM (software bill of materials)?
- ATo list the components such as libraries in a product with their versions, so that when a vulnerability in a component is announced, the affected products can be found at once
- BTo encrypt the source code of the software so that third parties, including users who bought the product, cannot read the contents of the program
- CTo calculate the procurement cost and lead time of components from a list of the semiconductors and electronic components used to build a product, and plan production
Show answer and explanation
Answer: A. To list the components such as libraries in a product with their versions, so that when a vulnerability in a component is announced, the affected products can be found at once
Today's software is built by combining many open-source libraries and third-party components, and components often depend on yet other components. An SBOM is a list of these components with their names, versions, suppliers and dependency relationships in a machine-readable format (such as SPDX or CycloneDX). When a serious vulnerability is found in a widely used component, as with the Log4j vulnerability (Log4Shell) disclosed in December 2021, an SBOM lets you quickly find which versions of which products are affected. In the US, an executive order of May 2021 set out a policy of requiring SBOMs for software supplied to the government.
- A. Correct. With a list of components, the extent of a vulnerability's impact can be checked immediately.
- B. An SBOM is a list of components; it does not encrypt source code.
- C. It is different from the bill of materials (BOM) for electronic components and covers software components.
Continue: 9 more Cyber Attacks and Defense in Practice questions