Detection rules › Sigma

Sigma rules: 16

RuleSeverity
Application AppID Uri Configuration Changeshigh
Application Termination Attempt via Wmic.EXEmedium
Attack protection features manipulation - some attack protection features have been disabled.medium
AWS Config Disabling Channel/Recorderhigh
Azure Owner Removed From Application or Service Principalmedium
Bitbucket User Login Failuremedium
Breached Password Detection - critical settings manipulatedmedium
Connection Proxylow
Conti Volume Shadow Listinghigh
CVE-2020-0688 Exchange Exploitation via Web Logcritical
CVE-2021-1675 Print Spooler Exploitation Filename Patterncritical
DPAPI Domain Backup Key Extractionhigh
ESXi System Information Discovery Via ESXCLImedium
ESXi VM List Discovery Via ESXCLImedium
Exchange transport agent installation artifacts (native)high
Failed DNS server zone transfer for enumeration purposesmedium
HackTool - EfsPotato Named Pipe Creationhigh
HackTool - Empire UserAgent URI Combohigh
Invoke-Obfuscation CLIP+ Launcherhigh
Malicious DLL File Dropped in the Teams or OneDrive Folderhigh
ManageEngine Endpoint Central Dctask64.EXE Potential Abusehigh
MMC Executing Files with Reversed Extensions Using RTLO Abusehigh
Modify User Shell Folders Startup Valuehigh
OpenCanary - VNC Connection Attempthigh
Potential Active Directory Enumeration Using AD Module - PsScriptmedium
Potential Arbitrary Code Execution Via Node.EXEhigh
Potential CVE-2023-21554 QueueJumper Exploitationhigh
Potential Execution of Sysinternals Toolslow
Potential WizardUpdate Malware Infectionhigh
Potentially Suspicious Usage Of Qemumedium
Remote DLL Load Via Rundll32.EXEmedium
Remote Registry Lateral Movementhigh
Renamed NetSupport RAT Executionhigh
Sdclt Child Processesmedium
Set Suspicious Files as System Files Using Attrib.EXEhigh
Shell Execution GCC - Linuxhigh
StoneDrill Service Installhigh
Suspicious Command Patterns In Scheduled Task Creationhigh
Suspicious Group And Account Reconnaissance Activity Using Net.EXEmedium
Suspicious Space Characters in RunMRU Registry Path - ClickFixhigh
Tap Installer Executionmedium
Turla Service Installhigh
Uncommon Assistive Technology Applications Execution Via AtBroker.EXEmedium
Uncommon File Created In Office Startup Folderhigh
Webshell Detection With Command Line Keywordshigh
Windows Defender Virus Scanning Feature Disabledhigh

Application AppID Uri Configuration Changes

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

Detects when a configuration change is made to an applications AppID URI.

Known False Positives

  • When and administrator is making legitimate AppID URI configuration changes to an application. This should be a planned event.

MITRE ATT&CK Coverage

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Application AppID Uri Configuration Changes
id: 1b45b0d1-773f-4f23-aedc-814b759563b1
status: test
description: Detects when a configuration change is made to an applications AppID URI.
references:
    - https://learn.microsoft.com/en-us/entra/architecture/security-operations-applications#appid-uri-added-modified-or-removed
author: Mark Morowczynski '@markmorow', Bailey Bercik '@baileybercik'
date: 2022-06-02
tags:
    - attack.initial-access
    - attack.persistence
    - attack.credential-access
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1552
    - attack.t1078.004
logsource:
    product: azure
    service: auditlogs
detection:
    selection:
        properties.message:
            - Update Application
            - Update Service principal
    condition: selection
falsepositives:
    - When and administrator is making legitimate AppID URI configuration changes to an application. This should be a planned event.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    properties.message:
        - Update Application
        - Update Service principal

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
properties.messageeq
  • Update Application
  • Update Service principal
field:"properties.message" kind:eq

Application Termination Attempt via Wmic.EXE

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

Detects an attempt to terminate a process via "wmic" with the "call terminate" flag. Adversaries may use wmic to terminate security products or other applications on the compromised host. This event is triggered on on attempt and process creation can be either successful or unsuccessful.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Application Termination Attempt via Wmic.EXE
id: 49d9671b-0a0a-4c09-8280-d215bfd30662
related:
    - id: 847d5ff3-8a31-4737-a970-aeae8fe21765 # Uninstall Security Products
      type: derived
status: test
description: |
    Detects an attempt to terminate a process via "wmic" with the "call terminate" flag. Adversaries may
    use wmic to terminate security products or other applications on the compromised host. This event is
    triggered on on attempt and process creation can be either successful or unsuccessful.
references:
    - https://cyble.com/blog/lockfile-ransomware-using-proxyshell-attack-to-deploy-ransomware/
    - https://www.bitdefender.com/files/News/CaseStudies/study/377/Bitdefender-Whitepaper-WMI-creat4871-en-EN-GenericUse.pdf
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-09-11
tags:
    - attack.execution
    - attack.t1047
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\WMIC.exe'
        - OriginalFileName: 'wmic.exe'
    selection_cli:
        CommandLine|contains|all:
            - 'call'
            - 'terminate'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_wmic_terminate_application/info.yml

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\WMIC.exe'
    - OriginalFileName: 'wmic.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - 'call'
        - 'terminate'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • call corpus 8 (sigma 6, splunk 2)
  • terminate
field:"CommandLine" kind:match
Imageends_with
  • \WMIC.exe corpus 62 (sigma 62)
field:"Image" kind:ends_with value:"\WMIC.exe"
OriginalFileNameeq
  • wmic.exe corpus 74 (sigma 38, elastic 18, splunk 18)
field:"OriginalFileName" kind:eq value:"wmic.exe"

Attack protection features manipulation - some attack protection features have been disabled.

#
Status
experimental
Severity
medium
Author
Okta
Source
github.com/auth0/auth0-customer-detections

This detection alerts when attack protection features have been disabled in the tenant's settings. This detection covers Suspicious IP Throttling, Breached Password Detection, and Brute-force protection.

Known False Positives

  • Legitimate updates by an administrator. This rule is designed for threat hunting and to be a starting point for further investigation.

MITRE ATT&CK Coverage

Rule Body

title: Attack protection features manipulation - some attack protection features have been disabled.
id: 0325e11e-12ce-44e7-8d1f-3a64700a000a
status: experimental
description: |
    This detection alerts when attack protection features have been disabled in the tenant's settings.
    This detection covers Suspicious IP Throttling, Breached Password Detection, and Brute-force protection.
author: Okta
date: 2025-07-11
modified: 2025-09-01
logsource:
    product: auth0
detection:
    selection:
        data.type: sapi
        data.description:
            - Update Brute-force settings
            - Create or update the anomaly detection captcha
            - Update Suspicious IP Throttling settings
        data.details.request.body.enabled: 'false'
    filter:
        data.details.response.body.enabled:
            - false
    condition: selection and filter
explanation: >
    The query collects the events indicating modification of settings for the three listed features.
    When the response body contains 'enabled' set to 'false', this indicates that a corresponding feature has been turned off.
    The Splunk query below lists the attack protection features that has been turned off.
splunk: |
    index=auth0 data.tenant_name="{your-tenant-name}"
    data.type=sapi data.description IN ("Update Suspicious IP Throttling settings",
    "Update Breached Password Detection settings", "Update Brute-force settings")
    | eval feature_type = case(
      'data.description'="Update Suspicious IP Throttling settings", "Suspicious IP Throttling",
      'data.description'="Update Breached Password Detection settings", "Breached Password Detection",
      'data.description'="Update Brute-force settings", "Brute-force"
      )
    ```Take only the last modifications of settings for each feature```
    | sort -_time
    | dedup feature_type
    | eval status = case ('data.details.response.body.enabled' = "false", "disabled",
    'data.details.response.body.enabled' = "true", "enabled")
    | fields _time, status, feature_type, data.ip
    ``` for reporting purposes remove the "where" clause below and it will display the current
    status of all three protection features```
    | where status = "disabled"
    ``` Display the results printing out timestamp, modifying IP, feature reference, and its status```
    | stats by _time, data.ip, feature_type, status
comments:
    - The Splunk query above shall be tuned to reflect a valid tenant name.
    - Adjust the detection to monitor the attack feature in use.
    - Additionally, you can use this detection for reporting of all changes of the breached password
     detection settings by removing the "where", "sort", and "dedubp" clauses.
tenant_logs: |
    type: "sapi" AND (description: "Update Suspicious IP Throttling settings"
    OR description: "Update Breached Password Detection settings"
    OR description: "Update Brute-force settings")
prevention:
    - Control tenant admins, i.e. "Admin", as this role has permissions to modify attack protection settings.
    - Enforce MFA for tenant admins to reduce the risk of an adversary gaining access.
    - Control Management API scopes that allow modification of attack protection features - update:attack_protection.
    - Control usage of Management API from only trusted IPs by applying Network ACL scoped to "management".
falsepositives:
    - Legitimate updates by an administrator. This rule is designed for threat hunting and to be a starting point for further investigation.
level: medium
tags:
    - attack.defense-evasion
    - attack.t1562
    - attack.t1562.007

Stages and Predicates

Stage 0: condition

selection and filter

Stage 1: selection

selection:
    data.type: sapi
    data.description:
        - Update Brute-force settings
        - Create or update the anomaly detection captcha
        - Update Suspicious IP Throttling settings
    data.details.request.body.enabled: 'false'

Stage 2: filter

filter:
    data.details.response.body.enabled:
        - false

Indicators

These rows show field, operator, and value matches.

AWS Config Disabling Channel/Recorder

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

Detects AWS Config Service disabling

Known False Positives

  • Valid change in AWS Config Service

MITRE ATT&CK Coverage

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: AWS Config Disabling Channel/Recorder
id: 07330162-dba1-4746-8121-a9647d49d297
status: test
description: Detects AWS Config Service disabling
references:
    - https://docs.aws.amazon.com/config/latest/developerguide/cloudtrail-log-files-for-aws-config.html
author: vitaliy0x1
date: 2020-01-21
modified: 2022-10-09
tags:
    - attack.defense-impairment
    - attack.t1685.002
logsource:
    product: aws
    service: cloudtrail
detection:
    selection:
        eventSource: 'config.amazonaws.com'
        eventName:
            - 'DeleteDeliveryChannel'
            - 'StopConfigurationRecorder'
    condition: selection
falsepositives:
    - Valid change in AWS Config Service
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    eventSource: 'config.amazonaws.com'
    eventName:
        - 'DeleteDeliveryChannel'
        - 'StopConfigurationRecorder'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
eventNameeq
  • DeleteDeliveryChannel
  • StopConfigurationRecorder
field:"aws::eventName" kind:eq
eventSourceeq
  • config.amazonaws.com
field:"aws::eventSource" kind:eq value:"config.amazonaws.com"

Azure Owner Removed From Application or Service Principal

#
Status
test
Severity
medium
Author
Austin Songer @austinsonger
Source
github.com/SigmaHQ/sigma

Identifies when a owner is was removed from a application or service principal in Azure.

Known False Positives

  • Owner being removed may be performed by a system administrator.
  • Verify whether the user identity, user agent, and/or hostname should be making changes in your environment.
  • Owner removed from unfamiliar users should be investigated. If known behavior is causing false positives, it can be exempted from the rule.

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Azure Owner Removed From Application or Service Principal
id: 636e30d5-3736-42ea-96b1-e6e2f8429fd6
status: test
description: Identifies when a owner is was removed from a application or service principal in Azure.
references:
    - https://learn.microsoft.com/en-us/entra/identity/monitoring-health/reference-audit-activities#core-directory
author: Austin Songer @austinsonger
date: 2021-09-03
modified: 2026-04-30
tags:
    - attack.stealth
logsource:
    product: azure
    service: auditlogs
detection:
    selection:
        operationName:
            - 'Remove owner from service principal'
            - 'Remove owner from application'
    condition: selection
falsepositives:
    - Owner being removed may be performed by a system administrator.
    - Verify whether the user identity, user agent, and/or hostname should be making changes in your environment.
    - Owner removed from unfamiliar users should be investigated. If known behavior is causing false positives, it can be exempted from the rule.
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    operationName:
        - 'Remove owner from service principal'
        - 'Remove owner from application'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
operationNameeq
  • Remove owner from application
  • Remove owner from service principal
field:"operationName" kind:eq

Bitbucket User Login Failure

#
Status
test
Severity
medium
Author
Muhammad Faisal (@faisalusuf)
Source
github.com/SigmaHQ/sigma

Detects user authentication failure events. Please note that this rule can be noisy and it is recommended to use with correlation based on "author.name" field.

Known False Positives

  • Legitimate user wrong password attempts.

MITRE ATT&CK Coverage

Rule Body

title: Bitbucket User Login Failure
id: 70ed1d26-0050-4b38-a599-92c53d57d45a
status: test
description: |
    Detects user authentication failure events.
    Please note that this rule can be noisy and it is recommended to use with correlation based on "author.name" field.
references:
    - https://confluence.atlassian.com/bitbucketserver/audit-log-events-776640423.html
author: Muhammad Faisal (@faisalusuf)
date: 2024-02-25
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.initial-access
    - attack.credential-access
    - attack.stealth
    - attack.t1078.004
    - attack.t1110
logsource:
    product: bitbucket
    service: audit
    definition: 'Requirements: "Advance" log level is required to receive these audit events.'
detection:
    selection:
        auditType.category: 'Authentication'
        auditType.action: 'User login failed'
    condition: selection
falsepositives:
    - Legitimate user wrong password attempts.
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    auditType.category: 'Authentication'
    auditType.action: 'User login failed'

Indicators

These rows show field, operator, and value matches.

Breached Password Detection - critical settings manipulated

#
Status
experimental
Severity
medium
Author
Okta
Source
github.com/auth0/auth0-customer-detections

Detect when Breached Password Detection has been disabled at all or set to a monitoring mode where no blocking occurs. This can allow malicious actors to conduct credential stuffing without being detected and blocked.

Known False Positives

  • Legitimate updates by an administrator. This rule is designed for threat hunting and to be a starting point for further investigation.

MITRE ATT&CK Coverage

Rule Body

title: Breached Password Detection - critical settings manipulated
id: 2a26d75e-43fd-4bc9-afb6-d3465068d869
status: experimental
description: |
    Detect when Breached Password Detection has been disabled at all or set to a monitoring mode where no blocking occurs.
    This can allow malicious actors to conduct credential stuffing without being detected and blocked.
author: Okta
date: 2025-07-11
modified: 2025-09-01
logsource:
    product: auth0
detection:
    selection:
        data.type: sapi
        data.description:
            - Update Breached Password Detection settings
    filter_1:
        data.details.response.body.enabled: false
    filter_2:
        data.details.response.body.shields{}: 'block'
    filter_3:
        data.details.response.body.stage.pre-user-registration.shields{}: 'block'
    condition: (selection and filter_1) or (selection and not filter_2) or (selection and not filter_3)
explanation: >
    The query filters for modification of the Breached Password Detection.
    It returns a record when the feature is completely disabled, i.e. the "shields" attribute does not contain "block",
    or set into a monitoring mode by disabling all responses.
    The Splunk query below consideres only the last modification and displays a modifying IP, state of the protection for login and signup modes,
    and if user notifications are switched on.
splunk: |
    index=auth0 data.tenant_name="{your-tenant-name}"
    data.type=sapi data.description="Update Breached Password Detection settings"
    ``` Excluding white-listed IPs```
    ``` NOT data.ip IN ("{white-listed-IPs}")```
    | fields _time, data.ip, data.details.response.body.shields{}, data.details.response.body.enabled,
    data.details.response.body.stage.pre-user-registration.shields{}
    ```Take only the last change of configurations that reflects the current settings```
    | sort - _time
    | head 1
    | rename data.details.response.body.shields{} as login_shields
    | rename data.details.response.body.enabled as breached_protection_enabled
    | rename data.details.response.body.stage.pre-user-registration.shields{} as signup_shields
    ``` Encoding the logic to define what flows' protection have been disabled and enabled```
    | eval user_notifications_on = if(isnotnull(mvfind(login_shields, "user_notification")), "true", "false")
    | eval login_flow_is_protected = if(isnotnull(mvfind(login_shields, "block")), "true", "false")
    | eval signup_flow_is_protected = if(isnotnull(mvfind(signup_shields, "block")), "true", "false")
    ```Alert when breached password protection is completely disabled or all responses are disabled (login, signup). Note: pwd reset is masked by now.```
    | where breached_protection_enabled = "false" OR (login_flow_is_protected = "false" AND signup_flow_is_protected = "false")
    ```Display the information in a table```
    | table _time, data.ip, breached_protection_enabled, login_flow_is_protected, signup_flow_is_protected, user_notifications_on
comments:
    - The Splunk query above shall be tuned to reflect a valid tenant name.
    - Limit the detection to actions conducted from not white-listed IPs and/or a particular admin user.
    - If needed the "where" clause can be adjusted to alert when only one of the flows is unprotected.
    - Additionally, you can use this detection for reporting of all changes of the breached password
     detection settings by removing the "where" and "head" clauses.
tenant_logs: |
    type: "sapi" AND description: "Update Breached Password Detection settings"
prevention:
    - Control tenant admins, i.e. "Admin", as this role has permissions to modify any application.
    - Enforce MFA for tenant admins to reduce the risk of an adversary gaining access.
    - Control Management API scopes that allow modification of attack protection features - update:attack_protection.
    - Control usage of Management API from only trusted IPs by applying Network ACL scoped to "management".
falsepositives:
    - Legitimate updates by an administrator. This rule is designed for threat hunting and to be a starting point for further investigation.
level: medium
tags:
    - attack.defense-evasion
    - attack.t1562
    - attack.t1562.007

Stages and Predicates

Stage 0: condition

(selection and filter_1) or (selection and not filter_2) or (selection and not filter_3)

Stage 1: selection

selection:
    data.type: sapi
    data.description:
        - Update Breached Password Detection settings

Stage 2: filter_1

filter_1:
    data.details.response.body.enabled: false

Stage 3: selection

selection:
    data.type: sapi
    data.description:
        - Update Breached Password Detection settings

Stage 4: not filter_2

filter_2:
    data.details.response.body.shields{}: 'block'

Stage 5: selection

selection:
    data.type: sapi
    data.description:
        - Update Breached Password Detection settings

Stage 6: not filter_3

filter_3:
    data.details.response.body.stage.pre-user-registration.shields{}: 'block'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

Connection Proxy

#
Status
test
Severity
low
Author
Ömer Günal
Source
github.com/SigmaHQ/sigma

Detects setting proxy configuration

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Connection Proxy
id: 72f4ab3f-787d-495d-a55d-68c2ff46cf4c
status: test
description: Detects setting proxy configuration
author: Ömer Günal
date: 2020-06-17
modified: 2022-10-05
tags:
    - attack.command-and-control
    - attack.t1090
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        CommandLine|contains:
            - 'http_proxy='
            - 'https_proxy='
    condition: selection
falsepositives:
    - Legitimate administration activities
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains:
        - 'http_proxy='
        - 'https_proxy='

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • http_proxy=
  • https_proxy=
field:"CommandLine" kind:match

Conti Volume Shadow Listing

#
Status
test
Severity
high
Author
Max Altgelt (Nextron Systems), Tobias Michalski (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects a command used by conti to find volume shadow backups

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

Rule Body

title: Conti Volume Shadow Listing
id: 7b30e0a7-c675-4b24-8a46-82fa67e2433d
status: test
description: Detects a command used by conti to find volume shadow backups
references:
    - https://twitter.com/vxunderground/status/1423336151860002816?s=20
    - https://www.virustotal.com/gui/file/03e9b8c2e86d6db450e5eceec057d7e369ee2389b9daecaf06331a95410aa5f8/detection
author: Max Altgelt (Nextron Systems), Tobias Michalski (Nextron Systems)
date: 2021-08-09
tags:
    - attack.t1587.001
    - attack.resource-development
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|all:
            - 'vssadmin list shadows'
            - 'log.txt'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - 'vssadmin list shadows'
        - 'log.txt'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • log.txt
  • vssadmin list shadows corpus 2 (sigma 2)
field:"CommandLine" kind:match

CVE-2020-0688 Exchange Exploitation via Web Log

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

Detects the exploitation of Microsoft Exchange vulnerability as described in CVE-2020-0688

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: CVE-2020-0688 Exchange Exploitation via Web Log
id: fce2c2e2-0fb5-41ab-a14c-5391e1fd70a5
status: test
description: Detects the exploitation of Microsoft Exchange vulnerability as described in CVE-2020-0688
references:
    - https://www.trustedsec.com/blog/detecting-cve-20200688-remote-code-execution-vulnerability-on-microsoft-exchange-server/
author: Florian Roth (Nextron Systems)
date: 2020-02-29
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2020-0688
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection1:
        cs-method: 'GET'
        cs-uri-query|contains:
            - '/ecp/'
            - '/owa/'
    selection2:
        cs-uri-query|contains: '__VIEWSTATE='
    condition: all of selection*
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

all of selection*

Stage 1: selection1

selection1:
    cs-method: 'GET'
    cs-uri-query|contains:
        - '/ecp/'
        - '/owa/'

Stage 2: selection2

selection2:
    cs-uri-query|contains: '__VIEWSTATE='

Indicators

These rows show field, operator, and value matches.

CVE-2021-1675 Print Spooler Exploitation Filename Pattern

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

Detects the default filename used in PoC code against print spooler vulnerability CVE-2021-1675

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: CVE-2021-1675 Print Spooler Exploitation Filename Pattern
id: 2131cfb3-8c12-45e8-8fa0-31f5924e9f07
status: test
description: Detects the default filename used in PoC code against print spooler vulnerability CVE-2021-1675
references:
    - https://web.archive.org/web/20210629055600/https://github.com/hhlxf/PrintNightmare/
    - https://web.archive.org/web/20210701042336/https://github.com/afwu/PrintNightmare
    - https://github.com/cube0x0/CVE-2021-1675
author: Florian Roth (Nextron Systems)
date: 2021-06-29
modified: 2022-12-25
tags:
    - attack.execution
    - attack.privilege-escalation
    - attack.resource-development
    - attack.t1587
    - cve.2021-1675
    - detection.emerging-threats
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains: 'C:\Windows\System32\spool\drivers\x64\3\old\1\123'
    condition: selection
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains: 'C:\Windows\System32\spool\drivers\x64\3\old\1\123'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • C:\Windows\System32\spool\drivers\x64\3\old\1\123
field:"TargetFilename" kind:match value:"C:\Windows\System32\spool\drivers\x64\3\old\1\123"

DPAPI Domain Backup Key Extraction

#
Status
test
Severity
high
Author
Roberto Rodriguez @Cyb3rWard0g
Source
github.com/SigmaHQ/sigma

Detects tools extracting LSA secret DPAPI domain backup key from Domain Controllers

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: DPAPI Domain Backup Key Extraction
id: 4ac1f50b-3bd0-4968-902d-868b4647937e
status: test
description: Detects tools extracting LSA secret DPAPI domain backup key from Domain Controllers
references:
    - https://threathunterplaybook.com/hunts/windows/190620-DomainDPAPIBackupKeyExtraction/notebook.html
author: Roberto Rodriguez @Cyb3rWard0g
date: 2019-06-20
modified: 2022-02-24
tags:
    - attack.credential-access
    - attack.t1003.004
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4662
        ObjectType: 'SecretObject'
        AccessMask: '0x2'
        ObjectName|contains: 'BCKUPKEY'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 4662
    ObjectType: 'SecretObject'
    AccessMask: '0x2'
    ObjectName|contains: 'BCKUPKEY'

Indicators

These rows show field, operator, and value matches.

ESXi System Information Discovery Via ESXCLI

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

Detects execution of the "esxcli" command with the "system" flag in order to retrieve information about the different component of the system. Such as accounts, modules, NTP, etc.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: ESXi System Information Discovery Via ESXCLI
id: e80273e1-9faf-40bc-bd85-dbaff104c4e9
status: test
description: Detects execution of the "esxcli" command with the "system" flag in order to retrieve information about the different component of the system. Such as accounts, modules, NTP, etc.
references:
    - https://www.crowdstrike.com/blog/hypervisor-jackpotting-ecrime-actors-increase-targeting-of-esxi-servers/
    - https://developer.broadcom.com/xapis/esxcli-command-reference/7.0.0/namespace/esxcli_system.html
author: Cedric Maurugeon
date: 2023-09-04
tags:
    - attack.discovery
    - attack.execution
    - attack.t1033
    - attack.t1007
    - attack.t1059.012
logsource:
    category: process_creation
    product: linux
detection:
    selection_img:
        Image|endswith: '/esxcli'
        CommandLine|contains: 'system'
    selection_cli:
        CommandLine|contains:
            - ' get'
            - ' list'
    condition: all of selection_*
falsepositives:
    - Legitimate administration activities
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    Image|endswith: '/esxcli'
    CommandLine|contains: 'system'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - ' get'
        - ' list'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • get corpus 4 (sigma 4)
  • list corpus 4 (sigma 4)
  • system corpus 8 (sigma 4, splunk 3, elastic 1)
field:"CommandLine" kind:match
Imageends_with
  • /esxcli corpus 9 (sigma 9)
field:"Image" kind:ends_with value:"/esxcli"

ESXi VM List Discovery Via ESXCLI

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

Detects execution of the "esxcli" command with the "vm" flag in order to retrieve information about the installed VMs.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: ESXi VM List Discovery Via ESXCLI
id: 5f1573a7-363b-4114-9208-ad7a61de46eb
status: test
description: Detects execution of the "esxcli" command with the "vm" flag in order to retrieve information about the installed VMs.
references:
    - https://www.crowdstrike.com/blog/hypervisor-jackpotting-ecrime-actors-increase-targeting-of-esxi-servers/
    - https://developer.broadcom.com/xapis/esxcli-command-reference/7.0.0/namespace/esxcli_vm.html
    - https://www.secuinfra.com/en/techtalk/hide-your-hypervisor-analysis-of-esxiargs-ransomware/
    - https://www.trendmicro.com/en_us/research/22/e/new-linux-based-ransomware-cheerscrypt-targets-exsi-devices.html
author: Cedric Maurugeon
date: 2023-09-04
tags:
    - attack.discovery
    - attack.execution
    - attack.t1033
    - attack.t1007
    - attack.t1059.012
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|endswith: '/esxcli'
        CommandLine|contains: 'vm process'
        CommandLine|endswith: ' list'
    condition: selection
falsepositives:
    - Legitimate administration activities
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '/esxcli'
    CommandLine|contains: 'vm process'
    CommandLine|endswith: ' list'

Indicators

These rows show field, operator, and value matches.

Exchange transport agent installation artifacts (native)

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

Detects scenarios where an attacker attempts to load an artifact in the Exchange transport agent.

Known False Positives

  • rare administrator change

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Exchange transport agent installation artifacts (native)
description: Detects scenarios where an attacker attempts to load an artifact in the Exchange transport agent.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1505-Server%20Software%20Component
- https://speakerdeck.com/heirhabarov/hunting-for-persistence-via-microsoft-exchange-server-or-outlook
- https://www.welivesecurity.com/wp-content/uploads/2019/05/ESET-LightNeuron.pdf
tags:
- attack.persistence
- attack.t1505.002 # Server Software Component: Transport Agent 
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: msexchange-management
detection:
  selection:
    EventID:
      - 1 # success
      - 6 # failure
    EventData|contains:
      - Enable-TransportAgent
      - Install-TransportAgent
  condition: selection
falsepositives:
- rare administrator change
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID:
    - 1
    - 6
  EventData|contains:
    - Enable-TransportAgent
    - Install-TransportAgent

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
EventDatamatch
  • Enable-TransportAgent corpus 2 (sigma 2)
  • Install-TransportAgent corpus 2 (sigma 2)
field:"EventData" kind:match

Failed DNS server zone transfer for enumeration purposes

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

Detects scenarios where an attacker attempts to exploit DNS server missconfiguration to trigger a DNS zone transfer and enumerate list of valid IP and hostnames.

Known False Positives

  • Unknwown

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Failed DNS server zone transfer for enumeration purposes
description: Detects scenarios where an attacker attempts to exploit DNS server missconfiguration to trigger a DNS zone transfer and enumerate list of valid IP and hostnames.
references:
- https://capec.mitre.org/data/definitions/291.html
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0007-Discovery/T1016-System%20Network%20Configuration%20Discovery
- http://intelligentsystemsmonitoring.com/knowledgebase/windows-operating-system/the-dns-server-received-a-zone-transfer-request-from-for-a-nonexistent-or-nonauthoritative-zone-8319/
tags:
- attack.discovery
- attack.t1016
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: dns-server
detection:
  selection:
    EventID: 6004
    EventData Name: DNS_EVENT_BAD_ZONE_TRANSFER_REQUEST
  filter:
    param1: '%dns_servers%' # IP list of internal DNS servers
  condition: selection and not filter
falsepositives:
- Unknwown
level: medium

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
  EventID: 6004
  EventData Name: DNS_EVENT_BAD_ZONE_TRANSFER_REQUEST

Stage 2: not filter

filter:
  param1: '%dns_servers%'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
param1eq%dns_servers%excludes:param1 field:"param1" value:"%dns_servers%"

HackTool - EfsPotato Named Pipe Creation

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

Detects the pattern of a pipe name as used by the hack tool EfsPotato

Known False Positives

  • \pipe\LOCAL\Monitorian

MITRE ATT&CK Coverage

TacticTechniques
Privilege Escalation
Stealth

Telemetry Coverage

Rule Body

title: HackTool - EfsPotato Named Pipe Creation
id: 637f689e-b4a5-4a86-be0e-0100a0a33ba2
status: test
description: Detects the pattern of a pipe name as used by the hack tool EfsPotato
references:
    - https://twitter.com/SBousseaden/status/1429530155291193354?s=20
    - https://github.com/zcgonvh/EfsPotato
author: Florian Roth (Nextron Systems)
date: 2021-08-23
modified: 2023-12-21
tags:
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1055
logsource:
    product: windows
    category: pipe_created
    definition: 'Note that you have to configure logging for Named Pipe Events in Sysmon config (Event ID 17 and Event ID 18). The basic configuration is in popular sysmon configuration (https://github.com/SwiftOnSecurity/sysmon-config), but it is worth verifying. You can also use other repo, e.g. https://github.com/Neo23x0/sysmon-config, https://github.com/olafhartong/sysmon-modular. How to test detection? You can check powershell script from this site https://svch0st.medium.com/guide-to-named-pipes-and-hunting-for-cobalt-strike-pipes-dc46b2c5f575'
detection:
    selection:
        PipeName|contains:
            - '\pipe\'
            - '\pipe\srvsvc'  # more specific version (use only this one if the other causes too many false positives)
    filter_optional_ctx:
        PipeName|contains: '\CtxShare'
    filter_optional_default:
        PipeName|startswith: '\pipe\' # excludes pipes that start with \pipe\*
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - \pipe\LOCAL\Monitorian # https://github.com/emoacht/Monitorian
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    PipeName|contains:
        - '\pipe\'
        - '\pipe\srvsvc'

Stage 2: not filter_optional_*

filter_optional_ctx:
    PipeName|contains: '\CtxShare'
filter_optional_default:
    PipeName|startswith: '\pipe\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
PipeNamematch
  • \pipe\
  • \pipe\srvsvc
field:"PipeName" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
PipeNamematch\CtxShareexcludes:PipeName field:"PipeName" value:"\CtxShare"
PipeNamestarts_with\pipe\excludes:PipeName field:"PipeName" value:"\pipe\"

HackTool - Empire UserAgent URI Combo

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

Detects user agent and URI paths used by empire agents

Known False Positives

  • Valid requests with this exact user agent to server scripts of the defined names

MITRE ATT&CK Coverage

Rule Body

title: HackTool - Empire UserAgent URI Combo
id: b923f7d6-ac89-4a50-a71a-89fb846b4aa8
status: test
description: Detects user agent and URI paths used by empire agents
references:
    - https://github.com/BC-SECURITY/Empire
author: Florian Roth (Nextron Systems)
date: 2020-07-13
modified: 2024-02-26
tags:
    - attack.command-and-control
    - attack.t1071.001
logsource:
    category: proxy
detection:
    selection:
        c-useragent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko'
        cs-uri:
            - '/admin/get.php'
            - '/news.php'
            - '/login/process.php'
        cs-method: 'POST'
    condition: selection
falsepositives:
    - Valid requests with this exact user agent to server scripts of the defined names
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    c-useragent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko'
    cs-uri:
        - '/admin/get.php'
        - '/news.php'
        - '/login/process.php'
    cs-method: 'POST'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
c-useragenteq
  • Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
field:"c-useragent" kind:eq value:"Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko"
cs-methodeq
  • POST
field:"cs-method" kind:eq value:"POST"
cs-urieq
  • /admin/get.php
  • /login/process.php
  • /news.php
field:"cs-uri" kind:eq

Invoke-Obfuscation CLIP+ Launcher

#
Status
test
Severity
high
Author
Jonathan Cheong, oscd.community
Source
github.com/SigmaHQ/sigma

Detects Obfuscated use of Clip.exe to execute PowerShell

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Invoke-Obfuscation CLIP+ Launcher
id: b222df08-0e07-11eb-adc1-0242ac120002
status: test
description: Detects Obfuscated use of Clip.exe to execute PowerShell
references:
    - https://github.com/SigmaHQ/sigma/issues/1009  # (Task 26)
author: Jonathan Cheong, oscd.community
date: 2020-10-13
modified: 2022-11-17
tags:
    - attack.stealth
    - attack.t1027
    - attack.execution
    - attack.t1059.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        # CommandLine|re: 'cmd.{0,5}(?:\/c|\/r).+clip(?:\.exe)?.{0,4}&&.+clipboard]::\(\s\\\"\{\d\}.+\-f.+\"'
        # Example 1: Cmd /c" echo/Invoke-Expression (New-Object Net.WebClient).DownloadString |cLiP&& POWerSheLl -Nolog -sT . (\"{1}{2}{0}\"-f'pe','Ad',(\"{1}{0}\" -f'Ty','d-' ) ) -Assemb ( \"{5}{1}{3}{0}{2}{4}\" -f'ows','y','.F',(\"{0}{1}{2}\" -f'stem.W','i','nd'),( \"{0}{1}\"-f 'o','rms' ),'S' ) ; ([SySTEM.wiNDows.FoRmS.CLiPbOArd]::( \"{1}{0}\" -f (\"{1}{0}\" -f'T','TTeX' ),'gE' ).\"invO`Ke\"( ) ) ^| ^&( \"{5}{1}{2}{4}{3}{0}\" -f 'n',( \"{1}{0}\"-f'KE-','o' ),(\"{2}{1}{0}\"-f 'pRESS','x','e' ),'o','i','iNV') ; [System.Windows.Forms.Clipboard]::(\"{0}{1}\" -f( \"{1}{0}\"-f'e','SetT' ),'xt').\"InV`oKe\"( ' ')"
        # Example 2: CMD/c " ECho Invoke-Expression (New-Object Net.WebClient).DownloadString|c:\WiNDowS\SySteM32\cLip && powershElL -noPRO -sTa ^& (\"{2}{0}{1}\" -f 'dd',(\"{1}{0}\"-f 'ype','-T' ),'A' ) -AssemblyN (\"{0}{3}{2}{1}{4}\"-f'Pr','nCo',(\"{0}{1}\"-f'e','ntatio'),'es','re' ) ; ^& ( ( [StRinG]${ve`RB`OSE`pr`e`FeReNCE} )[1,3] + 'x'-JoiN'') ( ( [sySTem.WInDOWs.ClipbOaRD]::( \"{1}{0}\" -f(\"{0}{1}\" -f'tTe','xt' ),'ge' ).\"IN`Vo`Ke\"( ) ) ) ; [System.Windows.Clipboard]::( \"{2}{1}{0}\" -f't',( \"{0}{1}\" -f 'tT','ex' ),'Se' ).\"In`V`oKe\"( ' ' )"
        CommandLine|contains|all:
            - 'cmd'
            - '&&'
            - 'clipboard]::'
            - '-f'
        CommandLine|contains:
            - '/c'
            - '/r'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - 'cmd'
        - '&&'
        - 'clipboard]::'
        - '-f'
    CommandLine|contains:
        - '/c'
        - '/r'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • && corpus 2 (sigma 2)
  • -f corpus 9 (sigma 7, splunk 2)
  • /c corpus 16 (sigma 14, splunk 2)
  • /r corpus 4 (sigma 4)
  • clipboard]::
  • cmd corpus 8 (sigma 8)
field:"CommandLine" kind:match

Malicious DLL File Dropped in the Teams or OneDrive Folder

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

Detects creation of a malicious DLL file in the location where the OneDrive or Team applications Upon execution of the Teams or OneDrive application, the dropped malicious DLL file ("iphlpapi.dll") is sideloaded

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Malicious DLL File Dropped in the Teams or OneDrive Folder
id: 1908fcc1-1b92-4272-8214-0fbaf2fa5163
status: test
description: |
    Detects creation of a malicious DLL file in the location where the OneDrive or Team applications
    Upon execution of the Teams or OneDrive application, the dropped malicious DLL file ("iphlpapi.dll") is sideloaded
references:
    - https://blog.cyble.com/2022/07/27/targeted-attacks-being-carried-out-via-dll-sideloading/
author: frack113
date: 2022-08-12
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains|all:
            - 'iphlpapi.dll'
            - '\AppData\Local\Microsoft'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains|all:
        - 'iphlpapi.dll'
        - '\AppData\Local\Microsoft'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • \AppData\Local\Microsoft
  • iphlpapi.dll
field:"TargetFilename" kind:match

ManageEngine Endpoint Central Dctask64.EXE Potential Abuse

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

Detects the execution of "dctask64.exe", a signed binary by ZOHO Corporation part of ManageEngine Endpoint Central. This binary can be abused for DLL injection, arbitrary command and process execution.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: ManageEngine Endpoint Central Dctask64.EXE Potential Abuse
id: 6345b048-8441-43a7-9bed-541133633d7a
status: test
description: |
    Detects the execution of "dctask64.exe", a signed binary by ZOHO Corporation part of ManageEngine Endpoint Central.
    This binary can be abused for DLL injection, arbitrary command and process execution.
references:
    - https://twitter.com/gN3mes1s/status/1222088214581825540
    - https://twitter.com/gN3mes1s/status/1222095963789111296
    - https://twitter.com/gN3mes1s/status/1222095371175911424
author: Florian Roth (Nextron Systems), Nasreddine Bencherchali (Nextron Systems)
date: 2020-01-28
modified: 2025-01-22
tags:
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1055.001
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\dctask64.exe'
        - Hashes|contains:
              - 'IMPHASH=6834B1B94E49701D77CCB3C0895E1AFD'
              - 'IMPHASH=1BB6F93B129F398C7C4A76BB97450BBA'
              - 'IMPHASH=FAA2AC19875FADE461C8D89DCF2710A3'
              - 'IMPHASH=F1039CED4B91572AB7847D26032E6BBF'
    selection_cli:
        CommandLine|contains:
            - ' executecmd64 '
            - ' invokeexe '
            - ' injectDll '
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\dctask64.exe'
    - Hashes|contains:
          - 'IMPHASH=6834B1B94E49701D77CCB3C0895E1AFD'
          - 'IMPHASH=1BB6F93B129F398C7C4A76BB97450BBA'
          - 'IMPHASH=FAA2AC19875FADE461C8D89DCF2710A3'
          - 'IMPHASH=F1039CED4B91572AB7847D26032E6BBF'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - ' executecmd64 '
        - ' invokeexe '
        - ' injectDll '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • executecmd64
  • injectDll
  • invokeexe
field:"CommandLine" kind:match
Hashesmatch
  • IMPHASH=1BB6F93B129F398C7C4A76BB97450BBA corpus 2 (sigma 2)
  • IMPHASH=6834B1B94E49701D77CCB3C0895E1AFD corpus 2 (sigma 2)
  • IMPHASH=F1039CED4B91572AB7847D26032E6BBF corpus 2 (sigma 2)
  • IMPHASH=FAA2AC19875FADE461C8D89DCF2710A3 corpus 2 (sigma 2)
field:"Hashes" kind:match
Imageends_with
  • \dctask64.exe
field:"Image" kind:ends_with value:"\dctask64.exe"

MMC Executing Files with Reversed Extensions Using RTLO Abuse

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

Detects malicious behavior where the MMC utility (mmc.exe) executes files with reversed extensions caused by Right-to-Left Override (RLO) abuse, disguising them as document formats.

Known False Positives

  • Legitimate administrative actions using MMC to execute misnamed `.msc` files.
  • Unconventional but non-malicious usage of RLO or reversed extensions.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: MMC Executing Files with Reversed Extensions Using RTLO Abuse
id: 9cfe4b27-1e56-48b4-b7a8-d46851c91a44
status: experimental
description: Detects malicious behavior where the MMC utility (`mmc.exe`) executes files with reversed extensions caused by Right-to-Left Override (RLO) abuse, disguising them as document formats.
references:
    - https://www.unicode.org/versions/Unicode5.2.0/ch02.pdf
    - https://en.wikipedia.org/wiki/Right-to-left_override
    - https://tria.ge/241015-l98snsyeje/behavioral2
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-02-05
tags:
    - attack.execution
    - attack.stealth
    - attack.t1204.002
    - attack.t1218.014
    - attack.t1036.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_image:
        - Image|endswith: '\mmc.exe'
        - OriginalFileName: 'MMC.exe'
    selection_commandline:
        CommandLine|contains: # While looking at these files the prefix of their name will look something like csm.pdf, but in reality it is msc file
            - 'cod.msc'  # Reversed `.doc`
            - 'fdp.msc'  # Reversed `.pdf`
            - 'ftr.msc'  # Reversed `.rtf`
            - 'lmth.msc'  # Reversed `.html`
            - 'slx.msc'  # Reversed `.xls`
            - 'tdo.msc'  # Reversed `.odt`
            - 'xcod.msc'  # Reversed `.docx`
            - 'xslx.msc'  # Reversed `.xlsx`
            - 'xtpp.msc'  # Reversed `.pptx`
    condition: all of selection_*
falsepositives:
    - Legitimate administrative actions using MMC to execute misnamed `.msc` files.
    - Unconventional but non-malicious usage of RLO or reversed extensions.
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_image

selection_image:
    - Image|endswith: '\mmc.exe'
    - OriginalFileName: 'MMC.exe'

Stage 2: selection_commandline

selection_commandline:
    CommandLine|contains:
        - 'cod.msc'
        - 'fdp.msc'
        - 'ftr.msc'
        - 'lmth.msc'
        - 'slx.msc'
        - 'tdo.msc'
        - 'xcod.msc'
        - 'xslx.msc'
        - 'xtpp.msc'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • cod.msc
  • fdp.msc
  • ftr.msc
  • lmth.msc
  • slx.msc
  • tdo.msc
  • xcod.msc
  • xslx.msc
  • xtpp.msc
field:"CommandLine" kind:match
Imageends_with
  • \mmc.exe corpus 6 (sigma 5, splunk 1)
field:"Image" kind:ends_with value:"\mmc.exe"
OriginalFileNameeq
  • MMC.exe corpus 2 (sigma 2)
field:"OriginalFileName" kind:eq value:"MMC.exe"

Modify User Shell Folders Startup Value

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

Detect modification of the User Shell Folders registry values for Startup or Common Startup which could indicate persistence attempts. Attackers may modify User Shell Folders registry keys to point to malicious executables or scripts that will be executed during startup. This technique is often used to maintain persistence on a compromised system by ensuring that the malicious payload is executed automatically.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Modify User Shell Folders Startup Value
id: 9c226817-8dc9-46c2-a58d-66655aafd7dc
related:
    - id: 8f3ab69a-aa22-4943-aa58-e0a52fdf6818
      type: similar
status: test
description: |
    Detect modification of the User Shell Folders registry values for Startup or Common Startup which could indicate persistence attempts.
    Attackers may modify User Shell Folders registry keys to point to malicious executables or scripts that will be executed during startup.
    This technique is often used to maintain persistence on a compromised system by ensuring that the malicious payload is executed automatically.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/9e5b12c4912c07562aec7500447b11fa3e17e254/atomics/T1547.001/T1547.001.md
    - https://www.welivesecurity.com/en/eset-research/muddywater-snakes-riverbank/
author: frack113, Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2022-10-01
modified: 2026-01-05
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.t1547.001
logsource:
    product: windows
    category: registry_set
detection:
    selection:
        TargetObject|contains:
            - 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders'
            - 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders'
        TargetObject|endswith:
            - '\Common Startup'
            - '\Startup'
    filter_main_details_null:
        Details: null
    filter_main_programdata_startup:
        Details|contains:
            - 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup'
            - '%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup'
    filter_main_userprofile_startup_1:
        Details|contains:
            - '%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'
            - '%%USERPROFILE%%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'
    filter_main_userprofile_startup_2:
        Details|contains|all:
            - 'C:\Users\'
            - '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'
    # Apply more filters if new legitimate paths are identified
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/registry/registry_set/registry_set_susp_user_shell_folders/info.yml
simulation:
    - type: atomic-red-team
      name: Change Startup Folder - HKLM Modify User Shell Folders Common Startup Value
      technique: T1547.001
      atomic_guid: acfef903-7662-447e-a391-9c91c2f00f7b

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    TargetObject|contains:
        - 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders'
        - 'SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders'
    TargetObject|endswith:
        - '\Common Startup'
        - '\Startup'

Stage 2: not filter_main_*

filter_main_details_null:
    Details: null
filter_main_programdata_startup:
    Details|contains:
        - 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup'
        - '%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup'
filter_main_userprofile_startup_1:
    Details|contains:
        - '%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'
        - '%%USERPROFILE%%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'
filter_main_userprofile_startup_2:
    Details|contains|all:
        - 'C:\Users\'
        - '\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \Common Startup
  • \Startup
field:"TargetObject" kind:ends_with
TargetObjectmatch
  • SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
  • SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
field:"TargetObject" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
DetailsmatchC:\Users\excludes:Details field:"Details" value:"C:\Users\"
Detailsmatch\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupexcludes:Details field:"Details" value:"\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
Detailsis_null(no value, null check)excludes:Details
Detailsmatch%%USERPROFILE%%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupexcludes:Details field:"Details" value:"%%USERPROFILE%%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
Detailsmatch%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startupexcludes:Details field:"Details" value:"%ProgramData%\Microsoft\Windows\Start Menu\Programs\Startup"
Detailsmatch%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupexcludes:Details field:"Details" value:"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
DetailsmatchC:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startupexcludes:Details field:"Details" value:"C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"

OpenCanary - VNC Connection Attempt

#
Status
test
Severity
high
Author
Security Onion Solutions
Source
github.com/SigmaHQ/sigma

Detects instances where a VNC service on an OpenCanary node has had a connection attempt.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Lateral Movement

Rule Body

title: OpenCanary - VNC Connection Attempt
id: 9db5446c-b44a-4291-8b89-fcab5609c3b3
status: test
description: Detects instances where a VNC service on an OpenCanary node has had a connection attempt.
references:
    - https://opencanary.readthedocs.io/en/latest/starting/configuration.html#services-configuration
    - https://github.com/thinkst/opencanary/blob/a0896adfcaf0328cfd5829fe10d2878c7445138e/opencanary/logger.py#L52
author: Security Onion Solutions
date: 2024-03-08
tags:
    - attack.lateral-movement
    - attack.t1021
logsource:
    category: application
    product: opencanary
detection:
    selection:
        logtype: 12001
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    logtype: 12001

Indicators

These rows show field, operator, and value matches.

Potential Active Directory Enumeration Using AD Module - PsScript

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

Detects usage of the "Import-Module" cmdlet to load the "Microsoft.ActiveDirectory.Management.dl" DLL. Which is often used by attackers to perform AD enumeration.

Known False Positives

  • Legitimate use of the library for administrative activity

MITRE ATT&CK Coverage

TacticTechniques
ReconnaissanceNo specific technique
DiscoveryNo specific technique
ImpactNo specific technique

Telemetry Coverage

Rule Body

title: Potential Active Directory Enumeration Using AD Module - PsScript
id: 9e620995-f2d8-4630-8430-4afd89f77604
related:
    - id: 70bc5215-526f-4477-963c-a47a5c9ebd12
      type: similar
    - id: 74176142-4684-4d8a-8b0a-713257e7df8e
      type: similar
status: test
description: Detects usage of the "Import-Module" cmdlet to load the "Microsoft.ActiveDirectory.Management.dl" DLL. Which is often used by attackers to perform AD enumeration.
references:
    - https://github.com/samratashok/ADModule
    - https://twitter.com/cyb3rops/status/1617108657166061568?s=20
    - https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/active-directory-enumeration-with-ad-module-without-rsat-or-admin-privileges
author: frack113, Nasreddine Bencherchali
date: 2023-01-22
tags:
    - attack.reconnaissance
    - attack.discovery
    - attack.impact
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enable'
detection:
    selection_generic:
        ScriptBlockText|contains|all:
            - 'Import-Module '
            - 'Microsoft.ActiveDirectory.Management.dll'
    selection_specific:
        ScriptBlockText|contains: 'ipmo Microsoft.ActiveDirectory.Management.dll'
    condition: 1 of selection_*
falsepositives:
    - Legitimate use of the library for administrative activity
level: medium

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_generic

selection_generic:
    ScriptBlockText|contains|all:
        - 'Import-Module '
        - 'Microsoft.ActiveDirectory.Management.dll'

Stage 2: selection_specific

selection_specific:
    ScriptBlockText|contains: 'ipmo Microsoft.ActiveDirectory.Management.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • Import-Module
  • Microsoft.ActiveDirectory.Management.dll
  • ipmo Microsoft.ActiveDirectory.Management.dll
field:"ScriptBlockText" kind:match

Potential Arbitrary Code Execution Via Node.EXE

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

Detects the execution node.exe which is shipped with multiple software such as VMware, Adobe...etc. In order to execute arbitrary code. For example to establish reverse shell as seen in Log4j attacks...etc

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Arbitrary Code Execution Via Node.EXE
id: 6640f31c-01ad-49b5-beb5-83498a5cd8bd
status: test
description: Detects the execution node.exe which is shipped with multiple software such as VMware, Adobe...etc. In order to execute arbitrary code. For example to establish reverse shell as seen in Log4j attacks...etc
references:
    - http://blog.talosintelligence.com/2022/09/lazarus-three-rats.html
    - https://www.sprocketsecurity.com/resources/crossing-the-log4j-horizon-a-vulnerability-with-no-return
    - https://www.rapid7.com/blog/post/2022/01/18/active-exploitation-of-vmware-horizon-servers/
    - https://nodejs.org/api/cli.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-09
modified: 2023-02-03
tags:
    - attack.execution
    - attack.stealth
    - attack.t1127
logsource:
    category: process_creation
    product: windows
detection:
    selection_main:
        Image|endswith: '\node.exe'
        CommandLine|contains:
            - ' -e '
            - ' --eval '
    # Add more pattern of abuse as actions
    selection_action_reverse_shell:
        CommandLine|contains|all:
            - '.exec('
            - 'net.socket'
            - '.connect'
            - 'child_process'
    condition: selection_main and 1 of selection_action_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection_main and 1 of selection_action_*

Stage 1: selection_main

selection_main:
    Image|endswith: '\node.exe'
    CommandLine|contains:
        - ' -e '
        - ' --eval '

Stage 2: selection_action_reverse_shell

selection_action_reverse_shell:
    CommandLine|contains|all:
        - '.exec('
        - 'net.socket'
        - '.connect'
        - 'child_process'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --eval
  • -e corpus 17 (sigma 14, elastic 3)
  • .connect corpus 2 (sigma 2)
  • .exec(
  • child_process
  • net.socket
field:"CommandLine" kind:match
Imageends_with
  • \node.exe corpus 6 (sigma 6)
field:"Image" kind:ends_with value:"\node.exe"

Potential CVE-2023-21554 QueueJumper Exploitation

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

Detects potential exploitation of CVE-2023-21554 (dubbed QueueJumper)

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique
Privilege EscalationNo specific technique

Telemetry Coverage

Rule Body

title: Potential CVE-2023-21554 QueueJumper Exploitation
id: 53207cc2-0745-4c19-bc72-80be1cc16b3f
status: test
description: Detects potential exploitation of CVE-2023-21554 (dubbed QueueJumper)
references:
    - https://research.checkpoint.com/2023/queuejumper-critical-unauthorized-rce-vulnerability-in-msmq-service/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-04-12
tags:
    - attack.privilege-escalation
    - attack.execution
    - cve.2023-21554
    - detection.emerging-threats
logsource:
    product: windows
    category: process_creation
detection:
    selection:
        ParentImage|endswith: '\Windows\System32\mqsvc.exe'
        Image|endswith:
            - '\cmd.exe'
            - '\cscript.exe'
            - '\mshta.exe'
            - '\powershell.exe'
            - '\pwsh.exe'
            - '\regsvr32.exe'
            - '\rundll32.exe'
            - '\schtasks.exe'
            - '\wmic.exe'
            - '\wscript.exe'
            - '\wsl.exe'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith: '\Windows\System32\mqsvc.exe'
    Image|endswith:
        - '\cmd.exe'
        - '\cscript.exe'
        - '\mshta.exe'
        - '\powershell.exe'
        - '\pwsh.exe'
        - '\regsvr32.exe'
        - '\rundll32.exe'
        - '\schtasks.exe'
        - '\wmic.exe'
        - '\wscript.exe'
        - '\wsl.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \cscript.exe corpus 72 (sigma 72)
  • \mshta.exe corpus 67 (sigma 66, splunk 1)
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \regsvr32.exe corpus 64 (sigma 64)
  • \rundll32.exe corpus 94 (sigma 94)
  • \schtasks.exe corpus 55 (sigma 55)
  • \wmic.exe corpus 62 (sigma 62)
  • \wscript.exe corpus 74 (sigma 74)
  • \wsl.exe corpus 11 (sigma 11)
field:"Image" kind:ends_with
ParentImageends_with
  • \Windows\System32\mqsvc.exe
field:"ParentImage" kind:ends_with value:"\Windows\System32\mqsvc.exe"

Potential Execution of Sysinternals Tools

#
Status
test
Severity
low
Author
Markus Neis
Source
github.com/SigmaHQ/sigma

Detects command lines that contain the 'accepteula' flag which could be a sign of execution of one of the Sysinternals tools

Known False Positives

  • Legitimate use of SysInternals tools
  • Programs that use the same command line flag

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

Rule Body

title: Potential Execution of Sysinternals Tools
id: 7cccd811-7ae9-4ebe-9afd-cb5c406b824b
related:
    - id: 25ffa65d-76d8-4da5-a832-3f2b0136e133
      type: derived
status: test
description: Detects command lines that contain the 'accepteula' flag which could be a sign of execution of one of the Sysinternals tools
references:
    - https://twitter.com/Moti_B/status/1008587936735035392
author: Markus Neis
date: 2017-08-28
modified: 2024-03-13
tags:
    - attack.resource-development
    - attack.t1588.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|windash: ' -accepteula'
    condition: selection
falsepositives:
    - Legitimate use of SysInternals tools
    - Programs that use the same command line flag
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|windash: ' -accepteula'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -accepteula corpus 2 (sigma 2)
  • /accepteula corpus 2 (sigma 2)
  • –accepteula corpus 2 (sigma 2)
  • —accepteula corpus 2 (sigma 2)
  • ―accepteula corpus 2 (sigma 2)
field:"CommandLine" kind:match

Potential WizardUpdate Malware Infection

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

Detects the execution traces of the WizardUpdate malware. WizardUpdate is a macOS trojan that attempts to infiltrate macOS machines to steal data and it is associated with other types of malicious payloads, increasing the chances of multiple infections on a device.

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Telemetry Coverage

Rule Body

title: Potential WizardUpdate Malware Infection
id: f68c4a4f-19ef-4817-952c-50dce331f4b0
status: test
description: Detects the execution traces of the WizardUpdate malware. WizardUpdate is a macOS trojan that attempts to infiltrate macOS machines to steal data and it is associated with other types of malicious payloads, increasing the chances of multiple infections on a device.
references:
    - https://github.com/elastic/protections-artifacts/commit/746086721fd385d9f5c6647cada1788db4aea95f#diff-c68a1fcbf7a3f80c87225d7fdc031f691e9f3b6a14a36754be00762bfe6eae97
    - https://malpedia.caad.fkie.fraunhofer.de/details/osx.xcsset
    - https://www.microsoft.com/security/blog/2022/02/02/the-evolution-of-a-mac-trojan-updateagents-progression/
author: Tim Rauch (rule), Elastic (idea)
date: 2022-10-17
tags:
    - attack.command-and-control
logsource:
    category: process_creation
    product: macos
detection:
    selection_1:
        Image|endswith: '/sh'
        CommandLine|contains|all:
            - '=$(curl '
            - 'eval'
    selection_2:
        Image|endswith: '/curl'
        CommandLine|contains: '_intermediate_agent_'
    condition: 1 of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    Image|endswith: '/sh'
    CommandLine|contains|all:
        - '=$(curl '
        - 'eval'

Stage 2: selection_2

selection_2:
    Image|endswith: '/curl'
    CommandLine|contains: '_intermediate_agent_'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • =$(curl
  • _intermediate_agent_
  • eval corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • /curl corpus 22 (sigma 22)
  • /sh corpus 12 (sigma 12)
field:"Image" kind:ends_with

Potentially Suspicious Usage Of Qemu

#
Status
test
Severity
medium
Author
Muhammad Faisal (@faisalusuf), Hunter Juhan (@threatHNTR)
Source
github.com/SigmaHQ/sigma

Detects potentially suspicious execution of the Qemu utility in a Windows environment. Threat actors have leveraged this utility and this technique for achieving network access as reported by Kaspersky.

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

Rule Body

title: Potentially Suspicious Usage Of Qemu
id: 5fc297ae-25b6-488a-8f25-cc12ac29b744
status: test
description: |
    Detects potentially suspicious execution of the Qemu utility in a Windows environment.
    Threat actors have leveraged this utility and this technique for achieving network access as reported by Kaspersky.
references:
    - https://securelist.com/network-tunneling-with-qemu/111803/
    - https://www.qemu.org/docs/master/system/invocation.html#hxtool-5
author: Muhammad Faisal (@faisalusuf), Hunter Juhan (@threatHNTR)
date: 2024-06-03
tags:
    - attack.command-and-control
    - attack.t1090
    - attack.t1572
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains:
            - '-m 1M' # VM with just 1MB of ram is insufficient this is a suspicious flag
            - '-m 2M'
            - '-m 3M'
        CommandLine|contains|all:
            - 'restrict=off'
            - '-netdev '
            - 'connect='
            - '-nographic' # This is also a key detection no one invoke without UI from console usually its a flag.
    filter_main_normal_usecase:
        CommandLine|contains:
            - ' -cdrom ' # Normal usage cases
            - ' type=virt '
            - ' -blockdev '
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    CommandLine|contains:
        - '-m 1M'
        - '-m 2M'
        - '-m 3M'
    CommandLine|contains|all:
        - 'restrict=off'
        - '-netdev '
        - 'connect='
        - '-nographic'

Stage 2: not filter_main_normal_usecase

filter_main_normal_usecase:
    CommandLine|contains:
        - ' -cdrom '
        - ' type=virt '
        - ' -blockdev '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -m 1M
  • -m 2M
  • -m 3M
  • -netdev
  • -nographic corpus 2 (sigma 1, splunk 1)
  • connect= corpus 4 (elastic 3, sigma 1)
  • restrict=off corpus 4 (elastic 3, sigma 1)
field:"CommandLine" kind:match

Exclusions

The rule actively suppresses these predicates.

Remote DLL Load Via Rundll32.EXE

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

Detects a remote DLL load event via "rundll32.exe".

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Remote DLL Load Via Rundll32.EXE
id: f40017b3-cb2e-4335-ab5d-3babf679c1de
status: test
description: Detects a remote DLL load event via "rundll32.exe".
references:
    - https://github.com/gabe-k/themebleed
    - Internal Research
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-09-18
tags:
    - attack.execution
    - attack.t1204.002
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith: '\rundll32.exe'
        ImageLoaded|startswith: '\\\\'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\rundll32.exe'
    ImageLoaded|startswith: '\\\\'

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"
ImageLoadedstarts_with
  • \\\\
field:"ImageLoaded" kind:starts_with value:"\\\\"

Remote Registry Lateral Movement

#
Status
test
Severity
high
Author
Sagie Dulce, Dekel Paz
Source
github.com/SigmaHQ/sigma

Detects remote RPC calls to modify the registry and possible execute code

Known False Positives

  • Remote administration of registry values

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Defense Impairment

Telemetry Coverage

Rule Body

title: Remote Registry Lateral Movement
id: 35c55673-84ca-4e99-8d09-e334f3c29539
status: test
description: Detects remote RPC calls to modify the registry and possible execute code
references:
    - https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-rrp/0fa3191d-bb79-490a-81bd-54c2601b7a78
    - https://github.com/jsecurity101/MSRPC-to-ATTACK/blob/ddd4608fe8684fcf2fcf9b48c5f0b3c28097f8a3/documents/MS-RRP.md
    - https://github.com/zeronetworks/rpcfirewall
    - https://zeronetworks.com/blog/stopping-lateral-movement-via-the-rpc-firewall/
author: Sagie Dulce, Dekel Paz
date: 2022-01-01
tags:
    - attack.lateral-movement
    - attack.defense-impairment
    - attack.t1112
    - attack.persistence
logsource:
    product: rpc_firewall
    category: application
    definition: 'Requirements: install and apply the RPC Firewall to all processes with "audit:true action:block uuid:338cd001-2244-31f1-aaaa-900038001003"'
detection:
    selection:
        EventLog: RPCFW
        EventID: 3
        InterfaceUuid: 338cd001-2244-31f1-aaaa-900038001003
        OpNum:
            - 6
            - 7
            - 8
            - 13
            - 18
            - 19
            - 21
            - 22
            - 23
            - 35
    condition: selection
falsepositives:
    - Remote administration of registry values
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventLog: RPCFW
    EventID: 3
    InterfaceUuid: 338cd001-2244-31f1-aaaa-900038001003
    OpNum:
        - 6
        - 7
        - 8
        - 13
        - 18
        - 19
        - 21
        - 22
        - 23
        - 35

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
EventLogeq
  • RPCFW corpus 17 (sigma 17)
field:"EventLog" kind:eq value:"RPCFW"
InterfaceUuideq
  • 338cd001-2244-31f1-aaaa-900038001003 corpus 2 (sigma 2)
field:"InterfaceUuid" kind:eq value:"338cd001-2244-31f1-aaaa-900038001003"
OpNumeq
  • 13 corpus 2 (sigma 2)
  • 18
  • 19
  • 21
  • 22
  • 23
  • 35
  • 6
  • 7
  • 8
field:"OpNum" kind:eq

Renamed NetSupport RAT Execution

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

Detects the execution of a renamed "client32.exe" (NetSupport RAT) via Imphash, Product and OriginalFileName strings

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Renamed NetSupport RAT Execution
id: 0afbd410-de03-4078-8491-f132303cb67d
status: test
description: Detects the execution of a renamed "client32.exe" (NetSupport RAT) via Imphash, Product and OriginalFileName strings
references:
    - https://redcanary.com/blog/misbehaving-rats/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-19
modified: 2024-11-23
tags:
    - attack.stealth
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Product|contains: 'NetSupport Remote Control'
        - OriginalFileName|contains: 'client32.exe'
        - Hashes|contains: IMPHASH=A9D50692E95B79723F3E76FCF70D023E
    filter:
        Image|endswith: '\client32.exe'
    condition: selection and not filter
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    - Product|contains: 'NetSupport Remote Control'
    - OriginalFileName|contains: 'client32.exe'
    - Hashes|contains: IMPHASH=A9D50692E95B79723F3E76FCF70D023E

Stage 2: not filter

filter:
    Image|endswith: '\client32.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Hashesmatch
  • IMPHASH=A9D50692E95B79723F3E76FCF70D023E corpus 2 (sigma 2)
field:"Hashes" kind:match value:"IMPHASH=A9D50692E95B79723F3E76FCF70D023E"
OriginalFileNamematch
  • client32.exe corpus 2 (sigma 2)
field:"OriginalFileName" kind:match value:"client32.exe"
Productmatch
  • NetSupport Remote Control corpus 2 (sigma 2)
field:"Product" kind:match value:"NetSupport Remote Control"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with\client32.exeexcludes:Image field:"Image" value:"\client32.exe"

Sdclt Child Processes

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

A General detection for sdclt spawning new processes. This could be an indicator of sdclt being used for bypass UAC techniques.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Sdclt Child Processes
id: da2738f2-fadb-4394-afa7-0a0674885afa
status: test
description: A General detection for sdclt spawning new processes. This could be an indicator of sdclt being used for bypass UAC techniques.
references:
    - https://github.com/OTRF/detection-hackathon-apt29/issues/6
    - https://github.com/OTRF/ThreatHunter-Playbook/blob/2d4257f630f4c9770f78d0c1df059f891ffc3fec/docs/evals/apt29/detections/3.B.2_C36B49B5-DF58-4A34-9FE9-56189B9DEFEA.md
author: Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research)
date: 2020-05-02
modified: 2021-11-27
tags:
    - attack.privilege-escalation
    - attack.t1548.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith: '\sdclt.exe'
    condition: selection
falsepositives:
    - Unknown
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_sdclt_child_process/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith: '\sdclt.exe'

Indicators

These rows show field, operator, and value matches.

Set Suspicious Files as System Files Using Attrib.EXE

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

Detects the usage of attrib with the "+s" option to set scripts or executables located in suspicious locations as system files to hide them from users and make them unable to be deleted with simple rights. The rule limits the search to specific extensions and directories to avoid FPs

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Set Suspicious Files as System Files Using Attrib.EXE
id: efec536f-72e8-4656-8960-5e85d091345b
related:
    - id: bb19e94c-59ae-4c15-8c12-c563d23fe52b
      type: derived
status: test
description: |
    Detects the usage of attrib with the "+s" option to set scripts or executables located in suspicious locations as system files to hide them from users and make them unable to be deleted with simple rights. The rule limits the search to specific extensions and directories to avoid FPs
references:
    - https://app.any.run/tasks/c28cabc8-a19f-40f3-a78b-cae506a5c0d4
    - https://app.any.run/tasks/cfc8870b-ccd7-4210-88cf-a8087476a6d0
    - https://unit42.paloaltonetworks.com/unit42-sure-ill-take-new-combojack-malware-alters-clipboards-steal-cryptocurrency/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-06-28
modified: 2023-03-14
tags:
    - attack.stealth
    - attack.t1564.001
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\attrib.exe'
        - OriginalFileName: 'ATTRIB.EXE'
    selection_cli:
        CommandLine|contains: ' +s'
    selection_paths:
        CommandLine|contains:
            - ' %' # Custom Environment variable
            - '\Users\Public\'
            - '\AppData\Local\'
            - '\ProgramData\'
            - '\Downloads\'
            - '\Windows\Temp\'
    selection_ext:
        CommandLine|contains:
            - '.bat'
            - '.dll'
            - '.exe'
            - '.hta'
            - '.ps1'
            - '.vbe'
            - '.vbs'
    filter_optional_installer:
        CommandLine|contains|all:
            - '\Windows\TEMP\'
            - '.exe'
    condition: all of selection* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection* and not 1 of filter_optional_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\attrib.exe'
    - OriginalFileName: 'ATTRIB.EXE'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains: ' +s'

Stage 3: selection_paths

selection_paths:
    CommandLine|contains:
        - ' %'
        - '\Users\Public\'
        - '\AppData\Local\'
        - '\ProgramData\'
        - '\Downloads\'
        - '\Windows\Temp\'

Stage 4: selection_ext

selection_ext:
    CommandLine|contains:
        - '.bat'
        - '.dll'
        - '.exe'
        - '.hta'
        - '.ps1'
        - '.vbe'
        - '.vbs'

Stage 5: not filter_optional_installer

filter_optional_installer:
    CommandLine|contains|all:
        - '\Windows\TEMP\'
        - '.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • %
  • +s
  • .bat corpus 10 (sigma 9, elastic 1)
  • .dll corpus 16 (sigma 16)
  • .exe corpus 5 (sigma 5)
  • .hta corpus 6 (sigma 6)
  • .ps1 corpus 4 (sigma 3, elastic 1)
  • .vbe corpus 5 (sigma 5)
  • .vbs corpus 7 (sigma 7)
  • \AppData\Local\ corpus 11 (sigma 10, elastic 1)
  • \Downloads\ corpus 15 (sigma 14, elastic 1)
  • \ProgramData\ corpus 5 (sigma 3, elastic 1, splunk 1)
  • \Users\Public\ corpus 18 (sigma 17, elastic 1)
  • \Windows\Temp\ corpus 13 (sigma 12, elastic 1)
field:"CommandLine" kind:match
Imageends_with
  • \attrib.exe corpus 5 (sigma 5)
field:"Image" kind:ends_with value:"\attrib.exe"
OriginalFileNameeq
  • ATTRIB.EXE corpus 3 (sigma 3)
field:"OriginalFileName" kind:eq value:"ATTRIB.EXE"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematch.exeexcludes:CommandLine field:"CommandLine" value:".exe"
CommandLinematch\Windows\TEMP\excludes:CommandLine field:"CommandLine" value:"\Windows\TEMP\"

Shell Execution GCC - Linux

#
Status
test
Severity
high
Author
Li Ling, Andy Parkidomo, Robert Rakowski, Blake Hartstein (Bloomberg L.P.)
Source
github.com/SigmaHQ/sigma

Detects the use of the "gcc" utility to execute a shell. Such behavior may be associated with privilege escalation, unauthorized command execution, or to break out from restricted environments.

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Shell Execution GCC  - Linux
id: 9b5de532-a757-4d70-946c-1f3e44f48b4d
status: test
description: |
    Detects the use of the "gcc" utility to execute a shell. Such behavior may be associated with privilege escalation, unauthorized command execution, or to break out from restricted environments.
references:
    - https://gtfobins.github.io/gtfobins/gcc/#shell
    - https://gtfobins.github.io/gtfobins/c89/#shell
    - https://gtfobins.github.io/gtfobins/c99/#shell
    - https://www.elastic.co/guide/en/security/current/linux-restricted-shell-breakout-via-linux-binary-s.html
author: Li Ling, Andy Parkidomo, Robert Rakowski, Blake Hartstein (Bloomberg L.P.)
date: 2024-09-02
tags:
    - attack.discovery
    - attack.t1083
logsource:
    category: process_creation
    product: linux
detection:
    selection_img:
        Image|endswith:
            - '/c89'
            - '/c99'
            - '/gcc'
        CommandLine|contains: '-wrapper'
    selection_cli:
        CommandLine|contains:
            - '/bin/bash,-s'
            - '/bin/dash,-s'
            - '/bin/fish,-s'
            - '/bin/sh,-s'
            - '/bin/zsh,-s'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    Image|endswith:
        - '/c89'
        - '/c99'
        - '/gcc'
    CommandLine|contains: '-wrapper'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - '/bin/bash,-s'
        - '/bin/dash,-s'
        - '/bin/fish,-s'
        - '/bin/sh,-s'
        - '/bin/zsh,-s'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -wrapper corpus 3 (splunk 2, sigma 1)
  • /bin/bash,-s
  • /bin/dash,-s
  • /bin/fish,-s
  • /bin/sh,-s
  • /bin/zsh,-s
field:"CommandLine" kind:match
Imageends_with
  • /c89
  • /c99
  • /gcc
field:"Image" kind:ends_with

StoneDrill Service Install

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

This method detects a service install of the malicious Microsoft Network Realtime Inspection Service service described in StoneDrill report by Kaspersky

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: StoneDrill Service Install
id: 9e987c6c-4c1e-40d8-bd85-dd26fba8fdd6
status: test
description: This method detects a service install of the malicious Microsoft Network Realtime Inspection Service service described in StoneDrill report by Kaspersky
references:
    - https://securelist.com/blog/research/77725/from-shamoon-to-stonedrill/
author: Florian Roth (Nextron Systems)
date: 2017-03-07
modified: 2021-11-30
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.g0064
    - attack.t1543.003
    - detection.emerging-threats
logsource:
    product: windows
    service: system
detection:
    selection:
        Provider_Name: 'Service Control Manager'
        EventID: 7045
        ServiceName: NtsSrv
        ImagePath|endswith: ' LocalService'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Provider_Name: 'Service Control Manager'
    EventID: 7045
    ServiceName: NtsSrv
    ImagePath|endswith: ' LocalService'

Indicators

These rows show field, operator, and value matches.

Suspicious Command Patterns In Scheduled Task Creation

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

Detects scheduled task creation using "schtasks" that contain potentially suspicious or uncommon commands

Known False Positives

  • Software installers that run from temporary folders and also install scheduled tasks are expected to generate some false positives

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Command Patterns In Scheduled Task Creation
id: f2c64357-b1d2-41b7-849f-34d2682c0fad
status: test
description: Detects scheduled task creation using "schtasks" that contain potentially suspicious or uncommon commands
references:
    - https://app.any.run/tasks/512c1352-6380-4436-b27d-bb62f0c020d6/
    - https://twitter.com/RedDrip7/status/1506480588827467785
    - https://www.ncsc.gov.uk/static-assets/documents/malware-analysis-reports/devil-bait/NCSC-MAR-Devil-Bait.pdf
author: Florian Roth (Nextron Systems)
date: 2022-02-23
modified: 2024-03-19
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.execution
    - attack.t1053.005
logsource:
    product: windows
    category: process_creation
detection:
    selection_schtasks:
        Image|endswith: '\schtasks.exe'
        CommandLine|contains: '/Create '
    selection_pattern_1:
        CommandLine|contains:
            - '/sc minute '
            - '/ru system '
    selection_pattern_2:
        CommandLine|contains:
            - 'cmd /c'
            - 'cmd /k'
            - 'cmd /r'
            - 'cmd.exe /c '
            - 'cmd.exe /k '
            - 'cmd.exe /r '
    selection_uncommon:
        CommandLine|contains:
            - ' -decode '
            - ' -enc '
            - ' -w hidden '
            - ' bypass '
            - ' IEX'
            - '.DownloadData'
            - '.DownloadFile'
            - '.DownloadString'
            - '/c start /min ' # https://twitter.com/RedDrip7/status/1506480588827467785
            - 'FromBase64String'
            - 'mshta http'
            - 'mshta.exe http'
    selection_anomaly_1:
        CommandLine|contains:
            - ':\ProgramData\'
            - ':\Temp\'
            - ':\Tmp\'
            - ':\Users\Public\'
            - ':\Windows\Temp\'
            - '\AppData\'
            - '%AppData%'
            - '%Temp%'
            - '%tmp%'
    selection_anomaly_2:
        CommandLine|contains:
            - 'cscript'
            - 'curl'
            - 'wscript'
    condition: selection_schtasks and ( all of selection_pattern_* or selection_uncommon or all of selection_anomaly_* )
falsepositives:
    - Software installers that run from temporary folders and also install scheduled tasks are expected to generate some false positives
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_schtasks_susp_pattern/info.yml

Stages and Predicates

Stage 0: condition

selection_schtasks and ( all of selection_pattern_* or selection_uncommon or all of selection_anomaly_* )

Stage 1: selection_schtasks

selection_schtasks:
    Image|endswith: '\schtasks.exe'
    CommandLine|contains: '/Create '

Stage 2: selection_pattern_1

selection_pattern_1:
    CommandLine|contains:
        - '/sc minute '
        - '/ru system '

Stage 3: selection_pattern_2

selection_pattern_2:
    CommandLine|contains:
        - 'cmd /c'
        - 'cmd /k'
        - 'cmd /r'
        - 'cmd.exe /c '
        - 'cmd.exe /k '
        - 'cmd.exe /r '

Stage 4: selection_uncommon

selection_uncommon:
    CommandLine|contains:
        - ' -decode '
        - ' -enc '
        - ' -w hidden '
        - ' bypass '
        - ' IEX'
        - '.DownloadData'
        - '.DownloadFile'
        - '.DownloadString'
        - '/c start /min '
        - 'FromBase64String'
        - 'mshta http'
        - 'mshta.exe http'

Stage 5: selection_anomaly_1

selection_anomaly_1:
    CommandLine|contains:
        - ':\ProgramData\'
        - ':\Temp\'
        - ':\Tmp\'
        - ':\Users\Public\'
        - ':\Windows\Temp\'
        - '\AppData\'
        - '%AppData%'
        - '%Temp%'
        - '%tmp%'

Stage 6: selection_anomaly_2

selection_anomaly_2:
    CommandLine|contains:
        - 'cscript'
        - 'curl'
        - 'wscript'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -decode corpus 4 (sigma 4)
  • -enc corpus 8 (sigma 6, elastic 2)
  • -w hidden corpus 5 (sigma 5)
  • IEX
  • bypass corpus 2 (sigma 1, splunk 1)
  • %AppData% corpus 11 (sigma 11)
  • %Temp% corpus 14 (sigma 13, kusto 1)
  • %tmp% corpus 13 (sigma 13)
  • .DownloadData corpus 2 (sigma 1, elastic 1)
  • .DownloadFile corpus 3 (sigma 2, elastic 1)
  • .DownloadString corpus 3 (sigma 2, elastic 1)
  • /Create corpus 5 (sigma 3, splunk 2)
  • /c start /min
  • /ru system
  • /sc minute
  • :\ProgramData\ corpus 11 (sigma 9, elastic 2)
  • :\Temp\ corpus 14 (sigma 14)
  • :\Tmp\ corpus 2 (sigma 2)
  • :\Users\Public\ corpus 20 (sigma 18, elastic 2)
  • :\Windows\Temp\ corpus 16 (sigma 16)
  • FromBase64String corpus 15 (sigma 9, elastic 4, splunk 2)
  • \AppData\ corpus 11 (sigma 8, elastic 3)
  • cmd /c corpus 5 (sigma 5)
  • cmd /k corpus 4 (sigma 4)
  • cmd /r corpus 3 (sigma 3)
  • cmd.exe /c corpus 6 (sigma 6)
  • cmd.exe /k corpus 5 (sigma 5)
  • cmd.exe /r corpus 5 (sigma 5)
  • cscript corpus 15 (sigma 15)
  • curl corpus 17 (sigma 14, elastic 2, splunk 1)
  • mshta http
  • mshta.exe http
  • wscript corpus 16 (sigma 16)
field:"CommandLine" kind:match
Imageends_with
  • \schtasks.exe corpus 55 (sigma 55)
field:"Image" kind:ends_with value:"\schtasks.exe"

Suspicious Group And Account Reconnaissance Activity Using Net.EXE

#
Status
test
Severity
medium
Author
Florian Roth (Nextron Systems), omkar72, @svch0st, Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects suspicious reconnaissance command line activity on Windows systems using Net.EXE Check if the user that executed the commands is suspicious (e.g. service accounts, LOCAL_SYSTEM)

Known False Positives

  • Inventory tool runs
  • Administrative activity

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious Group And Account Reconnaissance Activity Using Net.EXE
id: d95de845-b83c-4a9a-8a6a-4fc802ebf6c0
status: test
description: |
    Detects suspicious reconnaissance command line activity on Windows systems using Net.EXE
    Check if the user that executed the commands is suspicious (e.g. service accounts, LOCAL_SYSTEM)
references:
    - https://redcanary.com/blog/how-one-hospital-thwarted-a-ryuk-ransomware-outbreak/
    - https://thedfirreport.com/2020/10/18/ryuk-in-5-hours/
    - https://research.nccgroup.com/2022/08/19/back-in-black-unlocking-a-lockbit-3-0-ransomware-attack/
author: Florian Roth (Nextron Systems), omkar72, @svch0st, Nasreddine Bencherchali (Nextron Systems)
date: 2019-01-16
modified: 2023-03-02
tags:
    - attack.discovery
    - attack.t1087.001
    - attack.t1087.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\net.exe'
              - '\net1.exe'
        - OriginalFileName:
              - 'net.exe'
              - 'net1.exe'
    # Covers group and localgroup flags
    selection_group_root:
        CommandLine|contains:
            - ' group '
            - ' localgroup '
    selection_group_flags:
        CommandLine|contains:
            # Add more groups for other languages
            - 'domain admins'
            - ' administrator' # Typo without an 'S' so we catch both
            - ' administrateur' # Typo without an 'S' so we catch both
            - 'enterprise admins'
            - 'Exchange Trusted Subsystem'
            - 'Remote Desktop Users'
            - 'Utilisateurs du Bureau à distance' # French for "Remote Desktop Users"
            - 'Usuarios de escritorio remoto' # Spanish for "Remote Desktop Users"
            - ' /do' # short for domain
    filter_group_add:
        # This filter is added to avoid the potential case where the point is not recon but addition
        CommandLine|contains: ' /add'
    # Covers 'accounts' flag
    selection_accounts_root:
        CommandLine|contains: ' accounts '
    selection_accounts_flags:
        CommandLine|contains: ' /do' # short for domain
    condition: selection_img and ((all of selection_group_* and not filter_group_add) or all of selection_accounts_*)
falsepositives:
    - Inventory tool runs
    - Administrative activity
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_net_groups_and_accounts_recon/info.yml

Stages and Predicates

Stage 0: condition

selection_img and ((all of selection_group_* and not filter_group_add) or all of selection_accounts_*)

Stage 1: selection_img

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

Stage 2: selection_group_root

selection_group_root:
    CommandLine|contains:
        - ' group '
        - ' localgroup '

Stage 3: selection_group_flags

selection_group_flags:
    CommandLine|contains:
        - 'domain admins'
        - ' administrator'
        - ' administrateur'
        - 'enterprise admins'
        - 'Exchange Trusted Subsystem'
        - 'Remote Desktop Users'
        - 'Utilisateurs du Bureau à distance'
        - 'Usuarios de escritorio remoto'
        - ' /do'

Stage 4: not filter_group_add

filter_group_add:
    CommandLine|contains: ' /add'

Stage 5: selection_accounts_root

selection_accounts_root:
    CommandLine|contains: ' accounts '

Stage 6: selection_accounts_flags

selection_accounts_flags:
    CommandLine|contains: ' /do'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /do
  • accounts corpus 2 (sigma 1, splunk 1)
  • administrateur corpus 3 (sigma 3)
  • administrator corpus 2 (sigma 2)
  • group corpus 2 (sigma 2)
  • localgroup corpus 2 (sigma 2)
  • Exchange Trusted Subsystem corpus 2 (sigma 2)
  • Remote Desktop Users corpus 3 (sigma 3)
  • Usuarios de escritorio remoto corpus 3 (sigma 3)
  • Utilisateurs du Bureau à distance corpus 3 (sigma 3)
  • domain admins corpus 3 (sigma 2, splunk 1)
  • enterprise admins corpus 3 (sigma 2, splunk 1)
field:"CommandLine" kind:match
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

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematch /addexcludes:CommandLine field:"CommandLine" value:" /add"

Suspicious Space Characters in RunMRU Registry Path - ClickFix

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

Detects the occurrence of numerous space characters in RunMRU registry paths, which may indicate execution via phishing lures using clickfix techniques to hide malicious commands in the Windows Run dialog box from naked eyes.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Space Characters in RunMRU Registry Path - ClickFix
id: 7a1b4c5e-8f3d-4b9a-7c2e-1f4a5b8c6d9e
related:
    - id: 3ae9974a-eb09-4044-8e70-8980a50c12c8
      type: similar
status: experimental
description: |
    Detects the occurrence of numerous space characters in RunMRU registry paths, which may indicate execution via phishing lures using clickfix techniques to hide malicious commands in the Windows Run dialog box from naked eyes.
references:
    - https://expel.com/blog/cache-smuggling-when-a-picture-isnt-a-thousand-words/
    - https://github.com/JohnHammond/recaptcha-phish
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-11-04
tags:
    - attack.execution
    - attack.stealth
    - attack.t1204.004
    - attack.t1027.010
logsource:
    category: registry_set
    product: windows
detection:
    selection_key:
        TargetObject|contains: '\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU\'
        Details|contains: '#'
    selection_space_variation:
        Details|contains:
            - '            ' # En Quad (U+2000)
            - '            ' # Em Quad (U+2001)
            - '            ' # En Space (U+2002)
            - '            ' # Em Space (U+2003)
            - '            ' # Three-Per-Em Space (U+2004)
            - '            ' # Four-Per-Em Space (U+2005)
            - '            ' # Six-Per-Em Space (U+2006)
            - '            ' # Figure Space (U+2007)
            - '            ' # Punctuation Space (U+2008)
            - '            ' # Thin Space (U+2009)
            - '            ' # Hair Space (U+200A)
            - '            ' # No-Break Space (U+00A0)
            - '            ' # Normal space
    condition: all of selection_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_key

selection_key:
    TargetObject|contains: '\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU\'
    Details|contains: '#'

Stage 2: selection_space_variation

selection_space_variation:
    Details|contains:
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '
        - '            '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsmatch
  • corpus 2 (sigma 2)
  • # corpus 3 (sigma 3)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
  •              corpus 2 (sigma 2)
field:"Details" kind:match
TargetObjectmatch
  • \Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU\ corpus 2 (sigma 2)
field:"TargetObject" kind:match value:"\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU\"

Tap Installer Execution

#
Status
test
Severity
medium
Author
Daniil Yugoslavskiy, Ian Davis, oscd.community
Source
github.com/SigmaHQ/sigma

Well-known TAP software installation. Possible preparation for data exfiltration using tunneling techniques

Known False Positives

  • Legitimate OpenVPN TAP installation

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Tap Installer Execution
id: 99793437-3e16-439b-be0f-078782cf953d
status: test
description: Well-known TAP software installation. Possible preparation for data exfiltration using tunneling techniques
references:
    - https://community.openvpn.net/openvpn/wiki/ManagingWindowsTAPDrivers
author: Daniil Yugoslavskiy, Ian Davis, oscd.community
date: 2019-10-24
modified: 2023-12-11
tags:
    - attack.exfiltration
    - attack.t1048
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\tapinstall.exe'
    filter_optional_avast:
        Image|contains:
            - ':\Program Files\Avast Software\SecureLine VPN\'
            - ':\Program Files (x86)\Avast Software\SecureLine VPN\'
    filter_optional_openvpn:
        Image|contains: ':\Program Files\OpenVPN Connect\drivers\tap\'
    filter_optional_protonvpn:
        Image|contains: ':\Program Files (x86)\Proton Technologies\ProtonVPNTap\installer\'
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - Legitimate OpenVPN TAP installation
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    Image|endswith: '\tapinstall.exe'

Stage 2: not filter_optional_*

filter_optional_avast:
    Image|contains:
        - ':\Program Files\Avast Software\SecureLine VPN\'
        - ':\Program Files (x86)\Avast Software\SecureLine VPN\'
filter_optional_openvpn:
    Image|contains: ':\Program Files\OpenVPN Connect\drivers\tap\'
filter_optional_protonvpn:
    Image|contains: ':\Program Files (x86)\Proton Technologies\ProtonVPNTap\installer\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \tapinstall.exe
field:"Image" kind:ends_with value:"\tapinstall.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imagematch:\Program Files (x86)\Avast Software\SecureLine VPN\excludes:Image field:"Image" value:":\Program Files (x86)\Avast Software\SecureLine VPN\"
Imagematch:\Program Files (x86)\Proton Technologies\ProtonVPNTap\installer\excludes:Image field:"Image" value:":\Program Files (x86)\Proton Technologies\ProtonVPNTap\installer\"
Imagematch:\Program Files\Avast Software\SecureLine VPN\excludes:Image field:"Image" value:":\Program Files\Avast Software\SecureLine VPN\"
Imagematch:\Program Files\OpenVPN Connect\drivers\tap\excludes:Image field:"Image" value:":\Program Files\OpenVPN Connect\drivers\tap\"

Turla Service Install

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

This method detects a service install of malicious services mentioned in Carbon Paper - Turla report by ESET

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Turla Service Install
id: 1df8b3da-b0ac-4d8a-b7c7-6cb7c24160e4
status: test
description: This method detects a service install of malicious services mentioned in Carbon Paper - Turla report by ESET
references:
    - https://www.welivesecurity.com/2017/03/30/carbon-paper-peering-turlas-second-stage-backdoor/
author: Florian Roth (Nextron Systems)
date: 2017-03-31
modified: 2021-11-30
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.g0010
    - attack.t1543.003
    - detection.emerging-threats
logsource:
    product: windows
    service: system
detection:
    selection:
        Provider_Name: 'Service Control Manager'
        EventID: 7045
        ServiceName:
            - 'srservice'
            - 'ipvpn'
            - 'hkmsvc'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Provider_Name: 'Service Control Manager'
    EventID: 7045
    ServiceName:
        - 'srservice'
        - 'ipvpn'
        - 'hkmsvc'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Provider_Nameeq
  • Service Control Manager corpus 50 (sigma 50)
field:"Provider_Name" kind:eq value:"Service Control Manager"
ServiceNameeq
  • hkmsvc
  • ipvpn
  • srservice
field:"ServiceName" kind:eq

Uncommon Assistive Technology Applications Execution Via AtBroker.EXE

#
Status
test
Severity
medium
Author
Mateusz Wydra, oscd.community
Source
github.com/SigmaHQ/sigma

Detects the start of a non built-in assistive technology applications via "Atbroker.EXE".

Known False Positives

  • Legitimate, non-default assistive technology applications execution

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Uncommon  Assistive Technology Applications Execution Via AtBroker.EXE
id: f24bcaea-0cd1-11eb-adc1-0242ac120002
status: test
description: Detects the start of a non built-in assistive technology applications via "Atbroker.EXE".
references:
    - http://www.hexacorn.com/blog/2016/07/22/beyond-good-ol-run-key-part-42/
    - https://lolbas-project.github.io/lolbas/Binaries/Atbroker/
author: Mateusz Wydra, oscd.community
date: 2020-10-12
modified: 2024-03-06
tags:
    - attack.stealth
    - attack.t1218
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\AtBroker.exe'
        - OriginalFileName: 'AtBroker.exe'
    selection_cli:
        CommandLine|contains: 'start'
    filter_main_builtin:
        CommandLine|contains:
            - 'animations'
            - 'audiodescription'
            - 'caretbrowsing'
            - 'caretwidth'
            - 'colorfiltering'
            - 'cursorindicator'
            - 'cursorscheme'
            - 'filterkeys'
            - 'focusborderheight'
            - 'focusborderwidth'
            - 'highcontrast'
            - 'keyboardcues'
            - 'keyboardpref'
            - 'livecaptions'
            - 'magnifierpane'
            - 'messageduration'
            - 'minimumhitradius'
            - 'mousekeys'
            - 'Narrator'
            - 'osk'
            - 'overlappedcontent'
            - 'showsounds'
            - 'soundsentry'
            - 'speechreco'
            - 'stickykeys'
            - 'togglekeys'
            - 'voiceaccess'
            - 'windowarranging'
            - 'windowtracking'
            - 'windowtrackingtimeout'
            - 'windowtrackingzorder'
    filter_optional_java:
        CommandLine|contains: 'Oracle_JavaAccessBridge'
    condition: all of selection_* and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Legitimate, non-default assistive technology applications execution
level: medium

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains: 'start'

Stage 3: not filter_main_builtin

filter_main_builtin:
    CommandLine|contains:
        - 'animations'
        - 'audiodescription'
        - 'caretbrowsing'
        - 'caretwidth'
        - 'colorfiltering'
        - 'cursorindicator'
        - 'cursorscheme'
        - 'filterkeys'
        - 'focusborderheight'
        - 'focusborderwidth'
        - 'highcontrast'
        - 'keyboardcues'
        - 'keyboardpref'
        - 'livecaptions'
        - 'magnifierpane'
        - 'messageduration'
        - 'minimumhitradius'
        - 'mousekeys'
        - 'Narrator'
        - 'osk'
        - 'overlappedcontent'
        - 'showsounds'
        - 'soundsentry'
        - 'speechreco'
        - 'stickykeys'
        - 'togglekeys'
        - 'voiceaccess'
        - 'windowarranging'
        - 'windowtracking'
        - 'windowtrackingtimeout'
        - 'windowtrackingzorder'

Stage 4: not filter_optional_java

filter_optional_java:
    CommandLine|contains: 'Oracle_JavaAccessBridge'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematchNarratorexcludes:CommandLine field:"CommandLine" value:"Narrator"
CommandLinematchanimationsexcludes:CommandLine field:"CommandLine" value:"animations"
CommandLinematchaudiodescriptionexcludes:CommandLine field:"CommandLine" value:"audiodescription"
CommandLinematchcaretbrowsingexcludes:CommandLine field:"CommandLine" value:"caretbrowsing"
CommandLinematchcaretwidthexcludes:CommandLine field:"CommandLine" value:"caretwidth"
CommandLinematchcolorfilteringexcludes:CommandLine field:"CommandLine" value:"colorfiltering"
CommandLinematchcursorindicatorexcludes:CommandLine field:"CommandLine" value:"cursorindicator"
CommandLinematchcursorschemeexcludes:CommandLine field:"CommandLine" value:"cursorscheme"
CommandLinematchfilterkeysexcludes:CommandLine field:"CommandLine" value:"filterkeys"
CommandLinematchfocusborderheightexcludes:CommandLine field:"CommandLine" value:"focusborderheight"
CommandLinematchfocusborderwidthexcludes:CommandLine field:"CommandLine" value:"focusborderwidth"
CommandLinematchhighcontrastexcludes:CommandLine field:"CommandLine" value:"highcontrast"
CommandLinematchkeyboardcuesexcludes:CommandLine field:"CommandLine" value:"keyboardcues"
CommandLinematchkeyboardprefexcludes:CommandLine field:"CommandLine" value:"keyboardpref"
CommandLinematchlivecaptionsexcludes:CommandLine field:"CommandLine" value:"livecaptions"
CommandLinematchmagnifierpaneexcludes:CommandLine field:"CommandLine" value:"magnifierpane"
CommandLinematchmessagedurationexcludes:CommandLine field:"CommandLine" value:"messageduration"
CommandLinematchminimumhitradiusexcludes:CommandLine field:"CommandLine" value:"minimumhitradius"
CommandLinematchmousekeysexcludes:CommandLine field:"CommandLine" value:"mousekeys"
CommandLinematchoskexcludes:CommandLine field:"CommandLine" value:"osk"
CommandLinematchoverlappedcontentexcludes:CommandLine field:"CommandLine" value:"overlappedcontent"
CommandLinematchshowsoundsexcludes:CommandLine field:"CommandLine" value:"showsounds"
CommandLinematchsoundsentryexcludes:CommandLine field:"CommandLine" value:"soundsentry"
CommandLinematchspeechrecoexcludes:CommandLine field:"CommandLine" value:"speechreco"
CommandLinematchstickykeysexcludes:CommandLine field:"CommandLine" value:"stickykeys"
CommandLinematchtogglekeysexcludes:CommandLine field:"CommandLine" value:"togglekeys"
CommandLinematchvoiceaccessexcludes:CommandLine field:"CommandLine" value:"voiceaccess"
CommandLinematchwindowarrangingexcludes:CommandLine field:"CommandLine" value:"windowarranging"
CommandLinematchwindowtrackingexcludes:CommandLine field:"CommandLine" value:"windowtracking"
CommandLinematchwindowtrackingtimeoutexcludes:CommandLine field:"CommandLine" value:"windowtrackingtimeout"
CommandLinematchwindowtrackingzorderexcludes:CommandLine field:"CommandLine" value:"windowtrackingzorder"
CommandLinematchOracle_JavaAccessBridgeexcludes:CommandLine field:"CommandLine" value:"Oracle_JavaAccessBridge"

Uncommon File Created In Office Startup Folder

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

Detects the creation of a file with an uncommon extension in an Office application startup folder

Known False Positives

  • False positive might stem from rare extensions used by other Office utilities.

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Uncommon File Created In Office Startup Folder
id: a10a2c40-2c4d-49f8-b557-1a946bc55d9d
status: test
description: Detects the creation of a file with an uncommon extension in an Office application startup folder
references:
    - https://app.any.run/tasks/d6fe6624-6ef8-485d-aa75-3d1bdda2a08c/
    - http://addbalance.com/word/startup.htm
    - https://answers.microsoft.com/en-us/msoffice/forum/all/document-in-word-startup-folder-doesnt-open-when/44ab0932-2917-4150-8cdc-2f2cf39e86f3
    - https://en.wikipedia.org/wiki/List_of_Microsoft_Office_filename_extensions
author: frack113, Nasreddine Bencherchali (Nextron Systems)
date: 2022-06-05
modified: 2023-12-13
tags:
    - attack.resource-development
    - attack.t1587.001
logsource:
    product: windows
    category: file_event
detection:
    selection_word_paths:
        - TargetFilename|contains: '\Microsoft\Word\STARTUP'
        - TargetFilename|contains|all:
              - '\Office'
              - '\Program Files'
              - '\STARTUP'
    filter_exclude_word_ext:
        TargetFilename|endswith:
            - '.docb' # Word binary document introduced in Microsoft Office 2007
            - '.docm' # Word macro-enabled document; same as docx, but may contain macros and scripts
            - '.docx' # Word document
            - '.dotm' # Word macro-enabled template; same as dotx, but may contain macros and scripts
            - '.mdb' # MS Access DB
            - '.mdw' # MS Access DB
            - '.pdf' # PDF documents
            - '.wll' # Word add-in
            - '.wwl' # Word add-in
    selection_excel_paths:
        - TargetFilename|contains: '\Microsoft\Excel\XLSTART'
        - TargetFilename|contains|all:
              - '\Office'
              - '\Program Files'
              - '\XLSTART'
    filter_exclude_excel_ext:
        TargetFilename|endswith:
            - '.xll'
            - '.xls'
            - '.xlsm'
            - '.xlsx'
            - '.xlt'
            - '.xltm'
            - '.xlw'
    filter_main_office_click_to_run:
        Image|contains: ':\Program Files\Common Files\Microsoft Shared\ClickToRun\'
        Image|endswith: '\OfficeClickToRun.exe'
    filter_main_office_apps:
        Image|contains:
            - ':\Program Files\Microsoft Office\'
            - ':\Program Files (x86)\Microsoft Office\'
        Image|endswith:
            - '\winword.exe'
            - '\excel.exe'
    condition: ((selection_word_paths and not filter_exclude_word_ext) or (selection_excel_paths and not filter_exclude_excel_ext)) and not 1 of filter_main_*
falsepositives:
    - False positive might stem from rare extensions used by other Office utilities.
level: high

Stages and Predicates

Stage 0: condition

((selection_word_paths and not filter_exclude_word_ext) or (selection_excel_paths and not filter_exclude_excel_ext)) and not 1 of filter_main_*

Stage 1: selection_word_paths

selection_word_paths:
    - TargetFilename|contains: '\Microsoft\Word\STARTUP'
    - TargetFilename|contains|all:
          - '\Office'
          - '\Program Files'
          - '\STARTUP'

Stage 2: not filter_exclude_word_ext

filter_exclude_word_ext:
    TargetFilename|endswith:
        - '.docb'
        - '.docm'
        - '.docx'
        - '.dotm'
        - '.mdb'
        - '.mdw'
        - '.pdf'
        - '.wll'
        - '.wwl'

Stage 3: selection_excel_paths

selection_excel_paths:
    - TargetFilename|contains: '\Microsoft\Excel\XLSTART'
    - TargetFilename|contains|all:
          - '\Office'
          - '\Program Files'
          - '\XLSTART'

Stage 4: not filter_exclude_excel_ext

filter_exclude_excel_ext:
    TargetFilename|endswith:
        - '.xll'
        - '.xls'
        - '.xlsm'
        - '.xlsx'
        - '.xlt'
        - '.xltm'
        - '.xlw'

Stage 5: not filter_main_*

filter_main_office_click_to_run:
    Image|contains: ':\Program Files\Common Files\Microsoft Shared\ClickToRun\'
    Image|endswith: '\OfficeClickToRun.exe'
filter_main_office_apps:
    Image|contains:
        - ':\Program Files\Microsoft Office\'
        - ':\Program Files (x86)\Microsoft Office\'
    Image|endswith:
        - '\winword.exe'
        - '\excel.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • \Microsoft\Excel\XLSTART corpus 2 (sigma 2)
  • \Microsoft\Word\STARTUP corpus 2 (sigma 2)
  • \Office corpus 2 (sigma 2)
  • \Program Files corpus 2 (sigma 2)
  • \STARTUP corpus 2 (sigma 2)
  • \XLSTART corpus 2 (sigma 2)
field:"TargetFilename" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
TargetFilenameends_with.docbexcludes:TargetFilename field:"TargetFilename" value:".docb"
TargetFilenameends_with.docmexcludes:TargetFilename field:"TargetFilename" value:".docm"
TargetFilenameends_with.docxexcludes:TargetFilename field:"TargetFilename" value:".docx"
TargetFilenameends_with.dotmexcludes:TargetFilename field:"TargetFilename" value:".dotm"
TargetFilenameends_with.mdbexcludes:TargetFilename field:"TargetFilename" value:".mdb"
TargetFilenameends_with.mdwexcludes:TargetFilename field:"TargetFilename" value:".mdw"
TargetFilenameends_with.pdfexcludes:TargetFilename field:"TargetFilename" value:".pdf"
TargetFilenameends_with.wllexcludes:TargetFilename field:"TargetFilename" value:".wll"
TargetFilenameends_with.wwlexcludes:TargetFilename field:"TargetFilename" value:".wwl"
TargetFilenameends_with.xllexcludes:TargetFilename field:"TargetFilename" value:".xll"
TargetFilenameends_with.xlsexcludes:TargetFilename field:"TargetFilename" value:".xls"
TargetFilenameends_with.xlsmexcludes:TargetFilename field:"TargetFilename" value:".xlsm"
TargetFilenameends_with.xlsxexcludes:TargetFilename field:"TargetFilename" value:".xlsx"
TargetFilenameends_with.xltexcludes:TargetFilename field:"TargetFilename" value:".xlt"
TargetFilenameends_with.xltmexcludes:TargetFilename field:"TargetFilename" value:".xltm"
TargetFilenameends_with.xlwexcludes:TargetFilename field:"TargetFilename" value:".xlw"
Imageends_with\excel.exeexcludes:Image field:"Image" value:"\excel.exe"
Imageends_with\winword.exeexcludes:Image field:"Image" value:"\winword.exe"
Imagematch:\Program Files (x86)\Microsoft Office\excludes:Image field:"Image" value:":\Program Files (x86)\Microsoft Office\"
Imagematch:\Program Files\Microsoft Office\excludes:Image field:"Image" value:":\Program Files\Microsoft Office\"
Imageends_with\OfficeClickToRun.exeexcludes:Image field:"Image" value:"\OfficeClickToRun.exe"
Imagematch:\Program Files\Common Files\Microsoft Shared\ClickToRun\excludes:Image field:"Image" value:":\Program Files\Common Files\Microsoft Shared\ClickToRun\"

Webshell Detection With Command Line Keywords

#
Status
test
Severity
high
Author
Florian Roth (Nextron Systems), Jonhnathan Ribeiro, Anton Kutepov, oscd.community, Chad Hudson, Matt Anderson
Source
github.com/SigmaHQ/sigma

Detects certain command line parameters often used during reconnaissance activity via web shells

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Webshell Detection With Command Line Keywords
id: bed2a484-9348-4143-8a8a-b801c979301c
status: test
description: Detects certain command line parameters often used during reconnaissance activity via web shells
references:
    - https://www.fireeye.com/blog/threat-research/2013/08/breaking-down-the-china-chopper-web-shell-part-ii.html
    - https://unit42.paloaltonetworks.com/bumblebee-webshell-xhunt-campaign/
    - https://www.huntress.com/blog/threat-advisory-oh-no-cleo-cleo-software-actively-being-exploited-in-the-wild
author: Florian Roth (Nextron Systems), Jonhnathan Ribeiro, Anton Kutepov, oscd.community, Chad Hudson, Matt Anderson
date: 2017-01-01
modified: 2026-07-14
tags:
    - attack.persistence
    - attack.discovery
    - attack.t1505.003
    - attack.t1018
    - attack.t1033
    - attack.t1087
logsource:
    category: process_creation
    product: windows
detection:
    selection_webserver_image:
        ParentImage|endswith:
            - '\w3wp.exe'
            - '\php-cgi.exe'
            - '\nginx.exe'
            - '\httpd.exe'
            - '\caddy.exe'
            - '\ws_tomcatservice.exe'
    selection_webserver_characteristics_tomcat1:
        ParentImage|endswith:
            - '\java.exe'
            - '\javaw.exe'
        ParentImage|contains:
            - '-tomcat-'
            - '\tomcat'
    selection_webserver_characteristics_tomcat2:
        ParentImage|endswith:
            - '\java.exe'
            - '\javaw.exe'
        CommandLine|contains:
            - 'catalina.jar'
            - 'CATALINA_HOME'
    selection_susp_net_utility:
        OriginalFileName:
            - 'net.exe'
            - 'net1.exe'
        CommandLine|contains:
            - ' user '
            - ' use '
            - ' group '
    selection_susp_ping_utility:
        OriginalFileName: 'ping.exe'
        CommandLine|contains: ' -n '
    selection_susp_change_dir:
        CommandLine|contains:
            - '&cd&echo'  # china chopper web shell
            - 'cd /d '  # https://www.computerhope.com/cdhlp.htm
    selection_susp_wmic_utility:
        OriginalFileName: 'wmic.exe'
        CommandLine|contains: ' /node:'
    selection_susp_powershell_cli:
        Image|endswith:
            - '\cmd.exe'
            - '\powershell.exe'
            - '\pwsh.exe'
        CommandLine|contains:
            - ' -enc '
            - ' -EncodedCommand '
            - ' -w hidden '
            - ' -windowstyle hidden'
            - '.WebClient).Download'
    selection_susp_misc_discovery_binaries:
        - Image|endswith:
              - '\dsquery.exe'
              - '\find.exe'
              - '\findstr.exe'
              - '\ipconfig.exe'
              - '\netstat.exe'
              - '\nslookup.exe'
              - '\pathping.exe'
              - '\quser.exe'
              - '\schtasks.exe'
              - '\systeminfo.exe'
              - '\tasklist.exe'
              - '\tracert.exe'
              - '\wevtutil.exe'
              - '\whoami.exe'
        - OriginalFileName:
              - 'dsquery.exe'
              - 'find.exe'
              - 'findstr.exe'
              - 'ipconfig.exe'
              - 'netstat.exe'
              - 'nslookup.exe'
              - 'pathping.exe'
              - 'quser.exe'
              - 'schtasks.exe'
              - 'sysinfo.exe'
              - 'tasklist.exe'
              - 'tracert.exe'
              - 'VSSADMIN.EXE'
              - 'wevtutil.exe'
              - 'whoami.exe'
    selection_susp_misc_discovery_commands:
        CommandLine|contains:
            - ' Test-NetConnection '
            - 'dir \'  # remote dir: dir \<redacted IP #3>\C$:\windows\temp\*.exe
    condition: 1 of selection_webserver_* and 1 of selection_susp_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

1 of selection_webserver_* and 1 of selection_susp_*

Stage 1: selection_webserver_image

selection_webserver_image:
    ParentImage|endswith:
        - '\w3wp.exe'
        - '\php-cgi.exe'
        - '\nginx.exe'
        - '\httpd.exe'
        - '\caddy.exe'
        - '\ws_tomcatservice.exe'

Stage 2: selection_webserver_characteristics_tomcat1

selection_webserver_characteristics_tomcat1:
    ParentImage|endswith:
        - '\java.exe'
        - '\javaw.exe'
    ParentImage|contains:
        - '-tomcat-'
        - '\tomcat'

Stage 3: selection_webserver_characteristics_tomcat2

selection_webserver_characteristics_tomcat2:
    ParentImage|endswith:
        - '\java.exe'
        - '\javaw.exe'
    CommandLine|contains:
        - 'catalina.jar'
        - 'CATALINA_HOME'

Stage 4: selection_susp_net_utility

selection_susp_net_utility:
    OriginalFileName:
        - 'net.exe'
        - 'net1.exe'
    CommandLine|contains:
        - ' user '
        - ' use '
        - ' group '

Stage 5: selection_susp_ping_utility

selection_susp_ping_utility:
    OriginalFileName: 'ping.exe'
    CommandLine|contains: ' -n '

Stage 6: selection_susp_change_dir

selection_susp_change_dir:
    CommandLine|contains:
        - '&cd&echo'
        - 'cd /d '

Stage 7: selection_susp_wmic_utility

selection_susp_wmic_utility:
    OriginalFileName: 'wmic.exe'
    CommandLine|contains: ' /node:'

Stage 8: selection_susp_powershell_cli

selection_susp_powershell_cli:
    Image|endswith:
        - '\cmd.exe'
        - '\powershell.exe'
        - '\pwsh.exe'
    CommandLine|contains:
        - ' -enc '
        - ' -EncodedCommand '
        - ' -w hidden '
        - ' -windowstyle hidden'
        - '.WebClient).Download'

Stage 9: selection_susp_misc_discovery_binaries

selection_susp_misc_discovery_binaries:
    - Image|endswith:
          - '\dsquery.exe'
          - '\find.exe'
          - '\findstr.exe'
          - '\ipconfig.exe'
          - '\netstat.exe'
          - '\nslookup.exe'
          - '\pathping.exe'
          - '\quser.exe'
          - '\schtasks.exe'
          - '\systeminfo.exe'
          - '\tasklist.exe'
          - '\tracert.exe'
          - '\wevtutil.exe'
          - '\whoami.exe'
    - OriginalFileName:
          - 'dsquery.exe'
          - 'find.exe'
          - 'findstr.exe'
          - 'ipconfig.exe'
          - 'netstat.exe'
          - 'nslookup.exe'
          - 'pathping.exe'
          - 'quser.exe'
          - 'schtasks.exe'
          - 'sysinfo.exe'
          - 'tasklist.exe'
          - 'tracert.exe'
          - 'VSSADMIN.EXE'
          - 'wevtutil.exe'
          - 'whoami.exe'

Stage 10: selection_susp_misc_discovery_commands

selection_susp_misc_discovery_commands:
    CommandLine|contains:
        - ' Test-NetConnection '
        - 'dir \'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -EncodedCommand corpus 4 (sigma 2, elastic 2)
  • -enc corpus 8 (sigma 6, elastic 2)
  • -n corpus 4 (sigma 4)
  • -w hidden corpus 5 (sigma 5)
  • -windowstyle hidden
  • /node:
  • Test-NetConnection
  • group corpus 2 (sigma 2)
  • use corpus 6 (sigma 6)
  • user corpus 3 (sigma 3)
  • &cd&echo corpus 2 (sigma 2)
  • .WebClient).Download
  • CATALINA_HOME corpus 3 (sigma 3)
  • catalina.jar corpus 3 (sigma 3)
  • cd /d
  • dir \
field:"CommandLine" kind:match
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \dsquery.exe corpus 2 (sigma 2)
  • \find.exe corpus 7 (sigma 7)
  • \findstr.exe corpus 11 (sigma 11)
  • \ipconfig.exe corpus 5 (sigma 5)
  • \netstat.exe corpus 5 (sigma 5)
  • \nslookup.exe corpus 5 (sigma 5)
  • \pathping.exe
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \quser.exe corpus 2 (sigma 2)
  • \schtasks.exe corpus 55 (sigma 55)
  • \systeminfo.exe corpus 11 (sigma 11)
  • \tasklist.exe corpus 5 (sigma 5)
  • \tracert.exe
  • \wevtutil.exe corpus 9 (sigma 9)
  • \whoami.exe corpus 19 (sigma 19)
field:"Image" kind:ends_with
OriginalFileNameeq
  • VSSADMIN.EXE corpus 9 (elastic 6, sigma 3)
  • dsquery.exe corpus 3 (sigma 2, elastic 1)
  • find.exe corpus 7 (sigma 7)
  • findstr.exe corpus 12 (sigma 12)
  • ipconfig.exe corpus 3 (sigma 1, elastic 1, splunk 1)
  • net.exe corpus 25 (sigma 19, elastic 4, splunk 2)
  • net1.exe corpus 39 (sigma 19, splunk 19, elastic 1)
  • netstat.exe
  • nslookup.exe corpus 2 (sigma 1, splunk 1)
  • pathping.exe
  • ping.exe corpus 2 (sigma 1, splunk 1)
  • quser.exe corpus 3 (sigma 2, splunk 1)
  • schtasks.exe corpus 29 (sigma 18, elastic 7, splunk 4)
  • sysinfo.exe corpus 2 (sigma 2)
  • tasklist.exe corpus 4 (sigma 3, elastic 1)
  • tracert.exe
  • wevtutil.exe corpus 7 (sigma 5, splunk 2)
  • whoami.exe corpus 11 (sigma 9, elastic 1, splunk 1)
  • wmic.exe corpus 74 (sigma 38, elastic 18, splunk 18)
field:"OriginalFileName" kind:eq
ParentImageends_with
  • \caddy.exe corpus 4 (sigma 4)
  • \httpd.exe corpus 6 (sigma 6)
  • \java.exe corpus 8 (sigma 8)
  • \javaw.exe corpus 7 (sigma 7)
  • \nginx.exe corpus 6 (sigma 6)
  • \php-cgi.exe corpus 6 (sigma 6)
  • \w3wp.exe corpus 12 (sigma 12)
  • \ws_tomcatservice.exe corpus 6 (sigma 6)
field:"ParentImage" kind:ends_with
ParentImagematch
  • -tomcat- corpus 4 (sigma 4)
  • \tomcat corpus 6 (sigma 6)
field:"ParentImage" kind:match

Windows Defender Virus Scanning Feature Disabled

#
Status
stable
Severity
high
Author
Ján Trenčanský, frack113
Source
github.com/SigmaHQ/sigma

Detects disabling of the Windows Defender virus scanning feature

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Windows Defender Virus Scanning Feature Disabled
id: 686c0b4b-9dd3-4847-9077-d6c1bbe36fcb
related:
    - id: fe34868f-6e0e-4882-81f6-c43aa8f15b62
      type: obsolete
status: stable
description: Detects disabling of the Windows Defender virus scanning feature
references:
    - https://learn.microsoft.com/en-us/defender-endpoint/troubleshoot-microsoft-defender-antivirus?view=o365-worldwide#event-id-5012
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1562.001/T1562.001.md
    - https://craigclouditpro.wordpress.com/2020/03/04/hunting-malicious-windows-defender-activity/
author: Ján Trenčanský, frack113
date: 2020-07-28
modified: 2023-11-22
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    product: windows
    service: windefend
detection:
    selection:
        EventID: 5012 # Scanning for viruses is disabled.
    condition: selection
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/builtin/windefend/win_defender_virus_scan_disabled/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 5012

Back to all Sigma rules