Software Source Control

Binary or machine-executable code obtained from sources that provide no warranty and no access to the corresponding source code must not be incorporated into spacecraft or ground systems. This prohibition addresses a fundamental software assurance gap: without source code, missions cannot perform source-based static analysis or independently review and modify implementation details, and may have reduced ability to assess, repair, or extend the software. Code from sources with limited or no warranty and no source code provision may be difficult to independently analyze, repair, or extend and leaves the mission dependent on supplier assurances and remediation capabilities. This countermeasure applies throughout the software supply chain, including components integrated by subcontractors.

ID: CM0015
Tier: I
Ground CM 
Created: 2022/10/19
Last Modified: 2026/08/06

Pre-Operations Government

Acquisition requirements should explicitly prohibit the use of binary or machine-executable software from sources that provide limited or no warranty and do not provide the corresponding source code, with the prohibition applied at all tiers of the supply chain through flow-down contract provisions. Requirements should define acceptable software source categories, distinguishing among source-available software, binary-only software backed by enforceable warranty or support obligations, and binary-only software that lacks both source availability and adequate warranty or support. Contract language should require contractors to document the provenance, source availability, and warranty or support status of applicable software components. Any exception for a component that meets the prohibition should require a documented compelling mission or operational need, assessment of the resulting risk, identification of compensating controls, and approval by the authorizing official. Evaluation criteria should assess offerors' software sourcing policies, their processes for vetting component provenance, and their ability to document and enforce source availability and warranty or support requirements across integrated software. Verification should include review of the SBOM and associated software sourcing records to confirm that components meeting the prohibition have not been incorporated without an approved exception.

Pre-Operations Developer/Supplier

Software sourcing policies must be established before development begins and enforced as a gate condition in the component selection process, ensuring that binary-only, unwarranted software is identified and rejected before it is integrated into the build environment rather than discovered during a late-stage review. Component evaluation criteria should include source code availability and warranty status as mandatory fields alongside functional and performance attributes, so that security and assurance considerations are part of the initial selection decision rather than an afterthought. Where a necessary component is available only in binary form, the mission should determine whether the supplier provides enforceable warranty, support, and security remediation obligations. If adequate supplier obligations and source code are both unavailable, the mission should select an alternative component or pursue an approved exception. Software sourcing decisions should be documented in component selection records retained as part of the program's configuration management system, providing an auditable basis for confirming compliance with this countermeasure across the full software inventory. Subcontractor and supplier agreements should flow down the binary-source prohibition and require suppliers to attest to the source availability and warranty status of all software they contribute to the mission system.