SC-18 Mobile Code
High-Level Description
Family: System and Communications Protection (SC) Framework: NIST SP 800-53 Rev 5
Mobile code includes any program, application, or content that can be transmitted across a network (e.g., embedded in an email, document, or website) and executed on a remote system. Decisions regarding the use of mobile code within organizational systems are based on the potential for the code to cause damage to the systems if used maliciously. Mobile code technologies include Java applets, JavaScript, HTML5, WebGL, and VBScript. Usage restrictions and implementation guidelines apply to both the selection and use of mobile code installed on servers and mobile code downloaded and executed on individual workstations and devices, including notebook computers and smart phones. Mobile code policy and procedures address specific actions taken to prevent the development, acquisition, and introduction of unacceptable mobile code within organizational systems, including requiring mobile code to be digitally signed by a trusted source.
What to Check
- Verify SC-18 Mobile Code is documented in SSP
- Validate all 2 control requirements are implemented
- Confirm control is operating effectively
- Review evidence of continuous monitoring for SC-18
How to Test
Step 1: Review Documentation
Examine the System Security Plan (SSP) and related artifacts for SC-18 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
Define acceptable and unacceptable mobile code and mobile code technologies; and Authorize, monitor, and control the use of mobile code within the system.
Implementation Guidance
Mobile code includes any program, application, or content that can be transmitted across a network (e.g., embedded in an email, document, or website) and executed on a remote system. Decisions regarding the use of mobile code within organizational systems are based on the potential for the code to cause damage to the systems if used maliciously. Mobile code technologies include Java applets, JavaScript, HTML5, WebGL, and VBScript. Usage restrictions and implementation guidelines apply to both the selection and use of mobile code installed on servers and mobile code downloaded and executed on individual workstations and devices, including notebook computers and smart phones. Mobile code policy and procedures address specific actions taken to prevent the development, acquisition, and introduction of unacceptable mobile code within organizational systems, including requiring mobile code to be digitally signed by a trusted source.
Risk Assessment
| Finding | Severity | Impact |
|---|---|---|
| SC-18 Mobile Code not implemented | High | System and Communications Protection |
| SC-18 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-18
- 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 (AU-2, AU-12, CM-2, CM-6, SI-3) reviewed