Knowledge is Power

Sitewide Search

Search Bare Metal Cyber

Search courses, individual lessons, wiki entries, books, podcasts, magazine articles, Daily Cyber News, and Darwin.

NIST SP 800-53 Learning Center

SA-11 — Developer Testing and Evaluation

Read the official control and assessment content, then use the separately labeled Bare Metal Cyber perspective to connect the requirement to implementation, evidence, and sustained operation.

9Enhancements
3Parameters
3Baseline memberships
3Assessment methods

SA — System and Services Acquisition · NIST SP 800-53 Release 5.2.0

ModerateHighPrivacy
Official NIST control content

Control statement

Require the developer of the system, system component, or system service, at all post-design stages of the system development life cycle, to:

  1. a.Develop and implement a plan for ongoing security and privacy control assessments;
  2. b.Perform [Organization-defined: sa-11_odp.01] testing/evaluation [Organization-defined: frequency to conduct] at [Organization-defined: depth and coverage];
  3. c.Produce evidence of the execution of the assessment plan and the results of the testing and evaluation;
  4. d.Implement a verifiable flaw remediation process; and
  5. e.Correct flaws identified during testing and evaluation.
Official NIST discussion

Discussion

Developmental testing and evaluation confirms that the required controls are implemented correctly, operating as intended, enforcing the desired security and privacy policies, and meeting established security and privacy requirements. Security properties of systems and the privacy of individuals may be affected by the interconnection of system components or changes to those components. The interconnections or changes—including upgrading or replacing applications, operating systems, and firmware—may adversely affect previously implemented controls. Ongoing assessment during development allows for additional types of testing and evaluation that developers can conduct to reduce or eliminate potential flaws. Testing custom software applications may require approaches such as manual code review, security architecture review, and penetration testing, as well as and static analysis, dynamic analysis, binary analysis, or a hybrid of the three analysis approaches. Developers can use the analysis approaches, along with security instrumentation and fuzzing, in a variety of tools and in source code reviews. The security and privacy assessment plans include the specific activities that developers plan to carry out, including the types of analyses, testing, evaluation, and reviews of software and firmware components; the degree of rigor to be applied; the frequency of the ongoing testing and evaluation; and the types of artifacts produced during those processes. The depth of testing and evaluation refers to the rigor and level of detail associated with the assessment process. The coverage of testing and evaluation refers to the scope (i.e., number and type) of the artifacts included in the assessment process. Contracts specify the acceptance criteria for security and privacy assessment plans, flaw remediation processes, and the evidence that the plans and processes have been diligently applied. Methods for reviewing and protecting assessment plans, evidence, and documentation are commensurate with the security category or classification level of the system. Contracts may specify protection requirements for documentation.

Official OSCAL parameters

Organization-defined parameters

These values must be resolved through the organization’s tailoring and governance process. Bracketed parameter references in the control text identify where a decision is required.

sa-11_odp.01
frequency to conductfrequency at which to conduct {{ insert: param, sa-11_odp.01 }} testing/evaluation is defined;
depth and coveragedepth and coverage of {{ insert: param, sa-11_odp.01 }} testing/evaluation is defined;
Original Bare Metal Cyber perspective

From control text to operational evidence

Use Developer Testing and Evaluation as a testable risk decision. Translate the official statement into accountable people, repeatable processes, configured technology, and evidence that demonstrates the outcome over time. In this family, pay particular attention to secure acquisition, engineering, development lifecycle, supplier expectations, and system integrity by design.

Implementation workflow

  • Define the control boundary, responsible owner, inherited portions, and systems or processes in scope.
  • Resolve each organization-defined parameter before declaring the control implemented.
  • Document how the implementation satisfies every clause of the official control statement.
  • Collect evidence as a normal byproduct of operation rather than only before an assessment.
  • Review exceptions, changes, and monitoring results on a risk-based cadence.

Evidence examples

  • security requirements in contracts and specifications
  • architecture and design review records
  • development lifecycle evidence
  • supplier assessment and acceptance records

Common failure patterns

  • security requirements added after procurement
  • supplier claims accepted without evidence
  • development exceptions become permanent
  • security architecture not tied to testable requirements

Questions practitioners should ask

  • What risk decision is this control intended to support in this system?
  • Which parts are implemented locally, inherited, shared, or not applicable—and what evidence supports that decision?
  • Do the documented narrative, deployed configuration, operating process, and collected evidence agree?
  • What event or threshold requires the implementation to be reviewed or changed?
Official NIST SP 800-53A content

Assessment objectives and methods

Show the assessment objective
  1. SA-11a.
    1. SA-11a.[01]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to develop a plan for ongoing security assessments;
    2. SA-11a.[02]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to implement a plan for ongoing security assessments;
    3. SA-11a.[03]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to develop a plan for privacy assessments;
    4. SA-11a.[04]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to implement a plan for ongoing privacy assessments;
  2. SA-11b.the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to perform [Organization-defined: sa-11_odp.01] testing/evaluation [Organization-defined: frequency to conduct] at [Organization-defined: depth and coverage];
  3. SA-11c.
    1. SA-11c.[01]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to produce evidence of the execution of the assessment plan;
    2. SA-11c.[02]the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to produce the results of the testing and evaluation;
  4. SA-11d.the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to implement a verifiable flaw remediation process;
  5. SA-11e.the developer of the system, system component, or system service is required at all post-design stages of the system development life cycle to correct flaws identified during testing and evaluation.

Examine

  • System and services acquisition policy
  • system and services acquisition procedures
  • procedures addressing system developer security and privacy testing
  • procedures addressing flaw remediation
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • security and privacy architecture
  • system design documentation
  • system developer security and privacy assessment plans
  • results of developer security and privacy assessments for the system, system component, or system service
  • security and privacy flaw and remediation tracking records
  • system security plan
  • privacy plan
  • privacy impact assessment
  • privacy risk assessment documentation
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security and privacy responsibilities
  • organizational personnel with developer security and privacy testing responsibilities
  • system developers

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security and privacy testing and evaluation
Official relationships

Related controls

These relationships come from the official OSCAL catalog. They indicate useful dependencies or context, not automatic inheritance or equivalence.

MITRE D3FEND semantic mapping

Related defensive techniques

D3FEND maps this base control or one of its enhancements to the following defensive techniques. The ontology relation label is preserved and does not by itself prove implementation or effectiveness.

MITRE D3FEND™ and the D3FEND logo are trademarks of The MITRE Corporation. Bare Metal Cyber is not affiliated with or endorsed by MITRE.

Official NIST enhancements

Control enhancements

Enhancements add specificity, strength, or scope to the base control. Baseline badges show explicit selections in the official SP 800-53B OSCAL profiles.

Official NIST control enhancement

SA-11(1) — Static Code Analysis

Require the developer of the system, system component, or system service to employ static code analysis tools to identify common flaws and document the results of the analysis.

Official discussion

Static code analysis provides a technology and methodology for security reviews and includes checking for weaknesses in the code as well as for the incorporation of libraries or other included code with known vulnerabilities or that are out-of-date and not supported. Static code analysis can be used to identify vulnerabilities and enforce secure coding practices. It is most effective when used early in the development process, when each code change can automatically be scanned for potential weaknesses. Static code analysis can provide clear remediation guidance and identify defects for developers to fix. Evidence of the correct implementation of static analysis can include aggregate defect density for critical defect types, evidence that defects were inspected by developers or security professionals, and evidence that defects were remediated. A high density of ignored findings, commonly referred to as false positives, indicates a potential problem with the analysis process or the analysis tool. In such cases, organizations weigh the validity of the evidence against evidence from other sources.

Assessment objectives and methods
  1. SA-11(01)[01]the developer of the system, system component, or system service is required to employ static code analysis tools to identify common flaws;
  2. SA-11(01)[02]the developer of the system, system component, or system service is required to employ static code analysis tools to document the results of the analysis.

Examine

  • System and services acquisition policy
  • system and services acquisition procedures
  • procedures addressing system developer security testing
  • procedures addressing flaw remediation
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • security and privacy architecture
  • system design documentation
  • system developer security and privacy assessment plans
  • results of system developer security and privacy assessments
  • security flaw and remediation tracking records
  • system security plan
  • privacy plan
  • privacy impact assessment
  • privacy risk assessment documentation
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security and privacy testing responsibilities
  • organizational personnel with configuration management responsibilities
  • system developers

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
  • static code analysis tools
Official NIST control enhancement

SA-11(2) — Threat Modeling and Vulnerability Analyses

Require the developer of the system, system component, or system service to perform threat modeling and vulnerability analyses during development and the subsequent testing and evaluation of the system, component, or service that:

  1. (a)Uses the following contextual information: [Organization-defined: information];
  2. (b)Employs the following tools and methods: [Organization-defined: tools and methods];
  3. (c)Conducts the modeling and analyses at the following level of rigor: [Organization-defined: organization-defined breadth and depth of modeling and analyses] ; and
  4. (d)Produces evidence that meets the following acceptance criteria: [Organization-defined: organization-defined acceptance criteria].
Official discussion

Systems, system components, and system services may deviate significantly from the functional and design specifications created during the requirements and design stages of the system development life cycle. Therefore, updates to threat modeling and vulnerability analyses of those systems, system components, and system services during development and prior to delivery are critical to the effective operation of those systems, components, and services. Threat modeling and vulnerability analyses at this stage of the system development life cycle ensure that design and implementation changes have been accounted for and that vulnerabilities created because of those changes have been reviewed and mitigated.

Organization-defined parameters (8)
organization-defined breadth and depth of modeling and analyses
organization-defined acceptance criteria
informationinformation concerning impact, environment of operations, known or assumed threats, and acceptable risk levels to be used as contextual information for threat modeling and vulnerability analyses is defined;
tools and methodsthe tools and methods to be employed for threat modeling and vulnerability analyses are defined;
breadth and depththe breadth and depth of threat modeling to be conducted is defined;
breadth and depththe breadth and depth of vulnerability analyses to be conducted is defined;
acceptance criteriaacceptance criteria to be met by produced evidence for threat modeling are defined;
acceptance criteriaacceptance criteria to be met by produced evidence for vulnerability analyses are defined;
Assessment objectives and methods
  1. SA-11(02)(a)
    1. SA-11(02)(a)[01]the developer of the system, system component, or system service is required to perform threat modeling during development of the system, component, or service that uses [Organization-defined: information];
    2. SA-11(02)(a)[02]the developer of the system, system component, or system service is required to perform vulnerability analyses during development of the system, component, or service that uses [Organization-defined: information];
    3. SA-11(02)(a)[03]the developer of the system, system component, or system service is required to perform threat modeling during the subsequent testing and evaluation of the system, component, or service that uses [Organization-defined: information];
    4. SA-11(02)(a)[04]the developer of the system, system component, or system service is required to perform vulnerability analyses during the subsequent testing and evaluation of the system, component, or service that uses [Organization-defined: information];
  2. SA-11(02)(b)
    1. SA-11(02)(b)[01]the developer of the system, system component, or system service is required to perform threat modeling during development of the system, component, or service that employs [Organization-defined: tools and methods];
    2. SA-11(02)(b)[02]the developer of the system, system component, or system service is required to perform threat modeling during the subsequent testing and evaluation of the system, component, or service that employs [Organization-defined: tools and methods];
    3. SA-11(02)(b)[03]the developer of the system, system component, or system service is required to perform vulnerability analyses during development of the system, component, or service that employs [Organization-defined: tools and methods];
    4. SA-11(02)(b)[04]the developer of the system, system component, or system service is required to perform vulnerability analyses during the subsequent testing and evaluation of the system, component, or service that employs [Organization-defined: tools and methods];
  3. SA-11(02)(c)
    1. SA-11(02)(c)[01]the developer of the system, system component, or system service is required to perform threat modeling at [Organization-defined: breadth and depth] during development of the system, component, or service;
    2. SA-11(02)(c)[02]the developer of the system, system component, or system service is required to perform vulnerability analyses during the subsequent testing and evaluation of the system, component, or service that conducts modeling and analyses at [Organization-defined: breadth and depth];
  4. SA-11(02)(d)
    1. SA-11(02)(d)[01]the developer of the system, system component, or system service is required to perform threat modeling during development of the system, component, or service that produces evidence that meets [Organization-defined: acceptance criteria];
    2. SA-11(02)(d)[02]the developer of the system, system component, or system service is required to perform threat modeling during the subsequent testing and evaluation of the system, component, or service that produces evidence that meets [Organization-defined: acceptance criteria];
    3. SA-11(02)(d)[03]the developer of the system, system component, or system service is required to perform vulnerability analyses during development of the system, component, or service that produces evidence that meets [Organization-defined: acceptance criteria];
    4. SA-11(02)(d)[04]the developer of the system, system component, or system service is required to perform vulnerability analyses during the subsequent testing and evaluation of the system, component, or service that produces evidence that meets [Organization-defined: acceptance criteria].

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security test plans
  • records of developer security testing results for the system, system component, or system service
  • vulnerability scanning results
  • system risk assessment reports
  • threat and vulnerability analysis reports
  • system security plan
  • supply chain risk management plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • system developers
  • organizational personnel with supply chain risk management responsibilities

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
Related controls
Official NIST control enhancement

SA-11(3) — Independent Verification of Assessment Plans and Evidence

  1. (a)Require an independent agent satisfying [Organization-defined: independence criteria] to verify the correct implementation of the developer security and privacy assessment plans and the evidence produced during testing and evaluation; and
  2. (b)Verify that the independent agent is provided with sufficient information to complete the verification process or granted the authority to obtain such information.
Official discussion

Independent agents have the qualifications—including the expertise, skills, training, certifications, and experience—to verify the correct implementation of developer security and privacy assessment plans.

Organization-defined parameters (1)
independence criteriaindependence criteria to be satisfied by an independent agent are defined;
Assessment objectives and methods
  1. SA-11(03)(a)
    1. SA-11(03)(a)[01]an independent agent is required to satisfy [Organization-defined: independence criteria] to verify the correct implementation of the developer security assessment plan and the evidence produced during testing and evaluation;
    2. SA-11(03)(a)[02]an independent agent is required to satisfy [Organization-defined: independence criteria] to verify the correct implementation of the developer privacy assessment plan and the evidence produced during testing and evaluation;
  2. SA-11(03)(b)the independent agent is provided with sufficient information to complete the verification process or granted the authority to obtain such information.

Examine

  • System and services acquisition policy
  • system and services acquisition procedures
  • procedures addressing system developer security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • independent verification and validation reports
  • security and privacy assessment plans
  • results of security and privacy assessments for the system, system component, or system service
  • system security plan
  • privacy plan
  • privacy program plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security and privacy responsibilities
  • organizational personnel with developer security testing responsibilities
  • system developers
  • independent verification agent

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
Related controls
Official NIST control enhancement

SA-11(4) — Manual Code Reviews

Require the developer of the system, system component, or system service to perform a manual code review of [Organization-defined: specific code] using the following processes, procedures, and/or techniques: [Organization-defined: processes, procedures, and/or techniques].

Official discussion

Manual code reviews are usually reserved for the critical software and firmware components of systems. Manual code reviews are effective at identifying weaknesses that require knowledge of the application’s requirements or context that, in most cases, is unavailable to automated analytic tools and techniques, such as static and dynamic analysis. The benefits of manual code review include the ability to verify access control matrices against application controls and review detailed aspects of cryptographic implementations and controls.

Organization-defined parameters (2)
specific codespecific code requiring manual code review is defined;
processes, procedures, and/or techniquesprocesses, procedures, and/or techniques used for manual code reviews are defined;
Assessment objectives and methods

the developer of the system, system component, or system service is required to perform a manual code review of [Organization-defined: specific code] using [Organization-defined: processes, procedures, and/or techniques].

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • processes, procedures, and/or techniques for performing manual code reviews
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security testing and evaluation plans
  • system developer security testing and evaluation results
  • list of code requiring manual reviews
  • records of manual code reviews
  • system security plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • system developers
  • independent verification agent

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer testing and evaluation
Official NIST control enhancement

SA-11(5) — Penetration Testing

Require the developer of the system, system component, or system service to perform penetration testing:

  1. (a)At the following level of rigor: [Organization-defined: organization-defined breadth and depth of testing] ; and
  2. (b)Under the following constraints: [Organization-defined: constraints].
Official discussion

Penetration testing is an assessment methodology in which assessors, using all available information technology product or system documentation and working under specific constraints, attempt to circumvent the implemented security and privacy features of information technology products and systems. Useful information for assessors who conduct penetration testing includes product and system design specifications, source code, and administrator and operator manuals. Penetration testing can include white-box, gray-box, or black-box testing with analyses performed by skilled professionals who simulate adversary actions. The objective of penetration testing is to discover vulnerabilities in systems, system components, and services that result from implementation errors, configuration faults, or other operational weaknesses or deficiencies. Penetration tests can be performed in conjunction with automated and manual code reviews to provide a greater level of analysis than would ordinarily be possible. When user session information and other personally identifiable information is captured or recorded during penetration testing, such information is handled appropriately to protect privacy.

Organization-defined parameters (4)
organization-defined breadth and depth of testing
breadththe breadth of penetration testing is defined;
depththe depth of penetration testing is defined;
constraintsconstraints of penetration testing are defined;
Assessment objectives and methods
  1. SA-11(05)(a)
    1. SA-11(05)(a)[01]the developer of the system, system component, or system service is required to perform penetration testing at the following level of rigor: [Organization-defined: breadth];
    2. SA-11(05)(a)[02]the developer of the system, system component, or system service is required to perform penetration testing at the following level of rigor: [Organization-defined: depth];
  2. SA-11(05)(b)the developer of the system, system component, or system service is required to perform penetration testing under [Organization-defined: constraints].

Examine

  • System and services acquisition policy
  • system and services acquisition procedures
  • procedures addressing system developer security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer penetration testing and evaluation plans
  • system developer penetration testing and evaluation results
  • system security plan
  • privacy plan
  • personally identifiable information processing policy
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security and privacy responsibilities
  • organizational personnel with developer security testing responsibilities
  • system developers
  • independent verification agent

Test

  • Organizational processes for monitoring developer security and privacy assessments
  • mechanisms supporting and/or implementing the monitoring of developer security and privacy assessments
Related controls
Official NIST control enhancement

SA-11(6) — Attack Surface Reviews

Require the developer of the system, system component, or system service to perform attack surface reviews.

Official discussion

Attack surfaces of systems and system components are exposed areas that make those systems more vulnerable to attacks. Attack surfaces include any accessible areas where weaknesses or deficiencies in the hardware, software, and firmware components provide opportunities for adversaries to exploit vulnerabilities. Attack surface reviews ensure that developers analyze the design and implementation changes to systems and mitigate attack vectors generated as a result of the changes. The correction of identified flaws includes deprecation of unsafe functions.

Assessment objectives and methods

the developer of the system, system component, or system service is required to perform attack surface reviews.

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security testing and evaluation plans
  • system developer security testing and evaluation results
  • records of attack surface reviews
  • system security plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • organizational personnel with configuration management responsibilities
  • system developers

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
Related controls
Official NIST control enhancement

SA-11(7) — Verify Scope of Testing and Evaluation

Require the developer of the system, system component, or system service to verify that the scope of testing and evaluation provides complete coverage of the required controls at the following level of rigor: [Organization-defined: organization-defined breadth and depth of testing and evaluation].

Official discussion

Verifying that testing and evaluation provides complete coverage of required controls can be accomplished by a variety of analytic techniques ranging from informal to formal. Each of these techniques provides an increasing level of assurance that corresponds to the degree of formality of the analysis. Rigorously demonstrating control coverage at the highest levels of assurance can be achieved using formal modeling and analysis techniques, including correlation between control implementation and corresponding test cases.

Organization-defined parameters (3)
organization-defined breadth and depth of testing and evaluation
breadththe breadth of testing and evaluation of required controls is defined;
depththe depth of testing and evaluation of required controls is defined;
Assessment objectives and methods
  1. SA-11(07)[01]the developer of the system, system component, or system service is required to verify that the scope of testing and evaluation provides complete coverage of the required controls at [Organization-defined: breadth];
  2. SA-11(07)[02]the developer of the system, system component, or system service is required to verify that the scope of testing and evaluation provides complete coverage of the required controls at [Organization-defined: depth].

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security testing and evaluation plans
  • system developer security testing and evaluation results
  • system security plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • system developers
  • independent verification agent

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
Related controls
Official NIST control enhancement

SA-11(8) — Dynamic Code Analysis

Require the developer of the system, system component, or system service to employ dynamic code analysis tools to identify common flaws and document the results of the analysis.

Official discussion

Dynamic code analysis provides runtime verification of software programs using tools capable of monitoring programs for memory corruption, user privilege issues, and other potential security problems. Dynamic code analysis employs runtime tools to ensure that security functionality performs in the way it was designed. A type of dynamic analysis, known as fuzz testing, induces program failures by deliberately introducing malformed or random data into software programs. Fuzz testing strategies are derived from the intended use of applications and the functional and design specifications for the applications. To understand the scope of dynamic code analysis and the assurance provided, organizations may also consider conducting code coverage analysis (i.e., checking the degree to which the code has been tested using metrics such as percent of subroutines tested or percent of program statements called during execution of the test suite) and/or concordance analysis (i.e., checking for words that are out of place in software code, such as non-English language words or derogatory terms).

Assessment objectives and methods
  1. SA-11(08)[01]the developer of the system, system component, or system service is required to employ dynamic code analysis tools to identify common flaws;
  2. SA-11(08)[02]the developer of the system, system component, or system service is required to document the results of the analysis.

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • procedures addressing flaw remediation
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security test and evaluation plans
  • security test and evaluation results
  • security flaw and remediation tracking reports
  • system security plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • organizational personnel with configuration management responsibilities
  • system developers

Test

  • Organizational processes for monitoring developer security testing and evaluation
  • mechanisms supporting and/or implementing the monitoring of developer security testing and evaluation
Official NIST control enhancement

SA-11(9) — Interactive Application Security Testing

Require the developer of the system, system component, or system service to employ interactive application security testing tools to identify flaws and document the results.

Official discussion

Interactive (also known as instrumentation-based) application security testing is a method of detecting vulnerabilities by observing applications as they run during testing. The use of instrumentation relies on direct measurements of the actual running applications and uses access to the code, user interaction, libraries, frameworks, backend connections, and configurations to directly measure control effectiveness. When combined with analysis techniques, interactive application security testing can identify a broad range of potential vulnerabilities and confirm control effectiveness. Instrumentation-based testing works in real time and can be used continuously throughout the system development life cycle.

Assessment objectives and methods
  1. SA-11(09)[01]the developer of the system, system component, or system service is required to employ interactive application security testing tools to identify flaws;
  2. SA-11(09)[02]the developer of the system, system component, or system service is required to document the results of flaw identification.

Examine

  • System and services acquisition policy
  • procedures addressing system developer security testing
  • procedures addressing interactive application security testing
  • solicitation documentation
  • acquisition documentation
  • service level agreements
  • acquisition contracts for the system, system component, or system service
  • system developer security test and evaluation plans
  • security test and evaluation results
  • security flaw and remediation tracking reports
  • system security plan
  • other relevant documents or records

Interview

  • Organizational personnel with system and service acquisition responsibilities
  • organizational personnel with information security responsibilities
  • organizational personnel with developer security testing responsibilities
  • organizational personnel with configuration management responsibilities
  • system developers

Test

  • Organizational processes for interactive application security testing
  • mechanisms supporting and/or implementing interactive application security testing
Source record

Authoritative sources