CM.L2-3.4.7 Nonessential Functionality
Prevent nonessential programs, functions, ports, protocols and services from being used, by restricting or disabling each one identified as unnecessary.
Source: CMMC 2.0, CM.L2-3.4.7. The statement above is our statement of the clause, read from the published text and cited so you can check it against the official text, not the instrument verbatim. Open CMMC 2.0 in the compliance library.
These are the artefacts auditors commonly ask for on this requirement, our guidance rather than text from the standard. Your assessor decides what is sufficient in your context, and asks for samples across the period when a report covers one.
system holds itEvidence a system already holds
- Configuration and scan evidence showing they are disabled or blocked · Vulnerability scanner / patch tooling
periodic reviewEvidence produced at each review
- Exception records with justification · Cloud console / configuration management
governing documentDocuments that govern the control
- List of prohibited or restricted programs, ports, protocols and services · Policy repository / GRC workspace
First move
Common gaps auditors find
- Ports and services addressed but programs and functions ignored
- Blocking at perimeter only while hosts remain open
- Exceptions granted permanently without review
Do this for your whole sheet
Paste the rows you run your controls from and get this mapping for every control at once, with the periodic-review ones flagged and a first move per row. No account for the first run.
Build my evidence sheetCM.L2-3.4.6 Least Functionality · CM.L2-3.4.8 Application Execution Policy