3.14.2·critical·Component: System and Communications ProtectionWhat this control requires
This control requires implementing malicious code protection mechanisms at system entry and exit points to detect and eradicate malicious code. It mandates updating these mechanisms as new releases become available, and configuring them to perform regular scans, real-time scans of external files, and take mitigation actions such as blocking or quarantining malicious code This control supports the Malicious Code Protection capability within the System and Communications Protection (3.14) family.
In plain English
This control requires implementing malicious code protection mechanisms at system entry and exit points to detect and eradicate malicious code. In practice, this means you can prove you time time-level controls on a defined cadence.
Why it matters
DoD contractors and their subcontractors must implement all 100 SP 800-171 requirements to keep CUI handling contracts. Gaps are scored against the SPRS scoring methodology; below a 110-point starting score, each unmet requirement deducts points and a below-threshold score can disqualify a bid.
This control is rated critical in the source catalogue. Treat gaps here as production incidents in the risk register, not housekeeping.
What an auditor looks for
A C3PAO conducting a CMMC Level 2 assessment uses NIST SP 800-171A objectives. They expect a System Security Plan (SSP), Plan of Action & Milestones (POA&M) for any gaps, and objective evidence (configurations, ticket records, training records) for every requirement.
Within System and Communications Protection, the assessor will trace your implementation back to the catalogue reference (Requirement 3.14.2) 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.
Operational checklist
- Time. Document the trigger, the owner and the cadence.
- Protection. Document the trigger, the owner and the cadence.
- System. Document the trigger, the owner and the cadence.
- Security. Document the trigger, the owner and the cadence.
- Malicious. Document the trigger, the owner and the cadence.
- Scope: time, security, protection, code, code protection, communications protection, development.
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: Malicious Code Protection.
Common pitfalls
- CI security checks set to warn-only; the merge button is faster than the security feedback.
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.
- NIST SP 800-53 Rev. 5 SC-3(3) — Minimize Nonsecurity Functionality
- CIS Controls v8 16.12 — Implement Code-Level Security Checks
- ISO/IEC 27001:2022 A.8.28 — Secure coding
- BSI C5:2020 PSS-02 — Identification of Vulnerabilities of the Cloud Service
- SOC 2 (2017 TSC) P5.2 — Correction and Amendment of Personal Information
Related controls in NIST SP 800-171 Rev. 3
- Requirement 3.13.13 — Mobile Code
- Requirement 3.7.4 — Maintenance Tools
- Requirement 3.14.3 — Security Alerts, Advisories, and Directives
- Requirement 3.14.1 — Flaw Remediation
References
- NIST Computer Security Resource Center — NIST SP 800-171 Rev. 3
- Catalogue identifier:
Requirement 3.14.2
Topics: application securitysecure developmentcode review testingdevsecops