UCF STIG Viewer Logo

SA-17 DEVELOPER SECURITY ARCHITECTURE AND DESIGN


Overview

Number Title Impact Priority Subject Area
SA-17 Developer Security Architecture And Design HIGH P1 System And Services Acquisition

Instructions
The organization requires the developer of the information system, system component, or information system service to produce a design specification and security architecture that:
SA-17a.
Is consistent with and supportive of the organization�s security architecture which is established within and is an integrated part of the organization�s enterprise architecture;
SA-17b.
Accurately and completely describes the required security functionality, and the allocation of security controls among physical and logical components; and
SA-17c.
Expresses how individual security functions, mechanisms, and services work together to provide required security capabilities and a unified approach to protection.
Guidance
This control is primarily directed at external developers, although it could also be used for internal (in-house) development. In contrast, PL-8 is primarily directed at internal developers to help ensure that organizations develop an information security architecture and such security architecture is integrated or tightly coupled to the enterprise architecture. This distinction is important if/when organizations outsource the development of information systems, information system components, or information system services to external entities, and there is a requirement to demonstrate consistency with the organization�s enterprise architecture and information security architecture.

Enhancements
SA-17 (1) Formal Policy Model
Formal models describe specific behaviors or security policies using formal languages, thus enabling the correctness of those behaviors/policies to be formally proven. Not all components of information systems can be modeled, and generally, formal specifications are scoped to specific behaviors or policies of interest (e.g., nondiscretionary access control policies). Organizations choose the particular formal modeling language and approach based on the nature of the behaviors/policies to be described and the available tools. Formal modeling tools include, for example, Gypsy and Zed.

The organization requires the developer of the information system, system component, or information system service to:

SA-17 (1)(a)

Produce, as an integral part of the development process, a formal policy model describing the Assignment: organization-defined elements of organizational security policy to be enforced; and

SA-17 (1)(b)

Prove that the formal policy model is internally consistent and sufficient to enforce the defined elements of the organizational security policy when implemented.

SA-17 (2) Security-Relevant Components
Security-relevant hardware, software, and firmware represent the portion of the information system, component, or service that must be trusted to perform correctly in order to maintain required security properties.

The organization requires the developer of the information system, system component, or information system service to:

SA-17 (2)(a)

Define security-relevant hardware, software, and firmware; and

SA-17 (2)(b)

Provide a rationale that the definition for security-relevant hardware, software, and firmware is complete.

SA-17 (3) Formal Correspondence
Correspondence is an important part of the assurance gained through modeling. It demonstrates that the implementation is an accurate transformation of the model, and that any additional code or implementation details present have no impact on the behaviors or policies being modeled. Formal methods can be used to show that the high-level security properties are satisfied by the formal information system description, and that the formal system description is correctly implemented by a description of some lower level, for example a hardware description. Consistency between the formal top-level specification and the formal policy models is generally not amenable to being fully proven. Therefore, a combination of formal/informal methods may be needed to show such consistency. Consistency between the formal top-level specification and the implementation may require the use of an informal demonstration due to limitations in the applicability of formal methods to prove that the specification accurately reflects the implementation. Hardware, software, and firmware mechanisms strictly internal to security-relevant hardware, software, and firmware include, for example, mapping registers and direct memory input/output.

The organization requires the developer of the information system, system component, or information system service to:

SA-17 (3)(a)

Produce, as an integral part of the development process, a formal top-level specification that specifies the interfaces to security-relevant hardware, software, and firmware in terms of exceptions, error messages, and effects;

SA-17 (3)(b)

Show via proof to the extent feasible with additional informal demonstration as necessary, that the formal top-level specification is consistent with the formal policy model;

SA-17 (3)(c)

Show via informal demonstration, that the formal top-level specification completely covers the interfaces to security-relevant hardware, software, and firmware;

SA-17 (3)(d)

Show that the formal top-level specification is an accurate description of the implemented security-relevant hardware, software, and firmware; and

SA-17 (3)(e)

Describe the security-relevant hardware, software, and firmware mechanisms not addressed in the formal top-level specification but strictly internal to the security-relevant hardware, software, and firmware.

SA-17 (4) Informal Correspondence
Correspondence is an important part of the assurance gained through modeling. It demonstrates that the implementation is an accurate transformation of the model, and that any additional code or implementation details present has no impact on the behaviors or policies being modeled. Consistency between the descriptive top-level specification (i.e., high-level/low-level design) and the formal policy model is generally not amenable to being fully proven. Therefore, a combination of formal/informal methods may be needed to show such consistency. Hardware, software, and firmware mechanisms strictly internal to security-relevant hardware, software, and firmware include, for example, mapping registers and direct memory input/output.

The organization requires the developer of the information system, system component, or information system service to:

SA-17 (4)(a)

Produce, as an integral part of the development process, an informal descriptive top-level specification that specifies the interfaces to security-relevant hardware, software, and firmware in terms of exceptions, error messages, and effects;

SA-17 (4)(b)

Show via Selection: informal demonstration, convincing argument with formal methods as feasible that the descriptive top-level specification is consistent with the formal policy model;

SA-17 (4)(c)

Show via informal demonstration, that the descriptive top-level specification completely covers the interfaces to security-relevant hardware, software, and firmware;

SA-17 (4)(d)

Show that the descriptive top-level specification is an accurate description of the interfaces to security-relevant hardware, software, and firmware; and

SA-17 (4)(e)

Describe the security-relevant hardware, software, and firmware mechanisms not addressed in the descriptive top-level specification but strictly internal to the security-relevant hardware, software, and firmware.

SA-17 (5) Conceptually Simple Design

The organization requires the developer of the information system, system component, or information system service to:

SA-17 (5)(a)

Design and structure the security-relevant hardware, software, and firmware to use a complete, conceptually simple protection mechanism with precisely defined semantics; and

SA-17 (5)(b)

Internally structure the security-relevant hardware, software, and firmware with specific regard for this mechanism.

SA-17 (6) Structure For Testing

The organization requires the developer of the information system, system component, or information system service to structure security-relevant hardware, software, and firmware to facilitate testing.

SA-17 (7) Structure For Least Privilege

The organization requires the developer of the information system, system component, or information system service to structure security-relevant hardware, software, and firmware to facilitate controlling access with least privilege.