SC-3(4) Module Coupling and Cohesiveness
Enhancement of: SC-3
High-Level Description
Family: System and Communications Protection (SC) Framework: NIST SP 800-53 Rev 5
The reduction of inter-module interactions helps to constrain security functions and manage complexity. The concepts of coupling and cohesion are important with respect to modularity in software design. Coupling refers to the dependencies that one module has on other modules. Cohesion refers to the relationship between functions within a module. Best practices in software engineering and systems security engineering rely on layering, minimization, and modular decomposition to reduce and manage complexity. This produces software modules that are highly cohesive and loosely coupled.
What to Check
- Verify SC-3(4) Module Coupling and Cohesiveness is documented in SSP
- Confirm control is operating effectively
- Review evidence of continuous monitoring for SC-3(4)
- Verify enhancement builds upon base control SC-3
How to Test
Step 1: Review Documentation
Examine the System Security Plan (SSP) and related artifacts for SC-3(4) implementation details. Verify the organization has documented how this control is satisfied.
Step 2: Validate Implementation
# For cloud environments, use cloud-audit-mcp tools
# For on-premises, review system configurations directly
# Example: Check if account management policies exist
grep -r "account.management\|access.control" /etc/security/ 2>/dev/null
Step 3: Test Operating Effectiveness
Verify the control is actively functioning, not just documented. Check logs, configurations, and operational evidence.
Tools
| Tool | Purpose | Usage |
|---|---|---|
| cloud-audit-mcp | Check encryption and network controls | cloud_audit_encryption |
| nmap | Network scanning | nmap -sV --script ssl-enum-ciphers |
Remediation Guide
Control Statement
Implement security functions as largely independent modules that maximize internal cohesiveness within modules and minimize coupling between modules.
Implementation Guidance
The reduction of inter-module interactions helps to constrain security functions and manage complexity. The concepts of coupling and cohesion are important with respect to modularity in software design. Coupling refers to the dependencies that one module has on other modules. Cohesion refers to the relationship between functions within a module. Best practices in software engineering and systems security engineering rely on layering, minimization, and modular decomposition to reduce and manage complexity. This produces software modules that are highly cohesive and loosely coupled.
Risk Assessment
| Finding | Severity | Impact |
|---|---|---|
| SC-3(4) Module Coupling and Cohesiveness not implemented | High | System and Communications Protection |
| SC-3(4) partially implemented | Medium | Incomplete System and Communications Protection |
CWE Categories
| CWE ID | Title |
|---|---|
| CWE-311 | Missing Encryption of Sensitive Data |
References
- NIST SP 800-53 Rev 5 - SC-3(4)
- NIST SP 800-53A Rev 5 (Assessment Procedures)
- NIST SP 800-53 Rev 5 Full Catalog
Checklist
- Control documented in SSP
- Implementation evidence collected
- Operating effectiveness validated
- Continuous monitoring in place
- Related controls (none) reviewed