NIST SP 800-53 Rev. 5·Control SA-5(5)·high·Component: System and Services Acquisition

What this control requires

Perform static code analysis on source code to identify security vulnerabilities during development. This control supports the Static Analysis Tool capability within the System and Services Acquisition family.
— NIST SP 800-53 Rev. 5, Control SA-5(5)

In plain English

Perform static code analysis on source code to identify security vulnerabilities during development. In practice, this means you can prove you security management-level controls on a defined cadence.

Why it matters

SP 800-53 is the catalogue every U.S. federal authorisation (FedRAMP, FISMA, CMMC) and most regulated industries point at. A missing control surfaces as a Plan of Action & Milestones (POA&M) item that an Authorizing Official must approve before the Authority To Operate is granted or renewed.

This control is rated high. Auditors expect a named owner, a remediation SLA, and a tooling artefact that evidences continuous operation.

What an auditor looks for

A 3PAO (FedRAMP) or Independent Assessor (NIST RMF) tests against NIST SP 800-53A assessment procedures. For each control they expect a documented implementation that addresses every assessment objective (Examine, Interview, Test) and an implementation summary in the System Security Plan.

Within System and Services Acquisition, the assessor will trace your implementation back to the catalogue reference (Control SA-5(5)) and look for objective evidence on the latest two assessment cycles.

How to implement

Secure Development

Pipeline. Require code review, SAST (Semgrep / Snyk Code), SCA (Dependabot / Renovate), secret-scanning and IaC scanning in the merge pipeline.

Branch protection. Protected branches enforce reviews, signed commits and passing CI before merge; document the protection rules as the control evidence.

Code Review Testing

Pipeline. Require at least one human reviewer plus passing CI (lint, type, unit, security scan) before merge — protected branches enforce this.

Vulnerability Management

Scanners. Pair an unauthenticated scanner (Nessus / Qualys / Tenable.io) for external surface with an authenticated agent for OS/library CVEs on every host.

SLA. Document remediation SLAs by CVSS / EPSS: critical 7 days, high 30 days, medium 90 days; report monthly trend to leadership.

Containers. Scan images in CI (Trivy / Grype / Snyk Container) AND at runtime; block deploys on critical findings without exception.

Operational checklist

  • Security. Document the trigger, the owner and the cadence.
  • Review. Document the trigger, the owner and the cadence.
  • System. Document the trigger, the owner and the cadence.
  • Control. Document the trigger, the owner and the cadence.
  • Testing,. Document the trigger, the owner and the cadence.
  • Scope: management, system, application, source, analysis, review, services, capability.

Evidence to collect

  • Code Repo Scan. Source-control evidence — branch protection, required reviewers, CI status, SCA / SAST reports.

Source control pipelines (GitHub, GitLab) enforce SDLC guardrails. Focus: Source Code.

Common pitfalls

  • CI security checks set to warn-only; the merge button is faster than the security feedback.
  • Scans that hit only the perimeter; missing authenticated scans of OS, runtime libs and base images so most CVEs are invisible.

How it maps to other frameworks

Computed from shared tags, control component and key-operation subjects — handy when you are reconciling controls across an audit.

Related controls in NIST SP 800-53 Rev. 5

References

Topics: application securitysecure developmentcode review testingdevsecopsvulnerability management