CMMC Practice SC.L2-3.13.3 – Role Separation: Separate user functionality from system management functionality.
Links to Publicly Available Resources
This document provides assessment guidance for conducting Cybersecurity Maturity Model Certification (CMMC) assessments for Level 2. In this paper the authors propose virtually partitioning the execution of applications, and adapting the defenses being deployed based on the executing partition. This abstract paper from Cornell introduces the Swift system, a way to write web applications that are secure by construction. This example procedure from the EPS facilitates the implementation of security control requirements for the System and Communications Protection control family, as identified NIST SP 800-53. This special publication from NIST provides guidance on application partitioning.
Discussion [NIST SP 800-171 R2]
System management functionality includes functions necessary to administer databases, network components, workstations, or servers, and typically requires privileged user access. The separation of user functionality from system management functionality is physical or logical. Organizations can implement separation of system management functionality from user functionality by using different computers, different central processing units, different instances of operating systems, or different network addresses; virtualization techniques; or combinations of these or other methods, as appropriate. This type of separation includes web administrative interfaces that use separate authentication methods for users of any other system resources. Separation of system and user functionality may include isolating administrative interfaces on different domains and with additional access controls.
Further Discussion
Prevent users and user services from accessing system management functionality on IT components (e.g., databases, network components, workstations, servers). This reduces the attack surface to those critical interfaces by limiting who can access and how they can be accessed. By separating the user functionality from system management functionality, the administrator or privileged functions are not available to the general user.
The intent of this practice is to ensure:
- general users are not permitted to perform system administration functions; and
- system administrators only perform system administration functions from their privileged account.
This can be accomplished using separation like VLANs or logical separation using strong access control methods.