SA-10: Developer Configuration Management
Control Family:
Threats Addressed:
Baselines:
- Low
N/A
- Moderate
- SA-10
- High
- SA-10
- Privacy
N/A
Previous Version:
- NIST Special Publication 800-53 Revision 4:
- SA-10: Developer Configuration Management
Control Statement
Require the developer of the system, system component, or system service to:
- Perform configuration management during system, component, or service [Assignment (one or more): design, development, implementation, operation, disposal];
- Document, manage, and control the integrity of changes to [Assignment: organization-defined configuration items under configuration management];
- Implement only organization-approved changes to the system, component, or service;
- Document approved changes to the system, component, or service and the potential security and privacy impacts of such changes; and
- Track security flaws and flaw resolution within the system, component, or service and report findings to [Assignment: organization-defined personnel].
Supplemental Guidance
Organizations consider the quality and completeness of configuration management activities conducted by developers as direct evidence of applying effective security controls. Controls include protecting the master copies of material used to generate security-relevant portions of the system hardware, software, and firmware from unauthorized modification or destruction. Maintaining the integrity of changes to the system, system component, or system service requires strict configuration control throughout the system development life cycle to track authorized changes and prevent unauthorized changes.
The configuration items that are placed under configuration management include the formal model; the functional, high-level, and low-level design specifications; other design data; implementation documentation; source code and hardware schematics; the current running version of the object code; tools for comparing new versions of security-relevant hardware descriptions and source code with previous versions; and test fixtures and documentation. Depending on the mission and business needs of organizations and the nature of the contractual relationships in place, developers may provide configuration management support during the operations and maintenance stage of the system development life cycle.
Control Enhancements
SA-10(1): Software and Firmware Integrity Verification
Baseline(s):
Require the developer of the system, system component, or system service to enable integrity verification of software and firmware components.
SA-10(2): Alternative Configuration Management
Baseline(s):
Provide an alternate configuration management process using organizational personnel in the absence of a dedicated developer configuration management team.
SA-10(3): Hardware Integrity Verification
Baseline(s):
Require the developer of the system, system component, or system service to enable integrity verification of hardware components.
SA-10(4): Trusted Generation
Baseline(s):
Require the developer of the system, system component, or system service to employ tools for comparing newly generated versions of security-relevant hardware descriptions, source code, and object code with previous versions.
SA-10(5): Mapping Integrity for Version Control
Baseline(s):
Require the developer of the system, system component, or system service to maintain the integrity of the mapping between the master build data describing the current version of security-relevant hardware, software, and firmware and the on-site master copy of the data for the current version.
SA-10(6): Trusted Distribution
Baseline(s):
Require the developer of the system, system component, or system service to execute procedures for ensuring that security-relevant hardware, software, and firmware updates distributed to the organization are exactly as specified by the master copies.
SA-10(7): Security and Privacy Representatives
Baseline(s):
Require [Assignment: organization-defined security and privacy representatives] to be included in the [Assignment: organization-defined configuration change management and control process].