Detection rules › Sigma

PowerShell AppLocker Policy Discovery Via Get-AppLockerPolicy

Status
experimental
Severity
low
Log source
category process_creation, product windows
Author
Tom3306
Source
github.com/SigmaHQ/sigma

Detects AppLocker policy enumeration attempts via PowerShell using the Get-AppLockerPolicy cmdlet and an policy scope of either Effective, LDAP, or Local.

Known false positives

  • PowerShell-based AppLocker auditing and policy troubleshooting by administrators.

MITRE ATT&CK coverage

Telemetry coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule body

title: PowerShell AppLocker Policy Discovery Via Get-AppLockerPolicy
id: f14b1e99-5e53-4598-98dc-6f20ad7b35e0
status: experimental
description: |
    Detects AppLocker policy enumeration attempts via PowerShell using the Get-AppLockerPolicy cmdlet and an policy scope of either Effective, LDAP, or Local.
references:
    - https://learn.microsoft.com/en-us/powershell/module/applocker/get-applockerpolicy
author: Tom3306
date: 2026-08-19
tags:
    - attack.discovery
    - attack.t1518.001
logsource:
    product: windows
    category: process_creation
detection:
    selection_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_cmdlet:
        CommandLine|contains: 'Get-AppLockerPolicy'
    selection_flag:
        CommandLine|contains|windash:
            - ' -Effective'
            - ' -Ldap '
            - ' -Local'
    condition: all of selection_*
falsepositives:
    - PowerShell-based AppLocker auditing and policy troubleshooting by administrators.
level: low

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\powershell.exe'
          - '\pwsh.exe'
    - OriginalFileName:
          - 'PowerShell.EXE'
          - 'pwsh.dll'

Stage 2: selection_cmdlet

selection_cmdlet:
    CommandLine|contains: 'Get-AppLockerPolicy'

Stage 3: selection_flag

selection_flag:
    CommandLine|contains|windash:
        - ' -Effective'
        - ' -Ldap '
        - ' -Local'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -Effective transforms: windash
  • -Ldap transforms: windash
  • -Local transforms: windash
  • Get-AppLockerPolicy
field:"CommandLine" kind:match
Imageends_with
  • \powershell.exe corpus 181 (sigma 180, kusto 1)
  • \pwsh.exe corpus 167 (sigma 166, kusto 1)
field:"Image" kind:ends_with
OriginalFileNameeq
  • PowerShell.EXE corpus 140 (sigma 86, splunk 30, elastic 24)
  • pwsh.dll corpus 114 (sigma 81, splunk 30, elastic 3)
field:"OriginalFileName" kind:eq