Detection rules › Sigma

Sigma rules: 39

RuleSeverity
Added Owner To Applicationmedium
ADExplorer Writing Complete AD Snapshot Into .dat Filemedium
Apache Spark Shell Command Injection - Weblogshigh
Arbitrary File Download Via Squirrel.EXEmedium
Base64 Encoded PowerShell Command Detectedhigh
Certificate Request Export to Exchange Webservercritical
CodeIntegrity - Blocked Driver Load With Revoked Certificatehigh
CodePage Modification Via MODE.COM To Russian Languagemedium
CVE-2024-1708 - ScreenConnect Path Traversal Exploitationmedium
Denied RDP login with valid credentialsmedium
Dfsvc.EXE Initiated Network Connection Over Uncommon Porthigh
Diagnostic Library Sdiageng.DLL Loaded By Msdt.EXEhigh
DNS Query To AzureWebsites.NET By Non-Browser Processmedium
Forest Blizzard APT - JavaScript Constrained File Creationmedium
GCP Access Policy Deletedmedium
GoToAssist Temporary Installation Artefactmedium
Host set with unconstrained delegationhigh
Injected Browser Process Spawning Rundll32 - GuLoader Activityhigh
Kaspersky Endpoint Security Stopped Via CommandLine - Linuxhigh
Kerberos key list attack for credential dumpinghigh
macOS Sudo Privilege Escalation Attemptsmedium
Malicious IP Address Sign-In Suspicioushigh
Mavinject Inject DLL Into Running Processhigh
Nohup Executionmedium
Pandemic Registry Keycritical
Potential Defense Evasion Activity Via Emoji Usage In CommandLine - 2high
Potential POWERTRASH Script Executionhigh
Potential Remote Desktop Tunnelingmedium
Potentially Suspicious Powershell Script Execution From Temp Foldermedium
Rundll32 Execution With Uncommon DLL Extensionmedium
Service Installation in Suspicious Foldermedium
SQL Server - Member got new privileges added on a databasemedium
Start Windows Service Via Net.EXElow
Suspicious AgentExecutor PowerShell Executionhigh
Suspicious Encoded And Obfuscated Reflection Assembly Load Function Callhigh
Suspicious LNK Double Extension File Createdmedium
Suspicious Svchost Process Accesshigh
T1047 Wmiprvse Wbemcomn DLL Hijackhigh
Tor Client/Browser Executionhigh
UAC Bypass Using MSConfig Token Modification - Filehigh
UNC4841 - Potential SEASPY Executioncritical
Webserver IIS configuration edited (SYSMON)high
Windows AMSI Related Registry Tampering Via CommandLinehigh
WinRAR Creating Files in Startup Locationshigh

Added Owner To Application

#
Status
test
Severity
medium
Author
Mark Morowczynski '@markmorow', Bailey Bercik '@baileybercik'
Source
github.com/SigmaHQ/sigma

Detects when a new owner is added to an application. This gives that account privileges to make modifications and configuration changes to the application.

Known False Positives

  • When a new application owner is added by an administrator

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

PlatformRecord / event type
AzureAdd owner to application

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Added Owner To Application
id: 74298991-9fc4-460e-a92e-511aa60baec1
status: test
description: Detects when a new owner is added to an application. This gives that account privileges to make modifications and configuration changes to the application.
references:
    - https://learn.microsoft.com/en-us/entra/architecture/security-operations-applications#new-owner
author: Mark Morowczynski '@markmorow', Bailey Bercik '@baileybercik'
date: 2022-06-02
tags:
    - attack.t1552
    - attack.credential-access
logsource:
    product: azure
    service: auditlogs
detection:
    selection:
        properties.message: Add owner to application
    condition: selection
falsepositives:
    - When a new application owner is added by an administrator
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    properties.message: Add owner to application

Indicators

These rows show field, operator, and value matches.

ADExplorer Writing Complete AD Snapshot Into .dat File

#
Status
experimental
Severity
medium
Author
Arnim Rupp (Nextron Systems), Thomas Patzke
Source
github.com/SigmaHQ/sigma

Detects the dual use tool ADExplorer writing a complete AD snapshot into a .dat file. This can be used by attackers to extract data for Bloodhound, usernames for password spraying or use the meta data for social engineering. The snapshot doesn't contain password hashes but there have been cases, where administrators put passwords in the comment field.

Known False Positives

  • Legitimate use of ADExplorer by administrators creating .dat snapshots

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: ADExplorer Writing Complete AD Snapshot Into .dat File
id: 0a1255c5-d732-4b62-ac02-b5152d34fb83
related:
    - id: 9212f354-7775-4e28-9c9f-8f0a4544e664
      type: similar
status: experimental
description: Detects the dual use tool ADExplorer writing a complete AD snapshot into a .dat file. This can be used by attackers to extract data for Bloodhound, usernames for password spraying or use the meta data for social engineering. The snapshot doesn't contain password hashes but there have been cases, where administrators put passwords in the comment field.
references:
    - https://learn.microsoft.com/de-de/sysinternals/downloads/adexplorer
    - https://github.com/c3c/ADExplorerSnapshot.py/tree/f700904defac330802bbfedd1d8ffd9248f4ee24
    - https://www.packetlabs.net/posts/scattered-spider-is-a-young-ransomware-gang-exploiting-large-corporations/
    - https://www.nccgroup.com/us/research-blog/lapsus-recent-techniques-tactics-and-procedures/
    - https://trustedsec.com/blog/adexplorer-on-engagements
author: Arnim Rupp (Nextron Systems), Thomas Patzke
date: 2025-07-09
tags:
    - attack.discovery
    - attack.t1087.002
    - attack.t1069.002
    - attack.t1482
logsource:
    category: file_event
    product: windows
detection:
    selection:
        Image|endswith:
            - '\ADExp.exe'
            - '\ADExplorer.exe'
            - '\ADExplorer64.exe'
            - '\ADExplorer64a.exe'
        TargetFilename|endswith: '.dat'
    condition: selection
falsepositives:
    - Legitimate use of ADExplorer by administrators creating .dat snapshots
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\ADExp.exe'
        - '\ADExplorer.exe'
        - '\ADExplorer64.exe'
        - '\ADExplorer64a.exe'
    TargetFilename|endswith: '.dat'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \ADExp.exe corpus 3 (sigma 3)
  • \ADExplorer.exe corpus 4 (sigma 4)
  • \ADExplorer64.exe corpus 4 (sigma 4)
  • \ADExplorer64a.exe corpus 4 (sigma 4)
field:"Image" kind:ends_with
TargetFilenameends_with
  • .dat corpus 4 (sigma 3, splunk 1)
field:"TargetFilename" kind:ends_with value:".dat"

Apache Spark Shell Command Injection - Weblogs

#
Status
test
Severity
high
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects attempts to exploit an apache spark server via CVE-2014-6287 from a weblogs perspective

Known False Positives

  • Web vulnerability scanners

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Apache Spark Shell Command Injection - Weblogs
id: 1a9a04fd-02d1-465c-abad-d733fd409f9c
status: test
description: Detects attempts to exploit an apache spark server via CVE-2014-6287 from a weblogs perspective
references:
    - https://github.com/W01fh4cker/cve-2022-33891/blob/fd973b56e78bca8822caa3a2e3cf1b5aff5d0950/cve_2022_33891_poc.py
    - https://sumsec.me/2022/CVE-2022-33891%20Apache%20Spark%20shell%20command%20injection.html
    - https://github.com/apache/spark/pull/36315/files
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-07-19
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2022-33891
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection:
        cs-uri-query|contains: '?doAs=`'
    condition: selection
falsepositives:
    - Web vulnerability scanners
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-uri-query|contains: '?doAs=`'

Indicators

These rows show field, operator, and value matches.

Arbitrary File Download Via Squirrel.EXE

#
Status
test
Severity
medium
Author
Nasreddine Bencherchali (Nextron Systems), Karneades / Markus Neis, Jonhnathan Ribeiro, oscd.community
Source
github.com/SigmaHQ/sigma

Detects the usage of the "Squirrel.exe" to download arbitrary files. This binary is part of multiple Electron based software installations (Slack, Teams, Discord, etc.)

Known False Positives

  • Expected FP with some Electron based applications such as (1Clipboard, Beaker Browser, Caret, Discord, GitHub Desktop, etc.)

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Arbitrary File Download Via Squirrel.EXE
id: 1e75c1cc-c5d4-42aa-ac3d-91b0b68b3b4c
related:
    - id: 45239e6a-b035-4aaf-b339-8ad379fcb67e
      type: similar
    - id: fa4b21c9-0057-4493-b289-2556416ae4d7
      type: obsolete
status: test
description: |
    Detects the usage of the "Squirrel.exe" to download arbitrary files. This binary is part of multiple Electron based software installations (Slack, Teams, Discord, etc.)
references:
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Squirrel/
    - http://www.hexacorn.com/blog/2019/03/30/sqirrel-packages-manager-as-a-lolbin-a-k-a-many-electron-apps-are-lolbins-by-default/
    - http://www.hexacorn.com/blog/2018/08/16/squirrel-as-a-lolbin/
author: Nasreddine Bencherchali (Nextron Systems), Karneades / Markus Neis, Jonhnathan Ribeiro, oscd.community
date: 2022-06-09
modified: 2023-11-09
tags:
    - attack.execution
    - attack.stealth
    - attack.t1218
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        Image|endswith:
            - '\squirrel.exe'
            - '\update.exe'
    selection_download_cli:
        CommandLine|contains:
            - ' --download '
            - ' --update '
            - ' --updateRollback='
    selection_download_http_keyword:
        CommandLine|contains: 'http'
    condition: all of selection_*
falsepositives:
    - Expected FP with some Electron based applications such as (1Clipboard, Beaker Browser, Caret, Discord, GitHub Desktop, etc.)
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    Image|endswith:
        - '\squirrel.exe'
        - '\update.exe'

Stage 2: selection_download_cli

selection_download_cli:
    CommandLine|contains:
        - ' --download '
        - ' --update '
        - ' --updateRollback='

Stage 3: selection_download_http_keyword

selection_download_http_keyword:
    CommandLine|contains: 'http'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --download
  • --update
  • --updateRollback=
  • http corpus 45 (sigma 34, elastic 10, splunk 1)
field:"CommandLine" kind:match
Imageends_with
  • \squirrel.exe corpus 2 (sigma 2)
  • \update.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with

Base64 Encoded PowerShell Command Detected

#
Status
test
Severity
high
Author
Florian Roth (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects usage of the "FromBase64String" function in the commandline which is used to decode a base64 encoded string

Known False Positives

  • Administrative script libraries

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Base64 Encoded PowerShell Command Detected
id: e32d4572-9826-4738-b651-95fa63747e8a
status: test
description: Detects usage of the "FromBase64String" function in the commandline which is used to decode a base64 encoded string
references:
    - https://gist.github.com/Neo23x0/6af876ee72b51676c82a2db8d2cd3639
author: Florian Roth (Nextron Systems)
date: 2020-01-29
modified: 2023-01-26
tags:
    - attack.stealth
    - attack.t1027
    - attack.execution
    - attack.t1140
    - attack.t1059.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains: '::FromBase64String('
    condition: selection
falsepositives:
    - Administrative script libraries
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_powershell_frombase64string/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains: '::FromBase64String('

Indicators

These rows show field, operator, and value matches.

Certificate Request Export to Exchange Webserver

#
Status
test
Severity
critical
Author
Max Altgelt (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects a write of an Exchange CSR to an untypical directory or with aspx name suffix which can be used to place a webshell

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Rule Body

title: Certificate Request Export to Exchange Webserver
id: b7bc7038-638b-4ffd-880c-292c692209ef
status: test
description: Detects a write of an Exchange CSR to an untypical directory or with aspx name suffix which can be used to place a webshell
references:
    - https://twitter.com/GossiTheDog/status/1429175908905127938
author: Max Altgelt (Nextron Systems)
date: 2021-08-23
modified: 2023-01-23
tags:
    - attack.persistence
    - attack.t1505.003
logsource:
    service: msexchange-management
    product: windows
detection:
    keywords_export_command:
        '|all':
            - 'New-ExchangeCertificate'
            - ' -GenerateRequest'
            - ' -BinaryEncoded'
            - ' -RequestFile'
    keywords_export_params:
        - '\\\\localhost\\C$'
        - '\\\\127.0.0.1\\C$'
        - 'C:\\inetpub'
        - '.aspx'
    condition: keywords_export_command and keywords_export_params
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

keywords_export_command and keywords_export_params

Stage 1: keywords_export_command

keywords_export_command:
    '|all':
        - 'New-ExchangeCertificate'
        - ' -GenerateRequest'
        - ' -BinaryEncoded'
        - ' -RequestFile'

Stage 2: keywords_export_params

keywords_export_params:
    - '\\\\localhost\\C$'
    - '\\\\127.0.0.1\\C$'
    - 'C:\\inetpub'
    - '.aspx'

CodeIntegrity - Blocked Driver Load With Revoked Certificate

#
Status
test
Severity
high
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects blocked load attempts of revoked drivers

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: CodeIntegrity - Blocked Driver Load With Revoked Certificate
id: 9b72b82d-f1c5-4632-b589-187159bc6ec1
status: test
description: Detects blocked load attempts of revoked drivers
references:
    - https://learn.microsoft.com/en-us/windows/security/application-security/application-control/windows-defender-application-control/operations/event-id-explanations
    - https://learn.microsoft.com/en-us/windows/security/application-security/application-control/windows-defender-application-control/operations/event-tag-explanations
    - Internal Research
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-06-06
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.t1543
logsource:
    product: windows
    service: codeintegrity-operational
detection:
    selection:
        EventID: 3023 # The driver %2 is blocked from loading as the driver has been revoked by Microsoft.
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 3023

CodePage Modification Via MODE.COM To Russian Language

#
Status
test
Severity
medium
Author
Joseliyo Sanchez, @Joseliyo_Jstnk
Source
github.com/SigmaHQ/sigma

Detects a CodePage modification using the "mode.com" utility to Russian language. This behavior has been used by threat actors behind Dharma ransomware.

Known False Positives

  • Russian speaking people changing the CodePage

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: CodePage Modification Via MODE.COM To Russian Language
id: 12fbff88-16b5-4b42-9754-cd001a789fb3
related:
    - id: d48c5ffa-3b02-4c0f-9a9e-3c275650dd0e
      type: derived
status: test
description: |
    Detects a CodePage modification using the "mode.com" utility to Russian language.
    This behavior has been used by threat actors behind Dharma ransomware.
references:
    - https://learn.microsoft.com/en-us/windows/win32/intl/code-page-identifiers
    - https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/mode
    - https://strontic.github.io/xcyclopedia/library/mode.com-59D1ED51ACB8C3D50F1306FD75F20E99.html
    - https://www.virustotal.com/gui/file/5e75ef02517afd6e8ba6462b19217dc4a5a574abb33d10eb0f2bab49d8d48c22/behavior
author: Joseliyo Sanchez, @Joseliyo_Jstnk
date: 2024-01-17
tags:
    - attack.stealth
    - attack.t1036
logsource:
    category: process_creation
    product: windows
detection:
    # VT Query: behavior:"mode con cp select=1251"
    # VT Query: behavior:"mode con cp select=866"
    selection_img:
        - Image|endswith: '\mode.com'
        - OriginalFileName: 'MODE.COM'
    selection_cli:
        CommandLine|contains|all:
            - ' con '
            - ' cp '
            - ' select='
        CommandLine|endswith:
            - '=1251' # ANSI Cyrillic; Cyrillic (Windows) - Observed ITW by Dharma ransomware
            - '=866' # OEM Russian; Cyrillic (DOS) - Observed ITW by other malware
    condition: all of selection_*
falsepositives:
    - Russian speaking people changing the CodePage
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\mode.com'
    - OriginalFileName: 'MODE.COM'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - ' con '
        - ' cp '
        - ' select='
    CommandLine|endswith:
        - '=1251'
        - '=866'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • =1251
  • =866
field:"CommandLine" kind:ends_with
CommandLinematch
  • con corpus 2 (sigma 2)
  • cp corpus 7 (sigma 6, elastic 1)
  • select= corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \mode.com corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\mode.com"
OriginalFileNameeq
  • MODE.COM corpus 2 (sigma 2)
field:"OriginalFileName" kind:eq value:"MODE.COM"

CVE-2024-1708 - ScreenConnect Path Traversal Exploitation

#
Status
test
Severity
medium
Author
Matt Anderson, Andrew Schwartz, Caleb Stewart, Huntress
Source
github.com/SigmaHQ/sigma

This detects file modifications to ASPX and ASHX files within the root of the App_Extensions directory, which is allowed by a ZipSlip vulnerability in versions prior to 23.9.8. This occurs during exploitation of CVE-2024-1708.

Known False Positives

  • This will occur legitimately as well and will result in some benign activity.

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: CVE-2024-1708 - ScreenConnect Path Traversal Exploitation
id: 44d7af7e-88e6-4490-be11-55f7ff4d9fc1
related:
    - id: 4c198a60-7d05-4daf-8bf7-4136fb6f5c62
      type: similar
status: test
description: |
    This detects file modifications to ASPX and ASHX files within the root of the App_Extensions directory, which is allowed by a ZipSlip vulnerability in versions prior to 23.9.8. This occurs during exploitation of CVE-2024-1708.
references:
    - https://www.connectwise.com/company/trust/security-bulletins/connectwise-screenconnect-23.9.8
    - https://www.cve.org/CVERecord?id=CVE-2024-1709
    - https://www.huntress.com/blog/a-catastrophe-for-control-understanding-the-screenconnect-authentication-bypass
author: Matt Anderson, Andrew Schwartz, Caleb Stewart, Huntress
date: 2024-02-21
tags:
    - attack.persistence
    - cve.2024-1708
    - detection.emerging-threats
logsource:
    product: windows
    category: file_event
detection:
    selection:
        Image|endswith: '\ScreenConnect.Service.exe'
        TargetFilename|endswith:
            - 'ScreenConnect\\App_Extensions\\*.ashx'
            - 'ScreenConnect\\App_Extensions\\*.aspx'
    filter_main_legit_extension:
        TargetFilename|contains: 'ScreenConnect\App_Extensions\\*\\'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - This will occur legitimately as well and will result in some benign activity.
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    Image|endswith: '\ScreenConnect.Service.exe'
    TargetFilename|endswith:
        - 'ScreenConnect\\App_Extensions\\*.ashx'
        - 'ScreenConnect\\App_Extensions\\*.aspx'

Stage 2: not filter_main_legit_extension

filter_main_legit_extension:
    TargetFilename|contains: 'ScreenConnect\App_Extensions\\*\\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \ScreenConnect.Service.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\ScreenConnect.Service.exe"
TargetFilenameends_with
  • ScreenConnect\\App_Extensions\\*.ashx
  • ScreenConnect\\App_Extensions\\*.aspx
field:"TargetFilename" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
TargetFilenamematchScreenConnect\App_Extensions\\*\\excludes:TargetFilename field:"TargetFilename" value:"ScreenConnect\App_Extensions\\*\\"

Denied RDP login with valid credentials

#
Status
experimental
Severity
medium
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker tries to move laterally using RDP and access attempt is blocked due to restricted logon policies.

Known False Positives

  • Miss configured adminitrative rights or VDI software (CITRIX, AppV, ThinApp, ...)

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Denied RDP login with valid credentials
description: Detects scenarios where an attacker tries to move laterally using RDP and access attempt is blocked due to restricted logon policies.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0008-Lateral%20Movement/T1021.001-Remote%20Desktop%20Protocol
- https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/event.aspx?eventid=4825
tags:
- attack.lateral_movement
- attack.t1021.001 # Remote desktop
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4825
  condition: selection
falsepositives:
- Miss configured adminitrative rights or VDI software (CITRIX, AppV, ThinApp, ...)
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 4825

Dfsvc.EXE Initiated Network Connection Over Uncommon Port

#
Status
test
Severity
high
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects an initiated network connection over uncommon ports from "dfsvc.exe". A utility used to handled ClickOnce applications.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 3: Network connection

Rule Body

title: Dfsvc.EXE Initiated Network Connection Over Uncommon Port
id: 4c5fba4a-9ef6-4f16-823d-606246054741
status: test
description: Detects an initiated network connection over uncommon ports from "dfsvc.exe". A utility used to handled ClickOnce applications.
references:
    - https://posts.specterops.io/less-smartscreen-more-caffeine-ab-using-clickonce-for-trusted-code-execution-1446ea8051c5
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-06-12
modified: 2024-01-31
tags:
    - attack.execution
    - attack.t1203
    - detection.threat-hunting
logsource:
    category: network_connection
    product: windows
detection:
    selection:
        Image|contains: ':\Windows\Microsoft.NET\'
        Image|endswith: '\dfsvc.exe'
        Initiated: 'true'
    filter_main_known_ports:
        DestinationPort:
            - 80
            - 443
    filter_optional_dns_ipv6:
        # Based on VT. More than 140 binaries made communication over DNS
        DestinationIsIpv6: 'true'
        DestinationPort: 53
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: selection

selection:
    Image|contains: ':\Windows\Microsoft.NET\'
    Image|endswith: '\dfsvc.exe'
    Initiated: 'true'

Stage 2: not filter_main_known_ports

filter_main_known_ports:
    DestinationPort:
        - 80
        - 443

Stage 3: not filter_optional_dns_ipv6

filter_optional_dns_ipv6:
    DestinationIsIpv6: 'true'
    DestinationPort: 53

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \dfsvc.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\dfsvc.exe"
Imagematch
  • :\Windows\Microsoft.NET\
field:"Image" kind:match value:":\Windows\Microsoft.NET\"
Initiatedeq
  • true corpus 50 (sigma 50)
field:"Initiated" kind:eq value:"true"

Exclusions

The rule actively suppresses these predicates.

Diagnostic Library Sdiageng.DLL Loaded By Msdt.EXE

#
Status
test
Severity
high
Author
Greg (rule)
Source
github.com/SigmaHQ/sigma

Detects both of CVE-2022-30190 (Follina) and DogWalk vulnerabilities exploiting msdt.exe binary to load the "sdiageng.dll" library

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Diagnostic Library Sdiageng.DLL Loaded By Msdt.EXE
id: ec8c4047-fad9-416a-8c81-0f479353d7f6
status: test
description: Detects both of CVE-2022-30190 (Follina) and DogWalk vulnerabilities exploiting msdt.exe binary to load the "sdiageng.dll" library
references:
    - https://www.securonix.com/blog/detecting-microsoft-msdt-dogwalk/
author: Greg (rule)
date: 2022-06-17
modified: 2023-02-17
tags:
    - attack.stealth
    - attack.t1202
    - cve.2022-30190
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith: '\msdt.exe'
        ImageLoaded|endswith: '\sdiageng.dll'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\msdt.exe'
    ImageLoaded|endswith: '\sdiageng.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \msdt.exe corpus 10 (sigma 9, splunk 1)
field:"Image" kind:ends_with value:"\msdt.exe"
ImageLoadedends_with
  • \sdiageng.dll corpus 2 (sigma 1, splunk 1)
field:"ImageLoaded" kind:ends_with value:"\sdiageng.dll"

DNS Query To AzureWebsites.NET By Non-Browser Process

#
Status
test
Severity
medium
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects a DNS query by a non browser process on the system to "azurewebsites.net". The latter was often used by threat actors as a malware hosting and exfiltration site.

Known False Positives

  • Likely with other browser software. Apply additional filters for any other browsers you might use.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 22: DNSEvent (DNS query)

Rule Body

title: DNS Query To AzureWebsites.NET By Non-Browser Process
id: e043f529-8514-4205-8ab0-7f7d2927b400
related:
    - id: 5c80b618-0dbb-46e6-acbb-03d90bcb6d83
      type: derived
status: test
description: |
    Detects a DNS query by a non browser process on the system to "azurewebsites.net". The latter was often used by threat actors as a malware hosting and exfiltration site.
references:
    - https://www.sentinelone.com/labs/wip26-espionage-threat-actors-abuse-cloud-infrastructure-in-targeted-telco-attacks/
    - https://symantec-enterprise-blogs.security.com/threat-intelligence/harvester-new-apt-attacks-asia
    - https://www.ptsecurity.com/ww-en/analytics/pt-esc-threat-intelligence/higaisa-or-winnti-apt-41-backdoors-old-and-new/
    - https://intezer.com/blog/research/how-we-escaped-docker-in-azure-functions/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2024-06-24
tags:
    - attack.command-and-control
    - attack.t1219.002
logsource:
    product: windows
    category: dns_query
detection:
    selection:
        QueryName|endswith: 'azurewebsites.net'
    filter_optional_chrome:
        Image:
            - 'C:\Program Files\Google\Chrome\Application\chrome.exe'
            - 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
    filter_optional_firefox:
        Image:
            - 'C:\Program Files\Mozilla Firefox\firefox.exe'
            - 'C:\Program Files (x86)\Mozilla Firefox\firefox.exe'
    filter_optional_ie:
        Image:
            - 'C:\Program Files (x86)\Internet Explorer\iexplore.exe'
            - 'C:\Program Files\Internet Explorer\iexplore.exe'
    filter_optional_edge_1:
        - Image|startswith: 'C:\Program Files (x86)\Microsoft\EdgeWebView\Application\'
        - Image|endswith: '\WindowsApps\MicrosoftEdge.exe'
        - Image:
              - 'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe'
              - 'C:\Program Files\Microsoft\Edge\Application\msedge.exe'
    filter_optional_edge_2:
        Image|startswith:
            - 'C:\Program Files (x86)\Microsoft\EdgeCore\'
            - 'C:\Program Files\Microsoft\EdgeCore\'
        Image|endswith:
            - '\msedge.exe'
            - '\msedgewebview2.exe'
    filter_optional_safari:
        Image|endswith: '\safari.exe'
    filter_optional_defender:
        Image|endswith:
            - '\MsMpEng.exe' # Microsoft Defender executable
            - '\MsSense.exe' # Windows Defender Advanced Threat Protection Service Executable
    filter_optional_brave:
        Image|endswith: '\brave.exe'
        Image|startswith: 'C:\Program Files\BraveSoftware\'
    filter_optional_maxthon:
        Image|contains: '\AppData\Local\Maxthon\'
        Image|endswith: '\maxthon.exe'
    filter_optional_opera:
        Image|contains: '\AppData\Local\Programs\Opera\'
        Image|endswith: '\opera.exe'
    filter_optional_seamonkey:
        Image|startswith:
            - 'C:\Program Files\SeaMonkey\'
            - 'C:\Program Files (x86)\SeaMonkey\'
        Image|endswith: '\seamonkey.exe'
    filter_optional_vivaldi:
        Image|contains: '\AppData\Local\Vivaldi\'
        Image|endswith: '\vivaldi.exe'
    filter_optional_whale:
        Image|startswith:
            - 'C:\Program Files\Naver\Naver Whale\'
            - 'C:\Program Files (x86)\Naver\Naver Whale\'
        Image|endswith: '\whale.exe'
    filter_optional_tor:
        Image|contains: '\Tor Browser\'
    filter_optional_whaterfox:
        Image|startswith:
            - 'C:\Program Files\Waterfox\'
            - 'C:\Program Files (x86)\Waterfox\'
        Image|endswith: '\Waterfox.exe'
    filter_optional_midori:
        Image|contains: '\AppData\Local\Programs\midori-ng\'
        Image|endswith: '\Midori Next Generation.exe'
    filter_optional_slimbrowser:
        Image|startswith:
            - 'C:\Program Files\SlimBrowser\'
            - 'C:\Program Files (x86)\SlimBrowser\'
        Image|endswith: '\slimbrowser.exe'
    filter_optional_flock:
        Image|contains: '\AppData\Local\Flock\'
        Image|endswith: '\Flock.exe'
    filter_optional_phoebe:
        Image|contains: '\AppData\Local\Phoebe\'
        Image|endswith: '\Phoebe.exe'
    filter_optional_falkon:
        Image|startswith:
            - 'C:\Program Files\Falkon\'
            - 'C:\Program Files (x86)\Falkon\'
        Image|endswith: '\falkon.exe'
    filter_optional_avant:
        Image|startswith:
            - 'C:\Program Files (x86)\Avant Browser\'
            - 'C:\Program Files\Avant Browser\'
        Image|endswith: '\avant.exe'
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - Likely with other browser software. Apply additional filters for any other browsers you might use.
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    QueryName|endswith: 'azurewebsites.net'

Stage 2: not filter_optional_*

filter_optional_chrome:
    Image:
        - 'C:\Program Files\Google\Chrome\Application\chrome.exe'
        - 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
filter_optional_firefox:
    Image:
        - 'C:\Program Files\Mozilla Firefox\firefox.exe'
        - 'C:\Program Files (x86)\Mozilla Firefox\firefox.exe'
filter_optional_ie:
    Image:
        - 'C:\Program Files (x86)\Internet Explorer\iexplore.exe'
        - 'C:\Program Files\Internet Explorer\iexplore.exe'
filter_optional_edge_1:
    - Image|startswith: 'C:\Program Files (x86)\Microsoft\EdgeWebView\Application\'
    - Image|endswith: '\WindowsApps\MicrosoftEdge.exe'
    - Image:
          - 'C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe'
          - 'C:\Program Files\Microsoft\Edge\Application\msedge.exe'
filter_optional_edge_2:
    Image|startswith:
        - 'C:\Program Files (x86)\Microsoft\EdgeCore\'
        - 'C:\Program Files\Microsoft\EdgeCore\'
    Image|endswith:
        - '\msedge.exe'
        - '\msedgewebview2.exe'
filter_optional_safari:
    Image|endswith: '\safari.exe'
filter_optional_defender:
    Image|endswith:
        - '\MsMpEng.exe'
        - '\MsSense.exe'
filter_optional_brave:
    Image|endswith: '\brave.exe'
    Image|startswith: 'C:\Program Files\BraveSoftware\'
filter_optional_maxthon:
    Image|contains: '\AppData\Local\Maxthon\'
    Image|endswith: '\maxthon.exe'
filter_optional_opera:
    Image|contains: '\AppData\Local\Programs\Opera\'
    Image|endswith: '\opera.exe'
filter_optional_seamonkey:
    Image|startswith:
        - 'C:\Program Files\SeaMonkey\'
        - 'C:\Program Files (x86)\SeaMonkey\'
    Image|endswith: '\seamonkey.exe'
filter_optional_vivaldi:
    Image|contains: '\AppData\Local\Vivaldi\'
    Image|endswith: '\vivaldi.exe'
filter_optional_whale:
    Image|startswith:
        - 'C:\Program Files\Naver\Naver Whale\'
        - 'C:\Program Files (x86)\Naver\Naver Whale\'
    Image|endswith: '\whale.exe'
filter_optional_tor:
    Image|contains: '\Tor Browser\'
filter_optional_whaterfox:
    Image|startswith:
        - 'C:\Program Files\Waterfox\'
        - 'C:\Program Files (x86)\Waterfox\'
    Image|endswith: '\Waterfox.exe'
filter_optional_midori:
    Image|contains: '\AppData\Local\Programs\midori-ng\'
    Image|endswith: '\Midori Next Generation.exe'
filter_optional_slimbrowser:
    Image|startswith:
        - 'C:\Program Files\SlimBrowser\'
        - 'C:\Program Files (x86)\SlimBrowser\'
    Image|endswith: '\slimbrowser.exe'
filter_optional_flock:
    Image|contains: '\AppData\Local\Flock\'
    Image|endswith: '\Flock.exe'
filter_optional_phoebe:
    Image|contains: '\AppData\Local\Phoebe\'
    Image|endswith: '\Phoebe.exe'
filter_optional_falkon:
    Image|startswith:
        - 'C:\Program Files\Falkon\'
        - 'C:\Program Files (x86)\Falkon\'
    Image|endswith: '\falkon.exe'
filter_optional_avant:
    Image|startswith:
        - 'C:\Program Files (x86)\Avant Browser\'
        - 'C:\Program Files\Avant Browser\'
    Image|endswith: '\avant.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
QueryNameends_with
  • azurewebsites.net
field:"QueryName" kind:ends_with value:"azurewebsites.net"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with\msedge.exeexcludes:Image field:"Image" value:"\msedge.exe"
Imageends_with\msedgewebview2.exeexcludes:Image field:"Image" value:"\msedgewebview2.exe"
Imagestarts_withC:\Program Files (x86)\Microsoft\EdgeCore\excludes:Image field:"Image" value:"C:\Program Files (x86)\Microsoft\EdgeCore\"
Imagestarts_withC:\Program Files\Microsoft\EdgeCore\excludes:Image field:"Image" value:"C:\Program Files\Microsoft\EdgeCore\"
Imagestarts_withC:\Program Files (x86)\Avant Browser\excludes:Image field:"Image" value:"C:\Program Files (x86)\Avant Browser\"
Imagestarts_withC:\Program Files\Avant Browser\excludes:Image field:"Image" value:"C:\Program Files\Avant Browser\"
Imageends_with\avant.exeexcludes:Image field:"Image" value:"\avant.exe"
Imagestarts_withC:\Program Files (x86)\Falkon\excludes:Image field:"Image" value:"C:\Program Files (x86)\Falkon\"
Imagestarts_withC:\Program Files\Falkon\excludes:Image field:"Image" value:"C:\Program Files\Falkon\"
Imageends_with\falkon.exeexcludes:Image field:"Image" value:"\falkon.exe"
Imagestarts_withC:\Program Files (x86)\Naver\Naver Whale\excludes:Image field:"Image" value:"C:\Program Files (x86)\Naver\Naver Whale\"
Imagestarts_withC:\Program Files\Naver\Naver Whale\excludes:Image field:"Image" value:"C:\Program Files\Naver\Naver Whale\"
Imageends_with\whale.exeexcludes:Image field:"Image" value:"\whale.exe"
Imagestarts_withC:\Program Files (x86)\SeaMonkey\excludes:Image field:"Image" value:"C:\Program Files (x86)\SeaMonkey\"
Imagestarts_withC:\Program Files\SeaMonkey\excludes:Image field:"Image" value:"C:\Program Files\SeaMonkey\"
Imageends_with\seamonkey.exeexcludes:Image field:"Image" value:"\seamonkey.exe"
Imagestarts_withC:\Program Files (x86)\SlimBrowser\excludes:Image field:"Image" value:"C:\Program Files (x86)\SlimBrowser\"
Imagestarts_withC:\Program Files\SlimBrowser\excludes:Image field:"Image" value:"C:\Program Files\SlimBrowser\"
Imageends_with\slimbrowser.exeexcludes:Image field:"Image" value:"\slimbrowser.exe"
Imagestarts_withC:\Program Files (x86)\Waterfox\excludes:Image field:"Image" value:"C:\Program Files (x86)\Waterfox\"
Imagestarts_withC:\Program Files\Waterfox\excludes:Image field:"Image" value:"C:\Program Files\Waterfox\"
Imageends_with\Waterfox.exeexcludes:Image field:"Image" value:"\Waterfox.exe"
Imageends_with\Flock.exeexcludes:Image field:"Image" value:"\Flock.exe"
Imagematch\AppData\Local\Flock\excludes:Image field:"Image" value:"\AppData\Local\Flock\"
Imageends_with\Midori Next Generation.exeexcludes:Image field:"Image" value:"\Midori Next Generation.exe"
Imagematch\AppData\Local\Programs\midori-ng\excludes:Image field:"Image" value:"\AppData\Local\Programs\midori-ng\"
Imageends_with\Phoebe.exeexcludes:Image field:"Image" value:"\Phoebe.exe"
Imagematch\AppData\Local\Phoebe\excludes:Image field:"Image" value:"\AppData\Local\Phoebe\"
Imageends_with\brave.exeexcludes:Image field:"Image" value:"\brave.exe"
Imagestarts_withC:\Program Files\BraveSoftware\excludes:Image field:"Image" value:"C:\Program Files\BraveSoftware\"
Imageends_with\maxthon.exeexcludes:Image field:"Image" value:"\maxthon.exe"
Imagematch\AppData\Local\Maxthon\excludes:Image field:"Image" value:"\AppData\Local\Maxthon\"
Imageends_with\opera.exeexcludes:Image field:"Image" value:"\opera.exe"
Imagematch\AppData\Local\Programs\Opera\excludes:Image field:"Image" value:"\AppData\Local\Programs\Opera\"
Imageends_with\vivaldi.exeexcludes:Image field:"Image" value:"\vivaldi.exe"
Imagematch\AppData\Local\Vivaldi\excludes:Image field:"Image" value:"\AppData\Local\Vivaldi\"
Imageends_with\MsMpEng.exeexcludes:Image field:"Image" value:"\MsMpEng.exe"
Imageends_with\MsSense.exeexcludes:Image field:"Image" value:"\MsSense.exe"
Imageends_with\WindowsApps\MicrosoftEdge.exeexcludes:Image field:"Image" value:"\WindowsApps\MicrosoftEdge.exe"
Imageends_with\safari.exeexcludes:Image field:"Image" value:"\safari.exe"
ImageeqC:\Program Files (x86)\Google\Chrome\Application\chrome.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
ImageeqC:\Program Files (x86)\Internet Explorer\iexplore.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\Internet Explorer\iexplore.exe"
ImageeqC:\Program Files (x86)\Microsoft\Edge\Application\msedge.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
ImageeqC:\Program Files (x86)\Mozilla Firefox\firefox.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
ImageeqC:\Program Files\Google\Chrome\Application\chrome.exeexcludes:Image field:"Image" value:"C:\Program Files\Google\Chrome\Application\chrome.exe"
ImageeqC:\Program Files\Internet Explorer\iexplore.exeexcludes:Image field:"Image" value:"C:\Program Files\Internet Explorer\iexplore.exe"
ImageeqC:\Program Files\Microsoft\Edge\Application\msedge.exeexcludes:Image field:"Image" value:"C:\Program Files\Microsoft\Edge\Application\msedge.exe"
ImageeqC:\Program Files\Mozilla Firefox\firefox.exeexcludes:Image field:"Image" value:"C:\Program Files\Mozilla Firefox\firefox.exe"
Imagematch\Tor Browser\excludes:Image field:"Image" value:"\Tor Browser\"
Imagestarts_withC:\Program Files (x86)\Microsoft\EdgeWebView\Application\excludes:Image field:"Image" value:"C:\Program Files (x86)\Microsoft\EdgeWebView\Application\"

Forest Blizzard APT - JavaScript Constrained File Creation

#
Status
test
Severity
medium
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects the creation of JavaScript files inside of the DriverStore directory. Forest Blizzard used this to exploit the CVE-2022-38028 vulnerability in Windows Print Spooler service by modifying a JavaScript constraints file and executing it with SYSTEM-level permissions.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Forest Blizzard APT - JavaScript Constrained File Creation
id: ec7c4e9b-9bc9-47c7-a32f-b53b598da642
status: test
description: |
    Detects the creation of JavaScript files inside of the DriverStore directory.
    Forest Blizzard used this to exploit the CVE-2022-38028 vulnerability in Windows Print Spooler service by modifying a JavaScript constraints file and executing it with SYSTEM-level permissions.
references:
    - https://www.microsoft.com/en-us/security/blog/2024/04/22/analyzing-forest-blizzards-custom-post-compromise-tool-for-exploiting-cve-2022-38028-to-obtain-credentials/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2024-04-23
tags:
    - attack.defense-impairment
    - attack.t1685.001
    - detection.emerging-threats
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|startswith: 'C:\Windows\System32\DriverStore\FileRepository\'
        TargetFilename|endswith: '\.js'
    condition: selection
falsepositives:
    - Unlikely
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|startswith: 'C:\Windows\System32\DriverStore\FileRepository\'
    TargetFilename|endswith: '\.js'

Indicators

These rows show field, operator, and value matches.

GCP Access Policy Deleted

#
Status
test
Severity
medium
Author
Bryan Lim
Source
github.com/SigmaHQ/sigma

Detects when an access policy that is applied to a GCP cloud resource is deleted. An adversary would be able to remove access policies to gain access to a GCP cloud resource.

Known False Positives

  • Legitimate administrative activities

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Privilege Escalation

Telemetry Coverage

Rule Body

title: GCP Access Policy Deleted
id: 32438676-1dba-4ac7-bf69-b86cba995e05
status: test
description: |
    Detects when an access policy that is applied to a GCP cloud resource is deleted.
    An adversary would be able to remove access policies to gain access to a GCP cloud resource.
references:
    - https://cloud.google.com/access-context-manager/docs/audit-logging
    - https://cloud.google.com/logging/docs/audit/understanding-audit-logs
    - https://cloud.google.com/logging/docs/reference/audit/auditlog/rest/Shared.Types/AuditLog
author: Bryan Lim
date: 2024-01-12
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.t1098
logsource:
    product: gcp
    service: gcp.audit
detection:
    selection:
        data.protoPayload.authorizationInfo.permission:
            - 'accesscontextmanager.accessPolicies.delete'
            - 'accesscontextmanager.accessPolicies.accessLevels.delete'
            - 'accesscontextmanager.accessPolicies.accessZones.delete'
            - 'accesscontextmanager.accessPolicies.authorizedOrgsDescs.delete'
        data.protoPayload.authorizationInfo.granted: 'true'
        data.protoPayload.serviceName: 'accesscontextmanager.googleapis.com'
    condition: selection
falsepositives:
    - Legitimate administrative activities
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    data.protoPayload.authorizationInfo.permission:
        - 'accesscontextmanager.accessPolicies.delete'
        - 'accesscontextmanager.accessPolicies.accessLevels.delete'
        - 'accesscontextmanager.accessPolicies.accessZones.delete'
        - 'accesscontextmanager.accessPolicies.authorizedOrgsDescs.delete'
    data.protoPayload.authorizationInfo.granted: 'true'
    data.protoPayload.serviceName: 'accesscontextmanager.googleapis.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
data.protoPayload.authorizationInfo.grantedeq
  • true
field:"gcp::authorization_granted" kind:eq value:"true"
data.protoPayload.authorizationInfo.permissioneq
  • accesscontextmanager.accessPolicies.accessLevels.delete
  • accesscontextmanager.accessPolicies.accessZones.delete
  • accesscontextmanager.accessPolicies.authorizedOrgsDescs.delete
  • accesscontextmanager.accessPolicies.delete
field:"gcp::authorization_permission" kind:eq
data.protoPayload.serviceNameeq
  • accesscontextmanager.googleapis.com
field:"gcp::service_name" kind:eq value:"accesscontextmanager.googleapis.com"

GoToAssist Temporary Installation Artefact

#
Status
test
Severity
medium
Author
frack113
Source
github.com/SigmaHQ/sigma

An adversary may use legitimate desktop support and remote access software, such as Team Viewer, Go2Assist, LogMein, AmmyyAdmin, etc, to establish an interactive command and control channel to target systems within networks. These services are commonly used as legitimate technical support software, and may be allowed by application control within a target environment. Remote access tools like VNC, Ammyy, and Teamviewer are used frequently when compared with other legitimate software commonly used by adversaries. (Citation: Symantec Living off the Land)

Known False Positives

  • Legitimate use

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: GoToAssist Temporary Installation Artefact
id: 5d756aee-ad3e-4306-ad95-cb1abec48de2
status: test
description: |
    An adversary may use legitimate desktop support and remote access software, such as Team Viewer, Go2Assist, LogMein, AmmyyAdmin, etc, to establish an interactive command and control channel to target systems within networks.
    These services are commonly used as legitimate technical support software, and may be allowed by application control within a target environment.
    Remote access tools like VNC, Ammyy, and Teamviewer are used frequently when compared with other legitimate software commonly used by adversaries. (Citation: Symantec Living off the Land)
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1219/T1219.md#atomic-test-4---gotoassist-files-detected-test-on-windows
author: frack113
date: 2022-02-13
tags:
    - attack.command-and-control
    - attack.t1219.002
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains: '\AppData\Local\Temp\LogMeInInc\GoToAssist Remote Support Expert\'
    condition: selection
falsepositives:
    - Legitimate use
level: medium
regression_tests_path: regression_data/rules/windows/file/file_event/file_event_win_gotoopener_artefact/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains: '\AppData\Local\Temp\LogMeInInc\GoToAssist Remote Support Expert\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • \AppData\Local\Temp\LogMeInInc\GoToAssist Remote Support Expert\
field:"TargetFilename" kind:match value:"\AppData\Local\Temp\LogMeInInc\GoToAssist Remote Support Expert\"

Host set with unconstrained delegation

#
Status
experimental
Severity
high
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker modifies host delegation settings for privilege escalation.

Known False Positives

  • Rare administrator modifying host delegation settings

MITRE ATT&CK Coverage

TacticTechniques
Persistence

Telemetry Coverage

Rule Body

title: Host set with unconstrained delegation
description: Detects scenarios where an attacker modifies host delegation settings for privilege escalation.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1098.xxx-Account%20manipulation
- https://dirkjanm.io/krbrelayx-unconstrained-delegation-abuse-toolkit/
- https://www.alsid.com/crb_article/kerberos-delegation/
- https://www.harmj0y.net/blog/activedirectory/s4u2pwnage/
- https://shenaniganslabs.io/2019/01/28/Wagging-the-Dog.html
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/abusing-kerberos-constrained-delegation
- https://www.guidepointsecurity.com/delegating-like-a-boss-abusing-kerberos-delegation-in-active-directory/
- https://stealthbits.com/blog/what-is-kerberos-delegation-an-overview-of-kerberos-delegation/
- https://posts.specterops.io/hunting-in-active-directory-unconstrained-delegation-forests-trusts-71f2b33688e1
- https://pentestlab.blog/2022/03/21/unconstrained-delegation/
- https://www.thehacker.recipes/ad/movement/kerberos/delegations#talk
tags:
- attack.persistence
- attack.t1098
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection: # Delegation to any service, Kerberos only
    EventID: 4742
    UserAccountControl: '%%2093' # Enable option "Trust this computer for delegation to any service (Kerberos only)"
  condition: selection
falsepositives:
- Rare administrator modifying host delegation settings
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 4742
  UserAccountControl: '%%2093'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
UserAccountControleq
  • %%2093 corpus 2 (sigma 2)
field:"UserAccountControl" kind:eq value:"%%2093"

Injected Browser Process Spawning Rundll32 - GuLoader Activity

#
Status
test
Severity
high
Author
@kostastsale
Source
github.com/SigmaHQ/sigma

Detects the execution of installed GuLoader malware on the host. GuLoader is initiating network connections via the rundll32.exe process that is spawned via a browser parent(injected) process.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Privilege Escalation
Stealth

Telemetry Coverage

Rule Body

title: Injected Browser Process Spawning Rundll32 - GuLoader Activity
id: 89e1490f-1a3e-452a-bbb8-b68a5f58072f
status: test
description: |
    Detects the execution of installed GuLoader malware on the host.
    GuLoader is initiating network connections via the rundll32.exe process that is spawned via a browser parent(injected) process.
references:
    - Internal Research
author: '@kostastsale'
date: 2023-08-07
tags:
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1055
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith:
            - '\chrome.exe'
            - '\firefox.exe'
            - '\msedge.exe'
        Image|endswith: '\rundll32.exe'
        CommandLine|endswith: '\rundll32.exe'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith:
        - '\chrome.exe'
        - '\firefox.exe'
        - '\msedge.exe'
    Image|endswith: '\rundll32.exe'
    CommandLine|endswith: '\rundll32.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • \rundll32.exe corpus 3 (sigma 3)
field:"CommandLine" kind:ends_with value:"\rundll32.exe"
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"
ParentImageends_with
  • \chrome.exe corpus 5 (sigma 5)
  • \firefox.exe corpus 4 (sigma 4)
  • \msedge.exe corpus 4 (sigma 4)
field:"ParentImage" kind:ends_with

Kaspersky Endpoint Security Stopped Via CommandLine - Linux

#
Status
experimental
Severity
high
Author
Milad Cheraghi
Source
github.com/SigmaHQ/sigma

Detects execution of the Kaspersky init.d stop script on Linux systems either directly or via systemctl. This activity may indicate a manual interruption of the antivirus service by an administrator, or it could be a sign of potential tampering or evasion attempts by malicious actors.

Known False Positives

  • System administrator manually stopping Kaspersky services

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Kaspersky Endpoint Security Stopped Via CommandLine - Linux
id: 36388120-b3f1-4ce9-b50b-280d9a7f4c04
status: experimental
description: |
  Detects execution of the Kaspersky init.d stop script on Linux systems either directly or via systemctl.
  This activity may indicate a manual interruption of the antivirus service by an administrator, or it could be a sign of potential tampering or evasion attempts by malicious actors.
references:
    - https://support.kaspersky.com/KES4Linux/12.0.0/en-US/197929.htm
author: Milad Cheraghi
date: 2025-10-18
tags:
    - attack.execution
    - attack.defense-impairment
    - attack.t1685
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        Image|endswith:
            # Note: Add the list of shells allowed in your environment that can be used to run init.d scripts.
            - '/systemctl'
            - '/bash'
            - '/sh'
        CommandLine|contains|all:
            - 'stop'
            - 'kesl'
    condition: selection
falsepositives:
    - System administrator manually stopping Kaspersky services
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '/systemctl'
        - '/bash'
        - '/sh'
    CommandLine|contains|all:
        - 'stop'
        - 'kesl'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • kesl
  • stop corpus 8 (sigma 5, splunk 2, elastic 1)
field:"CommandLine" kind:match
Imageends_with
  • /bash corpus 13 (sigma 13)
  • /sh corpus 12 (sigma 12)
  • /systemctl corpus 4 (sigma 4)
field:"Image" kind:ends_with

Kerberos key list attack for credential dumping

#
Status
experimental
Severity
high
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker attempts to forge a special Kerberos service ticket in order to extract credentials from Read Only Domain Controllers (RODC).

Known False Positives

  • Applications or services performing delegation activities, ADFS servers

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Kerberos key list attack for credential dumping
description: Detects scenarios where an attacker attempts to forge a special Kerberos service ticket in order to extract credentials from Read Only Domain Controllers (RODC).
references:
- https://www.secureauth.com/blog/the-kerberos-key-list-attack-the-return-of-the-read-only-domain-controllers/
- https://www.tarlogic.com/blog/how-to-attack-kerberos/
tags:
- attack.credential_access
- attack.t1003 # credential dumping
- attack.t1558 # forget ticket
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4769
    Status: 0x0 # Success
    TicketOptions: '0x10000' # proxiable ticket
  filter:
    - IpAddress: '%domain_controllers_ips%'     # reduce amount of false positives
    - TargetUserName: '%account_allowed_proxy%' # accounts allowed to perform proxiable requests
  condition: selection and not filter
falsepositives:
- Applications or services performing delegation activities, ADFS servers
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
  EventID: 4769
  Status: 0x0
  TicketOptions: '0x10000'

Stage 2: not filter

filter:
  - IpAddress: '%domain_controllers_ips%'
  - TargetUserName: '%account_allowed_proxy%'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
IpAddresseq%domain_controllers_ips%excludes:IpAddress field:"IpAddress" value:"%domain_controllers_ips%"
TargetUserNameeq%account_allowed_proxy%excludes:TargetUserName field:"TargetUserName" value:"%account_allowed_proxy%"

macOS Sudo Privilege Escalation Attempts

#
Status
experimental
Severity
medium
Author
Eric Brown - Nebulock, Inc.
Source
github.com/Nebulock-Inc/macos-coresigma

Detects sudo command execution and privilege escalation attempts from the com.apple.sudo subsystem. Monitors for both successful and failed sudo attempts which may indicate privilege escalation activities or credential abuse.

Known False Positives

  • Legitimate administrative tasks
  • System maintenance operations
  • Software installations requiring elevated privileges
  • Authorized privileged user activities

MITRE ATT&CK Coverage

Rule Body

title: macOS Sudo Privilege Escalation Attempts
id: 8f79e9a5-56d3-451d-9c2a-81d8cbe7be61
status: experimental
description: 'Detects sudo command execution and privilege escalation attempts from
  the

  com.apple.sudo subsystem. Monitors for both successful and failed sudo attempts

  which may indicate privilege escalation activities or credential abuse.

  '
author: Eric Brown - Nebulock, Inc.
date: 2025/10/31
modified: 2025/10/31
references:
- https://attack.mitre.org/techniques/T1548/003/
- https://attack.mitre.org/techniques/T1078/
logsource:
  product: macos
  service: unifiedlog
detection:
  selection_subsystem:
    subsystem: com.apple.sudo
  selection_keywords:
    message|contains:
    - COMMAND
    - authentication
    - sudo
    - root
  condition: selection_subsystem and selection_keywords
falsepositives:
- Legitimate administrative tasks
- System maintenance operations
- Software installations requiring elevated privileges
- Authorized privileged user activities
fields:
- subsystem
- category
- process
- message
- level
tags:
- attack.privilege_escalation
- attack.t1548.003
- attack.t1078
level: medium

Stages and Predicates

Stage 0: condition

selection_subsystem and selection_keywords

Stage 1: selection_subsystem

selection_subsystem:
  subsystem: com.apple.sudo

Stage 2: selection_keywords

selection_keywords:
  message|contains:
  - COMMAND
  - authentication
  - sudo
  - root

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
messagematch
  • COMMAND
  • authentication
  • root
  • sudo
field:"message" kind:match
subsystemeq
  • com.apple.sudo
field:"subsystem" kind:eq value:"com.apple.sudo"

Malicious IP Address Sign-In Suspicious

#
Status
test
Severity
high
Author
Mark Morowczynski '@markmorow', Gloria Lee, '@gleeiamglo'
Source
github.com/SigmaHQ/sigma

Indicates sign-in from a malicious IP address known to be malicious at time of sign-in.

Known False Positives

  • We recommend investigating the sessions flagged by this detection in the context of other sign-ins from the user.

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Rule Body

title: Malicious IP Address Sign-In Suspicious
id: 36440e1c-5c22-467a-889b-593e66498472
status: test
description: Indicates sign-in from a malicious IP address known to be malicious at time of sign-in.
references:
    - https://learn.microsoft.com/en-us/entra/id-protection/concept-identity-protection-risks#malicious-ip-address
    - https://learn.microsoft.com/en-us/entra/architecture/security-operations-user-accounts#unusual-sign-ins
author: Mark Morowczynski '@markmorow', Gloria Lee, '@gleeiamglo'
date: 2023-09-07
tags:
    - attack.t1090
    - attack.command-and-control
logsource:
    product: azure
    service: riskdetection
detection:
    selection:
        riskEventType: 'suspiciousIPAddress'
    condition: selection
falsepositives:
    - We recommend investigating the sessions flagged by this detection in the context of other sign-ins from the user.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    riskEventType: 'suspiciousIPAddress'

Indicators

These rows show field, operator, and value matches.

Mavinject Inject DLL Into Running Process

#
Status
test
Severity
high
Author
frack113, Florian Roth
Source
github.com/SigmaHQ/sigma

Detects process injection using the signed Windows tool "Mavinject" via the "INJECTRUNNING" flag

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Mavinject Inject DLL Into Running Process
id: 4f73421b-5a0b-4bbf-a892-5a7fb99bea66
related:
    - id: 17eb8e57-9983-420d-ad8a-2c4976c22eb8
      type: obsolete
status: test
description: Detects process injection using the signed Windows tool "Mavinject" via the "INJECTRUNNING" flag
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1218/T1218.md
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1056.004/T1056.004.md
    - https://posts.specterops.io/mavinject-exe-functionality-deconstructed-c29ab2cf5c0e
    - https://twitter.com/gN3mes1s/status/941315826107510784
    - https://reaqta.com/2017/12/mavinject-microsoft-injector/
    - https://twitter.com/Hexacorn/status/776122138063409152  # Deleted tweet
    - https://github.com/SigmaHQ/sigma/issues/3742
    - https://github.com/keyboardcrunch/SentinelOne-ATTACK-Queries/blob/6a228d23eefe963ca81f2d52f94b815f61ef5ee0/Tactics/DefenseEvasion.md#t1055-process-injection
author: frack113, Florian Roth
date: 2021-07-12
modified: 2022-12-05
tags:
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1055.001
    - attack.t1218.013
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains: ' /INJECTRUNNING '
    filter:
        ParentImage: 'C:\Windows\System32\AppVClient.exe' # This parent is the expected process to launch "mavinject"
    condition: selection and not filter
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_lolbin_mavinject_process_injection/info.yml

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    CommandLine|contains: ' /INJECTRUNNING '

Stage 2: not filter

filter:
    ParentImage: 'C:\Windows\System32\AppVClient.exe'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ParentImageeqC:\Windows\System32\AppVClient.exeexcludes:ParentImage field:"ParentImage" value:"C:\Windows\System32\AppVClient.exe"

Nohup Execution

#
Status
test
Severity
medium
Author
Christopher Peacock @SecurePeacock, SCYTHE @scythe_io
Source
github.com/SigmaHQ/sigma

Detects usage of nohup which could be leveraged by an attacker to keep a process running or break out from restricted environments

Known False Positives

  • Administrators or installed processes that leverage nohup

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Nohup Execution
id: e4ffe466-6ff8-48d4-94bd-e32d1a6061e2
status: test
description: Detects usage of nohup which could be leveraged by an attacker to keep a process running or break out from restricted environments
references:
    - https://gtfobins.github.io/gtfobins/nohup/
    - https://en.wikipedia.org/wiki/Nohup
    - https://www.computerhope.com/unix/unohup.htm
author: 'Christopher Peacock @SecurePeacock, SCYTHE @scythe_io'
date: 2022-06-06
tags:
    - attack.execution
    - attack.t1059.004
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        Image|endswith: '/nohup'
    condition: selection
falsepositives:
    - Administrators or installed processes that leverage nohup
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '/nohup'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /nohup corpus 3 (sigma 3)
field:"Image" kind:ends_with value:"/nohup"

Pandemic Registry Key

#
Status
test
Severity
critical
Author
Florian Roth (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects Pandemic Windows Implant

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

Rule Body

title: Pandemic Registry Key
id: 47e0852a-cf81-4494-a8e6-31864f8c86ed
status: test
description: Detects Pandemic Windows Implant
references:
    - https://wikileaks.org/vault7/#Pandemic
    - https://twitter.com/MalwareJake/status/870349480356454401
author: Florian Roth (Nextron Systems)
date: 2017-06-01
modified: 2022-10-09
tags:
    - attack.command-and-control
    - attack.t1105
    - detection.emerging-threats
logsource:
    category: registry_event
    product: windows
detection:
    selection:
        TargetObject|contains: '\SYSTEM\CurrentControlSet\services\null\Instance'
    condition: selection
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|contains: '\SYSTEM\CurrentControlSet\services\null\Instance'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectmatch
  • \SYSTEM\CurrentControlSet\services\null\Instance
field:"TargetObject" kind:match value:"\SYSTEM\CurrentControlSet\services\null\Instance"

Potential Defense Evasion Activity Via Emoji Usage In CommandLine - 2

#
Status
test
Severity
high
Author
@Kostastsale, TheDFIRReport
Source
github.com/SigmaHQ/sigma

Detects the usage of emojis in the command line, this could be a sign of potential defense evasion activity.

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Potential Defense Evasion Activity Via Emoji Usage In CommandLine - 2
id: c98f2a0d-e1b8-4f76-90d3-359caf88d6b9
status: test
description: Detects the usage of emojis in the command line, this could be a sign of potential defense evasion activity.
author: '@Kostastsale, TheDFIRReport'
references:
    - Internal Research
tags:
    - attack.stealth
date: 2022-12-05
logsource:
    product: windows
    category: process_creation
detection:
    selection:
        CommandLine|contains:
            - '🤷🏼'
            - '🤷🏼‍♂️'
            - '🙎🏼‍♀️'
            - '🙎🏼'
            - '🙎🏼‍♂️'
            - '🙍🏼‍♀️'
            - '🙍🏼'
            - '🙍🏼‍♂️'
            - '💇🏼‍♀️'
            - '💇🏼'
            - '💇🏼‍♂️'
            - '💆🏼‍♀️'
            - '💆🏼'
            - '💆🏼‍♂️'
            - '🧖🏼‍♀️'
            - '🧖🏼'
            - '🧖🏼‍♂️'
            - '💃🏼'
            - '🕺🏼'
            - '🕴🏼'
            - '👩🏼‍🦽'
            - '🧑🏼‍🦽'
            - '👨🏼‍🦽'
            - '👩🏼‍🦼'
            - '🧑🏼‍🦼'
            - '👨🏼‍🦼'
            - '🚶🏼‍♀️'
            - '🚶🏼'
            - '🚶🏼‍♂️'
            - '👩🏼‍🦯'
            - '🧑🏼‍🦯'
            - '👨🏼‍🦯'
            - '🧎🏼‍♀️'
            - '🧎🏼'
            - '🧎🏼‍♂️'
            - '🏃🏼‍♀️'
            - '🏃🏼'
            - '🏃🏼‍♂️'
            - '🧍🏼‍♀️'
            - '🧍🏼'
            - '🧍🏼‍♂️'
            - '👭🏼'
            - '🧑🏼‍🤝‍🧑🏼'
            - '👬🏼'
            - '👫🏼'
            - '🧗🏼‍♀️'
            - '🧗🏼'
            - '🧗🏼‍♂️'
            - '🏇🏼'
            - '🏂🏼'
            - '🏌🏼‍♀️'
            - '🏌🏼'
            - '🏌🏼‍♂️'
            - '🏄🏼‍♀️'
            - '🏄🏼'
            - '🏄🏼‍♂️'
            - '🚣🏼‍♀️'
            - '🚣🏼'
            - '🚣🏼‍♂️'
            - '🏊🏼‍♀️'
            - '🏊🏼'
            - '🏊🏼‍♂️'
            - '⛹🏼‍♀️'
            - '⛹🏼'
            - '⛹🏼‍♂️'
            - '🏋🏼‍♀️'
            - '🏋🏼'
            - '🏋🏼‍♂️'
            - '🚴🏼‍♀️'
            - '🚴🏼'
            - '🚴🏼‍♂️'
            - '🚵🏼‍♀️'
            - '🚵🏼'
            - '🚵🏼‍♂️'
            - '🤸🏼‍♀️'
            - '🤸🏼'
            - '🤸🏼‍♂️'
            - '🤽🏼‍♀️'
            - '🤽🏼'
            - '🤽🏼‍♂️'
            - '🤾🏼‍♀️'
            - '🤾🏼'
            - '🤾🏼‍♂️'
            - '🤹🏼‍♀️'
            - '🤹🏼'
            - '🤹🏼‍♂️'
            - '🧘🏼‍♀️'
            - '🧘🏼'
            - '🧘🏼‍♂️'
            - '🛀🏼'
            - '🛌🏼'
            - '👋🏽'
            - '🤚🏽'
            - '🖐🏽'
            - '✋🏽'
            - '🖖🏽'
            - '👌🏽'
            - '🤌🏽'
            - '🤏🏽'
            - '✌🏽'
            - '🤞🏽'
            - '🫰🏽'
            - '🤟🏽'
            - '🤘🏽'
            - '🤙🏽'
            - '🫵🏽'
            - '🫱🏽'
            - '🫲🏽'
            - '🫳🏽'
            - '🫴🏽'
            - '👈🏽'
            - '👉🏽'
            - '👆🏽'
            - '🖕🏽'
            - '👇🏽'
            - '☝🏽'
            - '👍🏽'
            - '👎🏽'
            - '✊🏽'
            - '👊🏽'
            - '🤛🏽'
            - '🤜🏽'
            - '👏🏽'
            - '🫶🏽'
            - '🙌🏽'
            - '👐🏽'
            - '🤲🏽'
            - '🙏🏽'
            - '✍🏽'
            - '💪🏽'
            - '🦵🏽'
            - '🦶🏽'
            - '👂🏽'
            - '🦻🏽'
            - '👃🏽'
            - '👶🏽'
            - '👧🏽'
            - '🧒🏽'
            - '👦🏽'
            - '👩🏽'
            - '🧑🏽'
            - '👨🏽'
            - '👩🏽‍🦱'
            - '🧑🏽‍🦱'
            - '👨🏽‍🦱'
            - '👩🏽‍🦰'
            - '🧑🏽‍🦰'
            - '👨🏽‍🦰'
            - '👱🏽‍♀️'
            - '👱🏽'
            - '👱🏽‍♂️'
            - '👩🏽‍🦳'
            - '🧑🏽‍🦳'
            - '👨🏽‍🦳'
            - '👩🏽‍🦲'
            - '🧑🏽‍🦲'
            - '👨🏽‍🦲'
            - '🧔🏽‍♀️'
            - '🧔🏽'
            - '🧔🏽‍♂️'
            - '👵🏽'
            - '🧓🏽'
            - '👴🏽'
            - '👲🏽'
            - '👳🏽‍♀️'
            - '👳🏽'
            - '👳🏽‍♂️'
            - '🧕🏽'
            - '👮🏽‍♀️'
            - '👮🏽'
            - '👮🏽‍♂️'
            - '👷🏽‍♀️'
            - '👷🏽'
            - '👷🏽‍♂️'
            - '💂🏽‍♀️'
            - '💂🏽'
            - '💂🏽‍♂️'
            - '🕵🏽‍♀️'
            - '🕵🏽'
            - '🕵🏽‍♂️'
            - '👩🏽‍⚕️'
            - '🧑🏽‍⚕️'
            - '👨🏽‍⚕️'
            - '👩🏽‍🌾'
            - '🧑🏽‍🌾'
            - '👨🏽‍🌾'
            - '👩🏽‍🍳'
            - '🧑🏽‍🍳'
            - '👨🏽‍🍳'
            - '👩🏽‍🎓'
            - '🧑🏽‍🎓'
            - '👨🏽‍🎓'
            - '👩🏽‍🎤'
            - '🧑🏽‍🎤'
            - '👨🏽‍🎤'
            - '👩🏽‍🏫'
            - '🧑🏽‍🏫'
            - '👨🏽‍🏫'
            - '👩🏽‍🏭'
            - '🧑🏽‍🏭'
            - '👨🏽‍🏭'
            - '👩🏽‍💻'
            - '🧑🏽‍💻'
            - '👨🏽‍💻'
            - '👩🏽‍💼'
            - '🧑🏽‍💼'
            - '👨🏽‍💼'
            - '👩🏽‍🔧'
            - '🧑🏽‍🔧'
            - '👨🏽‍🔧'
            - '👩🏽‍🔬'
            - '🧑🏽‍🔬'
            - '👨🏽‍🔬'
            - '👩🏽‍🎨'
            - '🧑🏽‍🎨'
            - '👨🏽‍🎨'
            - '👩🏽‍🚒'
            - '🧑🏽‍🚒'
            - '👨🏽‍🚒'
            - '👩🏽‍✈️'
            - '🧑🏽‍✈️'
            - '👨🏽‍✈️'
            - '👩🏽‍🚀'
            - '🧑🏽‍🚀'
            - '👨🏽‍🚀'
            - '👩🏽‍⚖️'
            - '🧑🏽‍⚖️'
            - '👨🏽‍⚖️'
            - '👰🏽‍♀️'
            - '👰🏽'
            - '👰🏽‍♂️'
            - '🤵🏽‍♀️'
            - '🤵🏽'
            - '🤵🏽‍♂️'
            - '👸🏽'
            - '🫅🏽'
            - '🤴🏽'
            - '🥷🏽'
            - '🦸🏽‍♀️'
            - '🦸🏽'
            - '🦸🏽‍♂️'
            - '🦹🏽‍♀️'
            - '🦹🏽'
            - '🦹🏽‍♂️'
            - '🤶🏽'
            - '🧑🏽‍🎄'
            - '🎅🏽'
            - '🧙🏽‍♀️'
            - '🧙🏽'
            - '🧙🏽‍♂️'
            - '🧝🏽‍♀️'
            - '🧝🏽'
            - '🧝🏽‍♂️'
            - '🧛🏽‍♀️'
            - '🧛🏽'
            - '🧛🏽‍♂️'
            - '🧜🏽‍♀️'
            - '🧜🏽'
            - '🧜🏽‍♂️'
            - '🧚🏽‍♀️'
            - '🧚🏽'
            - '🧚🏽‍♂️'
            - '👼🏽'
            - '🤰🏽'
            - '🫄🏽'
            - '🫃🏽'
            - '🤱🏽'
            - '👩🏽‍🍼'
            - '🧑🏽‍🍼'
            - '👨🏽‍🍼'
            - '🙇🏽‍♀️'
            - '🙇🏽'
            - '🙇🏽‍♂️'
            - '💁🏽‍♀️'
            - '💁🏽'
            - '💁🏽‍♂️'
            - '🙅🏽‍♀️'
            - '🙅🏽'
            - '🙅🏽‍♂️'
            - '🙆🏽‍♀️'
            - '🙆🏽'
            - '🙆🏽‍♂️'
            - '🙋🏽‍♀️'
            - '🙋🏽'
            - '🙋🏽‍♂️'
            - '🧏🏽‍♀️'
            - '🧏🏽'
            - '🧏🏽‍♂️'
            - '🤦🏽‍♀️'
            - '🤦🏽'
            - '🤦🏽‍♂️'
            - '🤷🏽‍♀️'
            - '🤷🏽'
            - '🤷🏽‍♂️'
            - '🙎🏽‍♀️'
            - '🙎🏽'
            - '🙎🏽‍♂️'
            - '🙍🏽‍♀️'
            - '🙍🏽'
            - '🙍🏽‍♂️'
            - '💇🏽‍♀️'
            - '💇🏽'
            - '💇🏽‍♂️'
            - '💆🏽‍♀️'
            - '💆🏽'
            - '💆🏽‍♂️'
            - '🧖🏽‍♀️'
            - '🧖🏽'
            - '🧖🏽‍♂️'
            - '💃🏽'
            - '🕺🏽'
            - '🕴🏽'
            - '👩🏽‍🦽'
            - '🧑🏽‍🦽'
            - '👨🏽‍🦽'
            - '👩🏽‍🦼'
            - '🧑🏽‍🦼'
            - '👨🏽‍🦼'
            - '🚶🏽‍♀️'
            - '🚶🏽'
            - '🚶🏽‍♂️'
            - '👩🏽‍🦯'
            - '🧑🏽‍🦯'
            - '👨🏽‍🦯'
            - '🧎🏽‍♀️'
            - '🧎🏽'
            - '🧎🏽‍♂️'
            - '🏃🏽‍♀️'
            - '🏃🏽'
            - '🏃🏽‍♂️'
            - '🧍🏽‍♀️'
            - '🧍🏽'
            - '🧍🏽‍♂️'
            - '👭🏽'
            - '🧑🏽‍🤝‍🧑🏽'
            - '👬🏽'
            - '👫🏽'
            - '🧗🏽‍♀️'
            - '🧗🏽'
            - '🧗🏽‍♂️'
            - '🏇🏽'
            - '🏂🏽'
            - '🏌🏽‍♀️'
            - '🏌🏽'
            - '🏌🏽‍♂️'
            - '🏄🏽‍♀️'
            - '🏄🏽'
            - '🏄🏽‍♂️'
            - '🚣🏽‍♀️'
            - '🚣🏽'
            - '🚣🏽‍♂️'
            - '🏊🏽‍♀️'
            - '🏊🏽'
            - '🏊🏽‍♂️'
            - '⛹🏽‍♀️'
            - '⛹🏽'
            - '⛹🏽‍♂️'
            - '🏋🏽‍♀️'
            - '🏋🏽'
            - '🏋🏽‍♂️'
            - '🚴🏽‍♀️'
            - '🚴🏽'
            - '🚴🏽‍♂️'
            - '🚵🏽‍♀️'
            - '🚵🏽'
            - '🚵🏽‍♂️'
            - '🤸🏽‍♀️'
            - '🤸🏽'
            - '🤸🏽‍♂️'
            - '🤽🏽‍♀️'
            - '🤽🏽'
            - '🤽🏽‍♂️'
            - '🤾🏽‍♀️'
            - '🤾🏽'
            - '🤾🏽‍♂️'
            - '🤹🏽‍♀️'
            - '🤹🏽'
            - '🤹🏽‍♂️'
            - '🧘🏽‍♀️'
            - '🧘🏽'
            - '🧘🏽‍♂️'
            - '🛀🏽'
            - '🛌🏽'
            - '👋🏾'
            - '🤚🏾'
            - '🖐🏾'
            - '✋🏾'
            - '🖖🏾'
            - '👌🏾'
            - '🤌🏾'
            - '🤏🏾'
            - '✌🏾'
            - '🤞🏾'
            - '🫰🏾'
            - '🤟🏾'
            - '🤘🏾'
            - '🤙🏾'
            - '🫵🏾'
            - '🫱🏾'
            - '🫲🏾'
            - '🫳🏾'
            - '🫴🏾'
            - '👈🏾'
            - '👉🏾'
            - '👆🏾'
            - '🖕🏾'
            - '👇🏾'
            - '☝🏾'
            - '👍🏾'
            - '👎🏾'
            - '✊🏾'
            - '👊🏾'
            - '🤛🏾'
            - '🤜🏾'
            - '👏🏾'
            - '🫶🏾'
            - '🙌🏾'
            - '👐🏾'
            - '🤲🏾'
            - '🙏🏾'
            - '✍🏾'
            - '💪🏾'
            - '🦵🏾'
            - '🦶🏾'
            - '👂🏾'
            - '🦻🏾'
            - '👃🏾'
            - '👶🏾'
            - '👧🏾'
            - '🧒🏾'
            - '👦🏾'
            - '👩🏾'
            - '🧑🏾'
            - '👨🏾'
            - '👩🏾‍🦱'
            - '🧑🏾‍🦱'
            - '👨🏾‍🦱'
            - '👩🏾‍🦰'
            - '🧑🏾‍🦰'
            - '👨🏾‍🦰'
            - '👱🏾‍♀️'
            - '👱🏾'
            - '👱🏾‍♂️'
            - '👩🏾‍🦳'
            - '🧑🏾‍🦳'
            - '👨🏾‍🦳'
            - '👩🏾‍🦲'
            - '🧑🏾‍🦲'
            - '👨🏾‍🦲'
            - '🧔🏾‍♀️'
            - '🧔🏾'
            - '🧔🏾‍♂️'
            - '👵🏾'
            - '🧓🏾'
            - '👴🏾'
            - '👲🏾'
            - '👳🏾‍♀️'
            - '👳🏾'
            - '👳🏾‍♂️'
            - '🧕🏾'
            - '👮🏾‍♀️'
            - '👮🏾'
            - '👮🏾‍♂️'
            - '👷🏾‍♀️'
            - '👷🏾'
            - '👷🏾‍♂️'
            - '💂🏾‍♀️'
            - '💂🏾'
            - '💂🏾‍♂️'
            - '🕵🏾‍♀️'
            - '🕵🏾'
            - '🕵🏾‍♂️'
            - '👩🏾‍⚕️'
            - '🧑🏾‍⚕️'
            - '👨🏾‍⚕️'
            - '👩🏾‍🌾'
            - '🧑🏾‍🌾'
            - '👨🏾‍🌾'
            - '👩🏾‍🍳'
            - '🧑🏾‍🍳'
            - '👨🏾‍🍳'
            - '👩🏾‍🎓'
            - '🧑🏾‍🎓'
            - '👨🏾‍🎓'
            - '👩🏾‍🎤'
            - '🧑🏾‍🎤'
            - '👨🏾‍🎤'
            - '👩🏾‍🏫'
            - '🧑🏾‍🏫'
            - '👨🏾‍🏫'
            - '👩🏾‍🏭'
            - '🧑🏾‍🏭'
            - '👨🏾‍🏭'
            - '👩🏾‍💻'
            - '🧑🏾‍💻'
            - '👨🏾‍💻'
            - '👩🏾‍💼'
            - '🧑🏾‍💼'
            - '👨🏾‍💼'
            - '👩🏾‍🔧'
            - '🧑🏾‍🔧'
            - '👨🏾‍🔧'
            - '👩🏾‍🔬'
            - '🧑🏾‍🔬'
            - '👨🏾‍🔬'
            - '👩🏾‍🎨'
            - '🧑🏾‍🎨'
            - '👨🏾‍🎨'
            - '👩🏾‍🚒'
            - '🧑🏾‍🚒'
            - '👨🏾‍🚒'
            - '👩🏾‍✈️'
            - '🧑🏾‍✈️'
            - '👨🏾‍✈️'
            - '👩🏾‍🚀'
            - '🧑🏾‍🚀'
            - '👨🏾‍🚀'
            - '👩🏾‍⚖️'
            - '🧑🏾‍⚖️'
            - '👨🏾‍⚖️'
            - '👰🏾‍♀️'
            - '👰🏾'
            - '👰🏾‍♂️'
            - '🤵🏾‍♀️'
            - '🤵🏾'
            - '🤵🏾‍♂️'
            - '👸🏾'
            - '🫅🏾'
            - '🤴🏾'
            - '🥷🏾'
            - '🦸🏾‍♀️'
            - '🦸🏾'
            - '🦸🏾‍♂️'
            - '🦹🏾‍♀️'
            - '🦹🏾'
            - '🦹🏾‍♂️'
            - '🤶🏾'
            - '🧑🏾‍🎄'
            - '🎅🏾'
            - '🧙🏾‍♀️'
            - '🧙🏾'
            - '🧙🏾‍♂️'
            - '🧝🏾‍♀️'
            - '🧝🏾'
            - '🧝🏾‍♂️'
            - '🧛🏾‍♀️'
            - '🧛🏾'
            - '🧛🏾‍♂️'
            - '🧜🏾‍♀️'
            - '🧜🏾'
            - '🧜🏾‍♂️'
            - '🧚🏾‍♀️'
            - '🧚🏾'
            - '🧚🏾‍♂️'
            - '👼🏾'
            - '🤰🏾'
            - '🫄🏾'
            - '🫃🏾'
            - '🤱🏾'
            - '👩🏾‍🍼'
            - '🧑🏾‍🍼'
            - '👨🏾‍🍼'
            - '🙇🏾‍♀️'
            - '🙇🏾'
            - '🙇🏾‍♂️'
            - '💁🏾‍♀️'
            - '💁🏾'
            - '💁🏾‍♂️'
            - '🙅🏾‍♀️'
            - '🙅🏾'
            - '🙅🏾‍♂️'
            - '🙆🏾‍♀️'
            - '🙆🏾'
            - '🙆🏾‍♂️'
            - '🙋🏾‍♀️'
            - '🙋🏾'
            - '🙋🏾‍♂️'
            - '🧏🏾‍♀️'
            - '🧏🏾'
            - '🧏🏾‍♂️'
            - '🤦🏾‍♀️'
            - '🤦🏾'
            - '🤦🏾‍♂️'
            - '🤷🏾‍♀️'
            - '🤷🏾'
            - '🤷🏾‍♂️'
            - '🙎🏾‍♀️'
            - '🙎🏾'
            - '🙎🏾‍♂️'
            - '🙍🏾‍♀️'
            - '🙍🏾'
            - '🙍🏾‍♂️'
            - '💇🏾‍♀️'
            - '💇🏾'
            - '💇🏾‍♂️'
            - '💆🏾‍♀️'
            - '💆🏾'
            - '💆🏾‍♂️'
            - '🧖🏾‍♀️'
            - '🧖🏾'
            - '🧖🏾‍♂️'
            - '💃🏾'
            - '🕺🏾'
            - '👩🏾‍🦽'
            - '🧑🏾‍🦽'
            - '👨🏾‍🦽'
            - '👩🏾‍🦼'
            - '🧑🏾‍🦼'
            - '👨🏾‍🦼'
            - '🚶🏾‍♀️'
            - '🚶🏾'
            - '🚶🏾‍♂️'
            - '👩🏾‍🦯'
            - '🧑🏾‍🦯'
            - '👨🏾‍🦯'
            - '🧎🏾‍♀️'
            - '🧎🏾'
            - '🧎🏾‍♂️'
            - '🏃🏾‍♀️'
            - '🏃🏾'
            - '🏃🏾‍♂️'
            - '🧍🏾‍♀️'
            - '🧍🏾'
            - '🧍🏾‍♂️'
            - '👭🏾'
            - '🧑🏾‍🤝‍🧑🏾'
            - '👬🏾'
            - '👫🏾'
            - '🧗🏾‍♀️'
            - '🧗🏾'
            - '🧗🏾‍♂️'
            - '🏇🏾'
            - '🏂🏾'
            - '🏌🏾‍♀️'
            - '🏌🏾'
            - '🏌🏾‍♂️'
            - '🏄🏾‍♀️'
            - '🏄🏾'
            - '🏄🏾‍♂️'
            - '🚣🏾‍♀️'
            - '🚣🏾'
            - '🚣🏾‍♂️'
            - '🏊🏾‍♀️'
            - '🏊🏾'
            - '🏊🏾‍♂️'
            - '⛹🏾‍♀️'
            - '⛹🏾'
            - '⛹🏾‍♂️'
            - '🏋🏾‍♀️'
            - '🏋🏾'
            - '🏋🏾‍♂️'
            - '🚴🏾‍♀️'
            - '🚴🏾'
            - '🚴🏾‍♂️'
            - '🚵🏾‍♀️'
            - '🚵🏾'
            - '🚵🏾‍♂️'
            - '🤸🏾‍♀️'
            - '🤸🏾'
            - '🤸🏾‍♂️'
            - '🤽🏾‍♀️'
            - '🤽🏾'
            - '🤽🏾‍♂️'
            - '🤾🏾‍♀️'
            - '🤾🏾'
            - '🤾🏾‍♂️'
            - '🤹🏾‍♀️'
            - '🤹🏾'
            - '🤹🏾‍♂️'
            - '🧘🏾‍♀️'
            - '🧘🏾'
            - '🧘🏾‍♂️'
            - '🛀🏾'
            - '🛌🏾'
            - '👋🏿'
            - '🤚🏿'
            - '🖐🏿'
            - '✋🏿'
            - '🖖🏿'
            - '👌🏿'
            - '🤌🏿'
            - '🤏🏿'
            - '✌🏿'
            - '🤞🏿'
            - '🫰🏿'
            - '🤟🏿'
            - '🤘🏿'
            - '🤙🏿'
            - '🫵🏿'
            - '🫱🏿'
            - '🫲🏿'
            - '🫳🏿'
            - '🫴🏿'
            - '👈🏿'
            - '👉🏿'
            - '👆🏿'
            - '🖕🏿'
            - '👇🏿'
            - '☝🏿'
            - '👍🏿'
            - '👎🏿'
            - '✊🏿'
            - '👊🏿'
            - '🤛🏿'
            - '🤜🏿'
            - '👏🏿'
            - '🫶🏿'
            - '🙌🏿'
            - '👐🏿'
            - '🤲🏿'
            - '🙏🏿'
            - '✍🏿'
            - '🤳🏿'
            - '💪🏿'
            - '🦵🏿'
            - '🦶🏿'
            - '👂🏿'
            - '🦻🏿'
            - '👃🏿'
            - '👶🏿'
            - '👧🏿'
            - '🧒🏿'
            - '👦🏿'
            - '👩🏿'
            - '🧑🏿'
            - '👨🏿'
            - '👩🏿‍🦱'
            - '🧑🏿‍🦱'
            - '👨🏿‍🦱'
            - '👩🏿‍🦰'
            - '🧑🏿‍🦰'
            - '👨🏿‍🦰'
            - '👱🏿‍♀️'
            - '👱🏿'
            - '👱🏿‍♂️'
            - '👩🏿‍🦳'
            - '🧑🏿‍🦳'
            - '👨🏿‍🦳'
            - '👩🏿‍🦲'
            - '🧑🏿‍🦲'
            - '👨🏿‍🦲'
            - '🧔🏿‍♀️'
            - '🧔🏿'
            - '🧔🏿‍♂️'
            - '👵🏿'
            - '🧓🏿'
            - '👴🏿'
            - '👲🏿'
            - '👳🏿‍♀️'
            - '👳🏿'
            - '👳🏿‍♂️'
            - '🧕🏿'
            - '👮🏿‍♀️'
            - '👮🏿'
            - '👮🏿‍♂️'
            - '👷🏿‍♀️'
            - '👷🏿'
            - '👷🏿‍♂️'
            - '💂🏿‍♀️'
            - '💂🏿'
            - '💂🏿‍♂️'
            - '🕵🏿‍♀️'
            - '🕵🏿'
            - '🕵🏿‍♂️'
            - '👩🏿‍⚕️'
            - '🧑🏿‍⚕️'
            - '👨🏿‍⚕️'
            - '👩🏿‍🌾'
            - '🧑🏿‍🌾'
            - '👨🏿‍🌾'
            - '👩🏿‍🍳'
            - '🧑🏿‍🍳'
            - '👨🏿‍🍳'
            - '👩🏿‍🎓'
            - '🧑🏿‍🎓'
            - '👨🏿‍🎓'
            - '👩🏿‍🎤'
            - '🧑🏿‍🎤'
            - '👨🏿‍🎤'
            - '👩🏿‍🏫'
            - '🧑🏿‍🏫'
            - '👨🏿‍🏫'
            - '👩🏿‍🏭'
            - '🧑🏿‍🏭'
            - '👨🏿‍🏭'
            - '👩🏿‍💻'
            - '🧑🏿‍💻'
            - '👨🏿‍💻'
            - '👩🏿‍💼'
            - '🧑🏿‍💼'
            - '👨🏿‍💼'
            - '👩🏿‍🔧'
            - '🧑🏿‍🔧'
            - '👨🏿‍🔧'
            - '👩🏿‍🔬'
            - '🧑🏿‍🔬'
            - '👨🏿‍🔬'
            - '👩🏿‍🎨'
            - '🧑🏿‍🎨'
            - '👨🏿‍🎨'
            - '👩🏿‍🚒'
            - '🧑🏿‍🚒'
            - '👨🏿‍🚒'
            - '👩🏿‍✈️'
            - '🧑🏿‍✈️'
            - '👨🏿‍✈️'
            - '👩🏿‍🚀'
            - '🧑🏿‍🚀'
            - '👨🏿‍🚀'
            - '👩🏿‍⚖️'
            - '🧑🏿‍⚖️'
            - '👨🏿‍⚖️'
            - '👰🏿‍♀️'
            - '👰🏿'
            - '👰🏿‍♂️'
            - '🤵🏿‍♀️'
            - '🤵🏿'
            - '🤵🏿‍♂️'
            - '👸🏿'
            - '🫅🏿'
            - '🤴🏿'
            - '🥷🏿'
            - '🦸🏿‍♀️'
            - '🦸🏿'
            - '🦸🏿‍♂️'
            - '🦹🏿‍♀️'
            - '🦹🏿'
            - '🦹🏿‍♂️'
            - '🤶🏿'
            - '🧑🏿‍🎄'
            - '🎅🏿'
            - '🧙🏿‍♀️'
            - '🧙🏿'
            - '🧙🏿‍♂️'
            - '🧝🏿‍♀️'
            - '🧝🏿'
            - '🧝🏿‍♂️'
            - '🧛🏿‍♀️'
            - '🧛🏿'
            - '🧛🏿‍♂️'
            - '🧜🏿‍♀️'
            - '🧜🏿'
            - '🧜🏿‍♂️'
            - '🧚🏿‍♀️'
            - '🧚🏿'
            - '🧚🏿‍♂️'
            - '👼🏿'
            - '🤰🏿'
            - '🫄🏿'
            - '🫃🏿'
            - '🤱🏿'
            - '👩🏿‍🍼'
            - '🧑🏿‍🍼'
            - '👨🏿‍🍼'
            - '🙇🏿‍♀️'
            - '🙇🏿'
            - '🙇🏿‍♂️'
            - '💁🏿‍♀️'
            - '💁🏿'
            - '💁🏿‍♂️'
            - '🙅🏿‍♀️'
            - '🙅🏿'
            - '🙅🏿‍♂️'
            - '🙆🏿‍♀️'
            - '🙆🏿'
            - '🙆🏿‍♂️'
            - '🙋🏿‍♀️'
            - '🙋🏿'
            - '🙋🏿‍♂️'
            - '🧏🏿‍♀️'
            - '🧏🏿'
            - '🧏🏿‍♂️'
            - '🤦🏿‍♀️'
            - '🤦🏿'
            - '🤦🏿‍♂️'
            - '🤷🏿‍♀️'
            - '🤷🏿'
            - '🤷🏿‍♂️'
            - '🙎🏿‍♀️'
            - '🙎🏿'
            - '🙎🏿‍♂️'
            - '🙍🏿‍♀️'
            - '🙍🏿'
            - '🙍🏿‍♂️'
            - '💇🏿‍♀️'
            - '💇🏿'
            - '💇🏿‍♂️'
            - '💆🏿‍♀️'
            - '💆🏿'
            - '💆🏿‍♂️'
            - '🧖🏿‍♀️'
            - '🧖🏿'
            - '🧖🏿‍♂️'
            - '💃🏿'
            - '🕺🏿'
            - '🕴🏿'
            - '👩🏿‍🦽'
            - '🧑🏿‍🦽'
            - '👨🏿‍🦽'
            - '👩🏿‍🦼'
            - '🧑🏿‍🦼'
            - '👨🏿‍🦼'
            - '🚶🏿‍♀️'
            - '🚶🏿'
            - '🚶🏿‍♂️'
            - '👩🏿‍🦯'
            - '🧑🏿‍🦯'
            - '👨🏿‍🦯'
            - '🧎🏿‍♀️'
            - '🧎🏿'
            - '🧎🏿‍♂️'
            - '🏃🏿‍♀️'
            - '🏃🏿'
            - '🏃🏿‍♂️'
            - '🧍🏿‍♀️'
            - '🧍🏿'
            - '🧍🏿‍♂️'
            - '👭🏿'
            - '🧑🏿‍🤝‍🧑🏿'
            - '👬🏿'
            - '👫🏿'
            - '🧗🏿‍♀️'
            - '🧗🏿'
            - '🧗🏿‍♂️'
            - '🏇🏿'
            - '🏂🏿'
            - '🏌🏿‍♀️'
            - '🏌🏿'
            - '🏌🏿‍♂️'
            - '🏄🏿‍♀️'
            - '🏄🏿'
            - '🏄🏿‍♂️'
            - '🚣🏿‍♀️'
            - '🚣🏿'
            - '🚣🏿‍♂️'
            - '🏊🏿‍♀️'
            - '🏊🏿'
            - '🏊🏿‍♂️'
            - '⛹🏿‍♀️'
            - '⛹🏿'
            - '⛹🏿‍♂️'
            - '🏋🏿‍♀️'
            - '🏋🏿'
            - '🏋🏿‍♂️'
            - '🚴🏿‍♀️'
            - '🚴🏿'
            - '🚴🏿‍♂️'
            - '🚵🏿‍♀️'
            - '🚵🏿'
            - '🚵🏿‍♂️'
            - '🤸🏿‍♀️'
            - '🤸🏿'
            - '🤸🏿‍♂️'
            - '🤽🏿‍♀️'
            - '🤽🏿'
            - '🤽🏿‍♂️'
            - '🤾🏿‍♀️'
            - '🤾🏿'
            - '🤾🏿‍♂️'
            - '🤹🏿‍♀️'
            - '🤹🏿'
            - '🤹🏿‍♂️'
            - '🧘🏿‍♀️'
            - '🧘🏿'
            - '🧘🏿‍♂️'
            - '🛀🏿'
            - '🛌🏿'
            - '🐶'
            - '🐱'
            - '🐭'
            - '🐹'
            - '🐰'
            - '🦊'
            - '🐻'
            - '🐼'
            - '🐻‍❄️'
            - '🐨'
            - '🐯'
            - '🦁'
            - '🐮'
            - '🐷'
            - '🐽'
            - '🐸'
            - '🐵'
            - '🙈'
            - '🙉'
            - '🙊'
            - '🐒'
            - '🐔'
            - '🐧'
            - '🐦'
            - '🐤'
            - '🐣'
            - '🐥'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains:
        - '🤷🏼'
        - '🤷🏼‍♂️'
        - '🙎🏼‍♀️'
        - '🙎🏼'
        - '🙎🏼‍♂️'
        - '🙍🏼‍♀️'
        - '🙍🏼'
        - '🙍🏼‍♂️'
        - '💇🏼‍♀️'
        - '💇🏼'
        - '💇🏼‍♂️'
        - '💆🏼‍♀️'
        - '💆🏼'
        - '💆🏼‍♂️'
        - '🧖🏼‍♀️'
        - '🧖🏼'
        - '🧖🏼‍♂️'
        - '💃🏼'
        - '🕺🏼'
        - '🕴🏼'
        - '👩🏼‍🦽'
        - '🧑🏼‍🦽'
        - '👨🏼‍🦽'
        - '👩🏼‍🦼'
        - '🧑🏼‍🦼'
        - '👨🏼‍🦼'
        - '🚶🏼‍♀️'
        - '🚶🏼'
        - '🚶🏼‍♂️'
        - '👩🏼‍🦯'
        - '🧑🏼‍🦯'
        - '👨🏼‍🦯'
        - '🧎🏼‍♀️'
        - '🧎🏼'
        - '🧎🏼‍♂️'
        - '🏃🏼‍♀️'
        - '🏃🏼'
        - '🏃🏼‍♂️'
        - '🧍🏼‍♀️'
        - '🧍🏼'
        - '🧍🏼‍♂️'
        - '👭🏼'
        - '🧑🏼‍🤝‍🧑🏼'
        - '👬🏼'
        - '👫🏼'
        - '🧗🏼‍♀️'
        - '🧗🏼'
        - '🧗🏼‍♂️'
        - '🏇🏼'
        - '🏂🏼'
        - '🏌🏼‍♀️'
        - '🏌🏼'
        - '🏌🏼‍♂️'
        - '🏄🏼‍♀️'
        - '🏄🏼'
        - '🏄🏼‍♂️'
        - '🚣🏼‍♀️'
        - '🚣🏼'
        - '🚣🏼‍♂️'
        - '🏊🏼‍♀️'
        - '🏊🏼'
        - '🏊🏼‍♂️'
        - '⛹🏼‍♀️'
        - '⛹🏼'
        - '⛹🏼‍♂️'
        - '🏋🏼‍♀️'
        - '🏋🏼'
        - '🏋🏼‍♂️'
        - '🚴🏼‍♀️'
        - '🚴🏼'
        - '🚴🏼‍♂️'
        - '🚵🏼‍♀️'
        - '🚵🏼'
        - '🚵🏼‍♂️'
        - '🤸🏼‍♀️'
        - '🤸🏼'
        - '🤸🏼‍♂️'
        - '🤽🏼‍♀️'
        - '🤽🏼'
        - '🤽🏼‍♂️'
        - '🤾🏼‍♀️'
        - '🤾🏼'
        - '🤾🏼‍♂️'
        - '🤹🏼‍♀️'
        - '🤹🏼'
        - '🤹🏼‍♂️'
        - '🧘🏼‍♀️'
        - '🧘🏼'
        - '🧘🏼‍♂️'
        - '🛀🏼'
        - '🛌🏼'
        - '👋🏽'
        - '🤚🏽'
        - '🖐🏽'
        - '✋🏽'
        - '🖖🏽'
        - '👌🏽'
        - '🤌🏽'
        - '🤏🏽'
        - '✌🏽'
        - '🤞🏽'
        - '🫰🏽'
        - '🤟🏽'
        - '🤘🏽'
        - '🤙🏽'
        - '🫵🏽'
        - '🫱🏽'
        - '🫲🏽'
        - '🫳🏽'
        - '🫴🏽'
        - '👈🏽'
        - '👉🏽'
        - '👆🏽'
        - '🖕🏽'
        - '👇🏽'
        - '☝🏽'
        - '👍🏽'
        - '👎🏽'
        - '✊🏽'
        - '👊🏽'
        - '🤛🏽'
        - '🤜🏽'
        - '👏🏽'
        - '🫶🏽'
        - '🙌🏽'
        - '👐🏽'
        - '🤲🏽'
        - '🙏🏽'
        - '✍🏽'
        - '💪🏽'
        - '🦵🏽'
        - '🦶🏽'
        - '👂🏽'
        - '🦻🏽'
        - '👃🏽'
        - '👶🏽'
        - '👧🏽'
        - '🧒🏽'
        - '👦🏽'
        - '👩🏽'
        - '🧑🏽'
        - '👨🏽'
        - '👩🏽‍🦱'
        - '🧑🏽‍🦱'
        - '👨🏽‍🦱'
        - '👩🏽‍🦰'
        - '🧑🏽‍🦰'
        - '👨🏽‍🦰'
        - '👱🏽‍♀️'
        - '👱🏽'
        - '👱🏽‍♂️'
        - '👩🏽‍🦳'
        - '🧑🏽‍🦳'
        - '👨🏽‍🦳'
        - '👩🏽‍🦲'
        - '🧑🏽‍🦲'
        - '👨🏽‍🦲'
        - '🧔🏽‍♀️'
        - '🧔🏽'
        - '🧔🏽‍♂️'
        - '👵🏽'
        - '🧓🏽'
        - '👴🏽'
        - '👲🏽'
        - '👳🏽‍♀️'
        - '👳🏽'
        - '👳🏽‍♂️'
        - '🧕🏽'
        - '👮🏽‍♀️'
        - '👮🏽'
        - '👮🏽‍♂️'
        - '👷🏽‍♀️'
        - '👷🏽'
        - '👷🏽‍♂️'
        - '💂🏽‍♀️'
        - '💂🏽'
        - '💂🏽‍♂️'
        - '🕵🏽‍♀️'
        - '🕵🏽'
        - '🕵🏽‍♂️'
        - '👩🏽‍⚕️'
        - '🧑🏽‍⚕️'
        - '👨🏽‍⚕️'
        - '👩🏽‍🌾'
        - '🧑🏽‍🌾'
        - '👨🏽‍🌾'
        - '👩🏽‍🍳'
        - '🧑🏽‍🍳'
        - '👨🏽‍🍳'
        - '👩🏽‍🎓'
        - '🧑🏽‍🎓'
        - '👨🏽‍🎓'
        - '👩🏽‍🎤'
        - '🧑🏽‍🎤'
        - '👨🏽‍🎤'
        - '👩🏽‍🏫'
        - '🧑🏽‍🏫'
        - '👨🏽‍🏫'
        - '👩🏽‍🏭'
        - '🧑🏽‍🏭'
        - '👨🏽‍🏭'
        - '👩🏽‍💻'
        - '🧑🏽‍💻'
        - '👨🏽‍💻'
        - '👩🏽‍💼'
        - '🧑🏽‍💼'
        - '👨🏽‍💼'
        - '👩🏽‍🔧'
        - '🧑🏽‍🔧'
        - '👨🏽‍🔧'
        - '👩🏽‍🔬'
        - '🧑🏽‍🔬'
        - '👨🏽‍🔬'
        - '👩🏽‍🎨'
        - '🧑🏽‍🎨'
        - '👨🏽‍🎨'
        - '👩🏽‍🚒'
        - '🧑🏽‍🚒'
        - '👨🏽‍🚒'
        - '👩🏽‍✈️'
        - '🧑🏽‍✈️'
        - '👨🏽‍✈️'
        - '👩🏽‍🚀'
        - '🧑🏽‍🚀'
        - '👨🏽‍🚀'
        - '👩🏽‍⚖️'
        - '🧑🏽‍⚖️'
        - '👨🏽‍⚖️'
        - '👰🏽‍♀️'
        - '👰🏽'
        - '👰🏽‍♂️'
        - '🤵🏽‍♀️'
        - '🤵🏽'
        - '🤵🏽‍♂️'
        - '👸🏽'
        - '🫅🏽'
        - '🤴🏽'
        - '🥷🏽'
        - '🦸🏽‍♀️'
        - '🦸🏽'
        - '🦸🏽‍♂️'
        - '🦹🏽‍♀️'
        - '🦹🏽'
        - '🦹🏽‍♂️'
        - '🤶🏽'
        - '🧑🏽‍🎄'
        - '🎅🏽'
        - '🧙🏽‍♀️'
        - '🧙🏽'
        - '🧙🏽‍♂️'
        - '🧝🏽‍♀️'
        - '🧝🏽'
        - '🧝🏽‍♂️'
        - '🧛🏽‍♀️'
        - '🧛🏽'
        - '🧛🏽‍♂️'
        - '🧜🏽‍♀️'
        - '🧜🏽'
        - '🧜🏽‍♂️'
        - '🧚🏽‍♀️'
        - '🧚🏽'
        - '🧚🏽‍♂️'
        - '👼🏽'
        - '🤰🏽'
        - '🫄🏽'
        - '🫃🏽'
        - '🤱🏽'
        - '👩🏽‍🍼'
        - '🧑🏽‍🍼'
        - '👨🏽‍🍼'
        - '🙇🏽‍♀️'
        - '🙇🏽'
        - '🙇🏽‍♂️'
        - '💁🏽‍♀️'
        - '💁🏽'
        - '💁🏽‍♂️'
        - '🙅🏽‍♀️'
        - '🙅🏽'
        - '🙅🏽‍♂️'
        - '🙆🏽‍♀️'
        - '🙆🏽'
        - '🙆🏽‍♂️'
        - '🙋🏽‍♀️'
        - '🙋🏽'
        - '🙋🏽‍♂️'
        - '🧏🏽‍♀️'
        - '🧏🏽'
        - '🧏🏽‍♂️'
        - '🤦🏽‍♀️'
        - '🤦🏽'
        - '🤦🏽‍♂️'
        - '🤷🏽‍♀️'
        - '🤷🏽'
        - '🤷🏽‍♂️'
        - '🙎🏽‍♀️'
        - '🙎🏽'
        - '🙎🏽‍♂️'
        - '🙍🏽‍♀️'
        - '🙍🏽'
        - '🙍🏽‍♂️'
        - '💇🏽‍♀️'
        - '💇🏽'
        - '💇🏽‍♂️'
        - '💆🏽‍♀️'
        - '💆🏽'
        - '💆🏽‍♂️'
        - '🧖🏽‍♀️'
        - '🧖🏽'
        - '🧖🏽‍♂️'
        - '💃🏽'
        - '🕺🏽'
        - '🕴🏽'
        - '👩🏽‍🦽'
        - '🧑🏽‍🦽'
        - '👨🏽‍🦽'
        - '👩🏽‍🦼'
        - '🧑🏽‍🦼'
        - '👨🏽‍🦼'
        - '🚶🏽‍♀️'
        - '🚶🏽'
        - '🚶🏽‍♂️'
        - '👩🏽‍🦯'
        - '🧑🏽‍🦯'
        - '👨🏽‍🦯'
        - '🧎🏽‍♀️'
        - '🧎🏽'
        - '🧎🏽‍♂️'
        - '🏃🏽‍♀️'
        - '🏃🏽'
        - '🏃🏽‍♂️'
        - '🧍🏽‍♀️'
        - '🧍🏽'
        - '🧍🏽‍♂️'
        - '👭🏽'
        - '🧑🏽‍🤝‍🧑🏽'
        - '👬🏽'
        - '👫🏽'
        - '🧗🏽‍♀️'
        - '🧗🏽'
        - '🧗🏽‍♂️'
        - '🏇🏽'
        - '🏂🏽'
        - '🏌🏽‍♀️'
        - '🏌🏽'
        - '🏌🏽‍♂️'
        - '🏄🏽‍♀️'
        - '🏄🏽'
        - '🏄🏽‍♂️'
        - '🚣🏽‍♀️'
        - '🚣🏽'
        - '🚣🏽‍♂️'
        - '🏊🏽‍♀️'
        - '🏊🏽'
        - '🏊🏽‍♂️'
        - '⛹🏽‍♀️'
        - '⛹🏽'
        - '⛹🏽‍♂️'
        - '🏋🏽‍♀️'
        - '🏋🏽'
        - '🏋🏽‍♂️'
        - '🚴🏽‍♀️'
        - '🚴🏽'
        - '🚴🏽‍♂️'
        - '🚵🏽‍♀️'
        - '🚵🏽'
        - '🚵🏽‍♂️'
        - '🤸🏽‍♀️'
        - '🤸🏽'
        - '🤸🏽‍♂️'
        - '🤽🏽‍♀️'
        - '🤽🏽'
        - '🤽🏽‍♂️'
        - '🤾🏽‍♀️'
        - '🤾🏽'
        - '🤾🏽‍♂️'
        - '🤹🏽‍♀️'
        - '🤹🏽'
        - '🤹🏽‍♂️'
        - '🧘🏽‍♀️'
        - '🧘🏽'
        - '🧘🏽‍♂️'
        - '🛀🏽'
        - '🛌🏽'
        - '👋🏾'
        - '🤚🏾'
        - '🖐🏾'
        - '✋🏾'
        - '🖖🏾'
        - '👌🏾'
        - '🤌🏾'
        - '🤏🏾'
        - '✌🏾'
        - '🤞🏾'
        - '🫰🏾'
        - '🤟🏾'
        - '🤘🏾'
        - '🤙🏾'
        - '🫵🏾'
        - '🫱🏾'
        - '🫲🏾'
        - '🫳🏾'
        - '🫴🏾'
        - '👈🏾'
        - '👉🏾'
        - '👆🏾'
        - '🖕🏾'
        - '👇🏾'
        - '☝🏾'
        - '👍🏾'
        - '👎🏾'
        - '✊🏾'
        - '👊🏾'
        - '🤛🏾'
        - '🤜🏾'
        - '👏🏾'
        - '🫶🏾'
        - '🙌🏾'
        - '👐🏾'
        - '🤲🏾'
        - '🙏🏾'
        - '✍🏾'
        - '💪🏾'
        - '🦵🏾'
        - '🦶🏾'
        - '👂🏾'
        - '🦻🏾'
        - '👃🏾'
        - '👶🏾'
        - '👧🏾'
        - '🧒🏾'
        - '👦🏾'
        - '👩🏾'
        - '🧑🏾'
        - '👨🏾'
        - '👩🏾‍🦱'
        - '🧑🏾‍🦱'
        - '👨🏾‍🦱'
        - '👩🏾‍🦰'
        - '🧑🏾‍🦰'
        - '👨🏾‍🦰'
        - '👱🏾‍♀️'
        - '👱🏾'
        - '👱🏾‍♂️'
        - '👩🏾‍🦳'
        - '🧑🏾‍🦳'
        - '👨🏾‍🦳'
        - '👩🏾‍🦲'
        - '🧑🏾‍🦲'
        - '👨🏾‍🦲'
        - '🧔🏾‍♀️'
        - '🧔🏾'
        - '🧔🏾‍♂️'
        - '👵🏾'
        - '🧓🏾'
        - '👴🏾'
        - '👲🏾'
        - '👳🏾‍♀️'
        - '👳🏾'
        - '👳🏾‍♂️'
        - '🧕🏾'
        - '👮🏾‍♀️'
        - '👮🏾'
        - '👮🏾‍♂️'
        - '👷🏾‍♀️'
        - '👷🏾'
        - '👷🏾‍♂️'
        - '💂🏾‍♀️'
        - '💂🏾'
        - '💂🏾‍♂️'
        - '🕵🏾‍♀️'
        - '🕵🏾'
        - '🕵🏾‍♂️'
        - '👩🏾‍⚕️'
        - '🧑🏾‍⚕️'
        - '👨🏾‍⚕️'
        - '👩🏾‍🌾'
        - '🧑🏾‍🌾'
        - '👨🏾‍🌾'
        - '👩🏾‍🍳'
        - '🧑🏾‍🍳'
        - '👨🏾‍🍳'
        - '👩🏾‍🎓'
        - '🧑🏾‍🎓'
        - '👨🏾‍🎓'
        - '👩🏾‍🎤'
        - '🧑🏾‍🎤'
        - '👨🏾‍🎤'
        - '👩🏾‍🏫'
        - '🧑🏾‍🏫'
        - '👨🏾‍🏫'
        - '👩🏾‍🏭'
        - '🧑🏾‍🏭'
        - '👨🏾‍🏭'
        - '👩🏾‍💻'
        - '🧑🏾‍💻'
        - '👨🏾‍💻'
        - '👩🏾‍💼'
        - '🧑🏾‍💼'
        - '👨🏾‍💼'
        - '👩🏾‍🔧'
        - '🧑🏾‍🔧'
        - '👨🏾‍🔧'
        - '👩🏾‍🔬'
        - '🧑🏾‍🔬'
        - '👨🏾‍🔬'
        - '👩🏾‍🎨'
        - '🧑🏾‍🎨'
        - '👨🏾‍🎨'
        - '👩🏾‍🚒'
        - '🧑🏾‍🚒'
        - '👨🏾‍🚒'
        - '👩🏾‍✈️'
        - '🧑🏾‍✈️'
        - '👨🏾‍✈️'
        - '👩🏾‍🚀'
        - '🧑🏾‍🚀'
        - '👨🏾‍🚀'
        - '👩🏾‍⚖️'
        - '🧑🏾‍⚖️'
        - '👨🏾‍⚖️'
        - '👰🏾‍♀️'
        - '👰🏾'
        - '👰🏾‍♂️'
        - '🤵🏾‍♀️'
        - '🤵🏾'
        - '🤵🏾‍♂️'
        - '👸🏾'
        - '🫅🏾'
        - '🤴🏾'
        - '🥷🏾'
        - '🦸🏾‍♀️'
        - '🦸🏾'
        - '🦸🏾‍♂️'
        - '🦹🏾‍♀️'
        - '🦹🏾'
        - '🦹🏾‍♂️'
        - '🤶🏾'
        - '🧑🏾‍🎄'
        - '🎅🏾'
        - '🧙🏾‍♀️'
        - '🧙🏾'
        - '🧙🏾‍♂️'
        - '🧝🏾‍♀️'
        - '🧝🏾'
        - '🧝🏾‍♂️'
        - '🧛🏾‍♀️'
        - '🧛🏾'
        - '🧛🏾‍♂️'
        - '🧜🏾‍♀️'
        - '🧜🏾'
        - '🧜🏾‍♂️'
        - '🧚🏾‍♀️'
        - '🧚🏾'
        - '🧚🏾‍♂️'
        - '👼🏾'
        - '🤰🏾'
        - '🫄🏾'
        - '🫃🏾'
        - '🤱🏾'
        - '👩🏾‍🍼'
        - '🧑🏾‍🍼'
        - '👨🏾‍🍼'
        - '🙇🏾‍♀️'
        - '🙇🏾'
        - '🙇🏾‍♂️'
        - '💁🏾‍♀️'
        - '💁🏾'
        - '💁🏾‍♂️'
        - '🙅🏾‍♀️'
        - '🙅🏾'
        - '🙅🏾‍♂️'
        - '🙆🏾‍♀️'
        - '🙆🏾'
        - '🙆🏾‍♂️'
        - '🙋🏾‍♀️'
        - '🙋🏾'
        - '🙋🏾‍♂️'
        - '🧏🏾‍♀️'
        - '🧏🏾'
        - '🧏🏾‍♂️'
        - '🤦🏾‍♀️'
        - '🤦🏾'
        - '🤦🏾‍♂️'
        - '🤷🏾‍♀️'
        - '🤷🏾'
        - '🤷🏾‍♂️'
        - '🙎🏾‍♀️'
        - '🙎🏾'
        - '🙎🏾‍♂️'
        - '🙍🏾‍♀️'
        - '🙍🏾'
        - '🙍🏾‍♂️'
        - '💇🏾‍♀️'
        - '💇🏾'
        - '💇🏾‍♂️'
        - '💆🏾‍♀️'
        - '💆🏾'
        - '💆🏾‍♂️'
        - '🧖🏾‍♀️'
        - '🧖🏾'
        - '🧖🏾‍♂️'
        - '💃🏾'
        - '🕺🏾'
        - '👩🏾‍🦽'
        - '🧑🏾‍🦽'
        - '👨🏾‍🦽'
        - '👩🏾‍🦼'
        - '🧑🏾‍🦼'
        - '👨🏾‍🦼'
        - '🚶🏾‍♀️'
        - '🚶🏾'
        - '🚶🏾‍♂️'
        - '👩🏾‍🦯'
        - '🧑🏾‍🦯'
        - '👨🏾‍🦯'
        - '🧎🏾‍♀️'
        - '🧎🏾'
        - '🧎🏾‍♂️'
        - '🏃🏾‍♀️'
        - '🏃🏾'
        - '🏃🏾‍♂️'
        - '🧍🏾‍♀️'
        - '🧍🏾'
        - '🧍🏾‍♂️'
        - '👭🏾'
        - '🧑🏾‍🤝‍🧑🏾'
        - '👬🏾'
        - '👫🏾'
        - '🧗🏾‍♀️'
        - '🧗🏾'
        - '🧗🏾‍♂️'
        - '🏇🏾'
        - '🏂🏾'
        - '🏌🏾‍♀️'
        - '🏌🏾'
        - '🏌🏾‍♂️'
        - '🏄🏾‍♀️'
        - '🏄🏾'
        - '🏄🏾‍♂️'
        - '🚣🏾‍♀️'
        - '🚣🏾'
        - '🚣🏾‍♂️'
        - '🏊🏾‍♀️'
        - '🏊🏾'
        - '🏊🏾‍♂️'
        - '⛹🏾‍♀️'
        - '⛹🏾'
        - '⛹🏾‍♂️'
        - '🏋🏾‍♀️'
        - '🏋🏾'
        - '🏋🏾‍♂️'
        - '🚴🏾‍♀️'
        - '🚴🏾'
        - '🚴🏾‍♂️'
        - '🚵🏾‍♀️'
        - '🚵🏾'
        - '🚵🏾‍♂️'
        - '🤸🏾‍♀️'
        - '🤸🏾'
        - '🤸🏾‍♂️'
        - '🤽🏾‍♀️'
        - '🤽🏾'
        - '🤽🏾‍♂️'
        - '🤾🏾‍♀️'
        - '🤾🏾'
        - '🤾🏾‍♂️'
        - '🤹🏾‍♀️'
        - '🤹🏾'
        - '🤹🏾‍♂️'
        - '🧘🏾‍♀️'
        - '🧘🏾'
        - '🧘🏾‍♂️'
        - '🛀🏾'
        - '🛌🏾'
        - '👋🏿'
        - '🤚🏿'
        - '🖐🏿'
        - '✋🏿'
        - '🖖🏿'
        - '👌🏿'
        - '🤌🏿'
        - '🤏🏿'
        - '✌🏿'
        - '🤞🏿'
        - '🫰🏿'
        - '🤟🏿'
        - '🤘🏿'
        - '🤙🏿'
        - '🫵🏿'
        - '🫱🏿'
        - '🫲🏿'
        - '🫳🏿'
        - '🫴🏿'
        - '👈🏿'
        - '👉🏿'
        - '👆🏿'
        - '🖕🏿'
        - '👇🏿'
        - '☝🏿'
        - '👍🏿'
        - '👎🏿'
        - '✊🏿'
        - '👊🏿'
        - '🤛🏿'
        - '🤜🏿'
        - '👏🏿'
        - '🫶🏿'
        - '🙌🏿'
        - '👐🏿'
        - '🤲🏿'
        - '🙏🏿'
        - '✍🏿'
        - '🤳🏿'
        - '💪🏿'
        - '🦵🏿'
        - '🦶🏿'
        - '👂🏿'
        - '🦻🏿'
        - '👃🏿'
        - '👶🏿'
        - '👧🏿'
        - '🧒🏿'
        - '👦🏿'
        - '👩🏿'
        - '🧑🏿'
        - '👨🏿'
        - '👩🏿‍🦱'
        - '🧑🏿‍🦱'
        - '👨🏿‍🦱'
        - '👩🏿‍🦰'
        - '🧑🏿‍🦰'
        - '👨🏿‍🦰'
        - '👱🏿‍♀️'
        - '👱🏿'
        - '👱🏿‍♂️'
        - '👩🏿‍🦳'
        - '🧑🏿‍🦳'
        - '👨🏿‍🦳'
        - '👩🏿‍🦲'
        - '🧑🏿‍🦲'
        - '👨🏿‍🦲'
        - '🧔🏿‍♀️'
        - '🧔🏿'
        - '🧔🏿‍♂️'
        - '👵🏿'
        - '🧓🏿'
        - '👴🏿'
        - '👲🏿'
        - '👳🏿‍♀️'
        - '👳🏿'
        - '👳🏿‍♂️'
        - '🧕🏿'
        - '👮🏿‍♀️'
        - '👮🏿'
        - '👮🏿‍♂️'
        - '👷🏿‍♀️'
        - '👷🏿'
        - '👷🏿‍♂️'
        - '💂🏿‍♀️'
        - '💂🏿'
        - '💂🏿‍♂️'
        - '🕵🏿‍♀️'
        - '🕵🏿'
        - '🕵🏿‍♂️'
        - '👩🏿‍⚕️'
        - '🧑🏿‍⚕️'
        - '👨🏿‍⚕️'
        - '👩🏿‍🌾'
        - '🧑🏿‍🌾'
        - '👨🏿‍🌾'
        - '👩🏿‍🍳'
        - '🧑🏿‍🍳'
        - '👨🏿‍🍳'
        - '👩🏿‍🎓'
        - '🧑🏿‍🎓'
        - '👨🏿‍🎓'
        - '👩🏿‍🎤'
        - '🧑🏿‍🎤'
        - '👨🏿‍🎤'
        - '👩🏿‍🏫'
        - '🧑🏿‍🏫'
        - '👨🏿‍🏫'
        - '👩🏿‍🏭'
        - '🧑🏿‍🏭'
        - '👨🏿‍🏭'
        - '👩🏿‍💻'
        - '🧑🏿‍💻'
        - '👨🏿‍💻'
        - '👩🏿‍💼'
        - '🧑🏿‍💼'
        - '👨🏿‍💼'
        - '👩🏿‍🔧'
        - '🧑🏿‍🔧'
        - '👨🏿‍🔧'
        - '👩🏿‍🔬'
        - '🧑🏿‍🔬'
        - '👨🏿‍🔬'
        - '👩🏿‍🎨'
        - '🧑🏿‍🎨'
        - '👨🏿‍🎨'
        - '👩🏿‍🚒'
        - '🧑🏿‍🚒'
        - '👨🏿‍🚒'
        - '👩🏿‍✈️'
        - '🧑🏿‍✈️'
        - '👨🏿‍✈️'
        - '👩🏿‍🚀'
        - '🧑🏿‍🚀'
        - '👨🏿‍🚀'
        - '👩🏿‍⚖️'
        - '🧑🏿‍⚖️'
        - '👨🏿‍⚖️'
        - '👰🏿‍♀️'
        - '👰🏿'
        - '👰🏿‍♂️'
        - '🤵🏿‍♀️'
        - '🤵🏿'
        - '🤵🏿‍♂️'
        - '👸🏿'
        - '🫅🏿'
        - '🤴🏿'
        - '🥷🏿'
        - '🦸🏿‍♀️'
        - '🦸🏿'
        - '🦸🏿‍♂️'
        - '🦹🏿‍♀️'
        - '🦹🏿'
        - '🦹🏿‍♂️'
        - '🤶🏿'
        - '🧑🏿‍🎄'
        - '🎅🏿'
        - '🧙🏿‍♀️'
        - '🧙🏿'
        - '🧙🏿‍♂️'
        - '🧝🏿‍♀️'
        - '🧝🏿'
        - '🧝🏿‍♂️'
        - '🧛🏿‍♀️'
        - '🧛🏿'
        - '🧛🏿‍♂️'
        - '🧜🏿‍♀️'
        - '🧜🏿'
        - '🧜🏿‍♂️'
        - '🧚🏿‍♀️'
        - '🧚🏿'
        - '🧚🏿‍♂️'
        - '👼🏿'
        - '🤰🏿'
        - '🫄🏿'
        - '🫃🏿'
        - '🤱🏿'
        - '👩🏿‍🍼'
        - '🧑🏿‍🍼'
        - '👨🏿‍🍼'
        - '🙇🏿‍♀️'
        - '🙇🏿'
        - '🙇🏿‍♂️'
        - '💁🏿‍♀️'
        - '💁🏿'
        - '💁🏿‍♂️'
        - '🙅🏿‍♀️'
        - '🙅🏿'
        - '🙅🏿‍♂️'
        - '🙆🏿‍♀️'
        - '🙆🏿'
        - '🙆🏿‍♂️'
        - '🙋🏿‍♀️'
        - '🙋🏿'
        - '🙋🏿‍♂️'
        - '🧏🏿‍♀️'
        - '🧏🏿'
        - '🧏🏿‍♂️'
        - '🤦🏿‍♀️'
        - '🤦🏿'
        - '🤦🏿‍♂️'
        - '🤷🏿‍♀️'
        - '🤷🏿'
        - '🤷🏿‍♂️'
        - '🙎🏿‍♀️'
        - '🙎🏿'
        - '🙎🏿‍♂️'
        - '🙍🏿‍♀️'
        - '🙍🏿'
        - '🙍🏿‍♂️'
        - '💇🏿‍♀️'
        - '💇🏿'
        - '💇🏿‍♂️'
        - '💆🏿‍♀️'
        - '💆🏿'
        - '💆🏿‍♂️'
        - '🧖🏿‍♀️'
        - '🧖🏿'
        - '🧖🏿‍♂️'
        - '💃🏿'
        - '🕺🏿'
        - '🕴🏿'
        - '👩🏿‍🦽'
        - '🧑🏿‍🦽'
        - '👨🏿‍🦽'
        - '👩🏿‍🦼'
        - '🧑🏿‍🦼'
        - '👨🏿‍🦼'
        - '🚶🏿‍♀️'
        - '🚶🏿'
        - '🚶🏿‍♂️'
        - '👩🏿‍🦯'
        - '🧑🏿‍🦯'
        - '👨🏿‍🦯'
        - '🧎🏿‍♀️'
        - '🧎🏿'
        - '🧎🏿‍♂️'
        - '🏃🏿‍♀️'
        - '🏃🏿'
        - '🏃🏿‍♂️'
        - '🧍🏿‍♀️'
        - '🧍🏿'
        - '🧍🏿‍♂️'
        - '👭🏿'
        - '🧑🏿‍🤝‍🧑🏿'
        - '👬🏿'
        - '👫🏿'
        - '🧗🏿‍♀️'
        - '🧗🏿'
        - '🧗🏿‍♂️'
        - '🏇🏿'
        - '🏂🏿'
        - '🏌🏿‍♀️'
        - '🏌🏿'
        - '🏌🏿‍♂️'
        - '🏄🏿‍♀️'
        - '🏄🏿'
        - '🏄🏿‍♂️'
        - '🚣🏿‍♀️'
        - '🚣🏿'
        - '🚣🏿‍♂️'
        - '🏊🏿‍♀️'
        - '🏊🏿'
        - '🏊🏿‍♂️'
        - '⛹🏿‍♀️'
        - '⛹🏿'
        - '⛹🏿‍♂️'
        - '🏋🏿‍♀️'
        - '🏋🏿'
        - '🏋🏿‍♂️'
        - '🚴🏿‍♀️'
        - '🚴🏿'
        - '🚴🏿‍♂️'
        - '🚵🏿‍♀️'
        - '🚵🏿'
        - '🚵🏿‍♂️'
        - '🤸🏿‍♀️'
        - '🤸🏿'
        - '🤸🏿‍♂️'
        - '🤽🏿‍♀️'
        - '🤽🏿'
        - '🤽🏿‍♂️'
        - '🤾🏿‍♀️'
        - '🤾🏿'
        - '🤾🏿‍♂️'
        - '🤹🏿‍♀️'
        - '🤹🏿'
        - '🤹🏿‍♂️'
        - '🧘🏿‍♀️'
        - '🧘🏿'
        - '🧘🏿‍♂️'
        - '🛀🏿'
        - '🛌🏿'
        - '🐶'
        - '🐱'
        - '🐭'
        - '🐹'
        - '🐰'
        - '🦊'
        - '🐻'
        - '🐼'
        - '🐻‍❄️'
        - '🐨'
        - '🐯'
        - '🦁'
        - '🐮'
        - '🐷'
        - '🐽'
        - '🐸'
        - '🐵'
        - '🙈'
        - '🙉'
        - '🙊'
        - '🐒'
        - '🐔'
        - '🐧'
        - '🐦'
        - '🐤'
        - '🐣'
        - '🐥'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • ☝🏽
  • ☝🏾
  • ☝🏿
  • ⛹🏼
  • ⛹🏼‍♀️
  • ⛹🏼‍♂️
  • ⛹🏽
  • ⛹🏽‍♀️
  • ⛹🏽‍♂️
  • ⛹🏾
  • ⛹🏾‍♀️
  • ⛹🏾‍♂️
  • ⛹🏿
  • ⛹🏿‍♀️
  • ⛹🏿‍♂️
  • ✊🏽
  • ✊🏾
  • ✊🏿
  • ✋🏽
  • ✋🏾
  • ✋🏿
  • ✌🏽
  • ✌🏾
  • ✌🏿
  • ✍🏽
  • ✍🏾
  • ✍🏿
  • 🎅🏽
  • 🎅🏾
  • 🎅🏿
  • 🏂🏼
  • 🏂🏽
  • 🏂🏾
  • 🏂🏿
  • 🏃🏼
  • 🏃🏼‍♀️
  • 🏃🏼‍♂️
  • 🏃🏽
  • 🏃🏽‍♀️
  • 🏃🏽‍♂️
  • +954 more values (see full rule source)
field:"CommandLine" kind:match

Potential POWERTRASH Script Execution

#
Status
test
Severity
high
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects potential execution of the PowerShell script POWERTRASH

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential POWERTRASH Script Execution
id: 4e19528a-f081-40dd-be09-90c39352bd64
status: test
description: Detects potential execution of the PowerShell script POWERTRASH
references:
    - https://labs.withsecure.com/publications/fin7-target-veeam-servers
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-04
tags:
    - attack.execution
    - attack.t1059.001
    - attack.g0046
    - detection.emerging-threats
logsource:
    product: windows
    category: ps_script
    definition: bade5735-5ab0-4aa7-a642-a11be0e40872
detection:
    selection:
        ScriptBlockText|contains|all:
            - 'IO.Compression.DeflateStream'
            - 'IO.MemoryStream'
            - '::FromBase64String'
            - 'GetDelegateForFunctionPointer'
            - '.Invoke()'
            - 'GlobalAssemblyCache'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains|all:
        - 'IO.Compression.DeflateStream'
        - 'IO.MemoryStream'
        - '::FromBase64String'
        - 'GetDelegateForFunctionPointer'
        - '.Invoke()'
        - 'GlobalAssemblyCache'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • .Invoke()
  • ::FromBase64String
  • GetDelegateForFunctionPointer corpus 3 (sigma 3)
  • GlobalAssemblyCache
  • IO.Compression.DeflateStream
  • IO.MemoryStream corpus 3 (splunk 2, sigma 1)
field:"ScriptBlockText" kind:match

Potential Remote Desktop Tunneling

#
Status
test
Severity
medium
Author
Tim Rauch, Elastic (idea)
Source
github.com/SigmaHQ/sigma

Detects potential use of an SSH utility to establish RDP over a reverse SSH Tunnel. This can be used by attackers to enable routing of network packets that would otherwise not reach their intended destination.

MITRE ATT&CK Coverage

TacticTechniques
Lateral Movement

Telemetry Coverage

Rule Body

title: Potential Remote Desktop Tunneling
id: 8a3038e8-9c9d-46f8-b184-66234a160f6f
status: test
description: Detects potential use of an SSH utility to establish RDP over a reverse SSH Tunnel. This can be used by attackers to enable routing of network packets that would otherwise not reach their intended destination.
references:
    - https://www.elastic.co/guide/en/security/current/potential-remote-desktop-tunneling-detected.html
author: Tim Rauch, Elastic (idea)
date: 2022-09-27
tags:
    - attack.lateral-movement
    - attack.t1021
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains: ':3389' # RDP port and usual SSH tunneling related switches in command line
    selection_opt:
        CommandLine|contains:
            - ' -L '
            - ' -P '
            - ' -R '
            - ' -pw '
            - ' -ssh '
    condition: all of selection*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection*

Stage 1: selection

selection:
    CommandLine|contains: ':3389'

Stage 2: selection_opt

selection_opt:
    CommandLine|contains:
        - ' -L '
        - ' -P '
        - ' -R '
        - ' -pw '
        - ' -ssh '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -L corpus 3 (sigma 3)
  • -P corpus 12 (sigma 8, splunk 4)
  • -R corpus 10 (sigma 10)
  • -pw
  • -ssh
  • :3389 corpus 4 (sigma 3, elastic 1)
field:"CommandLine" kind:match

Potentially Suspicious Powershell Script Execution From Temp Folder

#
Status
test
Severity
medium
Author
Florian Roth (Nextron Systems), Max Altgelt (Nextron Systems), Tim Shelton
Source
github.com/SigmaHQ/sigma

Detects a potentially suspicious powershell script executions from temporary folder

Known False Positives

  • Administrative scripts

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potentially Suspicious Powershell Script Execution From Temp Folder
id: a6a39bdb-935c-4f0a-ab77-35f4bbf44d33
status: test
description: Detects a potentially suspicious powershell script executions from temporary folder
references:
    - https://www.microsoft.com/security/blog/2021/07/13/microsoft-discovers-threat-actor-targeting-solarwinds-serv-u-software-with-0-day-exploit/
author: Florian Roth (Nextron Systems), Max Altgelt (Nextron Systems), Tim Shelton
date: 2021-07-14
modified: 2026-02-17
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith:
            - '\powershell.exe'
            - '\pwsh.exe'
        CommandLine|contains:
            - '\Windows\Temp'
            - '\Temporary Internet'
            - '\AppData\Local\Temp'
            - '\AppData\Roaming\Temp'
            - '%TEMP%'
            - '%TMP%'
            - '%LocalAppData%\Temp'
    filter_optional_vscode:
        CommandLine|contains: '-WindowStyle hidden -Verb runAs'
    filter_optional_amazon_ec2:
        CommandLine|contains: '\Windows\system32\config\systemprofile\AppData\Local\Temp\Amazon\EC2-Windows\'
    filter_optional_generic:
        CommandLine|contains:
            - ' >'
            - 'Out-File'
            - 'ConvertTo-Json'
    filter_optional_chocolatey_installer:
        ParentImage:
            - 'C:\Windows\System32\Msiexec.exe'
            - 'C:\Windows\SysWOW64\Msiexec.exe'
        Image|endswith: '\powershell.exe'
        CommandLine|contains|all:
            - '-NoProfile -ExecutionPolicy Bypass -Command'
            - 'AppData\Local\Temp\'
            - 'Install-Chocolatey.ps1'
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - Administrative scripts
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_powershell_script_exec_from_temp_folder/info.yml

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    Image|endswith:
        - '\powershell.exe'
        - '\pwsh.exe'
    CommandLine|contains:
        - '\Windows\Temp'
        - '\Temporary Internet'
        - '\AppData\Local\Temp'
        - '\AppData\Roaming\Temp'
        - '%TEMP%'
        - '%TMP%'
        - '%LocalAppData%\Temp'

Stage 2: not filter_optional_*

filter_optional_vscode:
    CommandLine|contains: '-WindowStyle hidden -Verb runAs'
filter_optional_amazon_ec2:
    CommandLine|contains: '\Windows\system32\config\systemprofile\AppData\Local\Temp\Amazon\EC2-Windows\'
filter_optional_generic:
    CommandLine|contains:
        - ' >'
        - 'Out-File'
        - 'ConvertTo-Json'
filter_optional_chocolatey_installer:
    ParentImage:
        - 'C:\Windows\System32\Msiexec.exe'
        - 'C:\Windows\SysWOW64\Msiexec.exe'
    Image|endswith: '\powershell.exe'
    CommandLine|contains|all:
        - '-NoProfile -ExecutionPolicy Bypass -Command'
        - 'AppData\Local\Temp\'
        - 'Install-Chocolatey.ps1'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • %LocalAppData%\Temp corpus 2 (sigma 2)
  • %TEMP% corpus 14 (sigma 13, kusto 1)
  • %TMP% corpus 13 (sigma 13)
  • \AppData\Local\Temp corpus 8 (sigma 8)
  • \AppData\Roaming\Temp corpus 2 (sigma 2)
  • \Temporary Internet corpus 7 (sigma 7)
  • \Windows\Temp corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
field:"Image" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

Rundll32 Execution With Uncommon DLL Extension

#
Status
test
Severity
medium
Author
Tim Shelton, Florian Roth (Nextron Systems), Yassine Oukessou
Source
github.com/SigmaHQ/sigma

Detects the execution of rundll32 with a command line that doesn't contain a common extension

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Rundll32 Execution With Uncommon DLL Extension
id: c3a99af4-35a9-4668-879e-c09aeb4f2bdf
status: test
description: Detects the execution of rundll32 with a command line that doesn't contain a common extension
references:
    - https://twitter.com/mrd0x/status/1481630810495139841?s=12
author: Tim Shelton, Florian Roth (Nextron Systems), Yassine Oukessou
date: 2022-01-13
modified: 2024-04-04
tags:
    - attack.stealth
    - attack.t1218.011
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Image|endswith: '\rundll32.exe'
        - OriginalFileName: 'RUNDLL32.EXE'
    filter_main_null:
        CommandLine: null
    filter_main_empty:
        CommandLine: ''
    filter_main_known_extension:
        - CommandLine|contains:
              # Note: This aims to cover: single and double quotes in addition to spaces and comma "," usage.
              - '.cpl '
              - '.cpl,'
              - '.cpl"'
              - ".cpl'"
              - '.dll '
              - '.dll,'
              - '.dll"'
              - ".dll'"
              - '.inf '
              - '.inf,'
              - '.inf"'
              - ".inf'"
        - CommandLine|endswith:
              # Note: This aims to cover: single and double quotes in addition to spaces and comma "," usage.
              - '.cpl'
              - '.dll'
              - '.inf'
    filter_main_localserver:
        CommandLine|contains: ' -localserver '
    filter_main_zzzzInvokeManagedCustomActionOutOfProc:
        ParentImage|endswith: '\msiexec.exe'
        CommandLine|contains|all:
            - ':\Windows\Installer\'
            - '.tmp'
            - 'zzzzInvokeManagedCustomActionOutOfProc'
    filter_optional_EdgeUpdate:
        ParentCommandLine|contains|all:
            - ':\Users\'
            - '\AppData\Local\Microsoft\EdgeUpdate\Install\{'
            - '\EDGEMITMP_'
            - '.tmp\setup.exe'
            - '--install-archive='
            - '--previous-version='
            - '--msedgewebview --verbose-logging --do-not-launch-msedge --user-level'
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_rundll32_uncommon_dll_extension/info.yml

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: selection

selection:
    - Image|endswith: '\rundll32.exe'
    - OriginalFileName: 'RUNDLL32.EXE'

Stage 2: not filter_main_*

filter_main_null:
    CommandLine: null
filter_main_empty:
    CommandLine: ''
filter_main_known_extension:
    - CommandLine|contains:
          - '.cpl '
          - '.cpl,'
          - '.cpl"'
          - ".cpl'"
          - '.dll '
          - '.dll,'
          - '.dll"'
          - ".dll'"
          - '.inf '
          - '.inf,'
          - '.inf"'
          - ".inf'"
    - CommandLine|endswith:
          - '.cpl'
          - '.dll'
          - '.inf'
filter_main_localserver:
    CommandLine|contains: ' -localserver '
filter_main_zzzzInvokeManagedCustomActionOutOfProc:
    ParentImage|endswith: '\msiexec.exe'
    CommandLine|contains|all:
        - ':\Windows\Installer\'
        - '.tmp'
        - 'zzzzInvokeManagedCustomActionOutOfProc'

Stage 3: not filter_optional_EdgeUpdate

filter_optional_EdgeUpdate:
    ParentCommandLine|contains|all:
        - ':\Users\'
        - '\AppData\Local\Microsoft\EdgeUpdate\Install\{'
        - '\EDGEMITMP_'
        - '.tmp\setup.exe'
        - '--install-archive='
        - '--previous-version='
        - '--msedgewebview --verbose-logging --do-not-launch-msedge --user-level'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"
OriginalFileNameeq
  • RUNDLL32.EXE corpus 72 (sigma 35, splunk 21, elastic 16)
field:"OriginalFileName" kind:eq value:"RUNDLL32.EXE"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematch.tmpexcludes:CommandLine field:"CommandLine" value:".tmp"
CommandLinematch:\Windows\Installer\excludes:CommandLine field:"CommandLine" value:":\Windows\Installer\"
CommandLinematchzzzzInvokeManagedCustomActionOutOfProcexcludes:CommandLine field:"CommandLine" value:"zzzzInvokeManagedCustomActionOutOfProc"
ParentImageends_with\msiexec.exeexcludes:ParentImage field:"ParentImage" value:"\msiexec.exe"
CommandLineends_with.cplexcludes:CommandLine field:"CommandLine" value:".cpl"
CommandLineends_with.dllexcludes:CommandLine field:"CommandLine" value:".dll"
CommandLineends_with.infexcludes:CommandLine field:"CommandLine" value:".inf"
CommandLineis_null(no value, null check)excludes:CommandLine
CommandLinematch -localserver excludes:CommandLine field:"CommandLine" value:" -localserver "
CommandLinematch.cpl excludes:CommandLine field:"CommandLine" value:".cpl "
CommandLinematch.cpl'excludes:CommandLine field:"CommandLine" value:".cpl'"
CommandLinematch.cpl,excludes:CommandLine field:"CommandLine" value:".cpl,"
CommandLinematch.cpl"excludes:CommandLine
CommandLinematch.dll excludes:CommandLine field:"CommandLine" value:".dll "
CommandLinematch.dll'excludes:CommandLine field:"CommandLine" value:".dll'"
CommandLinematch.dll,excludes:CommandLine field:"CommandLine" value:".dll,"
CommandLinematch.dll"excludes:CommandLine
CommandLinematch.inf excludes:CommandLine field:"CommandLine" value:".inf "
CommandLinematch.inf'excludes:CommandLine field:"CommandLine" value:".inf'"
CommandLinematch.inf,excludes:CommandLine field:"CommandLine" value:".inf,"
CommandLinematch.inf"excludes:CommandLine
ParentCommandLinematch--install-archive=excludes:ParentCommandLine field:"ParentCommandLine" value:"--install-archive="
ParentCommandLinematch--msedgewebview --verbose-logging --do-not-launch-msedge --user-levelexcludes:ParentCommandLine field:"ParentCommandLine" value:"--msedgewebview --verbose-logging --do-not-launch-msedge --user-level"
ParentCommandLinematch--previous-version=excludes:ParentCommandLine field:"ParentCommandLine" value:"--previous-version="
ParentCommandLinematch.tmp\setup.exeexcludes:ParentCommandLine field:"ParentCommandLine" value:".tmp\setup.exe"
ParentCommandLinematch:\Users\excludes:ParentCommandLine field:"ParentCommandLine" value:":\Users\"
ParentCommandLinematch\AppData\Local\Microsoft\EdgeUpdate\Install\{excludes:ParentCommandLine field:"ParentCommandLine" value:"\AppData\Local\Microsoft\EdgeUpdate\Install\{"
ParentCommandLinematch\EDGEMITMP_excludes:ParentCommandLine field:"ParentCommandLine" value:"\EDGEMITMP_"

Service Installation in Suspicious Folder

#
Status
test
Severity
medium
Author
pH-T (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects service installation in suspicious folder appdata

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Service Installation in Suspicious Folder
id: 5e993621-67d4-488a-b9ae-b420d08b96cb
status: test
description: Detects service installation in suspicious folder appdata
author: pH-T (Nextron Systems)
references:
    - Internal Research
date: 2022-03-18
modified: 2024-01-18
tags:
    - attack.persistence
    - attack.privilege-escalation
    - car.2013-09-005
    - attack.t1543.003
logsource:
    product: windows
    service: system
detection:
    selection:
        Provider_Name: 'Service Control Manager'
        EventID: 7045
        ImagePath|contains:
            - '\AppData\'
            - '\\\\127.0.0.1'
            - '\\\\localhost'
    filter_optional_zoom:
        ServiceName: 'Zoom Sharing Service'
        ImagePath|contains: ':\Program Files\Common Files\Zoom\Support\CptService.exe'
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    Provider_Name: 'Service Control Manager'
    EventID: 7045
    ImagePath|contains:
        - '\AppData\'
        - '\\\\127.0.0.1'
        - '\\\\localhost'

Stage 2: not filter_optional_zoom

filter_optional_zoom:
    ServiceName: 'Zoom Sharing Service'
    ImagePath|contains: ':\Program Files\Common Files\Zoom\Support\CptService.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ImagePathmatch
  • \AppData\
  • \\\\127.0.0.1
  • \\\\localhost
field:"ImagePath" kind:match
Provider_Nameeq
  • Service Control Manager corpus 50 (sigma 50)
field:"Provider_Name" kind:eq value:"Service Control Manager"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImagePathmatch:\Program Files\Common Files\Zoom\Support\CptService.exeexcludes:ImagePath field:"ImagePath" value:":\Program Files\Common Files\Zoom\Support\CptService.exe"
ServiceNameeqZoom Sharing Serviceexcludes:ServiceName field:"ServiceName" value:"Zoom Sharing Service"

SQL Server - Member got new privileges added on a database

#
Status
experimental
Severity
medium
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker grants new privileges on a database level

Known False Positives

  • DBA activity

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Privilege Escalation

Telemetry Coverage

ProviderRecord / event type
MSSQLSERVEREvent ID 33205

Rule Body

title: SQL Server - Member got new privileges added on a database
description: Detects scenarios where an attacker grants new privileges on a database level
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1098.xxx-Account%20manipulation
- https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions
- https://docs.microsoft.com/en-us/sql/relational-databases/security/authentication-access/server-level-roles
tags:
- attack.account_manipulation
- attack.t1098
author: mdecrevoisier
status: experimental
logsource:
  product: mssql
  category: application
detection:
  selection: # GRANT [Privilege] TO [DEMO\svc-netwrix-db]
    EventID: 33205
    action_id:
      - G   # GRANT
      - GWG # GRANT WITH GRANT
    class_type: DB # DATABASE
  condition: selection
falsepositives:
- DBA activity
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 33205
  action_id:
    - G
    - GWG
  class_type: DB

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
action_ideq
  • G corpus 2 (sigma 2)
  • GWG corpus 2 (sigma 2)
field:"action_id" kind:eq
class_typeeq
  • DB
field:"class_type" kind:eq value:"DB"

Start Windows Service Via Net.EXE

#
Status
test
Severity
low
Author
Timur Zinniatullin, Daniil Yugoslavskiy, oscd.community
Source
github.com/SigmaHQ/sigma

Detects the usage of the "net.exe" command to start a service using the "start" flag

Known False Positives

  • Legitimate administrator or user executes a service for legitimate reasons.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Start Windows Service Via Net.EXE
id: 2a072a96-a086-49fa-bcb5-15cc5a619093
status: test
description: Detects the usage of the "net.exe" command to start a service using the "start" flag
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1569.002/T1569.002.md
author: Timur Zinniatullin, Daniil Yugoslavskiy, oscd.community
date: 2019-10-21
modified: 2023-03-05
tags:
    - attack.execution
    - attack.t1569.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\net.exe'
              - '\net1.exe'
        - OriginalFileName:
              - 'net.exe'
              - 'net1.exe'
    selection_cli:
        CommandLine|contains: ' start '     # space character after the 'start' keyword indicates that a service name follows, in contrast to `net start` discovery expression
    condition: all of selection_*
falsepositives:
    - Legitimate administrator or user executes a service for legitimate reasons.
level: low

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\net.exe'
          - '\net1.exe'
    - OriginalFileName:
          - 'net.exe'
          - 'net1.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains: ' start '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • start corpus 2 (sigma 2)
field:"CommandLine" kind:match value:" start "
Imageends_with
  • \net.exe corpus 49 (sigma 49)
  • \net1.exe corpus 47 (sigma 47)
field:"Image" kind:ends_with
OriginalFileNameeq
  • net.exe corpus 25 (sigma 19, elastic 4, splunk 2)
  • net1.exe corpus 39 (sigma 19, splunk 19, elastic 1)
field:"OriginalFileName" kind:eq

Suspicious AgentExecutor PowerShell Execution

#
Status
test
Severity
high
Author
Nasreddine Bencherchali (Nextron Systems), memory-shards
Source
github.com/SigmaHQ/sigma

Detects execution of the AgentExecutor.exe binary. Which can be abused as a LOLBIN to execute powershell scripts with the ExecutionPolicy "Bypass" or any binary named "powershell.exe" located in the path provided by 6th positional argument

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious AgentExecutor PowerShell Execution
id: c0b40568-b1e9-4b03-8d6c-b096da6da9ab
related:
    - id: 7efd2c8d-8b18-45b7-947d-adfe9ed04f61
      type: similar
status: test
description: Detects execution of the AgentExecutor.exe binary. Which can be abused as a LOLBIN to execute powershell scripts with the ExecutionPolicy "Bypass" or any binary named "powershell.exe" located in the path provided by 6th positional argument
author: Nasreddine Bencherchali (Nextron Systems), memory-shards
references:
    - https://twitter.com/lefterispan/status/1286259016436514816
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Agentexecutor/
    - https://learn.microsoft.com/en-us/mem/intune/apps/intune-management-extension
    - https://twitter.com/jseerden/status/1247985304667066373/photo/1
date: 2022-12-24
modified: 2024-08-07
tags:
    - attack.stealth
    - attack.t1218
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\AgentExecutor.exe'
        - OriginalFileName: 'AgentExecutor.exe'
    selection_cli:
        # Example:
        #   AgentExecutor.exe -powershell [scriptPath] [outputFilePath] [errorFilePath] [timeoutFilePath] [timeoutSeconds] [powershellPath] [enforceSignatureCheck] [runAs32BitOn64]
        # Note:
        #   - If [timeoutSeconds] is NULL then it defaults to 60000
        #   - If [enforceSignatureCheck] is:
        #       - "NULL" or "1" then a PowerShell instance is spawned with the args: "-NoProfile -executionPolicy allsigned -file "
        #       - Else a PowerShell instance is spawned with the args: "-NoProfile -executionPolicy bypass -file "
        #   - [powershellPath] is always concatendated to "powershell.exe"
        CommandLine|contains:
            - ' -powershell' # Also covers the "-powershellDetection" flag
            - ' -remediationScript'
    filter_main_pwsh:
        CommandLine|contains:
            - 'C:\Windows\System32\WindowsPowerShell\v1.0\'
            - 'C:\Windows\SysWOW64\WindowsPowerShell\v1.0\'
    filter_main_intune:
        ParentImage|endswith: '\Microsoft.Management.Services.IntuneWindowsAgent.exe'
    condition: all of selection_* and not 1 of filter_main_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_main_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\AgentExecutor.exe'
    - OriginalFileName: 'AgentExecutor.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - ' -powershell'
        - ' -remediationScript'

Stage 3: not filter_main_*

filter_main_pwsh:
    CommandLine|contains:
        - 'C:\Windows\System32\WindowsPowerShell\v1.0\'
        - 'C:\Windows\SysWOW64\WindowsPowerShell\v1.0\'
filter_main_intune:
    ParentImage|endswith: '\Microsoft.Management.Services.IntuneWindowsAgent.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -powershell corpus 2 (sigma 2)
  • -remediationScript corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \AgentExecutor.exe
field:"Image" kind:ends_with value:"\AgentExecutor.exe"
OriginalFileNameeq
  • AgentExecutor.exe corpus 2 (sigma 2)
field:"OriginalFileName" kind:eq value:"AgentExecutor.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematchC:\Windows\SysWOW64\WindowsPowerShell\v1.0\excludes:CommandLine field:"CommandLine" value:"C:\Windows\SysWOW64\WindowsPowerShell\v1.0\"
CommandLinematchC:\Windows\System32\WindowsPowerShell\v1.0\excludes:CommandLine field:"CommandLine" value:"C:\Windows\System32\WindowsPowerShell\v1.0\"
ParentImageends_with\Microsoft.Management.Services.IntuneWindowsAgent.exeexcludes:ParentImage field:"ParentImage" value:"\Microsoft.Management.Services.IntuneWindowsAgent.exe"

Suspicious Encoded And Obfuscated Reflection Assembly Load Function Call

#
Status
test
Severity
high
Author
pH-T (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects suspicious base64 encoded and obfuscated "LOAD" keyword used in .NET "reflection.assembly"

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Encoded And Obfuscated Reflection Assembly Load Function Call
id: 9c0295ce-d60d-40bd-bd74-84673b7592b1
related:
    - id: 62b7ccc9-23b4-471e-aa15-6da3663c4d59
      type: similar
status: test
description: Detects suspicious base64 encoded and obfuscated "LOAD" keyword used in .NET "reflection.assembly"
references:
    - https://github.com/Neo23x0/Raccine/blob/20a569fa21625086433dcce8bb2765d0ea08dcb6/yara/mal_revil.yar
    - https://thedfirreport.com/2022/05/09/seo-poisoning-a-gootloader-story/
    - https://learn.microsoft.com/en-us/dotnet/api/system.appdomain.load?view=net-7.0
author: pH-T (Nextron Systems)
date: 2022-03-01
modified: 2023-04-06
tags:
    - attack.execution
    - attack.stealth
    - attack.t1059.001
    - attack.t1027
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains:
            # ::("L"+"oad")
            - 'OgA6ACgAIgBMACIAKwAiAG8AYQBkACIAKQ'
            - 'oAOgAoACIATAAiACsAIgBvAGEAZAAiACkA'
            - '6ADoAKAAiAEwAIgArACIAbwBhAGQAIgApA'
            # ::("Lo"+"ad")
            - 'OgA6ACgAIgBMAG8AIgArACIAYQBkACIAKQ'
            - 'oAOgAoACIATABvACIAKwAiAGEAZAAiACkA'
            - '6ADoAKAAiAEwAbwAiACsAIgBhAGQAIgApA'
            # ::("Loa"+"d")
            - 'OgA6ACgAIgBMAG8AYQAiACsAIgBkACIAKQ'
            - 'oAOgAoACIATABvAGEAIgArACIAZAAiACkA'
            - '6ADoAKAAiAEwAbwBhACIAKwAiAGQAIgApA'
            # ::('L'+'oad')
            - 'OgA6ACgAJwBMACcAKwAnAG8AYQBkACcAKQ'
            - 'oAOgAoACcATAAnACsAJwBvAGEAZAAnACkA'
            - '6ADoAKAAnAEwAJwArACcAbwBhAGQAJwApA'
            # ::('Lo'+'ad')
            - 'OgA6ACgAJwBMAG8AJwArACcAYQBkACcAKQ'
            - 'oAOgAoACcATABvACcAKwAnAGEAZAAnACkA'
            - '6ADoAKAAnAEwAbwAnACsAJwBhAGQAJwApA'
            # ::('Loa'+'d')
            - 'OgA6ACgAJwBMAG8AYQAnACsAJwBkACcAKQ'
            - 'oAOgAoACcATABvAGEAJwArACcAZAAnACkA'
            - '6ADoAKAAnAEwAbwBhACcAKwAnAGQAJwApA'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains:
        - 'OgA6ACgAIgBMACIAKwAiAG8AYQBkACIAKQ'
        - 'oAOgAoACIATAAiACsAIgBvAGEAZAAiACkA'
        - '6ADoAKAAiAEwAIgArACIAbwBhAGQAIgApA'
        - 'OgA6ACgAIgBMAG8AIgArACIAYQBkACIAKQ'
        - 'oAOgAoACIATABvACIAKwAiAGEAZAAiACkA'
        - '6ADoAKAAiAEwAbwAiACsAIgBhAGQAIgApA'
        - 'OgA6ACgAIgBMAG8AYQAiACsAIgBkACIAKQ'
        - 'oAOgAoACIATABvAGEAIgArACIAZAAiACkA'
        - '6ADoAKAAiAEwAbwBhACIAKwAiAGQAIgApA'
        - 'OgA6ACgAJwBMACcAKwAnAG8AYQBkACcAKQ'
        - 'oAOgAoACcATAAnACsAJwBvAGEAZAAnACkA'
        - '6ADoAKAAnAEwAJwArACcAbwBhAGQAJwApA'
        - 'OgA6ACgAJwBMAG8AJwArACcAYQBkACcAKQ'
        - 'oAOgAoACcATABvACcAKwAnAGEAZAAnACkA'
        - '6ADoAKAAnAEwAbwAnACsAJwBhAGQAJwApA'
        - 'OgA6ACgAJwBMAG8AYQAnACsAJwBkACcAKQ'
        - 'oAOgAoACcATABvAGEAJwArACcAZAAnACkA'
        - '6ADoAKAAnAEwAbwBhACcAKwAnAGQAJwApA'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • 6ADoAKAAiAEwAIgArACIAbwBhAGQAIgApA
  • 6ADoAKAAiAEwAbwAiACsAIgBhAGQAIgApA
  • 6ADoAKAAiAEwAbwBhACIAKwAiAGQAIgApA
  • 6ADoAKAAnAEwAJwArACcAbwBhAGQAJwApA
  • 6ADoAKAAnAEwAbwAnACsAJwBhAGQAJwApA
  • 6ADoAKAAnAEwAbwBhACcAKwAnAGQAJwApA
  • OgA6ACgAIgBMACIAKwAiAG8AYQBkACIAKQ
  • OgA6ACgAIgBMAG8AIgArACIAYQBkACIAKQ
  • OgA6ACgAIgBMAG8AYQAiACsAIgBkACIAKQ
  • OgA6ACgAJwBMACcAKwAnAG8AYQBkACcAKQ
  • OgA6ACgAJwBMAG8AJwArACcAYQBkACcAKQ
  • OgA6ACgAJwBMAG8AYQAnACsAJwBkACcAKQ
  • oAOgAoACIATAAiACsAIgBvAGEAZAAiACkA
  • oAOgAoACIATABvACIAKwAiAGEAZAAiACkA
  • oAOgAoACIATABvAGEAIgArACIAZAAiACkA
  • oAOgAoACcATAAnACsAJwBvAGEAZAAnACkA
  • oAOgAoACcATABvACcAKwAnAGEAZAAnACkA
  • oAOgAoACcATABvAGEAJwArACcAZAAnACkA
field:"CommandLine" kind:match

Suspicious LNK Double Extension File Created

#
Status
test
Severity
medium
Author
Nasreddine Bencherchali (Nextron Systems), frack113
Source
github.com/SigmaHQ/sigma

Detects the creation of files with an "LNK" as a second extension. This is sometimes used by malware as a method to abuse the fact that Windows hides the "LNK" extension by default.

Known False Positives

  • Some tuning is required for other general purpose directories of third party apps

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Suspicious LNK Double Extension File Created
id: 3215aa19-f060-4332-86d5-5602511f3ca8
related:
    - id: b4926b47-a9d7-434c-b3a0-adc3fa0bd13e
      type: derived
status: test
description: |
    Detects the creation of files with an "LNK" as a second extension. This is sometimes used by malware as a method to abuse the fact that Windows hides the "LNK" extension by default.
references:
    - https://www.crowdstrike.com/blog/meet-crowdstrikes-adversary-of-the-month-for-june-mustang-panda/
    - https://www.anomali.com/blog/china-based-apt-mustang-panda-targets-minority-groups-public-and-private-sector-organizations
    - https://www.cybereason.com/blog/research/a-bazar-of-tricks-following-team9s-development-cycles
    - https://twitter.com/malwrhunterteam/status/1235135745611960321
    - https://twitter.com/luc4m/status/1073181154126254080
author: Nasreddine Bencherchali (Nextron Systems), frack113
date: 2022-11-07
modified: 2023-10-18
tags:
    - attack.stealth
    - attack.t1036.007
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|endswith: '.lnk'
        TargetFilename|contains:
            - '.doc.'
            - '.docx.'
            - '.jpg.'
            - '.pdf.'
            - '.ppt.'
            - '.pptx.'
            - '.xls.'
            - '.xlsx.'
    filter_main_recent:
        TargetFilename|contains: '\AppData\Roaming\Microsoft\Windows\Recent\'
    filter_optional_office_recent:
        Image|endswith:
            # Note: Some additional office application might need to be added
            - '\excel.exe'
            - '\powerpnt.exe'
            - '\winword.exe'
        TargetFilename|contains: '\AppData\Roaming\Microsoft\Office\Recent\'
    filter_optional_office_excel:
        Image|endswith: '\excel.exe'
        TargetFilename|contains: '\AppData\Roaming\Microsoft\Excel'
    filter_optional_office_powerpoint:
        Image|endswith: '\powerpnt.exe'
        TargetFilename|contains: '\AppData\Roaming\Microsoft\PowerPoint'
    filter_optional_office_word:
        Image|endswith: '\winword.exe'
        TargetFilename|contains: '\AppData\Roaming\Microsoft\Word'
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Some tuning is required for other general purpose directories of third party apps
level: medium
regression_tests_path: regression_data/rules/windows/file/file_event/file_event_win_susp_lnk_double_extension/info.yml

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: selection

selection:
    TargetFilename|endswith: '.lnk'
    TargetFilename|contains:
        - '.doc.'
        - '.docx.'
        - '.jpg.'
        - '.pdf.'
        - '.ppt.'
        - '.pptx.'
        - '.xls.'
        - '.xlsx.'

Stage 2: not filter_main_recent

filter_main_recent:
    TargetFilename|contains: '\AppData\Roaming\Microsoft\Windows\Recent\'

Stage 3: not filter_optional_*

filter_optional_office_recent:
    Image|endswith:
        - '\excel.exe'
        - '\powerpnt.exe'
        - '\winword.exe'
    TargetFilename|contains: '\AppData\Roaming\Microsoft\Office\Recent\'
filter_optional_office_excel:
    Image|endswith: '\excel.exe'
    TargetFilename|contains: '\AppData\Roaming\Microsoft\Excel'
filter_optional_office_powerpoint:
    Image|endswith: '\powerpnt.exe'
    TargetFilename|contains: '\AppData\Roaming\Microsoft\PowerPoint'
filter_optional_office_word:
    Image|endswith: '\winword.exe'
    TargetFilename|contains: '\AppData\Roaming\Microsoft\Word'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .lnk corpus 6 (sigma 6)
field:"TargetFilename" kind:ends_with value:".lnk"
TargetFilenamematch
  • .doc. corpus 3 (sigma 3)
  • .docx. corpus 3 (sigma 3)
  • .jpg. corpus 3 (sigma 3)
  • .pdf. corpus 3 (sigma 3)
  • .ppt. corpus 2 (sigma 2)
  • .pptx. corpus 2 (sigma 2)
  • .xls. corpus 3 (sigma 3)
  • .xlsx. corpus 3 (sigma 3)
field:"TargetFilename" kind:match

Exclusions

The rule actively suppresses these predicates.

Suspicious Svchost Process Access

#
Status
test
Severity
high
Author
Tim Burrell
Source
github.com/SigmaHQ/sigma

Detects suspicious access to the "svchost" process such as that used by Invoke-Phantom to kill the thread of the Windows event logging service.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 10: ProcessAccess

Rule Body

title: Suspicious Svchost Process Access
id: 166e9c50-8cd9-44af-815d-d1f0c0e90dde
status: test
description: Detects suspicious access to the "svchost" process such as that used by Invoke-Phantom to kill the thread of the Windows event logging service.
references:
    - https://github.com/hlldz/Invoke-Phant0m
    - https://twitter.com/timbmsft/status/900724491076214784
author: Tim Burrell
date: 2020-01-02
modified: 2023-01-30
tags:
    - attack.defense-impairment
    - attack.t1685.001
logsource:
    category: process_access
    product: windows
detection:
    selection:
        TargetImage|endswith: ':\Windows\System32\svchost.exe'
        GrantedAccess: '0x1F3FFF'
        CallTrace|contains: 'UNKNOWN'
    filter_main_msbuild:
        SourceImage|contains: ':\Program Files\Microsoft Visual Studio\'
        SourceImage|endswith: '\MSBuild\Current\Bin\MSBuild.exe'
        # Just to make sure it's "really" .NET :)
        CallTrace|contains:
            - 'Microsoft.Build.ni.dll'
            - 'System.ni.dll'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    TargetImage|endswith: ':\Windows\System32\svchost.exe'
    GrantedAccess: '0x1F3FFF'
    CallTrace|contains: 'UNKNOWN'

Stage 2: not filter_main_msbuild

filter_main_msbuild:
    SourceImage|contains: ':\Program Files\Microsoft Visual Studio\'
    SourceImage|endswith: '\MSBuild\Current\Bin\MSBuild.exe'
    CallTrace|contains:
        - 'Microsoft.Build.ni.dll'
        - 'System.ni.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CallTracematch
  • UNKNOWN corpus 5 (sigma 3, elastic 2)
field:"CallTrace" kind:match value:"UNKNOWN"
GrantedAccesseq
  • 0x1F3FFF corpus 3 (sigma 2, splunk 1)
field:"GrantedAccess" kind:eq value:"0x1F3FFF"
TargetImageends_with
  • :\Windows\System32\svchost.exe
field:"TargetImage" kind:ends_with value:":\Windows\System32\svchost.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CallTracematchMicrosoft.Build.ni.dllexcludes:CallTrace field:"CallTrace" value:"Microsoft.Build.ni.dll"
CallTracematchSystem.ni.dllexcludes:CallTrace field:"CallTrace" value:"System.ni.dll"
SourceImageends_with\MSBuild\Current\Bin\MSBuild.exeexcludes:SourceImage field:"SourceImage" value:"\MSBuild\Current\Bin\MSBuild.exe"
SourceImagematch:\Program Files\Microsoft Visual Studio\excludes:SourceImage field:"SourceImage" value:":\Program Files\Microsoft Visual Studio\"

T1047 Wmiprvse Wbemcomn DLL Hijack

#
Status
test
Severity
high
Author
Roberto Rodriguez @Cyb3rWard0g, Open Threat Research (OTR)
Source
github.com/SigmaHQ/sigma

Detects a threat actor creating a file named wbemcomn.dll in the C:\Windows\System32\wbem\ directory over the network for a WMI DLL Hijack scenario.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: T1047 Wmiprvse Wbemcomn DLL Hijack
id: f6c68d5f-e101-4b86-8c84-7d96851fd65c
status: test
description: Detects a threat actor creating a file named `wbemcomn.dll` in the `C:\Windows\System32\wbem\` directory over the network for a WMI DLL Hijack scenario.
references:
    - https://threathunterplaybook.com/hunts/windows/201009-RemoteWMIWbemcomnDLLHijack/notebook.html
author: Roberto Rodriguez @Cyb3rWard0g, Open Threat Research (OTR)
date: 2020-10-12
modified: 2022-02-24
tags:
    - attack.execution
    - attack.t1047
    - attack.lateral-movement
    - attack.t1021.002
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 5145
        RelativeTargetName|endswith: '\wbem\wbemcomn.dll'
    filter:
        SubjectUserName|endswith: '$'
    condition: selection and not filter
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    EventID: 5145
    RelativeTargetName|endswith: '\wbem\wbemcomn.dll'

Stage 2: not filter

filter:
    SubjectUserName|endswith: '$'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
SubjectUserNameends_with$excludes:SubjectUserName field:"SubjectUserName" value:"$"

Tor Client/Browser Execution

#
Status
test
Severity
high
Author
frack113
Source
github.com/SigmaHQ/sigma

Detects the use of Tor or Tor-Browser to connect to onion routing networks

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Tor Client/Browser Execution
id: 62f7c9bf-9135-49b2-8aeb-1e54a6ecc13c
status: test
description: Detects the use of Tor or Tor-Browser to connect to onion routing networks
references:
    - https://www.logpoint.com/en/blog/detecting-tor-use-with-logpoint/
author: frack113
date: 2022-02-20
modified: 2025-10-27
tags:
    - attack.command-and-control
    - attack.t1090.003
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Description: 'Tor Browser'
        - Product: 'Tor Browser'
        - Image|endswith:
              - '\tor.exe'
              - '\Tor Browser\Browser\firefox.exe'
    condition: selection
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_browsers_tor_execution/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    - Description: 'Tor Browser'
    - Product: 'Tor Browser'
    - Image|endswith:
          - '\tor.exe'
          - '\Tor Browser\Browser\firefox.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Descriptioneq
  • Tor Browser
field:"Description" kind:eq value:"Tor Browser"
Imageends_with
  • \Tor Browser\Browser\firefox.exe
  • \tor.exe
field:"Image" kind:ends_with
Producteq
  • Tor Browser
field:"Product" kind:eq value:"Tor Browser"

UAC Bypass Using MSConfig Token Modification - File

#
Status
test
Severity
high
Author
Christian Burkard (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects the pattern of UAC Bypass using a msconfig GUI hack (UACMe 55)

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: UAC Bypass Using MSConfig Token Modification - File
id: 41bb431f-56d8-4691-bb56-ed34e390906f
status: test
description: Detects the pattern of UAC Bypass using a msconfig GUI hack (UACMe 55)
references:
    - https://github.com/hfiref0x/UACME
author: Christian Burkard (Nextron Systems)
date: 2021-08-30
modified: 2022-10-09
tags:
    - attack.privilege-escalation
    - attack.t1548.002
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|startswith: 'C:\Users\'
        TargetFilename|endswith: '\AppData\Local\Temp\pkgmgr.exe'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|startswith: 'C:\Users\'
    TargetFilename|endswith: '\AppData\Local\Temp\pkgmgr.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • \AppData\Local\Temp\pkgmgr.exe
field:"TargetFilename" kind:ends_with value:"\AppData\Local\Temp\pkgmgr.exe"
TargetFilenamestarts_with
  • C:\Users\ corpus 13 (sigma 9, elastic 4)
field:"TargetFilename" kind:starts_with value:"C:\Users\"

UNC4841 - Potential SEASPY Execution

#
Status
test
Severity
critical
Author
Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects execution of specific named binaries which were used by UNC4841 to deploy their SEASPY backdoor

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: UNC4841 - Potential SEASPY Execution
id: f6a711f3-d032-4f9e-890b-bbe776236c84
status: test
description: Detects execution of specific named binaries which were used by UNC4841 to deploy their SEASPY backdoor
references:
    - https://www.mandiant.com/resources/blog/barracuda-esg-exploited-globally
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-06-16
tags:
    - attack.execution
    - detection.emerging-threats
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        Image|endswith:
            - '/BarracudaMailService'
            - '/resize2fstab'
            - '/resize_reisertab'
    condition: selection
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '/BarracudaMailService'
        - '/resize2fstab'
        - '/resize_reisertab'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /BarracudaMailService
  • /resize2fstab
  • /resize_reisertab
field:"Image" kind:ends_with

Webserver IIS configuration edited (SYSMON)

#
Status
experimental
Severity
high
Author
mdecrevoisier
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker attempts to edit IIS configuration file in order to load a module.

Known False Positives

  • rare administrator change

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Webserver IIS configuration edited (SYSMON)
description: Detects scenarios where an attacker attempts to edit IIS configuration file in order to load a module.
requirements: requires to update SYSMON configuration to include the IIS application path.
references:
- https://www.microsoft.com/security/blog/2022/07/26/malicious-iis-extensions-quietly-open-persistent-backdoors-into-servers/
- https://docs.microsoft.com/en-us/iis/get-started/planning-your-iis-architecture/introduction-to-applicationhostconfig
tags:
- attack.persistence
- attack.t1505.004
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: file_event
detection:
  selection:
    EventID: 11
    TargetFilename|endswith: '\inetsrv\config\applicationHost.config'
  condition: selection
falsepositives:
- rare administrator change
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 11
  TargetFilename|endswith: '\inetsrv\config\applicationHost.config'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • \inetsrv\config\applicationHost.config
field:"TargetFilename" kind:ends_with value:"\inetsrv\config\applicationHost.config"

Windows AMSI Related Registry Tampering Via CommandLine

#
Status
experimental
Severity
high
Author
Swachchhanda Shrawan Poudel (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects tampering of AMSI (Anti-Malware Scan Interface) related registry values via command line tools such as reg.exe or PowerShell. AMSI provides a generic interface for applications and services to integrate with antimalware products. Adversaries may disable AMSI to evade detection of malicious scripts and code execution.

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Windows AMSI Related Registry Tampering Via CommandLine
id: 7dbbcac2-57a0-45ac-b306-ff30a8bd2981
related:
    - id: aa37cbb0-da36-42cb-a90f-fdf216fc7467 # AMSI Disabled via Registry Modification
      type: similar
status: experimental
description: |
    Detects tampering of AMSI (Anti-Malware Scan Interface) related registry values via command line tools such as reg.exe or PowerShell.
    AMSI provides a generic interface for applications and services to integrate with antimalware products.
    Adversaries may disable AMSI to evade detection of malicious scripts and code execution.
references:
    - https://github.com/arttoolkit/arttoolkit.github.io/blob/16d6230d009e58fd6f773f5317fd4d14c1f26004/_wadcoms/AMSI-Bypass-Jscript_amsienable.md
    - https://mostafayahiax.medium.com/hunting-for-amsi-bypassing-methods-9886dda0bf9d
    - https://www.mdsec.co.uk/2019/02/macros-and-more-with-sharpshooter-v2-0/
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-12-25
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: process_creation
    product: windows
detection:
    selection_key:
        CommandLine|contains|all:
            - '\Software\Microsoft\Windows Script\Settings'
            - 'AmsiEnable'
    selection_reg_img:
        - Image|endswith: '\reg.exe'
        - OriginalFileName: 'reg.exe'
    selection_reg_cmd:
        CommandLine|contains: 'add'
    selection_powershell_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_powershell_cmd:
        CommandLine|contains:
            - 'Set-ItemProperty'
            - 'New-ItemProperty'
            - 'sp '
    condition: selection_key and (all of selection_powershell_* or all of selection_reg_*)
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_amsi_registry_tampering/info.yml
simulation:
    - type: atomic-red-team
      name: AMSI Bypass - Create AMSIEnable Reg Key
      technique: T1562.001
      atomic_guid: 728eca7b-0444-4f6f-ac36-437e3d751dc0

Stages and Predicates

Stage 0: condition

selection_key and (all of selection_powershell_* or all of selection_reg_*)

Stage 1: selection_key

selection_key:
    CommandLine|contains|all:
        - '\Software\Microsoft\Windows Script\Settings'
        - 'AmsiEnable'

Stage 2: selection_powershell_img

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

Stage 3: selection_powershell_cmd

selection_powershell_cmd:
    CommandLine|contains:
        - 'Set-ItemProperty'
        - 'New-ItemProperty'
        - 'sp '

Stage 4: selection_reg_img

selection_reg_img:
    - Image|endswith: '\reg.exe'
    - OriginalFileName: 'reg.exe'

Stage 5: selection_reg_cmd

selection_reg_cmd:
    CommandLine|contains: 'add'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • AmsiEnable
  • New-ItemProperty corpus 7 (sigma 7)
  • Set-ItemProperty corpus 7 (sigma 7)
  • \Software\Microsoft\Windows Script\Settings
  • add corpus 30 (sigma 26, splunk 4)
  • sp corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \reg.exe corpus 58 (sigma 58)
field:"Image" kind:ends_with
OriginalFileNameeq
  • PowerShell.EXE corpus 134 (sigma 86, splunk 30, elastic 18)
  • pwsh.dll corpus 115 (sigma 81, splunk 30, elastic 4)
  • reg.exe corpus 41 (sigma 32, splunk 8, elastic 1)
field:"OriginalFileName" kind:eq

WinRAR Creating Files in Startup Locations

#
Status
experimental
Severity
high
Author
Swachchhanda Shrawan Poudel (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects WinRAR creating files in Windows startup locations, which may indicate an attempt to establish persistence by adding malicious files to the Startup folder. This kind of behaviour has been associated with exploitation of WinRAR path traversal vulnerability CVE-2025-6218 or CVE-2025-8088.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: WinRAR Creating Files in Startup Locations
id: 74a2b37d-fea4-41e0-9ac7-c9fbcf1f60cc
status: experimental
description: |
    Detects WinRAR creating files in Windows startup locations, which may indicate an attempt to establish persistence by adding malicious files to the Startup folder.
    This kind of behaviour has been associated with exploitation of WinRAR path traversal vulnerability CVE-2025-6218 or CVE-2025-8088.
references:
    - https://github.com/mulwareX/CVE-2025-6218-POC
    - https://x.com/0x534c/status/1944694507787710685
    - https://www.welivesecurity.com/en/eset-research/update-winrar-tools-now-romcom-and-others-exploiting-zero-day-vulnerability/
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-07-16
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1547.001
logsource:
    category: file_event
    product: windows
detection:
    selection:
        Image|endswith:
            - '\WinRAR.exe'
            - '\Rar.exe'
        TargetFilename|contains: '\Start Menu\Programs\Startup\'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\WinRAR.exe'
        - '\Rar.exe'
    TargetFilename|contains: '\Start Menu\Programs\Startup\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \Rar.exe corpus 5 (sigma 5)
  • \WinRAR.exe corpus 6 (sigma 6)
field:"Image" kind:ends_with
TargetFilenamematch
  • \Start Menu\Programs\Startup\ corpus 5 (sigma 5)
field:"TargetFilename" kind:match value:"\Start Menu\Programs\Startup\"

Back to all Sigma rules