Process White Listing

Process whitelisting establishes an approved set of executable images, tasks, applications, or process types that may run on the spacecraft computing platform. Enforcement should occur within a trusted layer capable of controlling process or task creation, which may be implemented in firmware, a secure monitor, a hypervisor, the operating system, or the real-time executive according to the platform architecture. The enforcement mechanism must verify an approved process identity before execution and deny unapproved process creation unless a mission-approved recovery mechanism applies. This countermeasure limits the creation or execution of software identities not present in the approved baseline. It does not prevent an adversary from abusing an approved process, altering its runtime memory, redirecting its control flow, or exploiting permitted scripting or loading functionality unless those behaviors are addressed by complementary integrity and execution controls.

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

Pre-Operations Government

Acquisition requirements should mandate process or application allowlisting where the spacecraft computing architecture supports enforceable process or task identities. Requirements must identify the trusted enforcement layer, the approved identity attributes, protection of the allowlist and enforcement mechanism, and the required response to an unapproved execution attempt. Unapproved execution must be denied by default, with any recovery or maintenance exception explicitly authorized, constrained, and logged. Requirements should specify that the process whitelist be established through a formal process inventory that enumerates all legitimate processes required for nominal operations, contingency operations, and maintenance functions, with the inventory reviewed and approved by government technical authorities before being instantiated as the operational whitelist. Contract language should require that the whitelist enforcement mechanism and the approved process list be documented as controlled configuration artifacts, that the mechanism be verified through adversarial testing that attempts to launch non-whitelisted processes through multiple pathways including software exploits and direct memory manipulation, and that any proposed addition to the whitelist be treated as a security-critical configuration change requiring review and approval. Evaluation criteria should assess offerors' proposed whitelist enforcement architecture, the depth at which enforcement is implemented, and their experience managing process inventories for space-grade or similarly constrained real-time embedded systems. Verification should include adversarial testing confirming that non-whitelisted process execution attempts are blocked and logged under representative attack conditions.

Pre-Operations Developer/Supplier

Process whitelist development must begin with an inventory of all executable images, tasks, and process types authorized by the approved software baseline. The inventory must cover nominal, contingency, maintenance, and recovery operations and identify any permitted dependencies or dynamically loaded components. Entries not required by the approved baseline must not be retained solely to avoid future whitelist updates. The enforcement mechanism must be implemented at the firmware or equivalent hardware-adjacent layer, with the whitelist stored in integrity-protected memory that cannot be modified through operating system or application-layer commands, ensuring that a compromised operating system cannot alter the whitelist to permit unauthorized process execution. Runtime process identifiers or names must not be used as the sole basis for authorization when they can be reused, reassigned, or selected by less-trusted software. The whitelist must identify authorized executable content or task definitions using attributes protected by the platform architecture, such as a verified image identity, approved cryptographic digest or signature, or an immutable task definition. The selected identity must remain bound to the code that is actually loaded and executed. The whitelist management process must include a defined change control procedure for adding, modifying, or removing entries, with changes requiring integrity verification of the updated whitelist before it is loaded into the enforcement mechanism. Enforcement logging must capture all blocked execution attempts with sufficient detail, including the attempted process identifier, the initiating context, and the timestamp, to support security incident investigation and forensic analysis.