Skip to main content
NetStable
Level 2 CM.L2-3.4.6

Employ the principle of least functionality

📖 What This Means

The principle of least functionality means configuring systems to provide only the essential capabilities needed for their intended purpose and nothing more. This reduces the attack surface by eliminating unnecessary services, applications, and features that could be exploited by attackers. For example, a web server should only have web hosting software installed, not email or database services. Similarly, user workstations should not have administrative privileges or unnecessary software installed. This practice ensures that systems are secure by default and reduces the complexity of managing security configurations.

🎯 Why It Matters

Unnecessary functionality increases the risk of cyberattacks by providing more potential entry points for attackers. For instance, in 2017, the Equifax breach occurred due to an unpatched vulnerability in a web application framework that wasn't essential to their operations. This led to the exposure of sensitive personal data of 147 million people. The DoD emphasizes this control because it directly reduces the attack surface of systems handling Controlled Unclassified Information (CUI). By limiting functionality, organizations can better protect their systems, reduce maintenance costs, and simplify compliance with other security controls.

How to Implement

  1. Identify and disable unused services in cloud environments (e.g., AWS EC2, Azure VMs).
  2. Use cloud-native tools like AWS Security Hub or Azure Security Center to scan for unnecessary features.
  3. Implement role-based access control (RBAC) to limit permissions to the minimum required.
  4. Use containerization (e.g., Docker) to isolate applications and remove unnecessary dependencies.
  5. Regularly review and update cloud service configurations to ensure they align with least functionality principles.
  6. Enable logging and monitoring for cloud services to detect and disable unused resources.
⏱️
Estimated Effort
Implementation typically requires 20-40 hours, depending on the size of the environment. Skill level: Intermediate (basic knowledge of system configurations and security tools).

📋 Evidence Examples

System Configuration Documentation

Format: PDF/Word
Frequency: Quarterly or after significant changes.
Contents: List of enabled services, installed software, and justification for each.
Collection: Export from configuration management tools or manual documentation.

Security Scans

Format: CSV/PDF
Frequency: Monthly.
Contents: Results of scans showing disabled unnecessary services.
Collection: Run scans using tools like Nessus or OpenSCAP.

Change Control Records

Format: Excel/PDF
Frequency: As changes occur.
Contents: Records of changes made to implement least functionality.
Collection: Maintain in change management system.

Training Records

Format: PDF/Excel
Frequency: Annually.
Contents: Documentation of staff training on least functionality principles.
Collection: Maintain in HR or training management system.

📝 SSP Guidance

Use this guidance when writing the System Security Plan (SSP) narrative for this control.

How to Write the SSP Narrative

For CM.L2-3.4.6 ("Employ the principle of least functionality"), your SSP narrative should specifically describe: (1) the tools and technologies you use to implement this control, (2) the configuration or process that enforces it, (3) who is responsible for maintaining it, and (4) what evidence proves it's working. Describe your configuration management process, including baseline configurations, change control procedures, vulnerability management, and how configuration compliance is monitored and enforced. Be specific -- name your actual products, settings, and responsible personnel.

Example SSP Narratives

Cloud (Azure/AWS)

"CM.L2-3.4.6 is implemented using cloud-native controls. [Organization] uses [specific cloud service/feature] to employ the principle of least functionality. The configuration is managed through [Azure Policy/AWS Config/Terraform] and monitored via [SIEM tool]. Responsible party: [IT Security Manager]. Evidence: [specific artifact, e.g., 'Azure AD Conditional Access policy screenshot, CloudTrail logs']."

On-Premise

"CM.L2-3.4.6 is implemented through on-premise infrastructure controls. [Organization] uses [Active Directory/Group Policy/specific tool] to employ the principle of least functionality. Configuration is documented in [location] and audited [frequency]. Responsible party: [System Administrator]. Evidence: [specific artifact, e.g., 'Group Policy export, Windows Event logs']."

Hybrid

"CM.L2-3.4.6 is implemented across both cloud and on-premise environments. [Organization] uses [Azure AD Connect/hybrid tool] to ensure consistent enforcement. Cloud resources are managed via [cloud tool] and on-premise systems via [on-prem tool]. Both environments report to [centralized SIEM]. Responsible party: [IT Director]. Evidence: [artifacts from both environments]."

System Boundary Considerations

  • Identify all system types within the CUI boundary requiring baselines
  • Document configuration management tools and CMDB
  • Map change control workflow from request to implementation
  • Ensure this control covers all systems within your defined CUI boundary where employ the principle of least functionality applies
  • Document any systems where this control is not applicable and explain why

Key Documentation to Reference in SSP

  • 📄 Configuration Management Policy
  • 📄 Baseline configuration documents
  • 📄 Change management records
  • 📄 CMDB/asset inventory
  • 📄 Evidence artifacts specific to CM.L2-3.4.6
  • 📄 POA&M entry if control is not fully implemented

What the Assessor Looks For

The assessor will compare actual system configurations against documented baselines, review change tickets for proper approval workflow, and verify vulnerability remediation within SLA.

💬 Self-Assessment Questions

Use these questions to assess your compliance. Each "NO" answer provides specific remediation guidance.

Question 1: Does your organization have a documented policy for least functionality?

✅ YES → Proceed to Q2.
❌ NO → GAP: Develop and document a least functionality policy within 30 days.
Remediation:
Create a policy outlining the principles and procedures for implementing least functionality.

Question 2: Have all unnecessary services and applications been disabled or removed?

✅ YES → Proceed to Q3.
❌ NO → GAP: Conduct a full audit and disable unnecessary services within 60 days.
Remediation:
Use tools like Nessus or OpenSCAP to identify and disable unnecessary services.

Question 3: Are least functionality principles enforced across all systems (cloud, on-premise, hybrid)?

✅ YES → Proceed to Q4.
❌ NO → GAP: Implement centralized management tools like Microsoft Endpoint Manager within 90 days.
Remediation:
Use centralized tools to enforce least functionality policies.

Question 4: Is regular monitoring and validation of least functionality configurations in place?

✅ YES → Proceed to Q5.
❌ NO → GAP: Set up regular scans and monitoring within 30 days.
Remediation:
Use tools like AWS Security Hub or Azure Security Center for continuous monitoring.

Question 5: Are all changes to system configurations documented and approved?

✅ YES → Compliant.
❌ NO → GAP: Implement a change control process within 30 days.
Remediation:
Establish a change control board and document all configuration changes.

⚠️ Common Mistakes (What Auditors Flag)

1. Failing to document enabled services and applications.

Why this happens: Lack of awareness or oversight.
How to avoid: Maintain detailed documentation of all system configurations.

2. Not regularly reviewing and updating configurations.

Why this happens: Resource constraints or complacency.
How to avoid: Schedule regular audits and updates.

3. Overlooking cloud service configurations.

Why this happens: Focusing only on on-premise systems.
How to avoid: Apply least functionality principles equally to cloud environments.

4. Lacking training for IT staff on least functionality.

Why this happens: Insufficient training programs.
How to avoid: Provide regular training on least functionality principles.

5. Not integrating least functionality with change control processes.

Why this happens: Siloed operations.
How to avoid: Integrate least functionality checks into change control workflows.

📚 Parent Policy

This practice is governed by the Configuration Management Policy

View CM Policy →

📚 Related Controls