ACSC AppLocker Recommendations
The Australian Cyber Security Centre (ACSC) recognises AppLocker as a valid application control mechanism under the Essential Eight – Application Control strategy.
If Microsoft AppLocker (predecessor to WDAC) is used, ACSC recommends a basic path-based implementation. This ensures only trusted applications installed in standard directories are allowed to execute, while blocking common persistence and execution abuse paths.
Enable AppIDSvc Service
🔹 Why
- AppLocker relies on AppIDSvc to evaluate rules against executables, scripts, MSIs, and packaged apps.
 
If AppIDSvc is Stopped or Disabled:
- All applications run normally (as if no AppLocker rules exist).
 - No audit or enforcement events are generated.
 
GPO Location: Computer Configuration\Policies\Windows Settings\Security Settings\System Services
Service: Application Identity = Automatic

Create & Apply the Rules
GPO Location: Computer Configuration\Policies\Windows Settings\Security Settings\Application Control Policies\AppLocker
AppLocker Executable Rules – ACSC Baseline
Allow Rules
- %ProgramFiles%\* → permits any executable installed in Program Files. This covers properly installed business and productivity applications.
 - %WinDir%\* → permits any executable in the Windows directory. This ensures the operating system itself can run normally.
 
Exceptions (Block These Paths)
- %System32%\Microsoft\Crypto\RSA\MachineKeys\* → blocks execution from the MachineKeys folder, which attackers sometimes abuse for persistence or hiding payloads.
 - %System32%\spool\drivers\color\* → blocks execution from the printer color profiles directory, another spot attackers have used to stash executables.
 - %System32%\Tasks\* & %WinDir%\Tasks\* → blocks executables from the Windows Tasks folders, preventing scheduled task backdoors.
 - %WinDir%\Temp\* → blocks execution from the Temp directory, a common drop location for malware.
 
✅ Summary: These executable rules allow Windows and installed programs to function normally while closing down high-risk directories often exploited for malware persistence and execution.
| Rule Type | Path | Action | Description | 
|---|---|---|---|
| Allow | %ProgramFiles%\* | Allow Everyone | Permits executables installed in Program Files. | 
| Allow (with Exceptions)  | 
%WinDir%\* | Allow Everyone | Permits executables in the Windows directory, except in the following high-risk locations. | 
| Exception: %System32%\Microsoft\Crypto\RSA\MachineKeys\* | Block | ||
| Exception: %System32%\spool\drivers\color\* | Block | ||
| Exception: %System32%\Tasks\* | Block | ||
| Exception: %WinDir%\Tasks\* | Block | ||
| Exception: %WinDir%\Temp\* | Block | 

🔹 AppLocker Windows Installer Rules – ACSC Baseline
These rules control which Windows Installer (.msi, .msp) packages are allowed to run.
Allow Rules
- Microsoft Corporation (Publisher rule) → allows any MSI signed by Microsoft Corporation.
 - Microsoft Windows (Publisher rule) → allows any MSI signed specifically by Microsoft Windows.
 
👉 Together, these rules ensure that trusted Microsoft installers and updates can run, while blocking unsigned or third-party MSI files that could be used to deliver malware.
| Rule Type | Publisher | Action | Description | 
|---|---|---|---|
| Allow | CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | Allow Everyone | Permits Windows Installer packages signed by Microsoft Corporation. | 
| Allow | CN=Microsoft Windows, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | Allow Everyone | Permits Windows Installer packages signed specifically by Microsoft Windows. | 

🔹 AppLocker Script Rules – ACSC Baseline
These rules control script execution (.ps1, .vbs, .cmd, .bat, .js, etc.).
Allow Rules
- %ProgramFiles%\* → permits scripts installed in Program Files.
 - %WinDir%\* → permits scripts in the Windows directory.
 
Exceptions (Block These Paths under %WinDir%\*)
These directories are writable or commonly abused by attackers for persistence and execution:
- %System32%\Com\dmp\* → COM+ crash dumps.
 - %System32%\FxsTmp\* → Fax service temporary files.
 - %System32%\Microsoft\Crypto\RSA\MachineKeys\* → key storage folder.
 - %System32%\spool\drivers\color\* → printer driver profiles.
 - %System32%\spool\PRINTERS\* → printer spool directory.
 - %System32%\spool\SERVERS\* → print server spool directory.
 - %System32%\Tasks\* & %WinDir%\Tasks\* → scheduled task persistence.
 - %WinDir%\Registration\CRMLog\* → COM+ registration logs.
 - %WinDir%\Temp\* → common malware staging folder.
 - %WinDir%\tracing\* → tracing logs.
 
| Rule Type | Path | Action | Description | 
|---|---|---|---|
| Allow | %ProgramFiles%\* | Allow Everyone | Permits scripts installed in Program Files. | 
| Allow (with Exceptions)  | 
%WinDir%\* | Allow Everyone | Permits scripts in the Windows directory, except in these high-risk subfolders. | 
| Exception: %System32%\Com\dmp\* | Block | ||
| Exception: %System32%\FxsTmp\* | Block | ||
| Exception: %System32%\Microsoft\Crypto\RSA\MachineKeys\* | Block | ||
| Exception: %System32%\spool\drivers\color\* | Block | ||
| Exception: %System32%\spool\PRINTERS\* | Block | ||
| Exception: %System32%\spool\SERVERS\* | Block | ||
| Exception: %System32%\Tasks\* | Block | ||
| Exception: %WinDir%\Registration\CRMLog\* | Block | ||
| Exception: %WinDir%\Tasks\* | Block | ||
| Exception: %WinDir%\Temp\* | Block | ||
| Exception: %WinDir%\tracing\* | Block | 

🔹 AppLocker DLL Rules – ACSC Baseline
DLL (Dynamic Link Library) rules allow you to control which .dll and .ocx files can be loaded by executables.
By default, DLL rules are not enabled — you must turn on the DLL rule collection in AppLocker Properties (as shown in your screenshot).
Allow Rules
- %ProgramFiles%\* → permits DLLs located in Program Files.
 - %WinDir%\* → permits DLLs in the Windows directory.
 
Exceptions (Block These Paths under %WinDir%\*)
These writable or risky folders are excluded to prevent attackers from planting malicious DLLs:
- %System32%\Microsoft\Crypto\RSA\MachineKeys\* → key storage directory.
 - %System32%\spool\drivers\color\* → printer driver color profiles.
 - %System32%\Tasks\* & %WinDir%\Tasks\* → scheduled task persistence paths.
 - %WinDir%\Temp\* → common malware staging folder.
 
Why this matters:
Enabling DLL rules ensures that only trusted DLLs from standard OS and application directories are loaded, while blocking execution from directories commonly abused for DLL hijacking or persistence.
Enabling DLL Rules
To enable DLL rule enforcement, right-click “AppLocker”, select “Properties“, go to the “Advanced” tab, and check “Enable the DLL rule collection“.

| Rule Type | Path | Action | Description | 
|---|---|---|---|
| Allow | %ProgramFiles%\* | Allow Everyone | Permits DLLs located in Program Files. | 
| Allow (with Exceptions)  | 
%WinDir%\* | Allow Everyone | Permits DLLs in the Windows directory, except in the following high-risk subfolders. | 
| Exception: %System32%\Microsoft\Crypto\RSA\MachineKeys\* | Block | ||
| Exception: %System32%\spool\drivers\color\* | Block | ||
| Exception: %System32%\Tasks\* | Block | ||
| Exception: %WinDir%\Tasks\* | Block | ||
| Exception: %WinDir%\Temp\* | Block | 

🔹 AppLocker Packaged App Rules – ACSC Baseline
Packaged app rules apply to Universal Windows Platform (UWP) apps and installers (e.g., apps from the Microsoft Store).
Allow Rules
- Publisher: Microsoft Corporation
 - CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
 
Allows packaged apps signed by Microsoft Corporation.
Publisher: Microsoft Windows
- CN=Microsoft Windows, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
 - Allows packaged apps signed specifically by Microsoft Windows.
 
👉 Together, these rules ensure that only Microsoft-signed Store apps and core Windows packaged apps are permitted.
All other packaged apps are blocked unless explicitly whitelisted.
| Rule Type | Publisher | Action | Description | 
|---|---|---|---|
| Allow | CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | Allow Everyone | Permits Microsoft Corporation-signed packaged apps and installers. | 
| Allow | CN=Microsoft Windows, O=Microsoft Corporation, L=Redmond, S=Washington, C=US | Allow Everyone | Permits Microsoft Windows-signed packaged apps and installers. | 

🔹 AppLocker Enforcement Modes
Once you’ve created AppLocker rules, you must decide how they will operate:
1. Audit Mode
What it does:
- Rules are evaluated but not enforced.
 - Applications, scripts, DLLs, or installers that would normally be blocked are still allowed to run.
 - Every “would-be block” is logged in Event Viewer → Applications and Services Logs → Microsoft → Windows → AppLocker.
 
When to use:
- Testing phase → confirm rules won’t break business applications.
 - Helps build an allowlist by monitoring what software is actually used.
 
Event IDs:
- 8003–8007 → log entries for each rule collection (executables, installers, scripts, DLLs, packaged apps).
 
2. Enforced Mode
What it does:
- Rules are actively enforced.
 - Anything not allowed by the rules will be blocked from executing.
 - Block events are also logged in Event Viewer.
 
When to use:
- After rules have been tested in Audit Mode.
 - For production enforcement of application control.
 
Event IDs:
- 8004, 8006 → enforcement block events.
 
Right click on “Applocker” then select “Properties” then under configure choose your enforcement in my cast I am going to Enforce All rules.

🔹 Final Summary – AppLocker and ACSC Recommendations
AppLocker is a powerful Windows feature that enforces application control, one of the ACSC’s Essential Eight strategies. By controlling which executables, scripts, installers, DLLs, and packaged apps can run, organisations can prevent unauthorised or malicious software from executing.
- Application Identity service (AppIDSvc) must be enabled for rules to work.
 - Default rules provide a safe baseline but should be strengthened with ACSC’s recommended path and publisher rules.
 - Executable, Script, Installer, DLL, and Packaged App rules together create a comprehensive control set.
 - Exceptions under %WinDir% target high-risk directories commonly abused for persistence and malware execution.
 - Rules can be deployed in Audit Mode (log only) to safely test policies before switching to Enforced Mode (actively block).
 
✅ Best Practice:
- Start with Audit Mode to identify legitimate applications.
 - Refine rules based on logs and operational needs.
 - Transition to Enforced Mode for strong protection.
 - For higher security environments, enable DLL rules after careful testing.
 
By implementing AppLocker with ACSC’s recommended configuration, even on Windows Pro editions, you establish a robust baseline of application control that helps mitigate ransomware, malware, and unauthorised software risks while progressing toward Essential Eight maturity.
Source:
Australian Cyber Security Centre (ACSC),
Implementing Application Control, available at
cyber.gov.au