Open navigation menu - Kieri Solutions
How to Implement Mobile Code Requirements for CMMC Level 2

How to Implement Mobile Code Requirements for CMMC Level 2

CMMC mobile code security controls and technical implementation

In this article

A complete walkthrough showing System Security Plan development, policy creation, and monitoring procedures that satisfy assessors


Mobile code appears twice in NIST SP 800-171 Rev 3. Two separate requirements with six assessment objectives between them.

Most implementers struggle with these requirements because mobile code is widely misunderstood. They think it means cell phones. They try to disable everything. They write procedures for one-time configurations.

This article walks through proper implementation using the same methodology that passed DIBCAC assessment.

What Mobile Code Actually Means

Mobile code isn’t about smartphones or app stores. It’s code that executes inside a different trusted application.

Office macros executing in Microsoft Word. JavaScript running in Chrome. PowerShell scripts executing in the Windows shell. PDF scripts running inside Adobe Reader.

This code is dangerous because normal security controls don’t work. Your operating system trusts Chrome. If your antivirus blocked Chrome entirely, you’d say “this computer is useless” and get a different one.

Same with Microsoft Office, PowerShell, command line. Your IT department uses these tools constantly. You can’t just disable them.

Mobile code requires different control methods because you can’t block the applications that execute it.

Start with Assessment Objectives

Before writing anything, read the assessment objectives. These tell you what assessors will actually verify.

For the first mobile code requirement (3.13.13A in Rev 3):

  1. Acceptable mobile code is defined
  2. Acceptable mobile code technologies are defined
  3. Antivirus programs are configured to prevent or restrict mobile code

For the second requirement (monitoring and control):

  1. The use of mobile code is authorized
  2. The use of mobile code is monitored
  3. The use of mobile code is controlled

These objectives drive your implementation decisions.

Defining Acceptable Mobile Code

How do you define every acceptable JavaScript on every website your users might visit? Every Office macro they might encounter? Every PowerShell script your IT team might write?

You can’t. It’s impossible.

Here’s the trick: define unacceptable mobile code instead.

Unacceptable mobile code maliciously alters the computer. Attempts privilege escalation. Exfiltrates data. Installs malware.

Therefore, acceptable mobile code is anything that doesn’t do those things.

This approach satisfies the assessment objective without requiring impossible documentation.

Track Authorized Mobile Code Technologies

Mobile code executes inside applications. Track authorizations at that level.

Create a software inventory database. For each authorized application, list which mobile code technologies it can run.

Google Chrome: Authorized for JavaScript and PDF. Microsoft Office: Authorized for macros in specific scenarios. PowerShell: Authorized for administrative scripts.

This gives you evidence. When assessors ask what mobile code technologies are authorized, point to the database.

Write Policies for Longevity

Policies should survive personnel rotation. They tell future IT staff what needs to happen even after current employees leave.

Three policies cover mobile code effectively:

Software inventory policy: We maintain records of authorized software and the mobile code technologies each can use.

Antivirus policy: All antivirus programs must be configured to evaluate mobile code and block suspected malicious execution.

Secure build policy: Disable mobile code technologies not listed as authorized in the software inventory database when building new systems.

These policies create lasting control even as staff changes.

Don’t Write Unnecessary Procedures

CMMC Version 1 required step-by-step procedures for every assessment objective, no matter how illogical. Companies wrote 20-page procedures describing every click required to create a single group policy.

CMMC Version 2 eliminated that requirement. Now you need logical implementation.

For mobile code, technical controls work better than procedures. You configure antivirus policies once. You set attack surface reduction rules once. They keep working.

Writing a procedure for how to write a PowerShell script is silly. Keeping a copy of the script as baseline documentation is smart.

The distinction: baseline documentation shows what’s configured. Procedures explain repeatable processes performed regularly.

Tag Assessment Objectives in Your SSP

When writing System Security Plan statements, tag which assessment objectives each statement addresses.

Example: “Our antivirus programs are configured to block suspected malicious mobile code. [Assessment Objective 3.13.13A(01)]”

Assessors love this. They can quickly verify your SSP covers every objective. During assessment when everyone is stressed and sleep-deprived, you can find relevant statements immediately.

Demonstrate Monitoring Capability

Assessment objectives about monitoring require more than policies. You need to demonstrate capability.

Create an audit log procedure documenting exactly how to pull monitoring information. Include:

  • Menu paths to reach monitoring interfaces
  • Copy-paste queries to run
  • Screenshots showing expected results

For mobile code monitoring, queries might include:

PowerShell execution monitoring through Microsoft Defender for Endpoint advanced hunting.

Subprocess execution from browsers showing JavaScript activity.

Antivirus alerts showing blocked mobile code.

During assessment, pull up these procedures, paste the queries, run them, show results. This gives assessors confidence you know what you’re doing.

Control Doesn’t Mean Disable

A common mistake: reading “control mobile code” as “disable all mobile code.”

That’s not the requirement. Control means manage appropriately.

Your computers likely have JavaScript enabled. PowerShell is available. PDFs can execute scripts. That’s acceptable if:

  • Those technologies are documented as authorized
  • Your antivirus monitors and controls them
  • Your policies require future systems to maintain these controls

Match your documentation to actual implementation. Don’t claim you disable JavaScript when Chrome allows it. That discrepancy fails assessments.

Better to document what your systems actually do and show you control it appropriately.

Address External Service Providers

Mobile code requirements apply to your systems and your cloud providers.

Microsoft 365 backend servers execute code. Your cloud provider’s infrastructure runs scripts. Those environments also need mobile code controls.

The gold standard approach: Request your cloud provider’s FedRAMP package. Review their System Security Plan. Verify they address mobile code requirements.

Then in your SSP: “Our Microsoft 365 cloud performs this practice per their FedRAMP authorization. Reference SSP control SC-18.”

Make the cloud provider’s SSP available to assessors if they want verification.

Most companies skip this entirely. They ignore cloud considerations. Sometimes assessors don’t notice. Sometimes companies get findings.

Proper documentation addresses it explicitly through inheritance.

FedRAMP Equivalent Reality

Some cloud providers claim “FedRAMP equivalent” status without actually performing the security controls.

Real FedRAMP equivalent means:

  • Performing all 325+ security controls from 853 moderate baseline
  • Having third-party assessment verification
  • Making System Security Plans available to customers

It does NOT mean skipping security while claiming equivalence.

Before trusting a cloud’s “equivalent” claim, request the third-party audit report. If they can’t provide one, they’re probably using the wrong definition of equivalent.

Implementation Checklist

For complete mobile code implementation:

✓ Define acceptable mobile code by defining unacceptable ✓ Track authorized mobile code technologies in software inventory ✓ Create policies for software inventory, antivirus, and secure builds ✓ Configure antivirus and attack surface reduction for mobile code ✓ Document exact menu paths and configurations in SSP ✓ Tag all assessment objectives in SSP statements ✓ Create audit log procedures with copy-paste queries ✓ Verify you can demonstrate monitoring live during assessment ✓ Address cloud provider mobile code controls through inheritance ✓ Match documentation to actual implementation

Getting Implementation Right

The methodology demonstrated here comes from the Kieri Compliance Documentation and Kieri Reference Architecture. These are the same documents Kieri used to pass their own DIBCAC assessment.

The KCD provides policies, procedures, and SSP templates for all CMMC Level 2 requirements. The KRA adds Microsoft 365 GCC-High technical implementation with exact configurations.

Mobile code is just one requirement. The same methodology applies across all 110 practices.

Download the KCD brochure at kieri.com/kcd to see complete documentation examples.

Download the KRA datasheet at kieri.com/kra for technical implementation details.

Schedule a consultation to discuss whether the KCD fits your compliance needs: kieri.com/schedule-consultation


Kieri Solutions is one of 54 authorized C3PAOs in the United States. The implementation methodology shown here passed DIBCAC assessment and is now available to defense contractors through the KCD and KRA packages.

Ready for Assessment? Visit kieri.com/assess to learn about CMMC Level 2 certification services.

Cybersecurity data analysis supporting CMMC Level 2 audit preparation for defense contractors

Evidence Review

Thorough examination of your compliance evidence. We verify documentation completeness.

Don't miss these

NIST SP 800-171 Rev 3, What Changed and What It Means for Your CMMC Timeline
Man at a desk in a dark office reading text on a computer monitor, NIST SP 800-171 Rev 3
NIST SP 800-171 Rev 3, What Changed and What It Means for Your CMMC Timeline
CMMC Backup Requirements and The Myths Worth Ignoring
Server backup drives in a dark data center supporting CMMC backup requirements for a defense contractor
CMMC Backup Requirements and The Myths Worth Ignoring
How to Prepare for a DIBCAC High Assessment
Analyst reviewing evidence on dark dual monitors while preparing for a DIBCAC High assessment
How to Prepare for a DIBCAC High Assessment
Out of Scope Assets - What the Final Rule Actually Changed
Abstract data cityscape tied to out of scope assets in a CMMC assessment by Kieri Solutions
Out of Scope Assets - What the Final Rule Actually Changed
CMMC Proposed Rule Analysis - What Defense Contractors Need to Know
Dark cybersecurity image with glowing data illustrating CMMC final rule compliance for defense contractors
CMMC Proposed Rule Analysis - What Defense Contractors Need to Know
CMMC Phase 2 Suspended and What Defense Contractors Need to Know
Analyst reviewing code while working toward CMMC and NIST 800-171 compliance
CMMC Phase 2 Suspended and What Defense Contractors Need to Know
CUI Assets - What Assessors Actually Evaluate
Abstract network of nodes tied to CUI assets and CMMC scope assessed by Kieri Solutions
CUI Assets - What Assessors Actually Evaluate
Do I Even Have CUI? Understanding What You Need to Protect
Abstract data network tied to finding CUI on a defense contractor network with Kieri
Do I Even Have CUI? Understanding What You Need to Protect
Why the DoD Wants Security Protection Data Protected Like CUI
Abstract data network tied to security protection data and CMMC scope assessed by Kieri
Why the DoD Wants Security Protection Data Protected Like CUI
Why Your CMMC Gap Analysis Might Be Worthless - 110 Practices vs 320 Assessment Objectives
Cybersecurity professional conducting CMMC gap analysis for a defense contracting organization
Why Your CMMC Gap Analysis Might Be Worthless - 110 Practices vs 320 Assessment Objectives
Building a CMMC Level 2 Compliant Network You Can Actually Manage
Network architecture visualization for a CMMC Level 2 reference architecture built on Microsoft 365 GCC High
Building a CMMC Level 2 Compliant Network You Can Actually Manage
Why Most CMMC Documentation Fails and How to Fix It
CMMC compliance documentation policies and procedures
Why Most CMMC Documentation Fails and How to Fix It
What Passed a DOD Assessment for System Baselining and Inventories
CMMC system inventory and baseline configuration monitoring dashboard
What Passed a DOD Assessment for System Baselining and Inventories
How to Implement Mobile Code Requirements for CMMC Level 2
CMMC mobile code security controls and technical implementation
How to Implement Mobile Code Requirements for CMMC Level 2
What Does "Monitor" Actually Mean in CMMC Requirements?
CMMC monitoring requirements - access control and password security verification
What Does "Monitor" Actually Mean in CMMC Requirements?
The Version 20 Problem and How to Avoid It
CMMC compliance documentation sequence - cybersecurity program management
The Version 20 Problem and How to Avoid It
Build Your Own CMMC Level 2 Compliant Environment with the Kieri Reference Architecture
CMMC Level 2 compliant environment security controls and access management
Build Your Own CMMC Level 2 Compliant Environment with the Kieri Reference Architecture
Inside the KCD - What Makes This Documentation Different
CMMC compliance documentation templates digital security
Inside the KCD - What Makes This Documentation Different
How the Kieri Compliance Documentation and Reference Architecture Work Together
Kieri Compliance Documentation and Reference Architecture working together for CMMC Level 2 compliance
How the Kieri Compliance Documentation and Reference Architecture Work Together
What's Actually Inside the Kieri Compliance Documentation? A Complete Walkthrough
CMMC compliance documentation and reference architecture security controls - fingerprint scanning and access management
What's Actually Inside the Kieri Compliance Documentation? A Complete Walkthrough
CMMC Assessments by Kieri Solutions
Global cybersecurity compliance support for defense contractors under DFARS
CMMC Assessments by Kieri Solutions
CMMC Education: User vs Network Session Termination
Secure IT infrastructure design supporting CMMC Level 2 compliance for defense contractors
CMMC Education: User vs Network Session Termination
CMMC Proposed Rule has been released! 
Cybersecurity threat - CMMC compliance
CMMC Proposed Rule has been released! 
Interested in the Kieri Compliance Documentation?
Secure data transmission within CMMC compliant network architecture
Interested in the Kieri Compliance Documentation?
How to fix Outlook missing Friday January 13 2023
Interconnected defense contractor networks requiring CMMC Level 2 cybersecurity certification
How to fix Outlook missing Friday January 13 2023
C3PAO Meeting - July 26, 2021 12-1 pm EDT
C3PAO Meeting - July 26, 2021 12-1 pm EDT
NIST SP 800-171 DoD Self Assessment Services
DFARS 252.204-7012 and NIST SP 800-171 requirements
NIST SP 800-171 DoD Self Assessment Services
vSphere Health detected new issues in your environment 6.7
vcenter 6.7 alarm displays vsphere health detected new issue
vSphere Health detected new issues in your environment 6.7
vCenter Health Warning: External Platform Services Controller
vCenter Health Warning: External Platform Services Controller
Synology storage latency and disconnects on VMware
Synology storage latency and disconnects on VMware
Windows Stuck in Recovery Mode Datto driver signing
Windows Stuck in Recovery Mode Datto driver signing
Office 365 MFA App Password Missing Fix
Office 365 MFA App Password Missing Fix
Microsoft Teams Conference Calls & Dial-In Numbers
Microsoft Teams Conference Calls & Dial-In Numbers
C: Drive Full Exchange
C: Drive Full Exchange
Exchange server very slow, services and network blank
Exchange server very slow, services and network blank
Exchange 2016 DAG - 3 servers 2 sites
Diagram showing mailbox servers with active and passive databases. Each database is only active on one server.
Exchange 2016 DAG - 3 servers 2 sites
Netapp 3rd-party CA certificates expiring DeutscheTelekomRootCA2
Kieri Solutions partnering with defense contractors to achieve CMMC Level 2 certification
Netapp 3rd-party CA certificates expiring DeutscheTelekomRootCA2
vCenter 6.7 Memory Exhaustion and vSphere health (Tiny)
warning vsphere health detected new issue memory exhaustion 6.7 vcenter
vCenter 6.7 Memory Exhaustion and vSphere health (Tiny)
Step by Step: Upgrade vCenter VCSA 6.0 (or 6.5) to 6.7
Step by Step: Upgrade vCenter VCSA 6.0 (or 6.5) to 6.7
How to prepare for a DoD CMMC audit and certification
cybersecurity CMMC DoD NIST 800-171 compliance nist 800-53
How to prepare for a DoD CMMC audit and certification
Fix Expired vCenter Root Password (6.5 & 6.7)
Fix Expired vCenter Root Password (6.5 & 6.7)
How to rename Windows Server 2016 Domain Controller
How to rename Windows Server 2016 Domain Controller
Runtime Error Adding Host in VMware vCenter & ESXi
add host a general runtime error occurred vcenter 6.5 6.7
Runtime Error Adding Host in VMware vCenter & ESXi
How to fix Netapp expired self-signed certificate by creating a new one
netapp certificate expired install site cant be reached
How to fix Netapp expired self-signed certificate by creating a new one
How to register a warranty or service agreement on HPE website
hpe hp register account SAR ID service agreement warranty how accept
How to register a warranty or service agreement on HPE website
How to install vCenter 6.7 (and 6.0 and 6.5) with no DNS, only IP address
vcenter ip address no dns
How to install vCenter 6.7 (and 6.0 and 6.5) with no DNS, only IP address
How to disable continuous scrolling on Kindle - turn on page flip
disable continuous scrolling option displays
How to disable continuous scrolling on Kindle - turn on page flip
17hats how to export or convert to Excel CSV TAB XLS workbook
17hats export convert iff to csv tab excel
17hats how to export or convert to Excel CSV TAB XLS workbook
How to fix "Cannot apply changes to this Internet Shortcut" Windows
cannot apply changes to this internet shortcut 2016 2019
How to fix "Cannot apply changes to this Internet Shortcut" Windows
Best Free Computer Incident Response Templates and Scenarios
best free incident response reporting form cybersecurity IT
Best Free Computer Incident Response Templates and Scenarios
Firmware & System Patching Services | DC & Maryland
poweredge server raid reconfigure add disks 1 5
Firmware & System Patching Services | DC & Maryland
Network hardening near Baltimore MD, Frederick, Rockville, Gaithersburg and DC
Best practice network segmentation and hardening prevents pivot attacks NIST
Network hardening near Baltimore MD, Frederick, Rockville, Gaithersburg and DC
VMware vSphere ESX and vCenter Upgrade 5.5 to 6.0 or 6.5 or 6.7 best practices
Best practices and how to install esxi vsphere vcenter vmware and troubleshooting problems during the migration
VMware vSphere ESX and vCenter Upgrade 5.5 to 6.0 or 6.5 or 6.7 best practices
Disaster Recovery & Business Continuity in DC & Maryland
disaster recovery drp bcp hipaa frederick columbia gaithersburg baltimore rockville
Disaster Recovery & Business Continuity in DC & Maryland
VMWare and Netapp consultant in DC, Baltimore, Columbia, Frederick, and Rockville MD
installation services netapp disk shelf baltimore columbia rockville
VMWare and Netapp consultant in DC, Baltimore, Columbia, Frederick, and Rockville MD
SBDC - Intro to GDPR training - Frederick MD
intro gdpr overall sbdc fitci frederick
SBDC - Intro to GDPR training - Frederick MD
GDPR and Human Resources
cybersecurity cyber security hardening compliance firewall design frederick
GDPR and Human Resources
No, your computer isn't slow.
why slow computer pc repair frederick damascus mt airy md
No, your computer isn't slow.
Why you should consider a credit freeze - EquiFax hack
credit freeze equifax hack how to breach innovis
Why you should consider a credit freeze - EquiFax hack
Virtual Servers, Storage, and SAN - Why your servers are slow
cybersecurity compliance design consulting engineering
Virtual Servers, Storage, and SAN - Why your servers are slow
How to un-freeze your laptop like a pro
pc or computer problem repair damascus lisbon mt airy laytonsville
How to un-freeze your laptop like a pro
Upgrade your IT Services for the New Year
managed services it department outsource company frederick columbia germantown gaithersburg
Upgrade your IT Services for the New Year
Dell PowerEdge R730 PERC RAID online reconfiguration
poweredge server raid reconfigure add disks 1 5
Dell PowerEdge R730 PERC RAID online reconfiguration
Dreamhost HTTP error Wordpress media upload and library
dreamhost http error picture disappear upload shared wordpress
Dreamhost HTTP error Wordpress media upload and library
FortiAnalyzer Configuration problems after initial deploy
FortiAnalyzer 5.4 Storage Quota Limits for ADOM root
FortiAnalyzer Configuration problems after initial deploy
FortiAnalyzer Report: User Web Browsing by Category
fortianalyzer custom report users by category who is browsing web goofing off
FortiAnalyzer Report: User Web Browsing by Category
GDPR Consulting - What you need to know
cybersecurity CMMC DoD NIST 800-171 compliance nist 800-53
GDPR Consulting - What you need to know
The #1 Computer Security Threat Just Evolved - RCE Worm
cybersecurity cyber security compliance firewall frederick md
The #1 Computer Security Threat Just Evolved - RCE Worm
Fix vSphere & vCenter Datastore Size Reverting
security design cybersecurity consulting services compliance
Fix vSphere & vCenter Datastore Size Reverting
HP DL360p g8 ESXi 5.5 to 6.5 upgrade conflicting_vibs_error
conflicting vibs error vsphere upgrade metadata consultant vmware
HP DL360p g8 ESXi 5.5 to 6.5 upgrade conflicting_vibs_error
Is your IT person holding the network hostage?
Server Upgrade Cybersecurity Consultant SAN Netapp Frederick
Is your IT person holding the network hostage?
4 Hiring Mistakes When Choosing an IT Company
mistakes when hire IT consultant MSP managed service provider computer support outsourcing
4 Hiring Mistakes When Choosing an IT Company
What you should know about Cloud Computing and Office 365
cloud IT department migration Office 365 Frederick Baltimore Columbia MD
What you should know about Cloud Computing and Office 365
Can You Make Our Nation Safe from Hackers?
Can You Make Our Nation Safe from Hackers?
The Ultimate Way to Protect Against Computer Theft
Kieri Solutions site icon
The Ultimate Way to Protect Against Computer Theft
Small / medium business security concerns
managed services it department outsource company frederick columbia germantown gaithersburg
Small / medium business security concerns
Approaches to security policy
cybersecurity cyber security hardening compliance firewall design frederick
Approaches to security policy

Article

NIST SP 800-171 Rev 3, What Changed and What It Means for Your CMMC Timeline
Man at a desk in a dark office reading text on a computer monitor, NIST SP 800-171 Rev 3

Article

CMMC Backup Requirements and The Myths Worth Ignoring
Server backup drives in a dark data center supporting CMMC backup requirements for a defense contractor

Article

How to Prepare for a DIBCAC High Assessment
Analyst reviewing evidence on dark dual monitors while preparing for a DIBCAC High assessment

No one wants to start from blank templates.

No one wants to start from
blank templates.

Stop starting from blank templates. Get documentation proven through actual CMMC Level 2 assessment.