Section 10(j) of EO 14028 defines an SBOM as a “formal record containing the details and supply chain relationships of various components used in building software,”[1] similar to food ingredient labels on packaging. SBOMs offer increased transparency, provenance, and speed at which vulnerabilities[2] can be identified and remediated by federal departments and agencies. SBOMs can also indicate a developer or supplier’s application of secure software development practices across the SDLC. Figure 2 illustrates an example of how an SBOM may be assembled across the SDLC.
When applicable to a procurement action, federal agencies should require their suppliers of software products and services to provide access to machine-readable SBOMs in conformance with the EO and NTIA’s The Minimum Elements For a Software Bill of Materials (SBOM) by containing:
NTIA’s guidance acknowledges that SBOM capabilities are currently nascent for federal acquirers and that the minimum elements are only the first key step in a process that will mature over time. As SBOMs mature, agencies should ensure that they do not deprioritize existing C-SCRM capabilities (e.g., vulnerability management practices, vendor risk assessments). SBOMs are meant to complement those capabilities rather than replace them. Federal acquirers that are unable to appropriately ingest, analyze, and act on the data that SBOMs provide will likely not improve their overall C-SCRM posture.
Federal acquirers should further consider that effectively implemented SBOMs are still subject to operational constraints. For example, SBOMs that are retroactively generated may not be able to produce the same list of dependencies used at build time. Federal acquirers should continue using the risk-based approaches outlined in SP 800-161r1 and SP 800-218 to guide their implementation of SBOMs over this period of rapid transition.
In this context, federal agencies should evaluate whether and to what extent software providers can satisfy the following recommended SBOM capabilities.
--------------
[1] Executive Office of the President. (2021). Executive Order 14028 on Improving the Nation's Cybersecurity. https://www.federalregister.gov/d/2021-10460
[2] References to vulnerabilities are inclusive of Common Weakness Enumerations (CWE) found pre-release and Common Vulnerabilities and Exposures (CVE) found post-release, as outlined in IR 8011.
[3] GitLab. (2021). NIST Position Paper #2.
[4] Vigilant Ops. (2021). Section 4 Enhancing Software Supply Chain Security - Areas 4 and 5.
[5] Synopsys. (2021). Guidelines for software integrity chains and provenance.
[6] National Telecommunications and Information Administration. (2021). The Minimum Elements For a Software Bill of Materials (SBOM). https://www.ntia.doc.gov/files/ntia/publications/sbom_minimum_elements_report.pdf
Content: