Detection rules › Sigma

Sigma rules: 18

RuleSeverity
API Key Createdhigh
Azure Kubernetes Admission Controllermedium
CloudTrail Logging Stoppedhigh
Common Autorun Keys Modificationmedium
ComRAT Network Communicationhigh
CVE-2010-5278 Exploitation Attemptcritical
File Decoded From Base64/Hex Via Certutil.EXEhigh
FoggyWeb Backdoor DLL Loadingcritical
Greenbug Espionage Group Indicatorscritical
Hidden Flag Set On File/Directory Via Chflags - MacOSmedium
Kapeka Backdoor Execution Via RunDLL32.EXEhigh
Katz Stealer Suspicious User-Agenthigh
Malicious PowerShell Commandlets - ScriptBlockhigh
Malicious PowerShell Scripts - PoshModulehigh
MFA attack - bombarding a user with SMS for MFAmedium
Microsoft Excel Add-In Loaded From Uncommon Locationmedium
NetNTLM Downgrade Attackhigh
NTFS symbolic link creationmedium
OpenCanary - SIP Requesthigh
Potential Binary Proxy Execution Via Cdb.EXEmedium
Potential Compromised 3CXDesktopApp Beaconing Activity - Proxyhigh
Potential Data Stealing Via Chromium Headless Debugginghigh
Potential Exploitation of RCE Vulnerability CVE-2025-33053 - Image Loadhigh
Potential MSTSC Shadowing Activityhigh
Potential Operation Triangulation C2 Beaconing Activity - DNShigh
Potential Privilege Escalation To LOCAL SYSTEMhigh
Potential Proxy Execution Via Explorer.EXE From Shell Processlow
Potential Raspberry Robin Registry Set Internet Settings ZoneMaplow
Potential Suspicious Execution From GUID Like Folder Nameslow
PowerShell as a Service in Registryhigh
Roles Are Not Being Usedhigh
Sensitive SAM domain user & groups discovery (native)high
Sticky Key Like Backdoor Usage - Registrycritical
SystemNightmare by GentilKiwi - New external device added (CVE-2021-1675 / CVE-2021-34527)high
Windows Hypervisor Enforced Code Integrity Disabledhigh

API Key Created

#
Status
test
Severity
high
Author
Zach Mathis (@yamatosecurity)
Source
github.com/Yamato-Security/suzaku-rules

An attacker may have attemped to create an API key for persistence but it failed. Ex: aws appsync create-api-key --api-id ApiId I have seen this in the eventSource of appsync.amazonaws.com and apigateway.amazonaws.com. There are probably other services that can create API keys as well so I am leaving the eventSource open.

MITRE ATT&CK Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: API Key Created
id: 3b07ff19-d7b8-44ba-afa5-d2d6fb8cb22f
status: test
description: |
    An attacker may have attemped to create an API key for persistence but it failed.
    Ex: aws appsync create-api-key --api-id ApiId
    I have seen this in the eventSource of `appsync.amazonaws.com` and `apigateway.amazonaws.com`.
    There are probably other services that can create API keys as well so I am leaving the eventSource open.
references:
    - https://medium.com/@adan.alvarez/distorting-the-sync-how-aws-appsync-can-be-turned-into-an-attackers-backdoor-8c015b8e52b8
    - https://traildiscover.cloud/#AppSync-CreateApiKey
author: Zach Mathis (@yamatosecurity)
date: 2025-04-23
modified: 2025-04-23
tags:
    - attack.defense-evasion
    - attack.persistence
    - attack.t1098.001 #Persistence: Additional Cloud Credentials
logsource:
    product: aws
    service: cloudtrail
detection:
    selection:
        eventName: 'CreateApiKey'
    filter:
        errorCode: 'AccessDenied'
    condition: selection and not filter
falsepositives:
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    eventName: 'CreateApiKey'

Stage 2: not filter

filter:
    errorCode: 'AccessDenied'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
errorCodeeqAccessDeniedexcludes:errorCode field:"errorCode" value:"AccessDenied"

Azure Kubernetes Admission Controller

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

Identifies when an admission controller is executed in Azure Kubernetes. A Kubernetes Admission controller intercepts, and possibly modifies, requests to the Kubernetes API server. The behavior of this admission controller is determined by an admission webhook (MutatingAdmissionWebhook or ValidatingAdmissionWebhook) that the user deploys in the cluster. An adversary can use such webhooks as the MutatingAdmissionWebhook for obtaining persistence in the cluster. For example, attackers can intercept and modify the pod creation operations in the cluster and add their malicious container to every created pod. An adversary can use the webhook ValidatingAdmissionWebhook, which could be used to obtain access credentials. An adversary could use the webhook to intercept the requests to the API server, record secrets, and other sensitive information.

Known False Positives

  • Azure Kubernetes Admissions Controller may be done by a system administrator.
  • If known behavior is causing false positives, it can be exempted from the rule.

MITRE ATT&CK Coverage

TacticTechniques
Initial Access
Persistence
Privilege Escalation
Stealth
Credential Access

Rule Body

title: Azure Kubernetes Admission Controller
id: a61a3c56-4ce2-4351-a079-88ae4cbd2b58
status: test
description: |
  Identifies when an admission controller is executed in Azure Kubernetes.
  A Kubernetes Admission controller intercepts, and possibly modifies, requests to the Kubernetes API server.
  The behavior of this admission controller is determined by an admission webhook (MutatingAdmissionWebhook or ValidatingAdmissionWebhook) that the user deploys in the cluster.
  An adversary can use such webhooks as the MutatingAdmissionWebhook for obtaining persistence in the cluster.
  For example, attackers can intercept and modify the pod creation operations in the cluster and add their malicious container to every created pod.
  An adversary can use the webhook ValidatingAdmissionWebhook, which could be used to obtain access credentials.
  An adversary could use the webhook to intercept the requests to the API server, record secrets, and other sensitive information.
references:
    - https://learn.microsoft.com/en-us/azure/role-based-access-control/resource-provider-operations#microsoftkubernetes
author: Austin Songer @austinsonger
date: 2021-11-25
modified: 2022-12-18
tags:
    - attack.privilege-escalation
    - attack.initial-access
    - attack.persistence
    - attack.stealth
    - attack.t1078
    - attack.credential-access
    - attack.t1552
    - attack.t1552.007
logsource:
    product: azure
    service: activitylogs
detection:
    selection:
        operationName|startswith:
            - 'MICROSOFT.KUBERNETES/CONNECTEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO'
            - 'MICROSOFT.CONTAINERSERVICE/MANAGEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO'
        operationName|endswith:
            - '/MUTATINGWEBHOOKCONFIGURATIONS/WRITE'
            - '/VALIDATINGWEBHOOKCONFIGURATIONS/WRITE'
    condition: selection
falsepositives:
    - Azure Kubernetes Admissions Controller may be done by a system administrator.
    - 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|startswith:
        - 'MICROSOFT.KUBERNETES/CONNECTEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO'
        - 'MICROSOFT.CONTAINERSERVICE/MANAGEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO'
    operationName|endswith:
        - '/MUTATINGWEBHOOKCONFIGURATIONS/WRITE'
        - '/VALIDATINGWEBHOOKCONFIGURATIONS/WRITE'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
operationNameends_with
  • /MUTATINGWEBHOOKCONFIGURATIONS/WRITE
  • /VALIDATINGWEBHOOKCONFIGURATIONS/WRITE
field:"operationName" kind:ends_with
operationNamestarts_with
  • MICROSOFT.CONTAINERSERVICE/MANAGEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO
  • MICROSOFT.KUBERNETES/CONNECTEDCLUSTERS/ADMISSIONREGISTRATION.K8S.IO
field:"operationName" kind:starts_with

CloudTrail Logging Stopped

#
Status
test
Severity
high
Author
Zach Mathis (@yamatosecurity)
Source
github.com/Yamato-Security/suzaku-rules

A user successfully disabled CloudTrail logging. Sample command line: aws cloudtrail stop-logging --name TrailName

Known False Positives

  • Admins turning off unneeded logging

MITRE ATT&CK Coverage

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: CloudTrail Logging Stopped
id: da90c11e-e3d4-411e-aaf7-06d02e0c5c23
status: test
description: |
    A user successfully disabled CloudTrail logging.
    Sample command line: aws cloudtrail stop-logging --name TrailName
references:
    - https://securitylabs.datadoghq.com/cloud-security-atlas/attacks/stopping-cloudtrail-trail/
    - https://research.splunk.com/cloud/8a2f3ca2-4eb5-4389-a549-14063882e537/
    - https://logrhythm.com/blog/aws-defense-evasion-and-centralized-multi-account-logging/
    - https://medium.com/daniel-grzelak/disrupting-aws-logging-a42e437d6594
    - https://pages.awscloud.com/rs/112-TZM-766/images/Visibility_detect_respond_AWS_SANS_whitepaper.pdf
    - https://traildiscover.cloud/#CloudTrail-StopLogging
author: Zach Mathis (@yamatosecurity)
date: 2025-04-23
modified: 2025-04-23
tags:
    - attack.defense-evasion
    - attack.t1562.008 # Impair Defenses: Disable or Modify Cloud Logs
logsource:
    product: aws
    service: cloudtrail
detection:
    selection:
        eventSource: 'cloudtrail.amazonaws.com'
        eventName: 'StopLogging'
    filter:
        errorCode: 'AccessDenied'
    condition: selection and not filter
falsepositives:
    - Admins turning off unneeded logging
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    eventSource: 'cloudtrail.amazonaws.com'
    eventName: 'StopLogging'

Stage 2: not filter

filter:
    errorCode: 'AccessDenied'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
eventNameeq
  • StopLogging corpus 5 (sigma 3, splunk 2)
field:"aws::eventName" kind:eq value:"StopLogging"
eventSourceeq
  • cloudtrail.amazonaws.com corpus 10 (sigma 7, splunk 3)
field:"aws::eventSource" kind:eq value:"cloudtrail.amazonaws.com"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
errorCodeeqAccessDeniedexcludes:errorCode field:"errorCode" value:"AccessDenied"

Common Autorun Keys Modification

#
Status
test
Severity
medium
Author
Victor Sergeev, Daniil Yugoslavskiy, Gleb Sukhodolskiy, Timur Zinniatullin, oscd.community, Tim Shelton, frack113 (split), wagga (name)
Source
github.com/SigmaHQ/sigma

Detects modification of autostart extensibility point (ASEP) in registry.

Known False Positives

  • Legitimate software automatically (mostly, during installation) sets up autorun keys for legitimate reason
  • Legitimate administrator sets up autorun keys for legitimate reason

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Common Autorun Keys Modification
id: f59c3faf-50f3-464b-9f4c-1b67ab512d99
related:
    - id: 17f878b8-9968-4578-b814-c4217fc5768c
      type: obsolete
status: test
description: Detects modification of autostart extensibility point (ASEP) in registry.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1547.001/T1547.001.md
    - https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns
    - https://gist.github.com/GlebSukhodolskiy/0fc5fa5f482903064b448890db1eaf9d # a list with registry keys
    - https://persistence-info.github.io/Data/userinitmprlogonscript.html # UserInitMprLogonScript
author: Victor Sergeev, Daniil Yugoslavskiy, Gleb Sukhodolskiy, Timur Zinniatullin, oscd.community, Tim Shelton, frack113 (split), wagga (name)
date: 2019-10-25
modified: 2025-10-22
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1547.001
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|contains:
            - '\SOFTWARE\Wow6432Node\Microsoft\Windows CE Services\AutoStart'
            - '\Software\Wow6432Node\Microsoft\Command Processor\Autorun'
            - '\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components'
            - '\SOFTWARE\Microsoft\Windows CE Services\AutoStartOnDisconnect'
            - '\SOFTWARE\Microsoft\Windows CE Services\AutoStartOnConnect'
            - '\SYSTEM\Setup\CmdLine'
            - '\Software\Microsoft\Ctf\LangBarAddin'
            - '\Software\Microsoft\Command Processor\Autorun'
            - '\SOFTWARE\Microsoft\Active Setup\Installed Components'
            - '\SOFTWARE\Classes\Protocols\Handler'
            - '\SOFTWARE\Classes\Protocols\Filter'
            - '\SOFTWARE\Classes\Htmlfile\Shell\Open\Command\(Default)'
            - '\Environment\UserInitMprLogonScript'
            - '\SOFTWARE\Policies\Microsoft\Windows\Control Panel\Desktop\Scrnsave.exe'
            - '\Software\Microsoft\Internet Explorer\UrlSearchHooks'
            - '\SOFTWARE\Microsoft\Internet Explorer\Desktop\Components'
            - '\Software\Classes\Clsid\{AB8902B4-09CA-4bb6-B78D-A8F59079A8D5}\Inprocserver32'
            - '\Control Panel\Desktop\Scrnsave.exe'
    filter_main_empty:
        Details: '(Empty)'
    filter_main_null:
        Details: null
    filter_main_poqexec:
        Image: 'C:\Windows\System32\poqexec.exe'
    filter_optional_msoffice:
        - TargetObject|contains:
              - '\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\PROTOCOLS\Handler\'
              - '\ClickToRunStore\HKMU\SOFTWARE\Classes\PROTOCOLS\Handler\'
        - Details:
              - '{314111c7-a502-11d2-bbca-00c04f8ec294}'
              - '{3459B272-CC19-4448-86C9-DDC3B4B2FAD3}'
              - '{42089D2D-912D-4018-9087-2B87803E93FB}'
              - '{5504BE45-A83B-4808-900A-3A5C36E7F77A}'
              - '{807583E5-5146-11D5-A672-00B0D022E945}'
    filter_optional_chrome:
        TargetObject|contains: '\SOFTWARE\Microsoft\Active Setup\Installed Components\{8A69D345-D564-463c-AFF1-A69D9E530F96}'
    filter_optional_edge:
        TargetObject|contains: '\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}'
    filter_optional_IE:
        TargetObject|contains: '\Software\Microsoft\Active Setup\Installed Components\{89820200-ECBD-11cf-8B85-00AA005B4383}'
    filter_optional_integrator:
        Image:
            - 'C:\Program Files (x86)\Microsoft Office\root\integration\integrator.exe'
            - 'C:\Program Files\Microsoft Office\root\integration\integrator.exe'
    filter_optional_office:
        Image|startswith:
            - 'C:\Program Files\Common Files\Microsoft Shared\ClickToRun\'
            - 'C:\Program Files\Common Files\Microsoft Shared\ClickToRun\Updates\'
        Image|endswith: '\OfficeClickToRun.exe'
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Legitimate software automatically (mostly, during installation) sets up autorun keys for legitimate reason
    - Legitimate administrator sets up autorun keys for legitimate reason
level: medium

Stages and Predicates

Stage 0: condition

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

Stage 1: selection

selection:
    TargetObject|contains:
        - '\SOFTWARE\Wow6432Node\Microsoft\Windows CE Services\AutoStart'
        - '\Software\Wow6432Node\Microsoft\Command Processor\Autorun'
        - '\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components'
        - '\SOFTWARE\Microsoft\Windows CE Services\AutoStartOnDisconnect'
        - '\SOFTWARE\Microsoft\Windows CE Services\AutoStartOnConnect'
        - '\SYSTEM\Setup\CmdLine'
        - '\Software\Microsoft\Ctf\LangBarAddin'
        - '\Software\Microsoft\Command Processor\Autorun'
        - '\SOFTWARE\Microsoft\Active Setup\Installed Components'
        - '\SOFTWARE\Classes\Protocols\Handler'
        - '\SOFTWARE\Classes\Protocols\Filter'
        - '\SOFTWARE\Classes\Htmlfile\Shell\Open\Command\(Default)'
        - '\Environment\UserInitMprLogonScript'
        - '\SOFTWARE\Policies\Microsoft\Windows\Control Panel\Desktop\Scrnsave.exe'
        - '\Software\Microsoft\Internet Explorer\UrlSearchHooks'
        - '\SOFTWARE\Microsoft\Internet Explorer\Desktop\Components'
        - '\Software\Classes\Clsid\{AB8902B4-09CA-4bb6-B78D-A8F59079A8D5}\Inprocserver32'
        - '\Control Panel\Desktop\Scrnsave.exe'

Stage 2: not filter_main_*

filter_main_empty:
    Details: '(Empty)'
filter_main_null:
    Details: null
filter_main_poqexec:
    Image: 'C:\Windows\System32\poqexec.exe'

Stage 3: not filter_optional_*

filter_optional_msoffice:
    - TargetObject|contains:
          - '\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\PROTOCOLS\Handler\'
          - '\ClickToRunStore\HKMU\SOFTWARE\Classes\PROTOCOLS\Handler\'
    - Details:
          - '{314111c7-a502-11d2-bbca-00c04f8ec294}'
          - '{3459B272-CC19-4448-86C9-DDC3B4B2FAD3}'
          - '{42089D2D-912D-4018-9087-2B87803E93FB}'
          - '{5504BE45-A83B-4808-900A-3A5C36E7F77A}'
          - '{807583E5-5146-11D5-A672-00B0D022E945}'
filter_optional_chrome:
    TargetObject|contains: '\SOFTWARE\Microsoft\Active Setup\Installed Components\{8A69D345-D564-463c-AFF1-A69D9E530F96}'
filter_optional_edge:
    TargetObject|contains: '\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}'
filter_optional_IE:
    TargetObject|contains: '\Software\Microsoft\Active Setup\Installed Components\{89820200-ECBD-11cf-8B85-00AA005B4383}'
filter_optional_integrator:
    Image:
        - 'C:\Program Files (x86)\Microsoft Office\root\integration\integrator.exe'
        - 'C:\Program Files\Microsoft Office\root\integration\integrator.exe'
filter_optional_office:
    Image|startswith:
        - 'C:\Program Files\Common Files\Microsoft Shared\ClickToRun\'
        - 'C:\Program Files\Common Files\Microsoft Shared\ClickToRun\Updates\'
    Image|endswith: '\OfficeClickToRun.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectmatch
  • \Control Panel\Desktop\Scrnsave.exe corpus 2 (sigma 2)
  • \Environment\UserInitMprLogonScript
  • \SOFTWARE\Classes\Htmlfile\Shell\Open\Command\(Default)
  • \SOFTWARE\Classes\Protocols\Filter
  • \SOFTWARE\Classes\Protocols\Handler
  • \SOFTWARE\Microsoft\Active Setup\Installed Components
  • \SOFTWARE\Microsoft\Internet Explorer\Desktop\Components
  • \SOFTWARE\Microsoft\Windows CE Services\AutoStartOnConnect
  • \SOFTWARE\Microsoft\Windows CE Services\AutoStartOnDisconnect
  • \SOFTWARE\Policies\Microsoft\Windows\Control Panel\Desktop\Scrnsave.exe
  • \SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components
  • \SOFTWARE\Wow6432Node\Microsoft\Windows CE Services\AutoStart
  • \SYSTEM\Setup\CmdLine
  • \Software\Classes\Clsid\{AB8902B4-09CA-4bb6-B78D-A8F59079A8D5}\Inprocserver32
  • \Software\Microsoft\Command Processor\Autorun
  • \Software\Microsoft\Ctf\LangBarAddin
  • \Software\Microsoft\Internet Explorer\UrlSearchHooks
  • \Software\Wow6432Node\Microsoft\Command Processor\Autorun
field:"TargetObject" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Detailseq(Empty)excludes:Details field:"Details" value:"(Empty)"
Detailsis_null(no value, null check)excludes:Details
ImageeqC:\Windows\System32\poqexec.exeexcludes:Image field:"Image" value:"C:\Windows\System32\poqexec.exe"
Imagestarts_withC:\Program Files\Common Files\Microsoft Shared\ClickToRun\excludes:Image field:"Image" value:"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\"
Imagestarts_withC:\Program Files\Common Files\Microsoft Shared\ClickToRun\Updates\excludes:Image field:"Image" value:"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\Updates\"
Imageends_with\OfficeClickToRun.exeexcludes:Image field:"Image" value:"\OfficeClickToRun.exe"
Detailseq{314111c7-a502-11d2-bbca-00c04f8ec294}excludes:Details field:"Details" value:"{314111c7-a502-11d2-bbca-00c04f8ec294}"
Detailseq{3459B272-CC19-4448-86C9-DDC3B4B2FAD3}excludes:Details field:"Details" value:"{3459B272-CC19-4448-86C9-DDC3B4B2FAD3}"
Detailseq{42089D2D-912D-4018-9087-2B87803E93FB}excludes:Details field:"Details" value:"{42089D2D-912D-4018-9087-2B87803E93FB}"
Detailseq{5504BE45-A83B-4808-900A-3A5C36E7F77A}excludes:Details field:"Details" value:"{5504BE45-A83B-4808-900A-3A5C36E7F77A}"
Detailseq{807583E5-5146-11D5-A672-00B0D022E945}excludes:Details field:"Details" value:"{807583E5-5146-11D5-A672-00B0D022E945}"
ImageeqC:\Program Files (x86)\Microsoft Office\root\integration\integrator.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\Microsoft Office\root\integration\integrator.exe"
ImageeqC:\Program Files\Microsoft Office\root\integration\integrator.exeexcludes:Image field:"Image" value:"C:\Program Files\Microsoft Office\root\integration\integrator.exe"
TargetObjectmatch\ClickToRunStore\HKMU\SOFTWARE\Classes\PROTOCOLS\Handler\excludes:TargetObject field:"TargetObject" value:"\ClickToRunStore\HKMU\SOFTWARE\Classes\PROTOCOLS\Handler\"
TargetObjectmatch\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\PROTOCOLS\Handler\excludes:TargetObject field:"TargetObject" value:"\Office\ClickToRun\REGISTRY\MACHINE\Software\Classes\PROTOCOLS\Handler\"
TargetObjectmatch\SOFTWARE\Microsoft\Active Setup\Installed Components\{8A69D345-D564-463c-AFF1-A69D9E530F96}excludes:TargetObject field:"TargetObject" value:"\SOFTWARE\Microsoft\Active Setup\Installed Components\{8A69D345-D564-463c-AFF1-A69D9E530F96}"
TargetObjectmatch\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}excludes:TargetObject field:"TargetObject" value:"\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}"
TargetObjectmatch\Software\Microsoft\Active Setup\Installed Components\{89820200-ECBD-11cf-8B85-00AA005B4383}excludes:TargetObject field:"TargetObject" value:"\Software\Microsoft\Active Setup\Installed Components\{89820200-ECBD-11cf-8B85-00AA005B4383}"

ComRAT Network Communication

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

Detects Turla ComRAT network communication.

MITRE ATT&CK Coverage

Rule Body

title: ComRAT Network Communication
id: 7857f021-007f-4928-8b2c-7aedbe64bb82
status: test
description: Detects Turla ComRAT network communication.
references:
    - https://www.welivesecurity.com/wp-content/uploads/2020/05/ESET_Turla_ComRAT.pdf
author: Florian Roth (Nextron Systems)
date: 2020-05-26
modified: 2024-02-26
tags:
    - attack.command-and-control
    - attack.t1071.001
    - attack.g0010
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    selection:
        c-uri|contains: '/index/index.php\?h='
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    c-uri|contains: '/index/index.php\?h='

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
c-urimatch
  • /index/index.php\?h=
field:"c-uri" kind:match value:"/index/index.php\?h="

CVE-2010-5278 Exploitation Attempt

#
Status
test
Severity
critical
Author
Subhash Popuri (@pbssubhash)
Source
github.com/SigmaHQ/sigma

MODx manager - Local File Inclusion:Directory traversal vulnerability in manager/controllers/default/resource/tvs.php in MODx Revolution 2.0.2-pl, and possibly earlier, when magic_quotes_gpc is disabled, allows remote attackers to read arbitrary files via a .. (dot dot) in the class_key parameter.

Known False Positives

  • Scanning from Nuclei

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: CVE-2010-5278 Exploitation Attempt
id: a4a899e8-fd7a-49dd-b5a8-7044def72d61
status: test
description: |
  MODx manager - Local File Inclusion:Directory traversal vulnerability in manager/controllers/default/resource/tvs.php in MODx Revolution 2.0.2-pl, and possibly earlier,
  when magic_quotes_gpc is disabled, allows remote attackers to read arbitrary files via a .. (dot dot) in the class_key parameter.
references:
    - https://github.com/projectdiscovery/nuclei-templates
author: Subhash Popuri (@pbssubhash)
date: 2021-08-25
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2010-5278
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection:
        cs-uri-query|contains: /manager/controllers/default/resource/tvs.php?class_key=../../../../../../../../../../windows/win.ini%00
    condition: selection
falsepositives:
    - Scanning from Nuclei
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-uri-query|contains: /manager/controllers/default/resource/tvs.php?class_key=../../../../../../../../../../windows/win.ini%00

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-uri-querymatch
  • /manager/controllers/default/resource/tvs.php?class_key=../../../../../../../../../../windows/win.ini%00
field:"cs-uri-query" kind:match value:"/manager/controllers/default/resource/tvs.php?class_key=../../../../../../../../../../windows/win.ini%00"

File Decoded From Base64/Hex Via Certutil.EXE

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

Detects the execution of certutil with either the "decode" or "decodehex" flags to decode base64 or hex encoded files. This can be abused by attackers to decode an encoded payload before execution

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: File Decoded From Base64/Hex Via Certutil.EXE
id: cc9cbe82-7bc0-4ef5-bc23-bbfb83947be7
status: test
description: Detects the execution of certutil with either the "decode" or "decodehex" flags to decode base64 or hex encoded files. This can be abused by attackers to decode an encoded payload before execution
references:
    - https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/certutil
    - https://unit42.paloaltonetworks.com/new-babyshark-malware-targets-u-s-national-security-think-tanks/
    - https://news.sophos.com/en-us/2021/04/13/compromised-exchange-server-hosting-cryptojacker-targeting-other-exchange-servers/
    - https://twitter.com/JohnLaTwC/status/835149808817991680
    - https://learn.microsoft.com/en-us/archive/blogs/pki/basic-crl-checking-with-certutil
    - https://lolbas-project.github.io/lolbas/Binaries/Certutil/
author: Florian Roth (Nextron Systems), Jonhnathan Ribeiro, oscd.community
date: 2023-02-15
modified: 2025-06-04
tags:
    - attack.stealth
    - attack.t1027
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\certutil.exe'
        - OriginalFileName: 'CertUtil.exe'
    selection_cli:
        CommandLine|contains|windash:
            - '-decode ' # Decode Base64
            - '-decodehex ' # Decode Hex
    condition: all of selection_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_certutil_decode/info.yml

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\certutil.exe'
    - OriginalFileName: 'CertUtil.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|windash:
        - '-decode '
        - '-decodehex '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -decode
  • -decodehex
  • /decode
  • /decodehex
  • –decode
  • –decodehex
  • —decode
  • —decodehex
  • ―decode
  • ―decodehex
field:"CommandLine" kind:match
Imageends_with
  • \certutil.exe corpus 43 (sigma 43)
field:"Image" kind:ends_with value:"\certutil.exe"
OriginalFileNameeq
  • CertUtil.exe corpus 26 (sigma 14, elastic 6, splunk 6)
field:"OriginalFileName" kind:eq value:"CertUtil.exe"

FoggyWeb Backdoor DLL Loading

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

Detects DLL hijacking technique used by NOBELIUM in their FoggyWeb backdoor. Which loads a malicious version of the expected "version.dll" dll

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: FoggyWeb Backdoor DLL Loading
id: 640dc51c-7713-4faa-8a0e-e7c0d9d4654c
status: test
description: Detects DLL hijacking technique used by NOBELIUM in their FoggyWeb backdoor. Which loads a malicious version of the expected "version.dll" dll
references:
    - https://www.microsoft.com/security/blog/2021/09/27/foggyweb-targeted-nobelium-malware-leads-to-persistent-backdoor/
author: Florian Roth (Nextron Systems)
date: 2021-09-27
modified: 2022-12-09
tags:
    - attack.resource-development
    - attack.t1587
    - detection.emerging-threats
logsource:
    category: image_load
    product: windows
detection:
    selection:
        ImageLoaded: 'C:\Windows\ADFS\version.dll'
    condition: selection
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ImageLoaded: 'C:\Windows\ADFS\version.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ImageLoadedeq
  • C:\Windows\ADFS\version.dll
field:"ImageLoaded" kind:eq value:"C:\Windows\ADFS\version.dll"

Greenbug Espionage Group Indicators

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

Detects tools and process executions used by Greenbug in their May 2020 campaign as reported by Symantec

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Greenbug Espionage Group Indicators
id: 3711eee4-a808-4849-8a14-faf733da3612
status: test
description: Detects tools and process executions used by Greenbug in their May 2020 campaign as reported by Symantec
references:
    - https://symantec-enterprise-blogs.security.com/blogs/threat-intelligence/greenbug-espionage-telco-south-asia
author: Florian Roth (Nextron Systems)
date: 2020-05-20
modified: 2023-03-09
tags:
    - attack.stealth
    - attack.g0049
    - attack.execution
    - attack.t1059.001
    - attack.command-and-control
    - attack.t1105
    - attack.t1036.005
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        Image|endswith:
            - ':\ProgramData\adobe\Adobe.exe'
            - ':\ProgramData\oracle\local.exe'
            - '\revshell.exe'
            - '\infopagesbackup\ncat.exe'
            - ':\ProgramData\comms\comms.exe'
    selection_msf:
        CommandLine|contains|all:
            - '-ExecutionPolicy Bypass -File'
            - '\msf.ps1'
    selection_ncat:
        CommandLine|contains|all:
            - 'infopagesbackup'
            - '\ncat'
            - '-e cmd.exe'
    selection_powershell:
        CommandLine|contains:
            - 'system.Data.SqlClient.SqlDataAdapter($cmd); [void]$da.fill'
            - '-nop -w hidden -c $k=new-object'
            - '[Net.CredentialCache]::DefaultCredentials;IEX '
            - ' -nop -w hidden -c $m=new-object net.webclient;$m'
            - '-noninteractive -executionpolicy bypass whoami'
            - '-noninteractive -executionpolicy bypass netstat -a'
    selection_other:
        CommandLine|contains: 'L3NlcnZlcj1'  # base64 encoded '/server='
    condition: 1 of selection_*
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_img

selection_img:
    Image|endswith:
        - ':\ProgramData\adobe\Adobe.exe'
        - ':\ProgramData\oracle\local.exe'
        - '\revshell.exe'
        - '\infopagesbackup\ncat.exe'
        - ':\ProgramData\comms\comms.exe'

Stage 2: selection_msf

selection_msf:
    CommandLine|contains|all:
        - '-ExecutionPolicy Bypass -File'
        - '\msf.ps1'

Stage 3: selection_ncat

selection_ncat:
    CommandLine|contains|all:
        - 'infopagesbackup'
        - '\ncat'
        - '-e cmd.exe'

Stage 4: selection_powershell

selection_powershell:
    CommandLine|contains:
        - 'system.Data.SqlClient.SqlDataAdapter($cmd); [void]$da.fill'
        - '-nop -w hidden -c $k=new-object'
        - '[Net.CredentialCache]::DefaultCredentials;IEX '
        - ' -nop -w hidden -c $m=new-object net.webclient;$m'
        - '-noninteractive -executionpolicy bypass whoami'
        - '-noninteractive -executionpolicy bypass netstat -a'

Stage 5: selection_other

selection_other:
    CommandLine|contains: 'L3NlcnZlcj1'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -nop -w hidden -c $m=new-object net.webclient;$m
  • -ExecutionPolicy Bypass -File
  • -e cmd.exe
  • -noninteractive -executionpolicy bypass netstat -a
  • -noninteractive -executionpolicy bypass whoami
  • -nop -w hidden -c $k=new-object
  • L3NlcnZlcj1
  • [Net.CredentialCache]::DefaultCredentials;IEX
  • \msf.ps1
  • \ncat
  • infopagesbackup
  • system.Data.SqlClient.SqlDataAdapter($cmd); [void]$da.fill
field:"CommandLine" kind:match
Imageends_with
  • :\ProgramData\adobe\Adobe.exe
  • :\ProgramData\comms\comms.exe
  • :\ProgramData\oracle\local.exe
  • \infopagesbackup\ncat.exe
  • \revshell.exe
field:"Image" kind:ends_with

Hidden Flag Set On File/Directory Via Chflags - MacOS

#
Status
test
Severity
medium
Author
Omar Khaled (@beacon_exe)
Source
github.com/SigmaHQ/sigma

Detects the execution of the "chflags" utility with the "hidden" flag, in order to hide files on MacOS. When a file or directory has this hidden flag set, it becomes invisible to the default file listing commands and in graphical file browsers.

Known False Positives

  • Legitimate usage of chflags by administrators and users.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Hidden Flag Set On File/Directory Via Chflags - MacOS
id: 3b2c1059-ae5f-40b6-b5d4-6106d3ac20fe
status: test
description: |
    Detects the execution of the "chflags" utility with the "hidden" flag, in order to hide files on MacOS.
    When a file or directory has this hidden flag set, it becomes invisible to the default file listing commands and in graphical file browsers.
references:
    - https://www.sentinelone.com/labs/apt32-multi-stage-macos-trojan-innovates-on-crimeware-scripting-technique/
    - https://www.welivesecurity.com/2019/04/09/oceanlotus-macos-malware-update/
    - https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/reports/Unit_42/unit42-wirelurker.pdf
    - https://ss64.com/mac/chflags.html
author: Omar Khaled (@beacon_exe)
date: 2024-08-21
tags:
    - attack.credential-access
    - attack.command-and-control
    - attack.stealth
    - attack.t1218
    - attack.t1564.004
    - attack.t1552.001
    - attack.t1105
logsource:
    product: macos
    category: process_creation
detection:
    selection:
        Image|endswith: '/chflags'
        CommandLine|contains: 'hidden '
    condition: selection
falsepositives:
    - Legitimate usage of chflags by administrators and users.
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '/chflags'
    CommandLine|contains: 'hidden '

Indicators

These rows show field, operator, and value matches.

Kapeka Backdoor Execution Via RunDLL32.EXE

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

Detects Kapeka backdoor process execution pattern, where the dropper launch the backdoor binary by calling rundll32 and passing the backdoor's first export ordinal (#1) with a "-d" argument.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Kapeka Backdoor Execution Via RunDLL32.EXE
id: e98f741c-6a5b-4c83-bc2a-1f4e58d07b12
status: test
description: |
    Detects Kapeka backdoor process execution pattern, where the dropper launch the backdoor binary by calling rundll32 and passing the backdoor's first export ordinal (#1) with a "-d" argument.
references:
    - https://labs.withsecure.com/publications/kapeka
    - https://app.any.run/tasks/1efb3ed4-cc0f-4690-a0ed-24516809bc72/
author: Swachchhanda Shrawan Poudel, Nasreddine Bencherchali (Nextron Systems)
date: 2024-07-03
tags:
    - attack.stealth
    - attack.t1218.011
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\rundll32.exe'
        - OriginalFileName: 'RUNDLL32.EXE'
    selection_backdoor_path:
        CommandLine|contains:
            - ':\ProgramData'
            - '\AppData\Local'
    selection_backdoor_exec_1:
        CommandLine|contains|all:
            - '.wll'
            - '#1'
            - ' -d'
    selection_backdoor_exec_2:
        # This account for the in the wild variant
        CommandLine|contains: '.wll'
        CommandLine|endswith: '#1'
    condition: selection_img and selection_backdoor_path and 1 of selection_backdoor_exec_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_img and selection_backdoor_path and 1 of selection_backdoor_exec_*

Stage 1: selection_img

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

Stage 2: selection_backdoor_path

selection_backdoor_path:
    CommandLine|contains:
        - ':\ProgramData'
        - '\AppData\Local'

Stage 3: selection_backdoor_exec_1

selection_backdoor_exec_1:
    CommandLine|contains|all:
        - '.wll'
        - '#1'
        - ' -d'

Stage 4: selection_backdoor_exec_2

selection_backdoor_exec_2:
    CommandLine|contains: '.wll'
    CommandLine|endswith: '#1'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • #1
field:"CommandLine" kind:ends_with value:"#1"
CommandLinematch
  • -d corpus 4 (sigma 2, elastic 2)
  • #1 corpus 2 (sigma 2)
  • .wll corpus 2 (sigma 2)
  • :\ProgramData corpus 2 (sigma 2)
  • \AppData\Local
field:"CommandLine" kind:match
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"
OriginalFileNameeq
  • RUNDLL32.EXE corpus 72 (sigma 35, splunk 21, elastic 16)
field:"OriginalFileName" kind:eq value:"RUNDLL32.EXE"

Katz Stealer Suspicious User-Agent

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

Detects network connections with a suspicious user-agent string containing "katz-ontop", which may indicate Katz Stealer activity.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Rule Body

title: Katz Stealer Suspicious User-Agent
id: 834c6d2f-5e98-4b2a-b453-0c4f234afedd
status: experimental
description: |
    Detects network connections with a suspicious user-agent string containing "katz-ontop", which may indicate Katz Stealer activity.
references:
    - Internal Research
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-05-22
tags:
    - attack.command-and-control
    - attack.t1071.001
    - detection.emerging-threats
logsource:
    product: zeek
    service: http
detection:
    selection:
        user_agent|contains: 'katz-ontop'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    user_agent|contains: 'katz-ontop'

Indicators

These rows show field, operator, and value matches.

Malicious PowerShell Commandlets - ScriptBlock

#
Status
test
Severity
high
Author
Sean Metcalf, Florian Roth, Bartlomiej Czyz @bczyz1, oscd.community, Nasreddine Bencherchali, Tim Shelton, Mustafa Kaan Demir, Georg Lauenstein, Max Altgelt, Tobias Michalski, Austin Songer
Source
github.com/SigmaHQ/sigma

Detects Commandlet names from well-known PowerShell exploitation frameworks

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Malicious PowerShell Commandlets - ScriptBlock
id: 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
related:
    - id: 7d0d0329-0ef1-4e84-a9f5-49500f9d7c6c
      type: similar
    - id: 02030f2f-6199-49ec-b258-ea71b07e03dc
      type: similar
    - id: 6d3f1399-a81c-4409-aff3-1ecfe9330baf
      type: obsolete
    - id: 83083ac6-1816-4e76-97d7-59af9a9ae46e
      type: obsolete
status: test
description: Detects Commandlet names from well-known PowerShell exploitation frameworks
references:
    - https://adsecurity.org/?p=2921
    - https://github.com/S3cur3Th1sSh1t/PowerSharpPack/tree/master/PowerSharpBinaries
    - https://github.com/BC-SECURITY/Invoke-ZeroLogon/blob/111d17c7fec486d9bb23387e2e828b09a26075e4/Invoke-ZeroLogon.ps1
    - https://github.com/xorrior/RandomPS-Scripts/blob/848c919bfce4e2d67b626cbcf4404341cfe3d3b6/Get-DXWebcamVideo.ps1
    - https://github.com/rvrsh3ll/Misc-Powershell-Scripts/blob/6f23bb41f9675d7e2d32bacccff75e931ae00554/OfficeMemScraper.ps1
    - https://github.com/dafthack/DomainPasswordSpray/blob/b13d64a5834694aa73fd2aea9911a83027c465a7/DomainPasswordSpray.ps1
    - https://unit42.paloaltonetworks.com/threat-assessment-black-basta-ransomware/ # Invoke-TotalExec
    - https://research.nccgroup.com/2022/06/06/shining-the-light-on-black-basta/ # Invoke-TotalExec
    - https://github.com/calebstewart/CVE-2021-1675 # Invoke-Nightmare
    - https://github.com/BloodHoundAD/BloodHound/blob/0927441f67161cc6dc08a53c63ceb8e333f55874/Collectors/AzureHound.ps1
    - https://bloodhound.readthedocs.io/en/latest/data-collection/azurehound.html
    - https://github.com/HarmJ0y/DAMP
    - https://github.com/samratashok/nishang
    - https://github.com/DarkCoderSc/PowerRunAsSystem/
    - https://github.com/besimorhino/powercat
    - https://github.com/Kevin-Robertson/Powermad
    - https://github.com/adrecon/ADRecon
    - https://github.com/adrecon/AzureADRecon
    - https://github.com/The-Viper-One/Invoke-PowerDPAPI/
    - https://github.com/Arno0x/DNSExfiltrator/
author: Sean Metcalf, Florian Roth, Bartlomiej Czyz @bczyz1, oscd.community, Nasreddine Bencherchali, Tim Shelton, Mustafa Kaan Demir, Georg Lauenstein, Max Altgelt, Tobias Michalski, Austin Songer
date: 2017-03-05
modified: 2025-12-10
tags:
    - attack.execution
    - attack.discovery
    - attack.t1482
    - attack.t1087
    - attack.t1087.001
    - attack.t1087.002
    - attack.t1069.001
    - attack.t1069.002
    - attack.t1069
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains:
            # Note: Please ensure alphabetical order when adding new entries
            - 'Add-Exfiltration'
            - 'Add-Persistence'
            - 'Add-RegBackdoor'
            - 'Add-RemoteRegBackdoor'
            - 'Add-ScrnSaveBackdoor'
            - 'ConvertTo-Rc4ByteStream'
            - 'Decrypt-Hash'
            - 'Disable-ADIDNSNode'
            - 'Do-Exfiltration'
            - 'Enable-ADIDNSNode'
            - 'Enabled-DuplicateToken'
            - 'Exploit-Jboss'
            - 'Export-ADRCSV'
            - 'Export-ADRExcel'
            - 'Export-ADRHTML'
            - 'Export-ADRJSON'
            - 'Export-ADRXML'
            - 'Find-Fruit'
            - 'Find-GPOLocation'
            - 'Find-TrustedDocuments'
            - 'Get-ADIDNSNodeAttribute'
            - 'Get-ADIDNSNodeOwner'
            - 'Get-ADIDNSNodeTombstoned'
            - 'Get-ADIDNSPermission'
            - 'Get-ADIDNSZone'
            - 'Get-ChromeDump'
            - 'Get-ClipboardContents'
            - 'Get-FoxDump'
            - 'Get-GPPPassword'
            - 'Get-IndexedItem'
            - 'Get-KerberosAESKey'
            - 'Get-Keystrokes'
            - 'Get-LSASecret'
            - 'Get-PassHashes'
            - 'Get-RegAlwaysInstallElevated'
            - 'Get-RegAutoLogon'
            - 'Get-RemoteBootKey'
            - 'Get-RemoteCachedCredential'
            - 'Get-RemoteLocalAccountHash'
            - 'Get-RemoteLSAKey'
            - 'Get-RemoteMachineAccountHash'
            - 'Get-RemoteNLKMKey'
            - 'Get-RickAstley'
            - 'Get-SecurityPackages'
            - 'Get-ServiceFilePermission'
            - 'Get-ServicePermission'
            - 'Get-ServiceUnquoted'
            - 'Get-SiteListPassword'
            - 'Get-System'
            - 'Get-TimedScreenshot'
            - 'Get-UnattendedInstallFile'
            - 'Get-Unconstrained'
            - 'Get-USBKeystrokes'
            - 'Get-VaultCredential'
            - 'Get-VulnAutoRun'
            - 'Get-VulnSchTask'
            - 'Grant-ADIDNSPermission'
            - 'Gupt-Backdoor'
            - 'Invoke-ACLScanner'
            - 'Invoke-ADRecon'
            - 'Invoke-ADSBackdoor'
            - 'Invoke-AgentSmith'
            - 'Invoke-AllChecks'
            - 'Invoke-ARPScan'
            - 'Invoke-AzureHound'
            - 'Invoke-BackdoorLNK'
            - 'Invoke-BadPotato'
            - 'Invoke-BetterSafetyKatz'
            - 'Invoke-BypassUAC'
            - 'Invoke-Carbuncle'
            - 'Invoke-Certify'
            - 'Invoke-ConPtyShell'
            - 'Invoke-CredentialInjection'
            - 'Invoke-DAFT'
            - 'Invoke-DCSync'
            - 'Invoke-DinvokeKatz'
            - 'Invoke-DllInjection'
            - 'Invoke-DNSUpdate'
            - 'Invoke-DNSExfiltrator'
            - 'Invoke-DomainPasswordSpray'
            - 'Invoke-DowngradeAccount'
            - 'Invoke-EgressCheck'
            - 'Invoke-Eyewitness'
            - 'Invoke-FakeLogonScreen'
            - 'Invoke-Farmer'
            - 'Invoke-Get-RBCD-Threaded'
            - 'Invoke-Gopher'
            - 'Invoke-Grouper' # Also Covers Invoke-GrouperX
            - 'Invoke-HandleKatz'
            - 'Invoke-ImpersonatedProcess'
            - 'Invoke-ImpersonateSystem'
            - 'Invoke-InteractiveSystemPowerShell'
            - 'Invoke-Internalmonologue'
            - 'Invoke-Inveigh'
            - 'Invoke-InveighRelay'
            - 'Invoke-KrbRelay'
            - 'Invoke-LdapSignCheck'
            - 'Invoke-Lockless'
            - 'Invoke-MalSCCM'
            - 'Invoke-Mimikatz'
            - 'Invoke-Mimikittenz'
            - 'Invoke-MITM6'
            - 'Invoke-NanoDump'
            - 'Invoke-NetRipper'
            - 'Invoke-Nightmare'
            - 'Invoke-NinjaCopy'
            - 'Invoke-OfficeScrape'
            - 'Invoke-OxidResolver'
            - 'Invoke-P0wnedshell'
            - 'Invoke-Paranoia'
            - 'Invoke-PortScan'
            - 'Invoke-PoshRatHttp' # Also Covers Invoke-PoshRatHttps
            - 'Invoke-PostExfil'
            - 'Invoke-PowerDump'
            - 'Invoke-PowerDPAPI'
            - 'Invoke-PowerShellTCP'
            - 'Invoke-PowerShellWMI'
            - 'Invoke-PPLDump'
            - 'Invoke-PsExec'
            - 'Invoke-PSInject'
            - 'Invoke-PsUaCme'
            - 'Invoke-ReflectivePEInjection'
            - 'Invoke-ReverseDNSLookup'
            - 'Invoke-Rubeus'
            - 'Invoke-RunAs'
            - 'Invoke-SafetyKatz'
            - 'Invoke-SauronEye'
            - 'Invoke-SCShell'
            - 'Invoke-Seatbelt'
            - 'Invoke-ServiceAbuse'
            - 'Invoke-ShadowSpray'
            - 'Invoke-Sharp' # Covers all "Invoke-Sharp" variants
            - 'Invoke-Shellcode'
            - 'Invoke-SMBScanner'
            - 'Invoke-Snaffler'
            - 'Invoke-Spoolsample'
            - 'Invoke-SpraySinglePassword'
            - 'Invoke-SSHCommand'
            - 'Invoke-StandIn'
            - 'Invoke-StickyNotesExtract'
            - 'Invoke-SystemCommand'
            - 'Invoke-Tasksbackdoor'
            - 'Invoke-Tater'
            - 'Invoke-Thunderfox'
            - 'Invoke-ThunderStruck'
            - 'Invoke-TokenManipulation'
            - 'Invoke-Tokenvator'
            - 'Invoke-TotalExec'
            - 'Invoke-UrbanBishop'
            - 'Invoke-UserHunter'
            - 'Invoke-VoiceTroll'
            - 'Invoke-Whisker'
            - 'Invoke-WinEnum'
            - 'Invoke-winPEAS'
            - 'Invoke-WireTap'
            - 'Invoke-WmiCommand'
            - 'Invoke-WMIExec'
            - 'Invoke-WScriptBypassUAC'
            - 'Invoke-Zerologon'
            - 'MailRaider'
            - 'New-ADIDNSNode'
            - 'New-HoneyHash'
            - 'New-InMemoryModule'
            - 'New-SOASerialNumberArray'
            - 'Out-Minidump'
            - 'PowerBreach'
            - 'powercat '
            - 'PowerUp'
            - 'PowerView'
            - 'Remove-ADIDNSNode'
            - 'Remove-Update'
            - 'Rename-ADIDNSNode'
            - 'Revoke-ADIDNSPermission'
            - 'Set-ADIDNSNode' # Covers: Set-ADIDNSNodeAttribute, Set-ADIDNSNodeOwner
            - 'Show-TargetScreen'
            - 'Start-CaptureServer'
            - 'Start-Dnscat2'
            - 'Start-WebcamRecorder'
            - 'VolumeShadowCopyTools'
            # - 'Check-VM'
            # - 'Disable-MachineAccount'
            # - 'Enable-MachineAccount'
            # - 'Get-ApplicationHost'
            # - 'Get-MachineAccountAttribute'
            # - 'Get-MachineAccountCreator'
            # - 'Get-Screenshot'
            # - 'HTTP-Login'
            # - 'Install-ServiceBinary'
            # - 'Install-SSP'
            # - 'New-DNSRecordArray'
            # - 'New-MachineAccount'
            # - 'Port-Scan'
            # - 'Remove-MachineAccount'
            # - 'Set-MacAttribute'
            # - 'Set-MachineAccountAttribute'
            # - 'Set-Wallpaper'
    filter_optional_amazon_ec2:
        ScriptBlockText|contains:
            - Get-SystemDriveInfo  # http://bheltborg.dk/Windows/WinSxS/amd64_microsoft-windows-maintenancediagnostic_31bf3856ad364e35_10.0.10240.16384_none_91ef7543a4514b5e/CL_Utility.ps1
            - C:\ProgramData\Amazon\EC2-Windows\Launch\Module\  # false positive form Amazon EC2
    condition: selection and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_malicious_commandlets/info.yml

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_optional_*

Stage 1: selection

selection:
    ScriptBlockText|contains:
        - 'Add-Exfiltration'
        - 'Add-Persistence'
        - 'Add-RegBackdoor'
        - 'Add-RemoteRegBackdoor'
        - 'Add-ScrnSaveBackdoor'
        - 'ConvertTo-Rc4ByteStream'
        - 'Decrypt-Hash'
        - 'Disable-ADIDNSNode'
        - 'Do-Exfiltration'
        - 'Enable-ADIDNSNode'
        - 'Enabled-DuplicateToken'
        - 'Exploit-Jboss'
        - 'Export-ADRCSV'
        - 'Export-ADRExcel'
        - 'Export-ADRHTML'
        - 'Export-ADRJSON'
        - 'Export-ADRXML'
        - 'Find-Fruit'
        - 'Find-GPOLocation'
        - 'Find-TrustedDocuments'
        - 'Get-ADIDNSNodeAttribute'
        - 'Get-ADIDNSNodeOwner'
        - 'Get-ADIDNSNodeTombstoned'
        - 'Get-ADIDNSPermission'
        - 'Get-ADIDNSZone'
        - 'Get-ChromeDump'
        - 'Get-ClipboardContents'
        - 'Get-FoxDump'
        - 'Get-GPPPassword'
        - 'Get-IndexedItem'
        - 'Get-KerberosAESKey'
        - 'Get-Keystrokes'
        - 'Get-LSASecret'
        - 'Get-PassHashes'
        - 'Get-RegAlwaysInstallElevated'
        - 'Get-RegAutoLogon'
        - 'Get-RemoteBootKey'
        - 'Get-RemoteCachedCredential'
        - 'Get-RemoteLocalAccountHash'
        - 'Get-RemoteLSAKey'
        - 'Get-RemoteMachineAccountHash'
        - 'Get-RemoteNLKMKey'
        - 'Get-RickAstley'
        - 'Get-SecurityPackages'
        - 'Get-ServiceFilePermission'
        - 'Get-ServicePermission'
        - 'Get-ServiceUnquoted'
        - 'Get-SiteListPassword'
        - 'Get-System'
        - 'Get-TimedScreenshot'
        - 'Get-UnattendedInstallFile'
        - 'Get-Unconstrained'
        - 'Get-USBKeystrokes'
        - 'Get-VaultCredential'
        - 'Get-VulnAutoRun'
        - 'Get-VulnSchTask'
        - 'Grant-ADIDNSPermission'
        - 'Gupt-Backdoor'
        - 'Invoke-ACLScanner'
        - 'Invoke-ADRecon'
        - 'Invoke-ADSBackdoor'
        - 'Invoke-AgentSmith'
        - 'Invoke-AllChecks'
        - 'Invoke-ARPScan'
        - 'Invoke-AzureHound'
        - 'Invoke-BackdoorLNK'
        - 'Invoke-BadPotato'
        - 'Invoke-BetterSafetyKatz'
        - 'Invoke-BypassUAC'
        - 'Invoke-Carbuncle'
        - 'Invoke-Certify'
        - 'Invoke-ConPtyShell'
        - 'Invoke-CredentialInjection'
        - 'Invoke-DAFT'
        - 'Invoke-DCSync'
        - 'Invoke-DinvokeKatz'
        - 'Invoke-DllInjection'
        - 'Invoke-DNSUpdate'
        - 'Invoke-DNSExfiltrator'
        - 'Invoke-DomainPasswordSpray'
        - 'Invoke-DowngradeAccount'
        - 'Invoke-EgressCheck'
        - 'Invoke-Eyewitness'
        - 'Invoke-FakeLogonScreen'
        - 'Invoke-Farmer'
        - 'Invoke-Get-RBCD-Threaded'
        - 'Invoke-Gopher'
        - 'Invoke-Grouper'
        - 'Invoke-HandleKatz'
        - 'Invoke-ImpersonatedProcess'
        - 'Invoke-ImpersonateSystem'
        - 'Invoke-InteractiveSystemPowerShell'
        - 'Invoke-Internalmonologue'
        - 'Invoke-Inveigh'
        - 'Invoke-InveighRelay'
        - 'Invoke-KrbRelay'
        - 'Invoke-LdapSignCheck'
        - 'Invoke-Lockless'
        - 'Invoke-MalSCCM'
        - 'Invoke-Mimikatz'
        - 'Invoke-Mimikittenz'
        - 'Invoke-MITM6'
        - 'Invoke-NanoDump'
        - 'Invoke-NetRipper'
        - 'Invoke-Nightmare'
        - 'Invoke-NinjaCopy'
        - 'Invoke-OfficeScrape'
        - 'Invoke-OxidResolver'
        - 'Invoke-P0wnedshell'
        - 'Invoke-Paranoia'
        - 'Invoke-PortScan'
        - 'Invoke-PoshRatHttp'
        - 'Invoke-PostExfil'
        - 'Invoke-PowerDump'
        - 'Invoke-PowerDPAPI'
        - 'Invoke-PowerShellTCP'
        - 'Invoke-PowerShellWMI'
        - 'Invoke-PPLDump'
        - 'Invoke-PsExec'
        - 'Invoke-PSInject'
        - 'Invoke-PsUaCme'
        - 'Invoke-ReflectivePEInjection'
        - 'Invoke-ReverseDNSLookup'
        - 'Invoke-Rubeus'
        - 'Invoke-RunAs'
        - 'Invoke-SafetyKatz'
        - 'Invoke-SauronEye'
        - 'Invoke-SCShell'
        - 'Invoke-Seatbelt'
        - 'Invoke-ServiceAbuse'
        - 'Invoke-ShadowSpray'
        - 'Invoke-Sharp'
        - 'Invoke-Shellcode'
        - 'Invoke-SMBScanner'
        - 'Invoke-Snaffler'
        - 'Invoke-Spoolsample'
        - 'Invoke-SpraySinglePassword'
        - 'Invoke-SSHCommand'
        - 'Invoke-StandIn'
        - 'Invoke-StickyNotesExtract'
        - 'Invoke-SystemCommand'
        - 'Invoke-Tasksbackdoor'
        - 'Invoke-Tater'
        - 'Invoke-Thunderfox'
        - 'Invoke-ThunderStruck'
        - 'Invoke-TokenManipulation'
        - 'Invoke-Tokenvator'
        - 'Invoke-TotalExec'
        - 'Invoke-UrbanBishop'
        - 'Invoke-UserHunter'
        - 'Invoke-VoiceTroll'
        - 'Invoke-Whisker'
        - 'Invoke-WinEnum'
        - 'Invoke-winPEAS'
        - 'Invoke-WireTap'
        - 'Invoke-WmiCommand'
        - 'Invoke-WMIExec'
        - 'Invoke-WScriptBypassUAC'
        - 'Invoke-Zerologon'
        - 'MailRaider'
        - 'New-ADIDNSNode'
        - 'New-HoneyHash'
        - 'New-InMemoryModule'
        - 'New-SOASerialNumberArray'
        - 'Out-Minidump'
        - 'PowerBreach'
        - 'powercat '
        - 'PowerUp'
        - 'PowerView'
        - 'Remove-ADIDNSNode'
        - 'Remove-Update'
        - 'Rename-ADIDNSNode'
        - 'Revoke-ADIDNSPermission'
        - 'Set-ADIDNSNode'
        - 'Show-TargetScreen'
        - 'Start-CaptureServer'
        - 'Start-Dnscat2'
        - 'Start-WebcamRecorder'
        - 'VolumeShadowCopyTools'

Stage 2: not filter_optional_amazon_ec2

filter_optional_amazon_ec2:
    ScriptBlockText|contains:
        - Get-SystemDriveInfo
        - C:\ProgramData\Amazon\EC2-Windows\Launch\Module\

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • Add-Exfiltration
  • Add-Persistence
  • Add-RegBackdoor
  • Add-RemoteRegBackdoor
  • Add-ScrnSaveBackdoor
  • ConvertTo-Rc4ByteStream
  • Decrypt-Hash
  • Disable-ADIDNSNode
  • Do-Exfiltration
  • Enable-ADIDNSNode
  • Enabled-DuplicateToken
  • Exploit-Jboss
  • Export-ADRCSV
  • Export-ADRExcel
  • Export-ADRHTML
  • Export-ADRJSON
  • Export-ADRXML
  • Find-Fruit
  • Find-GPOLocation corpus 2 (sigma 2)
  • Find-TrustedDocuments
  • Get-ADIDNSNodeAttribute
  • Get-ADIDNSNodeOwner
  • Get-ADIDNSNodeTombstoned
  • Get-ADIDNSPermission
  • Get-ADIDNSZone
  • Get-ChromeDump
  • Get-ClipboardContents
  • Get-FoxDump
  • Get-GPPPassword
  • Get-IndexedItem
  • Get-KerberosAESKey
  • Get-Keystrokes corpus 2 (sigma 2)
  • Get-LSASecret
  • Get-PassHashes
  • Get-RegAlwaysInstallElevated
  • Get-RegAutoLogon
  • Get-RemoteBootKey
  • Get-RemoteCachedCredential
  • Get-RemoteLSAKey
  • Get-RemoteLocalAccountHash
  • +139 more values (see full rule source)
field:"ScriptBlockText" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ScriptBlockTextmatchC:\ProgramData\Amazon\EC2-Windows\Launch\Module\excludes:ScriptBlockText field:"ScriptBlockText" value:"C:\ProgramData\Amazon\EC2-Windows\Launch\Module\"
ScriptBlockTextmatchGet-SystemDriveInfoexcludes:ScriptBlockText field:"ScriptBlockText" value:"Get-SystemDriveInfo"

Malicious PowerShell Scripts - PoshModule

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

Detects the execution of known offensive powershell scripts used for exploitation or reconnaissance

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Malicious PowerShell Scripts - PoshModule
id: 41025fd7-0466-4650-a813-574aaacbe7f4
related:
    - id: f331aa1f-8c53-4fc3-b083-cc159bc971cb
      type: similar
    - id: bf7286e7-c0be-460b-a7e8-5b2e07ecc2f2
      type: obsolete
status: test
description: Detects the execution of known offensive powershell scripts used for exploitation or reconnaissance
references:
    - https://github.com/PowerShellMafia/PowerSploit
    - https://github.com/NetSPI/PowerUpSQL
    - https://github.com/CsEnox/EventViewer-UACBypass
    - https://web.archive.org/web/20210511204621/https://github.com/AlsidOfficial/WSUSpendu
    - https://github.com/nettitude/Invoke-PowerThIEf
    - https://github.com/S3cur3Th1sSh1t/WinPwn
    - https://github.com/S3cur3Th1sSh1t/PowerSharpPack/tree/master/PowerSharpBinaries
    - https://github.com/BC-SECURITY/Invoke-ZeroLogon/blob/111d17c7fec486d9bb23387e2e828b09a26075e4/Invoke-ZeroLogon.ps1
    - https://github.com/xorrior/RandomPS-Scripts/blob/848c919bfce4e2d67b626cbcf4404341cfe3d3b6/Get-DXWebcamVideo.ps1
    - https://github.com/rvrsh3ll/Misc-Powershell-Scripts/blob/6f23bb41f9675d7e2d32bacccff75e931ae00554/OfficeMemScraper.ps1
    - https://github.com/dafthack/DomainPasswordSpray/blob/b13d64a5834694aa73fd2aea9911a83027c465a7/DomainPasswordSpray.ps1
    - https://unit42.paloaltonetworks.com/threat-assessment-black-basta-ransomware/ # Invoke-TotalExec
    - https://research.nccgroup.com/2022/06/06/shining-the-light-on-black-basta/ # Invoke-TotalExec
    - https://github.com/HarmJ0y/DAMP
    - https://github.com/samratashok/nishang
    - https://github.com/DarkCoderSc/PowerRunAsSystem/
    - https://github.com/besimorhino/powercat
    - https://github.com/sadshade/veeam-creds/blob/6010eaf31ba41011b58d6af3950cffbf6f5cea32/Veeam-Get-Creds.ps1
    - https://github.com/The-Viper-One/Invoke-PowerDPAPI/
    - https://github.com/Arno0x/DNSExfiltrator/
author: frack113, Nasreddine Bencherchali (Nextron Systems)
date: 2023-01-23
modified: 2025-12-10
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_module
    definition: 0ad03ef1-f21b-4a79-8ce8-e6900c54b65b
detection:
    selection_generic:
        ContextInfo|contains:
            - 'Add-ConstrainedDelegationBackdoor.ps1'
            - 'Add-Exfiltration.ps1'
            - 'Add-Persistence.ps1'
            - 'Add-RegBackdoor.ps1'
            - 'Add-RemoteRegBackdoor.ps1'
            - 'Add-ScrnSaveBackdoor.ps1'
            - 'BadSuccessor.ps1'
            - 'Check-VM.ps1'
            - 'ConvertTo-ROT13.ps1'
            - 'Copy-VSS.ps1'
            - 'Create-MultipleSessions.ps1'
            - 'DNS_TXT_Pwnage.ps1'
            - 'dnscat2.ps1'
            - 'Do-Exfiltration.ps1'
            - 'DomainPasswordSpray.ps1'
            - 'Download_Execute.ps1'
            - 'Download-Execute-PS.ps1'
            - 'Enabled-DuplicateToken.ps1'
            - 'Enable-DuplicateToken.ps1'
            - 'Execute-Command-MSSQL.ps1'
            - 'Execute-DNSTXT-Code.ps1'
            - 'Execute-OnTime.ps1'
            - 'ExetoText.ps1'
            - 'Exploit-Jboss.ps1'
            - 'Find-AVSignature.ps1'
            - 'Find-Fruit.ps1'
            - 'Find-GPOLocation.ps1'
            - 'Find-TrustedDocuments.ps1'
            - 'FireBuster.ps1'
            - 'FireListener.ps1'
            - 'Get-ApplicationHost.ps1'
            - 'Get-ChromeDump.ps1'
            - 'Get-ClipboardContents.ps1'
            - 'Get-ComputerDetail.ps1'
            - 'Get-FoxDump.ps1'
            - 'Get-GPPAutologon.ps1'
            - 'Get-GPPPassword.ps1'
            - 'Get-IndexedItem.ps1'
            - 'Get-Keystrokes.ps1'
            - 'Get-LSASecret.ps1'
            - 'Get-MicrophoneAudio.ps1'
            - 'Get-PassHashes.ps1'
            - 'Get-PassHints.ps1'
            - 'Get-RegAlwaysInstallElevated.ps1'
            - 'Get-RegAutoLogon.ps1'
            - 'Get-RickAstley.ps1'
            - 'Get-Screenshot.ps1'
            - 'Get-SecurityPackages.ps1'
            - 'Get-ServiceFilePermission.ps1'
            - 'Get-ServicePermission.ps1'
            - 'Get-ServiceUnquoted.ps1'
            - 'Get-SiteListPassword.ps1'
            - 'Get-System.ps1'
            - 'Get-TimedScreenshot.ps1'
            - 'Get-UnattendedInstallFile.ps1'
            - 'Get-Unconstrained.ps1'
            - 'Get-USBKeystrokes.ps1'
            - 'Get-VaultCredential.ps1'
            - 'Get-VulnAutoRun.ps1'
            - 'Get-VulnSchTask.ps1'
            - 'Get-WebConfig.ps1'
            - 'Get-WebCredentials.ps1'
            - 'Get-WLAN-Keys.ps1'
            - 'Gupt-Backdoor.ps1'
            - 'HTTP-Backdoor.ps1'
            - 'HTTP-Login.ps1'
            - 'Install-ServiceBinary.ps1'
            - 'Install-SSP.ps1'
            - 'Invoke-ACLScanner.ps1'
            - 'Invoke-ADSBackdoor.ps1'
            - 'Invoke-AmsiBypass.ps1'
            - 'Invoke-ARPScan.ps1'
            - 'Invoke-BackdoorLNK.ps1'
            - 'Invoke-BadPotato.ps1'
            - 'Invoke-BetterSafetyKatz.ps1'
            - 'Invoke-BruteForce.ps1'
            - 'Invoke-BypassUAC.ps1'
            - 'Invoke-Carbuncle.ps1'
            - 'Invoke-Certify.ps1'
            - 'Invoke-ConPtyShell.ps1'
            - 'Invoke-CredentialInjection.ps1'
            - 'Invoke-CredentialsPhish.ps1'
            - 'Invoke-DAFT.ps1'
            - 'Invoke-DCSync.ps1'
            - 'Invoke-Decode.ps1'
            - 'Invoke-DinvokeKatz.ps1'
            - 'Invoke-DllInjection.ps1'
            - 'Invoke-DNSExfiltrator.ps1'
            - 'Invoke-DowngradeAccount.ps1'
            - 'Invoke-EgressCheck.ps1'
            - 'Invoke-Encode.ps1'
            - 'Invoke-EventViewer.ps1'
            - 'Invoke-Eyewitness.ps1'
            - 'Invoke-FakeLogonScreen.ps1'
            - 'Invoke-Farmer.ps1'
            - 'Invoke-Get-RBCD-Threaded.ps1'
            - 'Invoke-Gopher.ps1'
            - 'Invoke-Grouper2.ps1'
            - 'Invoke-Grouper3.ps1'
            - 'Invoke-HandleKatz.ps1'
            - 'Invoke-Interceptor.ps1'
            - 'Invoke-Internalmonologue.ps1'
            - 'Invoke-Inveigh.ps1'
            - 'Invoke-InveighRelay.ps1'
            - 'Invoke-JSRatRegsvr.ps1'
            - 'Invoke-JSRatRundll.ps1'
            - 'Invoke-KrbRelay.ps1'
            - 'Invoke-KrbRelayUp.ps1'
            - 'Invoke-LdapSignCheck.ps1'
            - 'Invoke-Lockless.ps1'
            - 'Invoke-MalSCCM.ps1'
            - 'Invoke-Mimikatz.ps1'
            - 'Invoke-MimikatzWDigestDowngrade.ps1'
            - 'Invoke-Mimikittenz.ps1'
            - 'Invoke-MITM6.ps1'
            - 'Invoke-NanoDump.ps1'
            - 'Invoke-NetRipper.ps1'
            - 'Invoke-NetworkRelay.ps1'
            - 'Invoke-NinjaCopy.ps1'
            - 'Invoke-OxidResolver.ps1'
            - 'Invoke-P0wnedshell.ps1'
            - 'Invoke-P0wnedshellx86.ps1'
            - 'Invoke-Paranoia.ps1'
            - 'Invoke-PortScan.ps1'
            - 'Invoke-PoshRatHttp.ps1'
            - 'Invoke-PoshRatHttps.ps1'
            - 'Invoke-PostExfil.ps1'
            - 'Invoke-PowerDump.ps1'
            - 'Invoke-PowerDPAPI.ps1'
            - 'Invoke-PowerShellIcmp.ps1'
            - 'Invoke-PowerShellTCP.ps1'
            - 'Invoke-PowerShellTcpOneLine.ps1'
            - 'Invoke-PowerShellTcpOneLineBind.ps1'
            - 'Invoke-PowerShellUdp.ps1'
            - 'Invoke-PowerShellUdpOneLine.ps1'
            - 'Invoke-PowerShellWMI.ps1'
            - 'Invoke-PowerThIEf.ps1'
            - 'Invoke-PPLDump.ps1'
            - 'Invoke-Prasadhak.ps1'
            - 'Invoke-PsExec.ps1'
            - 'Invoke-PsGcat.ps1'
            - 'Invoke-PsGcatAgent.ps1'
            - 'Invoke-PSInject.ps1'
            - 'Invoke-PsUaCme.ps1'
            - 'Invoke-ReflectivePEInjection.ps1'
            - 'Invoke-ReverseDNSLookup.ps1'
            - 'Invoke-Rubeus.ps1'
            - 'Invoke-RunAs.ps1'
            - 'Invoke-SafetyKatz.ps1'
            - 'Invoke-SauronEye.ps1'
            - 'Invoke-SCShell.ps1'
            - 'Invoke-Seatbelt.ps1'
            - 'Invoke-ServiceAbuse.ps1'
            - 'Invoke-SessionGopher.ps1'
            - 'Invoke-ShellCode.ps1'
            - 'Invoke-SMBScanner.ps1'
            - 'Invoke-Snaffler.ps1'
            - 'Invoke-Spoolsample.ps1'
            - 'Invoke-SSHCommand.ps1'
            - 'Invoke-SSIDExfil.ps1'
            - 'Invoke-StandIn.ps1'
            - 'Invoke-StickyNotesExtract.ps1'
            - 'Invoke-Tater.ps1'
            - 'Invoke-Thunderfox.ps1'
            - 'Invoke-ThunderStruck.ps1'
            - 'Invoke-TokenManipulation.ps1'
            - 'Invoke-Tokenvator.ps1'
            - 'Invoke-TotalExec.ps1'
            - 'Invoke-UrbanBishop.ps1'
            - 'Invoke-UserHunter.ps1'
            - 'Invoke-VoiceTroll.ps1'
            - 'Invoke-Whisker.ps1'
            - 'Invoke-WinEnum.ps1'
            - 'Invoke-winPEAS.ps1'
            - 'Invoke-WireTap.ps1'
            - 'Invoke-WmiCommand.ps1'
            - 'Invoke-WScriptBypassUAC.ps1'
            - 'Invoke-Zerologon.ps1'
            - 'Keylogger.ps1'
            - 'MailRaider.ps1'
            - 'New-HoneyHash.ps1'
            - 'OfficeMemScraper.ps1'
            - 'Offline_Winpwn.ps1'
            - 'Out-CHM.ps1'
            - 'Out-DnsTxt.ps1'
            - 'Out-Excel.ps1'
            - 'Out-HTA.ps1'
            - 'Out-Java.ps1'
            - 'Out-JS.ps1'
            - 'Out-Minidump.ps1'
            - 'Out-RundllCommand.ps1'
            - 'Out-SCF.ps1'
            - 'Out-SCT.ps1'
            - 'Out-Shortcut.ps1'
            - 'Out-WebQuery.ps1'
            - 'Out-Word.ps1'
            - 'Parse_Keys.ps1'
            - 'Port-Scan.ps1'
            - 'PowerBreach.ps1'
            - 'powercat.ps1'
            - 'PowerRunAsSystem.psm1'
            - 'PowerSharpPack.ps1'
            - 'PowerUp.ps1'
            - 'PowerUpSQL.ps1'
            - 'PowerView.ps1'
            - 'PSAsyncShell.ps1'
            - 'RemoteHashRetrieval.ps1'
            - 'Remove-Persistence.ps1'
            - 'Remove-PoshRat.ps1'
            - 'Remove-Update.ps1'
            - 'Run-EXEonRemote.ps1'
            - 'Schtasks-Backdoor.ps1'
            - 'Set-DCShadowPermissions.ps1'
            - 'Set-MacAttribute.ps1'
            - 'Set-RemotePSRemoting.ps1'
            - 'Set-RemoteWMI.ps1'
            - 'Set-Wallpaper.ps1'
            - 'Show-TargetScreen.ps1'
            - 'Speak.ps1'
            - 'Start-CaptureServer.ps1'
            - 'Start-WebcamRecorder.ps1'
            - 'StringToBase64.ps1'
            - 'TexttoExe.ps1'
            - 'Veeam-Get-Creds.ps1'
            - 'VolumeShadowCopyTools.ps1'
            - 'WinPwn.ps1'
            - 'WSUSpendu.ps1'
    selection_invoke_sharp:
        ContextInfo|contains|all:
            - 'Invoke-Sharp' # Covers all "Invoke-Sharp" variants
            - '.ps1'
    condition: 1 of selection_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/powershell/powershell_module/posh_pm_exploit_scripts/info.yml

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_generic

selection_generic:
    ContextInfo|contains:
        - 'Add-ConstrainedDelegationBackdoor.ps1'
        - 'Add-Exfiltration.ps1'
        - 'Add-Persistence.ps1'
        - 'Add-RegBackdoor.ps1'
        - 'Add-RemoteRegBackdoor.ps1'
        - 'Add-ScrnSaveBackdoor.ps1'
        - 'BadSuccessor.ps1'
        - 'Check-VM.ps1'
        - 'ConvertTo-ROT13.ps1'
        - 'Copy-VSS.ps1'
        - 'Create-MultipleSessions.ps1'
        - 'DNS_TXT_Pwnage.ps1'
        - 'dnscat2.ps1'
        - 'Do-Exfiltration.ps1'
        - 'DomainPasswordSpray.ps1'
        - 'Download_Execute.ps1'
        - 'Download-Execute-PS.ps1'
        - 'Enabled-DuplicateToken.ps1'
        - 'Enable-DuplicateToken.ps1'
        - 'Execute-Command-MSSQL.ps1'
        - 'Execute-DNSTXT-Code.ps1'
        - 'Execute-OnTime.ps1'
        - 'ExetoText.ps1'
        - 'Exploit-Jboss.ps1'
        - 'Find-AVSignature.ps1'
        - 'Find-Fruit.ps1'
        - 'Find-GPOLocation.ps1'
        - 'Find-TrustedDocuments.ps1'
        - 'FireBuster.ps1'
        - 'FireListener.ps1'
        - 'Get-ApplicationHost.ps1'
        - 'Get-ChromeDump.ps1'
        - 'Get-ClipboardContents.ps1'
        - 'Get-ComputerDetail.ps1'
        - 'Get-FoxDump.ps1'
        - 'Get-GPPAutologon.ps1'
        - 'Get-GPPPassword.ps1'
        - 'Get-IndexedItem.ps1'
        - 'Get-Keystrokes.ps1'
        - 'Get-LSASecret.ps1'
        - 'Get-MicrophoneAudio.ps1'
        - 'Get-PassHashes.ps1'
        - 'Get-PassHints.ps1'
        - 'Get-RegAlwaysInstallElevated.ps1'
        - 'Get-RegAutoLogon.ps1'
        - 'Get-RickAstley.ps1'
        - 'Get-Screenshot.ps1'
        - 'Get-SecurityPackages.ps1'
        - 'Get-ServiceFilePermission.ps1'
        - 'Get-ServicePermission.ps1'
        - 'Get-ServiceUnquoted.ps1'
        - 'Get-SiteListPassword.ps1'
        - 'Get-System.ps1'
        - 'Get-TimedScreenshot.ps1'
        - 'Get-UnattendedInstallFile.ps1'
        - 'Get-Unconstrained.ps1'
        - 'Get-USBKeystrokes.ps1'
        - 'Get-VaultCredential.ps1'
        - 'Get-VulnAutoRun.ps1'
        - 'Get-VulnSchTask.ps1'
        - 'Get-WebConfig.ps1'
        - 'Get-WebCredentials.ps1'
        - 'Get-WLAN-Keys.ps1'
        - 'Gupt-Backdoor.ps1'
        - 'HTTP-Backdoor.ps1'
        - 'HTTP-Login.ps1'
        - 'Install-ServiceBinary.ps1'
        - 'Install-SSP.ps1'
        - 'Invoke-ACLScanner.ps1'
        - 'Invoke-ADSBackdoor.ps1'
        - 'Invoke-AmsiBypass.ps1'
        - 'Invoke-ARPScan.ps1'
        - 'Invoke-BackdoorLNK.ps1'
        - 'Invoke-BadPotato.ps1'
        - 'Invoke-BetterSafetyKatz.ps1'
        - 'Invoke-BruteForce.ps1'
        - 'Invoke-BypassUAC.ps1'
        - 'Invoke-Carbuncle.ps1'
        - 'Invoke-Certify.ps1'
        - 'Invoke-ConPtyShell.ps1'
        - 'Invoke-CredentialInjection.ps1'
        - 'Invoke-CredentialsPhish.ps1'
        - 'Invoke-DAFT.ps1'
        - 'Invoke-DCSync.ps1'
        - 'Invoke-Decode.ps1'
        - 'Invoke-DinvokeKatz.ps1'
        - 'Invoke-DllInjection.ps1'
        - 'Invoke-DNSExfiltrator.ps1'
        - 'Invoke-DowngradeAccount.ps1'
        - 'Invoke-EgressCheck.ps1'
        - 'Invoke-Encode.ps1'
        - 'Invoke-EventViewer.ps1'
        - 'Invoke-Eyewitness.ps1'
        - 'Invoke-FakeLogonScreen.ps1'
        - 'Invoke-Farmer.ps1'
        - 'Invoke-Get-RBCD-Threaded.ps1'
        - 'Invoke-Gopher.ps1'
        - 'Invoke-Grouper2.ps1'
        - 'Invoke-Grouper3.ps1'
        - 'Invoke-HandleKatz.ps1'
        - 'Invoke-Interceptor.ps1'
        - 'Invoke-Internalmonologue.ps1'
        - 'Invoke-Inveigh.ps1'
        - 'Invoke-InveighRelay.ps1'
        - 'Invoke-JSRatRegsvr.ps1'
        - 'Invoke-JSRatRundll.ps1'
        - 'Invoke-KrbRelay.ps1'
        - 'Invoke-KrbRelayUp.ps1'
        - 'Invoke-LdapSignCheck.ps1'
        - 'Invoke-Lockless.ps1'
        - 'Invoke-MalSCCM.ps1'
        - 'Invoke-Mimikatz.ps1'
        - 'Invoke-MimikatzWDigestDowngrade.ps1'
        - 'Invoke-Mimikittenz.ps1'
        - 'Invoke-MITM6.ps1'
        - 'Invoke-NanoDump.ps1'
        - 'Invoke-NetRipper.ps1'
        - 'Invoke-NetworkRelay.ps1'
        - 'Invoke-NinjaCopy.ps1'
        - 'Invoke-OxidResolver.ps1'
        - 'Invoke-P0wnedshell.ps1'
        - 'Invoke-P0wnedshellx86.ps1'
        - 'Invoke-Paranoia.ps1'
        - 'Invoke-PortScan.ps1'
        - 'Invoke-PoshRatHttp.ps1'
        - 'Invoke-PoshRatHttps.ps1'
        - 'Invoke-PostExfil.ps1'
        - 'Invoke-PowerDump.ps1'
        - 'Invoke-PowerDPAPI.ps1'
        - 'Invoke-PowerShellIcmp.ps1'
        - 'Invoke-PowerShellTCP.ps1'
        - 'Invoke-PowerShellTcpOneLine.ps1'
        - 'Invoke-PowerShellTcpOneLineBind.ps1'
        - 'Invoke-PowerShellUdp.ps1'
        - 'Invoke-PowerShellUdpOneLine.ps1'
        - 'Invoke-PowerShellWMI.ps1'
        - 'Invoke-PowerThIEf.ps1'
        - 'Invoke-PPLDump.ps1'
        - 'Invoke-Prasadhak.ps1'
        - 'Invoke-PsExec.ps1'
        - 'Invoke-PsGcat.ps1'
        - 'Invoke-PsGcatAgent.ps1'
        - 'Invoke-PSInject.ps1'
        - 'Invoke-PsUaCme.ps1'
        - 'Invoke-ReflectivePEInjection.ps1'
        - 'Invoke-ReverseDNSLookup.ps1'
        - 'Invoke-Rubeus.ps1'
        - 'Invoke-RunAs.ps1'
        - 'Invoke-SafetyKatz.ps1'
        - 'Invoke-SauronEye.ps1'
        - 'Invoke-SCShell.ps1'
        - 'Invoke-Seatbelt.ps1'
        - 'Invoke-ServiceAbuse.ps1'
        - 'Invoke-SessionGopher.ps1'
        - 'Invoke-ShellCode.ps1'
        - 'Invoke-SMBScanner.ps1'
        - 'Invoke-Snaffler.ps1'
        - 'Invoke-Spoolsample.ps1'
        - 'Invoke-SSHCommand.ps1'
        - 'Invoke-SSIDExfil.ps1'
        - 'Invoke-StandIn.ps1'
        - 'Invoke-StickyNotesExtract.ps1'
        - 'Invoke-Tater.ps1'
        - 'Invoke-Thunderfox.ps1'
        - 'Invoke-ThunderStruck.ps1'
        - 'Invoke-TokenManipulation.ps1'
        - 'Invoke-Tokenvator.ps1'
        - 'Invoke-TotalExec.ps1'
        - 'Invoke-UrbanBishop.ps1'
        - 'Invoke-UserHunter.ps1'
        - 'Invoke-VoiceTroll.ps1'
        - 'Invoke-Whisker.ps1'
        - 'Invoke-WinEnum.ps1'
        - 'Invoke-winPEAS.ps1'
        - 'Invoke-WireTap.ps1'
        - 'Invoke-WmiCommand.ps1'
        - 'Invoke-WScriptBypassUAC.ps1'
        - 'Invoke-Zerologon.ps1'
        - 'Keylogger.ps1'
        - 'MailRaider.ps1'
        - 'New-HoneyHash.ps1'
        - 'OfficeMemScraper.ps1'
        - 'Offline_Winpwn.ps1'
        - 'Out-CHM.ps1'
        - 'Out-DnsTxt.ps1'
        - 'Out-Excel.ps1'
        - 'Out-HTA.ps1'
        - 'Out-Java.ps1'
        - 'Out-JS.ps1'
        - 'Out-Minidump.ps1'
        - 'Out-RundllCommand.ps1'
        - 'Out-SCF.ps1'
        - 'Out-SCT.ps1'
        - 'Out-Shortcut.ps1'
        - 'Out-WebQuery.ps1'
        - 'Out-Word.ps1'
        - 'Parse_Keys.ps1'
        - 'Port-Scan.ps1'
        - 'PowerBreach.ps1'
        - 'powercat.ps1'
        - 'PowerRunAsSystem.psm1'
        - 'PowerSharpPack.ps1'
        - 'PowerUp.ps1'
        - 'PowerUpSQL.ps1'
        - 'PowerView.ps1'
        - 'PSAsyncShell.ps1'
        - 'RemoteHashRetrieval.ps1'
        - 'Remove-Persistence.ps1'
        - 'Remove-PoshRat.ps1'
        - 'Remove-Update.ps1'
        - 'Run-EXEonRemote.ps1'
        - 'Schtasks-Backdoor.ps1'
        - 'Set-DCShadowPermissions.ps1'
        - 'Set-MacAttribute.ps1'
        - 'Set-RemotePSRemoting.ps1'
        - 'Set-RemoteWMI.ps1'
        - 'Set-Wallpaper.ps1'
        - 'Show-TargetScreen.ps1'
        - 'Speak.ps1'
        - 'Start-CaptureServer.ps1'
        - 'Start-WebcamRecorder.ps1'
        - 'StringToBase64.ps1'
        - 'TexttoExe.ps1'
        - 'Veeam-Get-Creds.ps1'
        - 'VolumeShadowCopyTools.ps1'
        - 'WinPwn.ps1'
        - 'WSUSpendu.ps1'

Stage 2: selection_invoke_sharp

selection_invoke_sharp:
    ContextInfo|contains|all:
        - 'Invoke-Sharp'
        - '.ps1'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ContextInfomatch
  • .ps1
  • Add-ConstrainedDelegationBackdoor.ps1
  • Add-Exfiltration.ps1
  • Add-Persistence.ps1
  • Add-RegBackdoor.ps1
  • Add-RemoteRegBackdoor.ps1
  • Add-ScrnSaveBackdoor.ps1
  • BadSuccessor.ps1
  • Check-VM.ps1
  • ConvertTo-ROT13.ps1
  • Copy-VSS.ps1
  • Create-MultipleSessions.ps1
  • DNS_TXT_Pwnage.ps1
  • Do-Exfiltration.ps1
  • DomainPasswordSpray.ps1
  • Download-Execute-PS.ps1
  • Download_Execute.ps1
  • Enable-DuplicateToken.ps1
  • Enabled-DuplicateToken.ps1
  • Execute-Command-MSSQL.ps1
  • Execute-DNSTXT-Code.ps1
  • Execute-OnTime.ps1
  • ExetoText.ps1
  • Exploit-Jboss.ps1
  • Find-AVSignature.ps1
  • Find-Fruit.ps1
  • Find-GPOLocation.ps1
  • Find-TrustedDocuments.ps1
  • FireBuster.ps1
  • FireListener.ps1
  • Get-ApplicationHost.ps1
  • Get-ChromeDump.ps1
  • Get-ClipboardContents.ps1
  • Get-ComputerDetail.ps1
  • Get-FoxDump.ps1
  • Get-GPPAutologon.ps1
  • Get-GPPPassword.ps1
  • Get-IndexedItem.ps1
  • Get-Keystrokes.ps1
  • Get-LSASecret.ps1
  • +189 more values (see full rule source)
field:"ContextInfo" kind:match

MFA attack - bombarding a user with SMS for MFA

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

A threat actor can try to bombard a user with SMS messages for MFA in order to deplete the customer's SMS quota leading to Denial of Service.

Known False Positives

  • Legitimate users requesting multiple SMS messages in a short period of time, e.g. due to lost or delayed messages.

MITRE ATT&CK Coverage

Rule Body

title: MFA attack - bombarding a user with SMS for MFA
id: 74a1ddea-7172-11f0-ace0-723487b9527c
status: experimental
description: |
    A threat actor can try to bombard a user with SMS messages for MFA in order to deplete the customer's SMS quota leading to Denial of Service.
author: Okta
date: 2025-07-11
modified: 2025-08-04
logsource:
    product: auth0
detection:
    selection:
        data.type: gd_send_sms
        data.description: "Guardian - Second factor sms sent"
    condition: selection
explanation: >
    The query collects events issued when a sms is sent.
    The Splunk detection is based on the number of SMS sent to a single user in a given chunk of time (1h by default).
    If a number of SMS sent to a user exceeds a threshold, it is likely that the user is bombarded with SMS messages.
    The threshold should be adjusted based on the customer's environment and the expected number of SMS messages sent to a user.
    The query prints the affected users.
splunk: |
    index=auth0 data.tenant_name="{your-tenant-name}"
    data.type = gd_send_sms data.description="Guardian - Second factor sms sent"
    | fields data.user_id
    ```The period of observations - adjust```
    | bin _time span=1h
    | stats count as sms_per_user by data.user_id
    | where sms_per_user > {threshold_for_max_sms}
comments:
    - The Splunk query above shall be tuned to reflect a valid tenant_name, threshold,
      e.g. 10, and the span of the considered time period, e.g. set to 1 hour by default.
tenant_logs: |
    type: "gd_send_sms" AND description: "Guardian - Second factor sms sent"
prevention:
    - Limit the number of SMS messages sent to a user in a given period of time.
    - Consider using alternative MFA methods, such as push notifications or authenticator apps, to reduce the reliance on SMS for MFA.
    - Deploy a send-phone-message action implementing a throttling logic to prevent excessive sms notifications, e.g. exceeding 10 SMS sent per hour.
falsepositives:
    - Legitimate users requesting multiple SMS messages in a short period of time, e.g. due to lost or delayed messages.
level: medium
tags:
    - attack.impact
    - attack.t1499.002

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    data.type: gd_send_sms
    data.description: "Guardian - Second factor sms sent"

Indicators

These rows show field, operator, and value matches.

Microsoft Excel Add-In Loaded From Uncommon Location

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

Detects Microsoft Excel loading an Add-In (.xll) file from an uncommon location

Known False Positives

  • Some tuning might be required to allow or remove certain locations used by the rule if you consider them as safe locations

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Microsoft Excel Add-In Loaded From Uncommon Location
id: af4c4609-5755-42fe-8075-4effb49f5d44
related:
    - id: c5f4b5cb-4c25-4249-ba91-aa03626e3185
      type: derived
status: test
description: Detects Microsoft Excel loading an Add-In (.xll) file from an uncommon location
references:
    - https://www.mandiant.com/resources/blog/lnk-between-browsers
    - https://wazuh.com/blog/detecting-xll-files-used-for-dropping-fin7-jssloader-with-wazuh/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-12
tags:
    - attack.execution
    - attack.t1204.002
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith: '\excel.exe'
        ImageLoaded|contains:
            # Note: Add or remove locations from this list based on your internal policy
            - '\Desktop\'
            - '\Downloads\'
            - '\Perflogs\'
            - '\Temp\'
            - '\Users\Public\'
            - '\Windows\Tasks\'
        ImageLoaded|endswith: '.xll'
    condition: selection
falsepositives:
    - Some tuning might be required to allow or remove certain locations used by the rule if you consider them as safe locations
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\excel.exe'
    ImageLoaded|contains:
        - '\Desktop\'
        - '\Downloads\'
        - '\Perflogs\'
        - '\Temp\'
        - '\Users\Public\'
        - '\Windows\Tasks\'
    ImageLoaded|endswith: '.xll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \excel.exe corpus 16 (sigma 16)
field:"Image" kind:ends_with value:"\excel.exe"
ImageLoadedends_with
  • .xll corpus 2 (sigma 2)
field:"ImageLoaded" kind:ends_with value:".xll"
ImageLoadedmatch
  • \Desktop\
  • \Downloads\
  • \Perflogs\ corpus 2 (sigma 2)
  • \Temp\ corpus 3 (sigma 2, splunk 1)
  • \Users\Public\
  • \Windows\Tasks\
field:"ImageLoaded" kind:match

NetNTLM Downgrade Attack

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

Detects NetNTLM downgrade attack

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: NetNTLM Downgrade Attack
id: d3abac66-f11c-4ed0-8acb-50cc29c97eed
related:
    - id: d67572a0-e2ec-45d6-b8db-c100d14b8ef2
      type: derived
status: test
description: Detects NetNTLM downgrade attack
references:
    - https://www.optiv.com/blog/post-exploitation-using-netntlm-downgrade-attacks
author: Florian Roth (Nextron Systems), wagga
date: 2018-03-20
modified: 2022-10-09
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1685
    - attack.t1112
logsource:
    product: windows
    service: security
    definition: 'Requirements: Audit Policy : Object Access > Audit Registry (Success)'
detection:
    selection:
        EventID: 4657
        ObjectName|contains|all:
            - '\REGISTRY\MACHINE\SYSTEM'
            - 'ControlSet'
            - '\Control\Lsa'
        ObjectValueName:
            - 'LmCompatibilityLevel'
            - 'NtlmMinClientSec'
            - 'RestrictSendingNTLMTraffic'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 4657
    ObjectName|contains|all:
        - '\REGISTRY\MACHINE\SYSTEM'
        - 'ControlSet'
        - '\Control\Lsa'
    ObjectValueName:
        - 'LmCompatibilityLevel'
        - 'NtlmMinClientSec'
        - 'RestrictSendingNTLMTraffic'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ObjectNamematch
  • ControlSet
  • \Control\Lsa
  • \REGISTRY\MACHINE\SYSTEM corpus 2 (sigma 2)
field:"ObjectName" kind:match
ObjectValueNameeq
  • LmCompatibilityLevel
  • NtlmMinClientSec
  • RestrictSendingNTLMTraffic
field:"ObjectValueName" kind:eq

NTFS symbolic link creation

#

OpenCanary - SIP Request

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

Detects instances where an SIP service on an OpenCanary node has had a SIP request.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Collection

Rule Body

title: OpenCanary - SIP Request
id: e30de276-68ec-435c-ab99-ef3befec6c61
status: test
description: Detects instances where an SIP service on an OpenCanary node has had a SIP request.
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.collection
    - attack.t1123
logsource:
    category: application
    product: opencanary
detection:
    selection:
        logtype: 15001
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    logtype: 15001

Indicators

These rows show field, operator, and value matches.

Potential Binary Proxy Execution Via Cdb.EXE

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

Detects usage of "cdb.exe" to launch arbitrary processes or commands from a debugger script file

Known False Positives

  • Legitimate use of debugging tools

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Potential Binary Proxy Execution Via Cdb.EXE
id: b5c7395f-e501-4a08-94d4-57fe7a9da9d2
status: test
description: Detects usage of "cdb.exe" to launch arbitrary processes or commands from a debugger script file
references:
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Cdb/
    - https://web.archive.org/web/20170715043507/http://www.exploit-monday.com/2016/08/windbg-cdb-shellcode-runner.html
    - https://twitter.com/nas_bench/status/1534957360032120833
author: Beyu Denis, oscd.community, Nasreddine Bencherchali (Nextron Systems)
date: 2019-10-26
modified: 2024-04-22
tags:
    - attack.execution
    - attack.stealth
    - attack.t1106
    - attack.t1218
    - attack.t1127
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\cdb.exe'
        - OriginalFileName: 'CDB.Exe'
    selection_cli:
        CommandLine|contains:
            - ' -c ' # Using a debugger script
            - ' -cf '
    condition: all of selection*
falsepositives:
    - Legitimate use of debugging tools
level: medium

Stages and Predicates

Stage 0: condition

all of selection*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\cdb.exe'
    - OriginalFileName: 'CDB.Exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - ' -c '
        - ' -cf '

Indicators

These rows show field, operator, and value matches.

Potential Compromised 3CXDesktopApp Beaconing Activity - Proxy

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

Detects potential beaconing activity to domains related to 3CX 3CXDesktopApp compromise

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Rule Body

title: Potential Compromised 3CXDesktopApp Beaconing Activity - Proxy
id: 3c4b3bbf-36b4-470c-b6cf-f07e8b1c7e26
related:
    - id: 76bc1601-9546-4b75-9419-06e0e8d10651 # Proxy GH
      type: similar
    - id: bd03a0dc-5d93-49eb-b2e8-2dfd268600f8 # DNS C2
      type: similar
    - id: 51eecf75-d069-43c7-9ea2-63f75499edd4 # net_connection C2
      type: similar
    - id: 93bbde78-dc86-4e73-9ffc-ff8a384ca89c # ProcCreation Exec
      type: similar
    - id: 63f3605b-979f-48c2-b7cc-7f90523fed88 # ProcCreation ChildProc
      type: similar
    - id: e7581747-1e44-4d4b-85a6-0db0b4a00f2a # ProcCreation Update
      type: similar
    - id: d0b65ad3-e945-435e-a7a9-438e62dd48e9 # ImageLoad
      type: similar
status: test
description: Detects potential beaconing activity to domains related to 3CX 3CXDesktopApp compromise
references:
    - https://www.reddit.com/r/crowdstrike/comments/125r3uu/20230329_situational_awareness_crowdstrike/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-03-29
modified: 2023-05-18
tags:
    - attack.command-and-control
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    selection:
        cs-host|contains:
            - 'akamaicontainer.com'
            - 'akamaitechcloudservices.com'
            - 'azuredeploystore.com'
            - 'azureonlinecloud.com'
            - 'azureonlinestorage.com'
            - 'dunamistrd.com'
            - 'glcloudservice.com'
            - 'journalide.org'
            - 'msedgepackageinfo.com'
            - 'msstorageazure.com'
            - 'msstorageboxes.com'
            - 'officeaddons.com'
            - 'officestoragebox.com'
            - 'pbxcloudeservices.com'
            - 'pbxphonenetwork.com'
            - 'pbxsources.com'
            - 'qwepoi123098.com'
            - 'sbmsa.wiki'
            - 'sourceslabs.com'
            - 'visualstudiofactory.com'
            - 'zacharryblogs.com'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-host|contains:
        - 'akamaicontainer.com'
        - 'akamaitechcloudservices.com'
        - 'azuredeploystore.com'
        - 'azureonlinecloud.com'
        - 'azureonlinestorage.com'
        - 'dunamistrd.com'
        - 'glcloudservice.com'
        - 'journalide.org'
        - 'msedgepackageinfo.com'
        - 'msstorageazure.com'
        - 'msstorageboxes.com'
        - 'officeaddons.com'
        - 'officestoragebox.com'
        - 'pbxcloudeservices.com'
        - 'pbxphonenetwork.com'
        - 'pbxsources.com'
        - 'qwepoi123098.com'
        - 'sbmsa.wiki'
        - 'sourceslabs.com'
        - 'visualstudiofactory.com'
        - 'zacharryblogs.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-hostmatch
  • akamaicontainer.com
  • akamaitechcloudservices.com
  • azuredeploystore.com
  • azureonlinecloud.com
  • azureonlinestorage.com
  • dunamistrd.com
  • glcloudservice.com
  • journalide.org
  • msedgepackageinfo.com
  • msstorageazure.com
  • msstorageboxes.com
  • officeaddons.com
  • officestoragebox.com
  • pbxcloudeservices.com
  • pbxphonenetwork.com
  • pbxsources.com
  • qwepoi123098.com
  • sbmsa.wiki
  • sourceslabs.com
  • visualstudiofactory.com
  • zacharryblogs.com
field:"cs-host" kind:match

Potential Data Stealing Via Chromium Headless Debugging

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

Detects chromium based browsers starting in headless and debugging mode and pointing to a user profile. This could be a sign of data stealing or remote control

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Data Stealing Via Chromium Headless Debugging
id: 3e8207c5-fcd2-4ea6-9418-15d45b4890e4
related:
    - id: b3d34dc5-2efd-4ae3-845f-8ec14921f449
      type: derived
status: test
description: Detects chromium based browsers starting in headless and debugging mode and pointing to a user profile. This could be a sign of data stealing or remote control
references:
    - https://github.com/defaultnamehere/cookie_crimes/
    - https://mango.pdf.zone/stealing-chrome-cookies-without-a-password
    - https://embracethered.com/blog/posts/2020/cookie-crimes-on-mirosoft-edge/
    - https://embracethered.com/blog/posts/2020/chrome-spy-remote-control/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-12-23
tags:
    - attack.credential-access
    - attack.collection
    - attack.stealth
    - attack.t1185
    - attack.t1564.003
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|all:
            - '--remote-debugging-' # Covers: --remote-debugging-address, --remote-debugging-port, --remote-debugging-socket-name, --remote-debugging-pipe....etc
            - '--user-data-dir'
            - '--headless'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - '--remote-debugging-'
        - '--user-data-dir'
        - '--headless'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --headless corpus 8 (sigma 6, splunk 2)
  • --remote-debugging-
  • --user-data-dir corpus 2 (sigma 1, splunk 1)
field:"CommandLine" kind:match

Potential Exploitation of RCE Vulnerability CVE-2025-33053 - Image Load

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

Detects potential exploitation of remote code execution vulnerability CVE-2025-33053 by monitoring suspicious image loads from WebDAV paths. The exploit involves malicious executables from attacker-controlled WebDAV servers loading the Windows system DLLs like gdi32.dll, netapi32.dll, etc.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential Exploitation of RCE Vulnerability CVE-2025-33053 - Image Load
id: 04fc4b22-91a6-495a-879d-0144fec5ec03
related:
    - id: abe06362-a5b9-4371-8724-ebd00cd48a04
      type: similar
    - id: 9a2d8b3e-f5a1-4c68-9e21-7d9e1cf8a123
      type: similar
status: experimental
description: |
    Detects potential exploitation of remote code execution vulnerability CVE-2025-33053
    by monitoring suspicious image loads from WebDAV paths. The exploit involves malicious executables from
    attacker-controlled WebDAV servers loading the Windows system DLLs like gdi32.dll, netapi32.dll, etc.
references:
    - https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-33053
    - https://research.checkpoint.com/2025/stealth-falcon-zero-day/
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-06-13
tags:
    - attack.command-and-control
    - attack.execution
    - attack.stealth
    - attack.t1218
    - attack.lateral-movement
    - attack.t1105
    - detection.emerging-threats
    - cve.2025-33053
logsource:
    category: image_load
    product: windows
detection:
    selection_img_path:
        Image|startswith: '\\\\'
        Image|contains: '\DavWWWRoot\'
    selection_img_bin:
        Image|endswith:
            - '\route.exe'
            - '\netsh.exe'
            - '\makecab.exe'
            - '\dxdiag.exe'
            - '\ipconfig.exe'
            - '\explorer.exe'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img_path

selection_img_path:
    Image|startswith: '\\\\'
    Image|contains: '\DavWWWRoot\'

Stage 2: selection_img_bin

selection_img_bin:
    Image|endswith:
        - '\route.exe'
        - '\netsh.exe'
        - '\makecab.exe'
        - '\dxdiag.exe'
        - '\ipconfig.exe'
        - '\explorer.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \dxdiag.exe corpus 2 (sigma 2)
  • \explorer.exe corpus 13 (sigma 13)
  • \ipconfig.exe corpus 5 (sigma 5)
  • \makecab.exe corpus 4 (sigma 4)
  • \netsh.exe corpus 28 (sigma 28)
  • \route.exe corpus 3 (sigma 3)
field:"Image" kind:ends_with
Imagematch
  • \DavWWWRoot\ corpus 3 (sigma 3)
field:"Image" kind:match value:"\DavWWWRoot\"
Imagestarts_with
  • \\\\ corpus 4 (sigma 4)
field:"Image" kind:starts_with value:"\\\\"

Potential MSTSC Shadowing Activity

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

Detects RDP session hijacking by using MSTSC shadowing

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential MSTSC Shadowing Activity
id: 6ba5a05f-b095-4f0a-8654-b825f4f16334
status: test
description: Detects RDP session hijacking by using MSTSC shadowing
references:
    - https://twitter.com/kmkz_security/status/1220694202301976576
    - https://github.com/kmkz/Pentesting/blob/47592e5e160d3b86c2024f09ef04ceb87d204995/Post-Exploitation-Cheat-Sheet
author: Florian Roth (Nextron Systems)
date: 2020-01-24
modified: 2023-02-05
tags:
    - attack.lateral-movement
    - attack.t1563.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|all:
            - 'noconsentprompt'
            - 'shadow:'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - 'noconsentprompt'
        - 'shadow:'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • noconsentprompt
  • shadow:
field:"CommandLine" kind:match

Potential Operation Triangulation C2 Beaconing Activity - DNS

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

Detects potential beaconing activity to domains used in 0day attacks on iOS devices and revealed by Kaspersky and the FSB

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Rule Body

title: Potential Operation Triangulation C2 Beaconing Activity - DNS
id: 7fc30d63-728d-48d9-ad6f-14d14f4accf7
related:
    - id: aa03c712-75c6-438b-8d42-de88f2427e09 # Proxy C2
      type: similar
status: test
description: Detects potential beaconing activity to domains used in 0day attacks on iOS devices and revealed by Kaspersky and the FSB
references:
    - https://securelist.com/operation-triangulation/109842/
    - https://www-fsb-ru.translate.goog/fsb/press/message/single.htm!id=10439739@fsbMessage.html?_x_tr_sch=http&_x_tr_sl=ru&_x_tr_tl=en&_x_tr_hl=de&_x_tr_pto=wapp
author: Florian Roth (Nextron Systems)
date: 2023-06-01
tags:
    - attack.command-and-control
    - attack.g0020
    - detection.emerging-threats
logsource:
    category: dns
detection:
    selection:
        query:
            - 'addatamarket.net'
            - 'ans7tv.net'
            - 'anstv.net'
            - 'backuprabbit.com'
            - 'businessvideonews.com'
            - 'cloudsponcer.com'
            - 'datamarketplace.net'
            - 'growthtransport.com'
            - 'mobilegamerstats.com'
            - 'snoweeanalytics.com'
            - 'tagclick-cdn.com'
            - 'topographyupdates.com'
            - 'unlimitedteacup.com'
            - 'virtuallaughing.com'
            - 'web-trackers.com'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    query:
        - 'addatamarket.net'
        - 'ans7tv.net'
        - 'anstv.net'
        - 'backuprabbit.com'
        - 'businessvideonews.com'
        - 'cloudsponcer.com'
        - 'datamarketplace.net'
        - 'growthtransport.com'
        - 'mobilegamerstats.com'
        - 'snoweeanalytics.com'
        - 'tagclick-cdn.com'
        - 'topographyupdates.com'
        - 'unlimitedteacup.com'
        - 'virtuallaughing.com'
        - 'web-trackers.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
queryeq
  • addatamarket.net
  • ans7tv.net
  • anstv.net
  • backuprabbit.com
  • businessvideonews.com
  • cloudsponcer.com
  • datamarketplace.net
  • growthtransport.com
  • mobilegamerstats.com
  • snoweeanalytics.com
  • tagclick-cdn.com
  • topographyupdates.com
  • unlimitedteacup.com
  • virtuallaughing.com
  • web-trackers.com
field:"query" kind:eq

Potential Privilege Escalation To LOCAL SYSTEM

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

Detects unknown program using commandline flags usually used by tools such as PsExec and PAExec to start programs with SYSTEM Privileges

Known False Positives

  • Weird admins that rename their tools
  • Software companies that bundle PsExec/PAExec with their software and rename it, so that it is less embarrassing

MITRE ATT&CK Coverage

TacticTechniques
Resource Development

Telemetry Coverage

Rule Body

title: Potential Privilege Escalation To LOCAL SYSTEM
id: 207b0396-3689-42d9-8399-4222658efc99
related:
    - id: 8834e2f7-6b4b-4f09-8906-d2276470ee23 # PsExec specific rule
      type: similar
status: test
description: Detects unknown program using commandline flags usually used by tools such as PsExec and PAExec to start programs with SYSTEM Privileges
references:
    - https://learn.microsoft.com/en-us/sysinternals/downloads/psexec
    - https://www.poweradmin.com/paexec/
    - https://www.fireeye.com/blog/threat-research/2020/10/kegtap-and-singlemalt-with-a-ransomware-chaser.html
author: Florian Roth (Nextron Systems), Nasreddine Bencherchali (Nextron Systems)
date: 2021-05-22
modified: 2024-03-05
tags:
    - attack.resource-development
    - attack.t1587.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        # Escalation to LOCAL_SYSTEM
        CommandLine|contains|windash:
            # Note that you don't need to add the ".exe" part when using psexec/paexec
            # The "-" can also be replaced with "/"
            # The order of args isn't important
            # "cmd" can be replaced by "powershell", "pwsh" or any other console like software
            - ' -s cmd'
            - ' -s -i cmd'
            - ' -i -s cmd'
            # Pwsh (For PowerShell 7)
            - ' -s pwsh'
            - ' -s -i pwsh'
            - ' -i -s pwsh'
            # PowerShell (For PowerShell 5)
            - ' -s powershell'
            - ' -s -i powershell'
            - ' -i -s powershell'
    filter_main_exclude_coverage:
        # This filter exclude strings covered by 8834e2f7-6b4b-4f09-8906-d2276470ee23
        CommandLine|contains:
            - 'paexec'
            - 'PsExec'
            - 'accepteula'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Weird admins that rename their tools
    - Software companies that bundle PsExec/PAExec with their software and rename it, so that it is less embarrassing
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    CommandLine|contains|windash:
        - ' -s cmd'
        - ' -s -i cmd'
        - ' -i -s cmd'
        - ' -s pwsh'
        - ' -s -i pwsh'
        - ' -i -s pwsh'
        - ' -s powershell'
        - ' -s -i powershell'
        - ' -i -s powershell'

Stage 2: not filter_main_exclude_coverage

filter_main_exclude_coverage:
    CommandLine|contains:
        - 'paexec'
        - 'PsExec'
        - 'accepteula'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -i -s cmd corpus 2 (sigma 2)
  • -i -s powershell corpus 2 (sigma 2)
  • -i -s pwsh corpus 2 (sigma 2)
  • -i /s cmd corpus 2 (sigma 2)
  • -i /s powershell corpus 2 (sigma 2)
  • -i /s pwsh corpus 2 (sigma 2)
  • -i –s cmd corpus 2 (sigma 2)
  • -i –s powershell corpus 2 (sigma 2)
  • -i –s pwsh corpus 2 (sigma 2)
  • -i —s cmd corpus 2 (sigma 2)
  • -i —s powershell corpus 2 (sigma 2)
  • -i —s pwsh corpus 2 (sigma 2)
  • -i ―s cmd corpus 2 (sigma 2)
  • -i ―s powershell corpus 2 (sigma 2)
  • -i ―s pwsh corpus 2 (sigma 2)
  • -s -i cmd corpus 2 (sigma 2)
  • -s -i powershell corpus 2 (sigma 2)
  • -s -i pwsh corpus 2 (sigma 2)
  • -s /i cmd corpus 2 (sigma 2)
  • -s /i powershell corpus 2 (sigma 2)
  • -s /i pwsh corpus 2 (sigma 2)
  • -s cmd corpus 2 (sigma 2)
  • -s powershell corpus 2 (sigma 2)
  • -s pwsh corpus 2 (sigma 2)
  • -s –i cmd corpus 2 (sigma 2)
  • -s –i powershell corpus 2 (sigma 2)
  • -s –i pwsh corpus 2 (sigma 2)
  • -s —i cmd corpus 2 (sigma 2)
  • -s —i powershell corpus 2 (sigma 2)
  • -s —i pwsh corpus 2 (sigma 2)
  • -s ―i cmd corpus 2 (sigma 2)
  • -s ―i powershell corpus 2 (sigma 2)
  • -s ―i pwsh corpus 2 (sigma 2)
  • /i -s cmd corpus 2 (sigma 2)
  • /i -s powershell corpus 2 (sigma 2)
  • /i -s pwsh corpus 2 (sigma 2)
  • /i /s cmd corpus 2 (sigma 2)
  • /i /s powershell corpus 2 (sigma 2)
  • /i /s pwsh corpus 2 (sigma 2)
  • /i –s cmd corpus 2 (sigma 2)
  • +125 more values (see full rule source)
field:"CommandLine" kind:match

Exclusions

The rule actively suppresses these predicates.

Potential Proxy Execution Via Explorer.EXE From Shell Process

#
Status
test
Severity
low
Author
Furkan CALISKAN, @caliskanfurkan_, @oscd_initiative
Source
github.com/SigmaHQ/sigma

Detects the creation of a child "explorer.exe" process from a shell like process such as "cmd.exe" or "powershell.exe". Attackers can use "explorer.exe" for evading defense mechanisms by proxying the execution through the latter. While this is often a legitimate action, this rule can be use to hunt for anomalies. Muddy Waters threat actor was seeing using this technique.

Known False Positives

  • Legitimate explorer.exe run from a shell host like "cmd.exe" or "powershell.exe"

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Proxy Execution Via Explorer.EXE From Shell Process
id: 9eb271b9-24ae-4cd4-9465-19cfc1047f3e
status: test
description: |
    Detects the creation of a child "explorer.exe" process from a shell like process such as "cmd.exe" or "powershell.exe".
    Attackers can use "explorer.exe" for evading defense mechanisms by proxying the execution through the latter.
    While this is often a legitimate action, this rule can be use to hunt for anomalies.
    Muddy Waters threat actor was seeing using this technique.
references:
    - https://twitter.com/CyberRaiju/status/1273597319322058752
    - https://app.any.run/tasks/9a8fd563-4c54-4d0a-9ad8-1fe08339cbc3/
author: Furkan CALISKAN, @caliskanfurkan_, @oscd_initiative
date: 2020-10-05
modified: 2024-06-21
tags:
    - attack.stealth
    - attack.t1218
    - detection.threat-hunting
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith:
            - '\cmd.exe'
            - '\powershell.exe'
            - '\pwsh.exe'
        Image|endswith: '\explorer.exe'
        CommandLine|contains: 'explorer.exe'
    condition: selection
falsepositives:
    - Legitimate explorer.exe run from a shell host like "cmd.exe" or "powershell.exe"
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith:
        - '\cmd.exe'
        - '\powershell.exe'
        - '\pwsh.exe'
    Image|endswith: '\explorer.exe'
    CommandLine|contains: 'explorer.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • explorer.exe corpus 3 (sigma 2, splunk 1)
field:"CommandLine" kind:match value:"explorer.exe"
Imageends_with
  • \explorer.exe corpus 13 (sigma 13)
field:"Image" kind:ends_with value:"\explorer.exe"
ParentImageends_with
  • \cmd.exe corpus 20 (sigma 20)
  • \powershell.exe corpus 24 (sigma 24)
  • \pwsh.exe corpus 21 (sigma 21)
field:"ParentImage" kind:ends_with

Potential Raspberry Robin Registry Set Internet Settings ZoneMap

#
Status
test
Severity
low
Author
Swachchhanda Shrawan Poudel
Source
github.com/SigmaHQ/sigma

Detects registry modifications related to the proxy configuration of the system, potentially associated with the Raspberry Robin malware, as seen in campaigns running in Q1 2024. Raspberry Robin may alter proxy settings to circumvent security measures, ensuring unhindered connection with Command and Control servers for maintaining control over compromised systems if there are any proxy settings that are blocking connections.

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Defense Impairment

Telemetry Coverage

Rule Body

title: Potential Raspberry Robin Registry Set Internet Settings ZoneMap
id: 16a4c7b3-4681-49d0-8d58-3e9b796dcb43
status: test
description: |
    Detects registry modifications related to the proxy configuration of the system, potentially associated with the Raspberry Robin malware, as seen in campaigns running in Q1 2024.
    Raspberry Robin may alter proxy settings to circumvent security measures, ensuring unhindered connection with Command and Control servers for maintaining control over compromised systems if there are any proxy settings that are blocking connections.
references:
    - https://tria.ge/240225-jlylpafb24/behavioral1/analog?main_event=Registry&op=SetValueKeyInt
    - https://tria.ge/240307-1hlldsfe7t/behavioral2/analog?main_event=Registry&op=SetValueKeyInt
    - https://admx.help/?Category=Windows_10_2016&Policy=Microsoft.Policies.InternetExplorer::IZ_ProxyByPass
    - https://admx.help/?Category=Windows_10_2016&Policy=Microsoft.Policies.InternetExplorer::IZ_UNCAsIntranet
    - https://admx.help/?Category=Windows_10_2016&Policy=Microsoft.Policies.InternetExplorer::IZ_IncludeUnspecifiedLocalSites
    - https://admx.help/?Category=Windows_10_2016&Policy=Microsoft.Policies.InternetExplorer::SecurityPage_AutoDetect
    - https://bazaar.abuse.ch/browse/signature/RaspberryRobin/
author: Swachchhanda Shrawan Poudel
date: 2024-07-31
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1112
    - detection.emerging-threats
logsource:
    category: registry_set
    product: windows
    definition: 'Requirements: The registry key "\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\" and its sub keys must be monitored'
detection:
    selection_registry_image:
        - Image|contains:
              - '\AppData\Local\Temp\'
              - '\Downloads\'
              - '\Users\Public\'
              - '\Windows\Temp\'
        - Image|endswith: '\control.exe'
    selection_registry_object:
        TargetObject|contains: '\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\'
    selection_value_enable:
        TargetObject|endswith:
            - '\IntranetName'
            - '\ProxyByPass'
            - '\UNCAsIntranet'
        Details|contains: 'DWORD (0x00000001)'
    selection_value_disable:
        TargetObject|endswith: '\AutoDetect'
        Details|contains: 'DWORD (0x00000000)'
    condition: all of selection_registry_* and 1 of selection_value_*
falsepositives:
    - Unknown
# Note: can be upgraded to medium after an initial baseline
level: low

Stages and Predicates

Stage 0: condition

all of selection_registry_* and 1 of selection_value_*

Stage 1: selection_registry_image

selection_registry_image:
    - Image|contains:
          - '\AppData\Local\Temp\'
          - '\Downloads\'
          - '\Users\Public\'
          - '\Windows\Temp\'
    - Image|endswith: '\control.exe'

Stage 2: selection_registry_object

selection_registry_object:
    TargetObject|contains: '\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\'

Stage 3: selection_value_enable

selection_value_enable:
    TargetObject|endswith:
        - '\IntranetName'
        - '\ProxyByPass'
        - '\UNCAsIntranet'
    Details|contains: 'DWORD (0x00000001)'

Stage 4: selection_value_disable

selection_value_disable:
    TargetObject|endswith: '\AutoDetect'
    Details|contains: 'DWORD (0x00000000)'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsmatch
  • DWORD (0x00000000) corpus 2 (sigma 2)
  • DWORD (0x00000001)
field:"Details" kind:match
Imageends_with
  • \control.exe corpus 5 (sigma 5)
field:"Image" kind:ends_with value:"\control.exe"
Imagematch
  • \AppData\Local\Temp\ corpus 11 (sigma 10, splunk 1)
  • \Downloads\ corpus 9 (sigma 9)
  • \Users\Public\ corpus 9 (sigma 9)
  • \Windows\Temp\ corpus 8 (sigma 7, splunk 1)
field:"Image" kind:match
TargetObjectends_with
  • \AutoDetect
  • \IntranetName
  • \ProxyByPass
  • \UNCAsIntranet
field:"TargetObject" kind:ends_with
TargetObjectmatch
  • \SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\
field:"TargetObject" kind:match value:"\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\"

Potential Suspicious Execution From GUID Like Folder Names

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

Detects potential suspicious execution of a GUID like folder name located in a suspicious location such as %TEMP% as seen being used in IcedID attacks. Use this rule to hunt for potentially suspicious activity stemming from uncommon folders.

Known False Positives

  • Installers are sometimes known for creating temporary folders with GUID like names. Add appropriate filters accordingly

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Suspicious Execution From GUID Like Folder Names
id: 90b63c33-2b97-4631-a011-ceb0f47b77c3
status: test
description: |
    Detects potential suspicious execution of a GUID like folder name located in a suspicious location such as %TEMP% as seen being used in IcedID attacks.
    Use this rule to hunt for potentially suspicious activity stemming from uncommon folders.
references:
    - https://twitter.com/Kostastsale/status/1565257924204986369
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-01
modified: 2023-03-02
tags:
    - attack.stealth
    - attack.t1027
    - detection.threat-hunting
logsource:
    category: process_creation
    product: windows
detection:
    # Uncomment this section and remove the filter if you want the rule to be more specific to processes
    # selection_img:
    #     Image|endswith:
    #         - '\rundll32.exe'
    selection_folder:
        CommandLine|contains:
            # Add more suspicious or unexpected paths
            - '\AppData\Roaming\'
            - '\AppData\Local\Temp\' # This could generate some FP with some installers creating folders with GUID
    selection_guid:
        CommandLine|contains|all:
            - '\{'
            - '}\'
    filter_main_image_guid:
        Image|contains|all:
            - '\{'
            - '}\'
    filter_main_null:
        Image: null
    filter_main_driver_inst:  # DrvInst.exe "4" "0" "C:\Users\venom\AppData\Local\Temp\{a0753cc2-fcea-4d49-a787-2290b564b06f}\nvvhci.inf" "9" "43a2fa8e7" "00000000000001C0" "WinSta0\Default" "00000000000001C4" "208" "c:\program files\nvidia corporation\installer2\nvvhci.{eb7b4460-7ec9-42d6-b73f-d487d4550526}"
        Image: 'C:\Windows\System32\drvinst.exe'
    filter_main_msiexec:
        Image:
            - 'C:\Windows\System32\msiexec.exe'
            - 'C:\Windows\SysWOW64\msiexec.exe'
    condition: all of selection_* and not 1 of filter*
falsepositives:
    - Installers are sometimes known for creating temporary folders with GUID like names. Add appropriate filters accordingly
level: low

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter*

Stage 1: selection_folder

selection_folder:
    CommandLine|contains:
        - '\AppData\Roaming\'
        - '\AppData\Local\Temp\'

Stage 2: selection_guid

selection_guid:
    CommandLine|contains|all:
        - '\{'
        - '}\'

Stage 3: not filter*

filter_main_image_guid:
    Image|contains|all:
        - '\{'
        - '}\'
filter_main_null:
    Image: null
filter_main_driver_inst:
    Image: 'C:\Windows\System32\drvinst.exe'
filter_main_msiexec:
    Image:
        - 'C:\Windows\System32\msiexec.exe'
        - 'C:\Windows\SysWOW64\msiexec.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • \AppData\Local\Temp\ corpus 28 (sigma 26, elastic 2)
  • \AppData\Roaming\ corpus 17 (sigma 16, elastic 1)
  • \{
  • }\
field:"CommandLine" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imagematch\{excludes:Image field:"Image" value:"\{"
Imagematch}\excludes:Image field:"Image" value:"}\"
ImageeqC:\Windows\SysWOW64\msiexec.exeexcludes:Image field:"Image" value:"C:\Windows\SysWOW64\msiexec.exe"
ImageeqC:\Windows\System32\drvinst.exeexcludes:Image field:"Image" value:"C:\Windows\System32\drvinst.exe"
ImageeqC:\Windows\System32\msiexec.exeexcludes:Image field:"Image" value:"C:\Windows\System32\msiexec.exe"
Imageis_null(no value, null check)excludes:Image

PowerShell as a Service in Registry

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

Detects that a powershell code is written to the registry as a service.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: PowerShell as a Service in Registry
id: 4a5f5a5e-ac01-474b-9b4e-d61298c9df1d
status: test
description: Detects that a powershell code is written to the registry as a service.
references:
    - https://speakerdeck.com/heirhabarov/hunting-for-powershell-abuse
author: oscd.community, Natalia Shornikova
date: 2020-10-06
modified: 2023-08-17
tags:
    - attack.execution
    - attack.t1569.002
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|contains: '\Services\'
        TargetObject|endswith: '\ImagePath'
        Details|contains:
            - 'powershell'
            - 'pwsh'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|contains: '\Services\'
    TargetObject|endswith: '\ImagePath'
    Details|contains:
        - 'powershell'
        - 'pwsh'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsmatch
  • powershell corpus 10 (sigma 9, elastic 1)
  • pwsh corpus 5 (sigma 5)
field:"Details" kind:match
TargetObjectends_with
  • \ImagePath corpus 3 (sigma 3)
field:"TargetObject" kind:ends_with value:"\ImagePath"
TargetObjectmatch
  • \Services\ corpus 4 (sigma 4)
field:"TargetObject" kind:match value:"\Services\"

Roles Are Not Being Used

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

Identifies when a user has been assigned a privilege role and are not using that role.

Known False Positives

  • Investigate if potential generic account that cannot be removed.

MITRE ATT&CK Coverage

TacticTechniques
Initial Access
Persistence
Privilege Escalation
Stealth

Rule Body

title: Roles Are Not Being Used
id: 8c6ec464-4ae4-43ac-936a-291da66ed13d
status: test
description: Identifies when a user has been assigned a privilege role and are not using that role.
references:
    - https://learn.microsoft.com/en-us/entra/id-governance/privileged-identity-management/pim-how-to-configure-security-alerts#administrators-arent-using-their-privileged-roles
author: Mark Morowczynski '@markmorow', Gloria Lee, '@gleeiamglo'
date: 2023-09-14
tags:
    - attack.initial-access
    - attack.stealth
    - attack.t1078
    - attack.persistence
    - attack.privilege-escalation
logsource:
    product: azure
    service: pim
detection:
    selection:
        riskEventType: 'redundantAssignmentAlertIncident'
    condition: selection
falsepositives:
    - Investigate if potential generic account that cannot be removed.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    riskEventType: 'redundantAssignmentAlertIncident'

Indicators

These rows show field, operator, and value matches.

Sensitive SAM domain user & groups discovery (native)

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

Detects scenarios where an attacker attempts to enumerate sensitive domain group settings and membership.

Known False Positives

  • Administrator activity

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Sensitive SAM domain user & groups discovery (native)
description: Detects scenarios where an attacker attempts to enumerate sensitive domain group settings and membership.
correlation: correlate TargetLogonId from ID 4624 with SubjectLogonId from ID 4661 to identify the source of the enumeration.
requirements: extended rights auditing enabled (https://www.manageengine.com/products/active-directory-audit/active-directory-auditing-configuration-guide-configure-object-level-auditing-manually.html)
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0007-Discovery/T1069-Permission%20Groups%20Discovery
- https://bitvijays.github.io/LFF-IPS-P3-Exploitation.html
tags:
- attack.discovery
- attack.t1069.002
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4661
    ProcessName|endswith: '\lsass.exe'
    ObjectServer: 'Security Account Manager'
    ObjectName|startswith:
      - S-1-5-32- # refers to builtin domain local groups
      - S-1-5-21- # refers to domain users andgroups
    ObjectType:
      - SAM_USER
      - SAM_GROUP
    ObjectName|endswith:
      - '-500' # local administrator / "net user administrator /domain"
      - '-512' # Domain Admins       / "net group "Domain Admins" /domain"
      - '-513' # Domain users
  filter:
    SubjectUserName|endswith: '$'
  condition: selection and not filter
falsepositives:
- Administrator activity
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
  EventID: 4661
  ProcessName|endswith: '\lsass.exe'
  ObjectServer: 'Security Account Manager'
  ObjectName|startswith:
    - S-1-5-32-
    - S-1-5-21-
  ObjectType:
    - SAM_USER
    - SAM_GROUP
  ObjectName|endswith:
    - '-500'
    - '-512'
    - '-513'

Stage 2: not filter

filter:
  SubjectUserName|endswith: '$'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ObjectNameends_with
  • -500 corpus 3 (sigma 3)
  • -512 corpus 3 (sigma 3)
  • -513
field:"ObjectName" kind:ends_with
ObjectNamestarts_with
  • S-1-5-21- corpus 5 (sigma 5)
  • S-1-5-32- corpus 3 (sigma 3)
field:"ObjectName" kind:starts_with
ObjectServereq
  • Security Account Manager corpus 7 (sigma 7)
field:"ObjectServer" kind:eq value:"Security Account Manager"
ObjectTypeeq
  • SAM_GROUP corpus 4 (sigma 4)
  • SAM_USER corpus 5 (sigma 5)
field:"ObjectType" kind:eq
ProcessNameends_with
  • \lsass.exe corpus 7 (sigma 7)
field:"process_name" kind:ends_with value:"\lsass.exe"

Exclusions

The rule actively suppresses these predicates.

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

Sticky Key Like Backdoor Usage - Registry

#
Status
test
Severity
critical
Author
Florian Roth (Nextron Systems), @twjackomo, Jonhnathan Ribeiro, oscd.community
Source
github.com/SigmaHQ/sigma

Detects the usage and installation of a backdoor that uses an option to register a malicious debugger for built-in tools that are accessible in the login screen

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Sticky Key Like Backdoor Usage - Registry
id: baca5663-583c-45f9-b5dc-ea96a22ce542
status: test
description: Detects the usage and installation of a backdoor that uses an option to register a malicious debugger for built-in tools that are accessible in the login screen
references:
    - https://blogs.technet.microsoft.com/jonathantrull/2016/10/03/detecting-sticky-key-backdoors/
    - https://bazaar.abuse.ch/sample/6f3aa9362d72e806490a8abce245331030d1ab5ac77e400dd475748236a6cc81/
author: Florian Roth (Nextron Systems), @twjackomo, Jonhnathan Ribeiro, oscd.community
date: 2018-03-15
modified: 2022-11-26
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1546.008
    - car.2014-11-003
    - car.2014-11-008
logsource:
    category: registry_event
    product: windows
detection:
    selection_registry:
        TargetObject|endswith:
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\osk.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Magnify.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Narrator.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DisplaySwitch.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\atbroker.exe\Debugger'
            - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\HelpPane.exe\Debugger'
    condition: selection_registry
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection_registry

Stage 1: selection_registry

selection_registry:
    TargetObject|endswith:
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\osk.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Magnify.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Narrator.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DisplaySwitch.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\atbroker.exe\Debugger'
        - '\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\HelpPane.exe\Debugger'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DisplaySwitch.exe\Debugger corpus 2 (sigma 2)
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\HelpPane.exe\Debugger
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Magnify.exe\Debugger corpus 2 (sigma 2)
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Narrator.exe\Debugger corpus 2 (sigma 2)
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\atbroker.exe\Debugger
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\osk.exe\Debugger corpus 2 (sigma 2)
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe\Debugger corpus 2 (sigma 2)
  • \SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe\Debugger corpus 2 (sigma 2)
field:"TargetObject" kind:ends_with

SystemNightmare by GentilKiwi - New external device added (CVE-2021-1675 / CVE-2021-34527)

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

Detects scenarios where an attacker exploit the PrintNightmare vulnerability by abusing the Windows print spooler using the service exposed by Gentilkiwi

Known False Positives

  • pentest

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: SystemNightmare by GentilKiwi - New external device added (CVE-2021-1675 / CVE-2021-34527)
description: Detects scenarios where an attacker exploit the PrintNightmare vulnerability by abusing the Windows print spooler using the service exposed by Gentilkiwi
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0004-Privilege%20Escalation/T1574-DLL%20side-loading
- https://github.com/GossiTheDog/SystemNightmare
- https://github.com/outflanknl/PrintNightmare
- https://github.com/cube0x0/CVE-2021-1675
- https://www.theregister.com/2021/09/21/microsoft_printnightmare/
- https://www.exabeam.com/information-security/detecting-the-printnightmare-cve-2021-1675-34527-vulnerability-using-exabeam/
tags:
- attack.privilege_escalation
- attack.t1574.002
- attack.t1547.010
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection: # net use \\printnightmare.gentilkiwi.com\ipc$ /user:gentilguest password
  selection:
    EventID: 6416
    DeviceDescription|contains: # original: '\\printnightmare.gentilkiwi.com\Kiwi Legit Printer'
      - printnightmare
      - gentil
      - kiwi
  condition: selection
falsepositives:
- pentest
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 6416
  DeviceDescription|contains:
    - printnightmare
    - gentil
    - kiwi

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
DeviceDescriptionmatch
  • gentil
  • kiwi
  • printnightmare
field:"DeviceDescription" kind:match

Windows Hypervisor Enforced Code Integrity Disabled

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

Detects changes to the HypervisorEnforcedCodeIntegrity registry key and the "Enabled" value being set to 0 in order to disable the Hypervisor Enforced Code Integrity feature. This allows an attacker to load unsigned and untrusted code to be run in the kernel

Known False Positives

  • Legitimate system administration tasks that require disabling HVCI for troubleshooting purposes when certain drivers or applications are incompatible with it.

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Windows Hypervisor Enforced Code Integrity Disabled
id: 8b7273a4-ba5d-4d8a-b04f-11f2900d043a
related:
    - id: 6225c53a-a96e-4235-b28f-8d7997cd96eb
      type: similar
status: test
description: |
    Detects changes to the HypervisorEnforcedCodeIntegrity registry key and the "Enabled" value being set to 0 in order to disable the Hypervisor Enforced Code Integrity feature. This allows an attacker to load unsigned and untrusted code to be run in the kernel
references:
    - https://www.welivesecurity.com/2023/03/01/blacklotus-uefi-bootkit-myth-confirmed/
    - https://github.com/redcanaryco/atomic-red-team/blob/04e487c1828d76df3e834621f4f893ea756d5232/atomics/T1562.001/T1562.001.md#atomic-test-43---disable-hypervisor-enforced-code-integrity-hvci
author: Nasreddine Bencherchali (Nextron Systems), Anish Bogati
date: 2023-03-14
modified: 2024-07-05
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|endswith:
            - '\Control\DeviceGuard\HypervisorEnforcedCodeIntegrity'
            - '\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity\Enabled'
            - '\Microsoft\Windows\DeviceGuard\HypervisorEnforcedCodeIntegrity'
        Details: 'DWORD (0x00000000)'
    condition: selection
falsepositives:
    - Legitimate system administration tasks that require disabling HVCI for troubleshooting purposes when certain drivers or applications are incompatible with it.
level: high
regression_tests_path: regression_data/rules/windows/registry/registry_set/registry_set_deviceguard_hypervisorenforcedcodeintegrity_disabled/info.yml
simulation:
    - type: atomic-red-team
      name: Disable Hypervisor-Enforced Code Integrity (HVCI)
      technique: T1562.001
      atomic_guid: 70bd71e6-eba4-4e00-92f7-617911dbe020

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|endswith:
        - '\Control\DeviceGuard\HypervisorEnforcedCodeIntegrity'
        - '\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity\Enabled'
        - '\Microsoft\Windows\DeviceGuard\HypervisorEnforcedCodeIntegrity'
    Details: 'DWORD (0x00000000)'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailseq
  • DWORD (0x00000000) corpus 36 (sigma 36)
field:"Details" kind:eq value:"DWORD (0x00000000)"
TargetObjectends_with
  • \Control\DeviceGuard\HypervisorEnforcedCodeIntegrity
  • \Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity\Enabled
  • \Microsoft\Windows\DeviceGuard\HypervisorEnforcedCodeIntegrity
field:"TargetObject" kind:ends_with

Back to all Sigma rules