🛡️ Essential 8 Guide

Implementation guidance for Australian Essential Eight controls in Microsoft environments - ISM controls with PSPF mappings

About
HOME ← ISM-1511
ISM-1544 →

Microsoft Office is configured to prevent activation of Object Linking and Embedding packages.

Property Value
ISM Control ISM-1542
Revision 0
Updated Jan-19
Guideline Not provided
Section User application hardening
Topic Hardening user application configurations
Essential Eight ML2, ML3
PSPF Levels NC, OS, P, S, TS

Summary

Microsoft Office is configured to block activation of OLE packages, reducing the risk from OLE/COM components in Office documents. The implementation uses a PowerShell script deployed via Intune Scripts to enforce the setting on supported Office versions1.

The OfficeMacroHardening-PreventActivationofOLE.ps1 script writes the following registry values to block OLE package activation in Office 2016 and later:

Registry path Value name Type Value Effect
HKCU\Software\Microsoft\Office\16.0\Excel\Security PackagerPrompt DWORD 0 Suppress OLE activation prompt in Excel
HKCU\Software\Microsoft\Office\16.0\PowerPoint\Security PackagerPrompt DWORD 0 Suppress OLE activation prompt in PowerPoint
HKCU\Software\Microsoft\Office\16.0\Word\Security PackagerPrompt DWORD 0 Suppress OLE activation prompt in Word
HKLM\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\16.0\Common\COM Compatibility\<CLSID> ActivationFilterOverride DWORD 0 Block activation of risky COM class CLSIDs

[!NOTE] These are HKCU (per-user) keys written when the script runs with logged-on credentials. An alternative approach is to deploy the same keys via Intune Settings Catalog (Custom OMA-URI) or Group Policy Preferences, or to enforce the block at the kernel-mode code-integrity layer using a WDAC deny rule for the OLE COM DLL (e.g., mshtml.dll). The WDAC approach is system-wide and harder to bypass, but requires policy authoring and signing.[^3]

Justification

Design Decision

[!NOTE] The OfficeMacroHardeningPreventActivationOfOle.ps1 script will be deployed via Intune Scripts to disable OLE package activation in Office. It will be targeted to Office 2016 and later and OLE activation will be blocked in Excel, PowerPoint, and Word.

Prerequisites

Permissions/Roles

Dependencies

Implementation Steps

Intune Script Deployment to Disable OLE Package Activation in Office (OfficeMacroHardeningPreventActivationOfOle.ps1)

  1. Add the OfficeMacroHardening-PreventActivationofOLE.ps1PowerShell script to Intune as a PowerShell script with the following options:
Setting Value
Run this script using the logged on credentials Yes
Enforce script signature check No
Run script in 64-bit PowerShell Host No
  1. Assign the script to a deployment group. 1

  2. Note: The script is specifically for Office 2016 and later. A script to prevent the activation of OLE for Office 2013 is provided here: OfficeMacroHardening-PreventActivationofOLE-Office2013.ps1. 1

  3. If script signing is required, sign the script and change the Enforce script signature check to: Yes. See [Methods of signing scripts] documentation. 1

Intune Step-by-step Wizard Deployment to Import and Assign Script (OfficeMacroHardening-PreventActivationofOLE.ps1)

  1. Navigate to Devices > Scripts and create a new PowerShell script. 2

  2. Import the PowerShell script to prevent activation of Object Linking and Embedding packages. 2

  3. Run this script using the logged on credentials: Yes. 2

  4. Enforce script signature check: No. 2

  5. Run script in 64-bit PowerShell Host: No. 2

  6. Assign the PowerShell script to: All Office Users (created in Stage 1). 2

[!NOTE] This PowerShell script is specifically for Office 2016 and later. A script to prevent the activation of OLE for Office 2013 is provided here: OfficeMacroHardening-PreventActivationofOLE-Office2013.ps1. 2

HOME ← ISM-1511
ISM-1544 →