Knowledge is Power

Sitewide Search

Search Bare Metal Cyber

Search exact control and technique identifiers, Cyber Wiki articles, framework records, playbooks, books, podcasts, Academy courses, and individual lessons.

NIST SP 800-53 Learning Center

SC-18 — Mobile Code

Read the official control and assessment content, then use the separately labeled Bare Metal Cyber perspective to connect the requirement to implementation, evidence, and sustained operation.

5Enhancements
0Parameters
2Baseline memberships
3Assessment methods

SC — System and Communications Protection · NIST SP 800-53 Release 5.2.0

ModerateHigh
Official NIST control content

Control statement

  1. a.Define acceptable and unacceptable mobile code and mobile code technologies; and
  2. b.Authorize, monitor, and control the use of mobile code within the system.
Official NIST discussion

Discussion

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.

Original Bare Metal Cyber perspective

From control text to operational evidence

Use Mobile Code as a testable risk decision. Translate the official statement into accountable people, repeatable processes, configured technology, and evidence that demonstrates the outcome over time. In this family, pay particular attention to secure architecture, boundary protection, communications protection, cryptography, and system isolation.

Implementation workflow

  • Define the control boundary, responsible owner, inherited portions, and systems or processes in scope.
  • Resolve each organization-defined parameter before declaring the control implemented.
  • Document how the implementation satisfies every clause of the official control statement.
  • Collect evidence as a normal byproduct of operation rather than only before an assessment.
  • Review exceptions, changes, and monitoring results on a risk-based cadence.

Evidence examples

  • network and trust-boundary diagrams
  • firewall and gateway configurations
  • cryptographic configuration and key records
  • segmentation and isolation test results

Common failure patterns

  • diagrams omit cloud and third-party paths
  • encryption enabled without key governance
  • flat trust zones allow unnecessary lateral movement
  • boundary rules accumulate without owner review

Questions practitioners should ask

  • What risk decision is this control intended to support in this system?
  • Which parts are implemented locally, inherited, shared, or not applicable—and what evidence supports that decision?
  • Do the documented narrative, deployed configuration, operating process, and collected evidence agree?
  • What event or threshold requires the implementation to be reviewed or changed?
Official NIST SP 800-53A content

Assessment objectives and methods

Show the assessment objective
  1. SC-18a.
    1. SC-18a.[01]acceptable mobile code is defined;
    2. SC-18a.[02]unacceptable mobile code is defined;
    3. SC-18a.[03]acceptable mobile code technologies are defined;
    4. SC-18a.[04]unacceptable mobile code technologies are defined;
  2. SC-18b.
    1. SC-18b.[01]the use of mobile code is authorized within the system;
    2. SC-18b.[02]the use of mobile code is monitored within the system;
    3. SC-18b.[03]the use of mobile code is controlled within the system.

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code implementation policy and procedures
  • list of acceptable mobile code and mobile code technologies
  • list of unacceptable mobile code and mobile technologies
  • authorization records
  • system monitoring records
  • system audit records
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • organizational personnel with responsibilities for managing mobile code

Test

  • Organizational process for authorizing, monitoring, and controlling mobile code
  • mechanisms supporting and/or implementing the management of mobile code
  • mechanisms supporting and/or implementing the monitoring of mobile code
Official relationships

Related controls

These relationships come from the official OSCAL catalog. They indicate useful dependencies or context, not automatic inheritance or equivalence.

Official CUI requirement crosswalk

Related NIST SP 800-171 requirements

These Rev. 3 requirements cite this base control or one of its enhancements as a source. The relationship does not by itself determine contractual applicability or complete implementation.

Official NIST enhancements

Control enhancements

Enhancements add specificity, strength, or scope to the base control. Baseline badges show explicit selections in the official SP 800-53B OSCAL profiles.

Official NIST control enhancement

SC-18(1) — Identify Unacceptable Code and Take Corrective Actions

Identify [Organization-defined: unacceptable mobile code] and take [Organization-defined: corrective actions].

Official discussion

Corrective actions when unacceptable mobile code is detected include blocking, quarantine, or alerting administrators. Blocking includes preventing the transmission of word processing files with embedded macros when such macros have been determined to be unacceptable mobile code.

Organization-defined parameters (2)
unacceptable mobile codeunacceptable mobile code to be identified is defined;
corrective actionscorrective actions to be taken when unacceptable mobile code is identified are defined;
Assessment objectives and methods
  1. SC-18(01)[01][Organization-defined: unacceptable mobile code] is identified;
  2. SC-18(01)[02][Organization-defined: corrective actions] are taken if unacceptable mobile code is identified.

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code usage restrictions
  • mobile code implementation policy and procedures
  • system design documentation
  • system configuration settings and associated documentation
  • list of unacceptable mobile code
  • list of corrective actions to be taken when unacceptable mobile code is identified
  • system monitoring records
  • system audit records
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • system developer
  • organizational personnel with responsibilities for managing mobile code

Test

  • Mechanisms supporting and/or implementing mobile code detection, inspection, and corrective capabilities
Official NIST control enhancement

SC-18(2) — Acquisition, Development, and Use

Verify that the acquisition, development, and use of mobile code to be deployed in the system meets [Organization-defined: mobile code requirements].

Official discussion

None.

Organization-defined parameters (1)
mobile code requirementsmobile code requirements for the acquisition, development, and use of mobile code to be deployed in the system are defined;
Assessment objectives and methods
  1. SC-18(02)[01]the acquisition of mobile code to be deployed in the system meets [Organization-defined: mobile code requirements];
  2. SC-18(02)[02]the development of mobile code to be deployed in the system meets [Organization-defined: mobile code requirements];
  3. SC-18(02)[03]the use of mobile code to be deployed in the system meets [Organization-defined: mobile code requirements].

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code requirements
  • mobile code usage restrictions
  • mobile code implementation policy and procedures
  • acquisition documentation
  • acquisition contracts for system, system component, or system service
  • system development life cycle documentation
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • organizational personnel with responsibilities for managing mobile code
  • organizational personnel with acquisition and contracting responsibilities

Test

  • Organizational processes for the acquisition, development, and use of mobile code
Official NIST control enhancement

SC-18(3) — Prevent Downloading and Execution

Prevent the download and execution of [Organization-defined: unacceptable mobile code].

Official discussion

None.

Organization-defined parameters (1)
unacceptable mobile codeunacceptable mobile code to be prevented from downloading and executing is defined;
Assessment objectives and methods
  1. SC-18(03)[01]the download of [Organization-defined: unacceptable mobile code] is prevented;
  2. SC-18(03)[02]the execution of [Organization-defined: unacceptable mobile code] is prevented.

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code usage restrictions
  • mobile code implementation policy and procedures
  • system design documentation
  • system configuration settings and associated documentation
  • system audit records
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • system developer
  • organizational personnel with responsibilities for managing mobile code

Test

  • Mechanisms preventing the download and execution of unacceptable mobile code
Official NIST control enhancement

SC-18(4) — Prevent Automatic Execution

Prevent the automatic execution of mobile code in [Organization-defined: software applications] and enforce [Organization-defined: actions] prior to executing the code.

Official discussion

Actions enforced before executing mobile code include prompting users prior to opening email attachments or clicking on web links. Preventing the automatic execution of mobile code includes disabling auto-execute features on system components that employ portable storage devices, such as compact discs, digital versatile discs, and universal serial bus devices.

Organization-defined parameters (2)
software applicationssoftware applications in which the automatic execution of mobile code is to be prevented are defined;
actionsactions to be enforced by the system prior to executing mobile code are defined;
Assessment objectives and methods
  1. SC-18(04)[01]the automatic execution of mobile code in [Organization-defined: software applications] is prevented;
  2. SC-18(04)[02][Organization-defined: actions] are enforced prior to executing mobile code.

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code usage restrictions
  • mobile code implementation policy and procedures
  • system design documentation
  • system configuration settings and associated documentation
  • list of software applications in which the automatic execution of mobile code must be prohibited
  • list of actions required before execution of mobile code
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • system developer
  • organizational personnel with responsibilities for managing mobile code

Test

  • Mechanisms preventing the automatic execution of unacceptable mobile code
  • mechanisms enforcing actions to be taken prior to the execution of the mobile code
Official NIST control enhancement

SC-18(5) — Allow Execution Only in Confined Environments

Allow execution of permitted mobile code only in confined virtual machine environments.

Official discussion

Permitting the execution of mobile code only in confined virtual machine environments helps prevent the introduction of malicious code into other systems and system components.

Assessment objectives and methods

execution of permitted mobile code is allowed only in confined virtual machine environments.

Examine

  • System and communications protection policy
  • procedures addressing mobile code
  • mobile code usage allowances
  • mobile code usage restrictions
  • system design documentation
  • system configuration settings and associated documentation
  • list of confined virtual machine environments in which the execution of organizationally acceptable mobile code is allowed
  • system audit records
  • system security plan
  • other relevant documents or records

Interview

  • System/network administrators
  • organizational personnel with information security responsibilities
  • system developer
  • organizational personnel with responsibilities for managing mobile code

Test

  • Mechanisms allowing for the execution of permitted mobile code in confined virtual machine environments
Related controls
Source record

Authoritative sources