Build SBOM Generation for Large Distributed Software Builds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional software bill of materials (SBOM) systems are not effectively configured to trigger threat mitigation and are plagued by variability in design and application, leading to inaccurate risk assessments and unnecessary remedial actions, especially in large distributed builds.

Innovation Solution

The system generates a build SBOM for large programming builds by identifying and omitting declarations for files or dependencies not utilized by the build, while adding new declarations for code segments not properly attributed in chunk SBOMs, and uses configuration restriction records to assess and resolve threat events.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional SBOMs include all files from all underlying program chunks, then the SBOM is comprehensive in identifying potential files, but it becomes overinclusive and identifies many files not actually utilized by the build, leading to false vulnerability assessments

Engineering Contradiction:
Improveaccuracy of vulnerability assessmentVSAvoidnumber of declared components
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent segments the monolithic SBOM generation process into analyzing individual program chunks and their utilization status. By dividing the build into discrete chunks and evaluating each chunk's actual usage, the system identifies which files are genuinely needed versus those that are merely present but unused, thereby reducing false positives in vulnerability assessments

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts and removes declarations for files that are not actually utilized by the build from the SBOM. By comparing the declared files against actual build utilization, the system extracts only the necessary files into the final SBOM, eliminating overinclusive declarations that would trigger unnecessary remedial actions

Inventive Principle:
Principle #2Taking out (Extraction)

2Loss of time

If SBOMs are created during development cycle prior to compilation, then they can be generated early, but they cannot verify whether declared components actually exist or are utilized in the final program

Engineering Contradiction:
Improvetiming of SBOM creationVSAvoidaccuracy of component declarations
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent performs preliminary SBOM generation during the development cycle based on available information, but then applies a verification step after compilation to validate which declared components actually exist and are utilized. This two-stage approach allows early SBOM creation while maintaining accuracy through subsequent verification

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the actual build output is analyzed to verify whether declared components exist and are utilized. This feedback from the compiled program informs the refinement of the SBOM, ensuring that only actually present and used components are accurately declared

Inventive Principle:
Principle #23Feedback

3Reliability

If conventional systems perform remedial actions on all programs with vulnerable files identified in SBOMs, then security threats are addressed, but resources are wasted on unaffected programs that do not contain the vulnerable files

Engineering Contradiction:
Improvesecurity threat mitigationVSAvoidcomputational resources for remediation
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts and identifies the specific subset of files that are actually utilized by the build from the complete set of declared files. By comparing vulnerable files against this extracted subset of actually-used files, the system determines whether remedial actions are truly necessary, preventing waste of computational resources on programs that don't actually contain the vulnerable files

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12333020B2Systems and processes for creating software bill of materials for large distributed builds
Publication Date: 2025.06.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12333020B2 patent drawing
  • US12333020B2 patent drawing
  • US12333020B2 patent drawing

AI summary

Systems are provided for generating, modifying and using SBOMs for facilitating risk assessment and threat mitigation for corresponding programs, and particularly for large programming builds. The creation and modification of the SBOMs includes processes for omitting declarations referenced in chunk SBOMs of program chunks incorporated into a final programming build associated with a build SBOM, but which are not actually utilized by the final programming build, as well as processes for adding new declarations for code segments that are not declared in the related chunk SBOMs, even though the code segments are utilized by the final programming build. Systems are also configured to use SBOMs in combination with configuration restriction records to assess and resolve threat events in a manner that can prevent unnecessary remedial actions for threat events that appear to be relevant to one or more files or dependencies incorporated into a program.