Detection rules › Sigma

Sigma rules: 2h

RuleSeverity
Active Directory Structure Export Via Csvde.EXEmedium
Azure Container Registry Created or Deletedlow
Bitbucket Unauthorized Full Data Export Triggeredcritical
DLL ServerLevelPluginDll command installationcritical
DLL ServerLevelPluginDll registration ("serverlevelplugindll" feature abuse)critical
DNS Events Related To Mining Poolslow
Fortinet APT group abuse on Windows (task)high
Google Cloud Kubernetes Admission Controllermedium
High risk event - risk of copying client credentialsmedium
Inline Python Execution - Spawn Shell Via OS System Libraryhigh
New Okta User Createdinformational
OpenEDR Spawning Command Shellmedium
Password Protected ZIP File Opened (Email Attachment)high
Potential Arbitrary Command Execution Using Msdt.EXEhigh
Potential DLL Sideloading Of Libcurl.DLL Via GUP.EXEmedium
Potential MuddyWater APT Activityhigh
Potential RipZip Attack on Startup Folderhigh
Potentially Suspicious Execution From Parent Process In Public Folderhigh
PowerShell Module File Created By Non-PowerShell Processmedium
Print spooler privilege escalation via printer added (CVE-2020-1048)high
Privileged Container Deployedlow
Procdump Executionmedium
Query Usage To Exfil Datamedium
Renamed AutoHotkey.EXE Executionmedium
ScreenConnect Temporary Installation Artefactmedium
Source Code Enumeration Detection by Keywordmedium
Suspicious Activity in Shell Commandshigh
Suspicious ClickFix/FileFix Execution Patternhigh
Suspicious File Download From IP Via Wget.EXEhigh
Suspicious Filename with Embedded Base64 Commandshigh
Suspicious Get Local Groups Information - PowerShelllow
Suspicious PowerShell Download and Execute Patternhigh
Sysmon Configuration Errorhigh
Ursnif Malware C2 URL Patterncritical
UtilityFunctions.ps1 Proxy Dllmedium
Virtual Machine Createdinformational
Windows Defender Configuration Changeshigh
WordPress Wp2shell REST Batch Endpoint Exploitationmedium

Active Directory Structure Export Via Csvde.EXE

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

Detects the execution of "csvde.exe" in order to export organizational Active Directory structure.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Active Directory Structure Export Via Csvde.EXE
id: e5d36acd-acb4-4c6f-a13f-9eb203d50099
status: test
description: Detects the execution of "csvde.exe" in order to export organizational Active Directory structure.
references:
    - https://www.cybereason.com/blog/research/operation-ghostshell-novel-rat-targets-global-aerospace-and-telecoms-firms
    - https://web.archive.org/web/20180725233601/https://www.pwc.co.uk/cyber-security/pdf/cloud-hopper-annex-b-final.pdf
    - https://businessinsights.bitdefender.com/deep-dive-into-a-backdoordiplomacy-attack-a-study-of-an-attackers-toolkit
    - https://redcanary.com/blog/msix-installers/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-03-14
tags:
    - attack.exfiltration
    - attack.discovery
    - attack.t1087.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\csvde.exe'
        - OriginalFileName: 'csvde.exe'
    selection_remote:
        CommandLine|contains: ' -f'
    filter_import:
        CommandLine|contains: ' -i'
    condition: all of selection_* and not 1 of filter_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_*

Stage 1: selection_img

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

Stage 2: selection_remote

selection_remote:
    CommandLine|contains: ' -f'

Stage 3: not filter_import

filter_import:
    CommandLine|contains: ' -i'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematch -iexcludes:CommandLine field:"CommandLine" value:" -i"

Azure Container Registry Created or Deleted

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

Detects when a Container Registry is created or deleted.

Known False Positives

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

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Azure Container Registry Created or Deleted
id: 93e0ef48-37c8-49ed-a02c-038aab23628e
status: test
description: Detects when a Container Registry is created or deleted.
references:
    - https://learn.microsoft.com/en-us/azure/role-based-access-control/resource-provider-operations#microsoftkubernetes
    - https://www.microsoft.com/security/blog/2021/03/23/secure-containerized-environments-with-updated-threat-matrix-for-kubernetes/
    - https://www.microsoft.com/security/blog/2020/04/02/attack-matrix-kubernetes/
    - https://medium.com/mitre-engenuity/att-ck-for-containers-now-available-4c2359654bf1
author: Austin Songer @austinsonger
date: 2021-08-07
modified: 2022-08-23
tags:
    - attack.impact
    - attack.t1485
    - attack.t1496
    - attack.t1489
logsource:
    product: azure
    service: activitylogs
detection:
    selection:
        operationName:
            - MICROSOFT.CONTAINERREGISTRY/REGISTRIES/WRITE
            - MICROSOFT.CONTAINERREGISTRY/REGISTRIES/DELETE
    condition: selection
falsepositives:
    - Container Registry being created or deleted may be performed by a system administrator. Verify whether the user identity, user agent, and/or hostname should be making changes in your environment.
    - Container Registry created or deleted from unfamiliar users should be investigated. If known behavior is causing false positives, it can be exempted from the rule.
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    operationName:
        - MICROSOFT.CONTAINERREGISTRY/REGISTRIES/WRITE
        - MICROSOFT.CONTAINERREGISTRY/REGISTRIES/DELETE

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
operationNameeq
  • MICROSOFT.CONTAINERREGISTRY/REGISTRIES/DELETE
  • MICROSOFT.CONTAINERREGISTRY/REGISTRIES/WRITE
field:"operationName" kind:eq

Bitbucket Unauthorized Full Data Export Triggered

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

Detects when full data export is attempted an unauthorized user.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Rule Body

title: Bitbucket Unauthorized Full Data Export Triggered
id: 34d81081-03c9-4a7f-91c9-5e46af625cde
status: test
description: Detects when full data export is attempted an unauthorized user.
references:
    - https://confluence.atlassian.com/bitbucketserver/audit-log-events-776640423.html
    - https://confluence.atlassian.com/bitbucketserver/secret-scanning-1157471613.html
author: Muhammad Faisal (@faisalusuf)
date: 2024-02-25
tags:
    - attack.collection
    - attack.resource-development
    - attack.t1213.003
    - attack.t1586
logsource:
    product: bitbucket
    service: audit
    definition: 'Requirements: "Advance" log level is required to receive these audit events.'
detection:
    selection:
        auditType.category: 'Data pipeline'
        auditType.action: 'Unauthorized full data export triggered'
    condition: selection
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    auditType.category: 'Data pipeline'
    auditType.action: 'Unauthorized full data export triggered'

Indicators

These rows show field, operator, and value matches.

DLL ServerLevelPluginDll command installation

#
Status
experimental
Severity
critical
Author
Florian Roth (shortly adapted my mdecrevoisier)
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where a DLL is loaded by the DNS server in order to escalate privileges or initiate a remote shell.

Known False Positives

  • None

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: DLL ServerLevelPluginDll command installation
description: Detects scenarios where a DLL is loaded by the DNS server in order to escalate privileges or initiate a remote shell.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1574-Hijack%20Execution%20Flow
- https://medium.com/@esnesenon/feature-not-bug-dnsadmin-to-dc-compromise-in-one-line-a0f779b8dc83
- https://medium.com/r3d-buck3t/escalating-privileges-with-dnsadmins-group-active-directory-6f7adbc7005b
- https://medium.com/techzap/dns-admin-privesc-in-active-directory-ad-windows-ecc7ed5a21a2
- https://phackt.com/dnsadmins-group-exploitation-write-permissions
- http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/from-dnsadmins-to-system-to-domain-compromise
- http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html
- https://lolbas-project.github.io/lolbas/Binaries/Dnscmd/
- https://blog.3or.de/hunting-dns-server-level-plugin-dll-injection.html
tags:
- attack.persistence
- attack.t1574.002 # Hijack Execution Flow: DLL Side-Loading 
author: Florian Roth (shortly adapted my mdecrevoisier)
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    NewProcessName|endswith: '\dnscmd.exe'
    CommandLine|contains|all: # full command 'dnscmd.exe /config /serverlevelplugindll "C:\mimilib.dll"'
      - /config
      - /serverlevelplugindll
  condition: selection
falsepositives:
- None
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  NewProcessName|endswith: '\dnscmd.exe'
  CommandLine|contains|all:
    - /config
    - /serverlevelplugindll

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /config corpus 3 (sigma 3)
  • /serverlevelplugindll corpus 2 (sigma 2)
field:"CommandLine" kind:match
NewProcessNameends_with
  • \dnscmd.exe corpus 3 (sigma 3)
field:"Image" kind:ends_with value:"\dnscmd.exe"

DLL ServerLevelPluginDll registration ("serverlevelplugindll" feature abuse)

#
Status
experimental
Severity
critical
Author
Florian Roth (shortly adapted my mdecrevoisier)
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where a DLL is loaded by the DNS server in order to escalate privileges or initiate a remote shell.

Known False Positives

  • None

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: DLL ServerLevelPluginDll registration ("serverlevelplugindll" feature abuse)
description: Detects scenarios where a DLL is loaded by the DNS server in order to escalate privileges or initiate a remote shell.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1574-Hijack%20Execution%20Flow
- https://medium.com/@esnesenon/feature-not-bug-dnsadmin-to-dc-compromise-in-one-line-a0f779b8dc83
- https://medium.com/r3d-buck3t/escalating-privileges-with-dnsadmins-group-active-directory-6f7adbc7005b
- https://medium.com/techzap/dns-admin-privesc-in-active-directory-ad-windows-ecc7ed5a21a2
- https://phackt.com/dnsadmins-group-exploitation-write-permissions
- http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/from-dnsadmins-to-system-to-domain-compromise
- http://www.labofapenetrationtester.com/2017/05/abusing-dnsadmins-privilege-for-escalation-in-active-directory.html
- https://lolbas-project.github.io/lolbas/Binaries/Dnscmd/
- https://blog.3or.de/hunting-dns-server-level-plugin-dll-injection.html
tags:
- attack.persistence
- attack.t1574.002 # Hijack Execution Flow: DLL Side-Loading 
author: Florian Roth (shortly adapted my mdecrevoisier)
status: experimental
logsource:
  product: windows
  service: dns-server
detection:
  selection:
    EventID: 
      - 770 # success load
      - 150 # failed load
  condition: selection
falsepositives:
- None
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID:
    - 770
    - 150

DNS Events Related To Mining Pools

#
Status
test
Severity
low
Author
Saw Winn Naung, Azure-Sentinel, @neu5ron
Source
github.com/SigmaHQ/sigma

Identifies clients that may be performing DNS lookups associated with common currency mining pools.

Known False Positives

  • A DNS lookup does not necessarily mean a successful attempt, verify a) if there was a response using the zeek answers field, if there was then verify the connections (conn.log) to those IPs. b) verify if HTTP, SSL, or TLS activity to the domain that was queried. http.log field is 'host' and ssl/tls is 'server_name'.

MITRE ATT&CK Coverage

Rule Body

title: DNS Events Related To Mining Pools
id: bf74135c-18e8-4a72-a926-0e4f47888c19
status: test
description: Identifies clients that may be performing DNS lookups associated with common currency mining pools.
references:
    - https://github.com/Azure/Azure-Sentinel/blob/fa0411f9424b6c47b4d5a20165e4f1b168c1f103/Detections/ASimDNS/imDNS_Miners.yaml
author: Saw Winn Naung, Azure-Sentinel, @neu5ron
date: 2021-08-19
modified: 2022-07-07
tags:
    - attack.execution
    - attack.t1569.002
    - attack.impact
    - attack.t1496
logsource:
    service: dns
    product: zeek
detection:
    selection:
        query|endswith:
            - 'monerohash.com'
            - 'do-dear.com'
            - 'xmrminerpro.com'
            - 'secumine.net'
            - 'xmrpool.com'
            - 'minexmr.org'
            - 'hashanywhere.com'
            - 'xmrget.com'
            - 'mininglottery.eu'
            - 'minergate.com'
            - 'moriaxmr.com'
            - 'multipooler.com'
            - 'moneropools.com'
            - 'xmrpool.eu'
            - 'coolmining.club'
            - 'supportxmr.com'
            - 'minexmr.com'
            - 'hashvault.pro'
            - 'xmrpool.net'
            - 'crypto-pool.fr'
            - 'xmr.pt'
            - 'miner.rocks'
            - 'walpool.com'
            - 'herominers.com'
            - 'gntl.co.uk'
            - 'semipool.com'
            - 'coinfoundry.org'
            - 'cryptoknight.cc'
            - 'fairhash.org'
            - 'baikalmine.com'
            - 'tubepool.xyz'
            - 'fairpool.xyz'
            - 'asiapool.io'
            - 'coinpoolit.webhop.me'
            - 'nanopool.org'
            - 'moneropool.com'
            - 'miner.center'
            - 'prohash.net'
            - 'poolto.be'
            - 'cryptoescrow.eu'
            - 'monerominers.net'
            - 'cryptonotepool.org'
            - 'extrmepool.org'
            - 'webcoin.me'
            - 'kippo.eu'
            - 'hashinvest.ws'
            - 'monero.farm'
            - 'linux-repository-updates.com'
            - '1gh.com'
            - 'dwarfpool.com'
            - 'hash-to-coins.com'
            - 'pool-proxy.com'
            - 'hashfor.cash'
            - 'fairpool.cloud'
            - 'litecoinpool.org'
            - 'mineshaft.ml'
            - 'abcxyz.stream'
            - 'moneropool.ru'
            - 'cryptonotepool.org.uk'
            - 'extremepool.org'
            - 'extremehash.com'
            - 'hashinvest.net'
            - 'unipool.pro'
            - 'crypto-pools.org'
            - 'monero.net'
            - 'backup-pool.com'
            - 'mooo.com' # Dynamic DNS, may want to exclude
            - 'freeyy.me'
            - 'cryptonight.net'
            - 'shscrypto.net'
    exclude_answers:
        answers:
            - '127.0.0.1'
            - '0.0.0.0'
    exclude_rejected:
        rejected: 'true'
    condition: selection and not 1 of exclude_*
falsepositives:
    - A DNS lookup does not necessarily  mean a successful attempt, verify a) if there was a response using the zeek answers field, if there was then verify the connections (conn.log) to those IPs. b) verify if HTTP, SSL, or TLS activity to the domain that was queried. http.log field is 'host' and ssl/tls is 'server_name'.
level: low

Stages and Predicates

Stage 0: condition

selection and not 1 of exclude_*

Stage 1: selection

selection:
    query|endswith:
        - 'monerohash.com'
        - 'do-dear.com'
        - 'xmrminerpro.com'
        - 'secumine.net'
        - 'xmrpool.com'
        - 'minexmr.org'
        - 'hashanywhere.com'
        - 'xmrget.com'
        - 'mininglottery.eu'
        - 'minergate.com'
        - 'moriaxmr.com'
        - 'multipooler.com'
        - 'moneropools.com'
        - 'xmrpool.eu'
        - 'coolmining.club'
        - 'supportxmr.com'
        - 'minexmr.com'
        - 'hashvault.pro'
        - 'xmrpool.net'
        - 'crypto-pool.fr'
        - 'xmr.pt'
        - 'miner.rocks'
        - 'walpool.com'
        - 'herominers.com'
        - 'gntl.co.uk'
        - 'semipool.com'
        - 'coinfoundry.org'
        - 'cryptoknight.cc'
        - 'fairhash.org'
        - 'baikalmine.com'
        - 'tubepool.xyz'
        - 'fairpool.xyz'
        - 'asiapool.io'
        - 'coinpoolit.webhop.me'
        - 'nanopool.org'
        - 'moneropool.com'
        - 'miner.center'
        - 'prohash.net'
        - 'poolto.be'
        - 'cryptoescrow.eu'
        - 'monerominers.net'
        - 'cryptonotepool.org'
        - 'extrmepool.org'
        - 'webcoin.me'
        - 'kippo.eu'
        - 'hashinvest.ws'
        - 'monero.farm'
        - 'linux-repository-updates.com'
        - '1gh.com'
        - 'dwarfpool.com'
        - 'hash-to-coins.com'
        - 'pool-proxy.com'
        - 'hashfor.cash'
        - 'fairpool.cloud'
        - 'litecoinpool.org'
        - 'mineshaft.ml'
        - 'abcxyz.stream'
        - 'moneropool.ru'
        - 'cryptonotepool.org.uk'
        - 'extremepool.org'
        - 'extremehash.com'
        - 'hashinvest.net'
        - 'unipool.pro'
        - 'crypto-pools.org'
        - 'monero.net'
        - 'backup-pool.com'
        - 'mooo.com'
        - 'freeyy.me'
        - 'cryptonight.net'
        - 'shscrypto.net'

Stage 2: not exclude_*

exclude_answers:
    answers:
        - '127.0.0.1'
        - '0.0.0.0'
exclude_rejected:
    rejected: 'true'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
queryends_with
  • 1gh.com
  • abcxyz.stream
  • asiapool.io
  • backup-pool.com
  • baikalmine.com
  • coinfoundry.org
  • coinpoolit.webhop.me
  • coolmining.club
  • crypto-pool.fr
  • crypto-pools.org
  • cryptoescrow.eu
  • cryptoknight.cc
  • cryptonight.net
  • cryptonotepool.org
  • cryptonotepool.org.uk
  • do-dear.com
  • dwarfpool.com
  • extremehash.com
  • extremepool.org
  • extrmepool.org
  • fairhash.org
  • fairpool.cloud
  • fairpool.xyz
  • freeyy.me
  • gntl.co.uk
  • hash-to-coins.com
  • hashanywhere.com
  • hashfor.cash
  • hashinvest.net
  • hashinvest.ws
  • hashvault.pro
  • herominers.com
  • kippo.eu
  • linux-repository-updates.com
  • litecoinpool.org
  • miner.center
  • miner.rocks
  • minergate.com
  • mineshaft.ml
  • minexmr.com
  • +30 more values (see full rule source)
field:"query" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

Fortinet APT group abuse on Windows (task)

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

Detects scenarios where APT actors exploits Fortinet vulnerabilities to gain access into Windows infrastructure.

Known False Positives

  • None

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Fortinet APT group abuse on Windows (task)
description: Detects scenarios where APT actors exploits Fortinet vulnerabilities to gain access into Windows infrastructure.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/EVTX_full_APT_attack_steps
- https://www.aha.org/system/files/media/file/2021/05/fbi-flash-tlp-white-apt-actors-exploiting-fortinet-vulnerabilities-to-gain-access-for-malicious-activity-5-27-21.pdf
- https://www.securityweek.com/fbi-shares-iocs-apt-attacks-exploiting-fortinet-vulnerabilities
tags:
- attack.execution
- attack.t1053.005
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4698
    TaskName|endswith: '\SynchronizeTimeZone'
  condition: selection
falsepositives:
- None
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 4698
  TaskName|endswith: '\SynchronizeTimeZone'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TaskNameends_with
  • \SynchronizeTimeZone
field:"TaskName" kind:ends_with value:"\SynchronizeTimeZone"

Google Cloud Kubernetes Admission Controller

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

Identifies when an admission controller is executed in GCP 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

  • Google Cloud Kubernetes Admission 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: Google Cloud Kubernetes Admission Controller
id: 6ad91e31-53df-4826-bd27-0166171c8040
status: test
description: |
  Identifies when an admission controller is executed in GCP 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://cloud.google.com/kubernetes-engine/docs
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: gcp
    service: gcp.audit
detection:
    selection:
        gcp.audit.method_name|startswith: 'admissionregistration.k8s.io.v'
        gcp.audit.method_name|contains:
            - '.mutatingwebhookconfigurations.'
            - '.validatingwebhookconfigurations.'
        gcp.audit.method_name|endswith:
            - 'create'
            - 'patch'
            - 'replace'
    condition: selection
falsepositives:
    - Google Cloud Kubernetes Admission 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:
    gcp.audit.method_name|startswith: 'admissionregistration.k8s.io.v'
    gcp.audit.method_name|contains:
        - '.mutatingwebhookconfigurations.'
        - '.validatingwebhookconfigurations.'
    gcp.audit.method_name|endswith:
        - 'create'
        - 'patch'
        - 'replace'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
gcp.audit.method_nameends_with
  • create
  • patch
  • replace
field:"gcp::method_name" kind:ends_with
gcp.audit.method_namematch
  • .mutatingwebhookconfigurations.
  • .validatingwebhookconfigurations.
field:"gcp::method_name" kind:match
gcp.audit.method_namestarts_with
  • admissionregistration.k8s.io.v
field:"gcp::method_name" kind:starts_with value:"admissionregistration.k8s.io.v"

High risk event - risk of copying client credentials

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

Detect potential risks of copying client credentials by monitoring if a client is read via the Dashboard or Management API. This can indicate that someone is trying to copy client credentials for malicious purposes.

Known False Positives

  • Legitimate access by an administrator to read client settings.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Rule Body

title: High risk event - risk of copying client credentials
id: 2d7087d2-716d-11f0-ba3b-723487b9527c
status: experimental
description: |
    Detect potential risks of copying client credentials by monitoring if a client is read via the Dashboard or Management API.
    This can indicate that someone is trying to copy client credentials for malicious purposes.
author: Okta
date: 2025-07-11
modified: 2025-09-02
logsource:
    product: auth0
detection:
    selection:
        data.type: mgmt_api_read
        data.description: "Get client by ID"
        data.details.accessedSecrets{}: client_secret
        data.details.response.body.client_id:
            - "critical-client_id-1"
            - "critical-client_id-etc"
    condition: selection
explanation: >
    The query collects log entries captured when the application's settings are accessed.
    The Splunk query displays affected clients/applications copying user, IP, and counts a number of readings.
    Limit the detection to specific high risk clients, e.g. your main customer facing application.
    Alternatively, exclude applications where client authentication is not applicable, i.e. mobile apps and SPAs.
splunk: |
    index=auth0 data.tenant_name="{your-tenant-name}"
    data.type=mgmt_api_read data.description="Get client by ID"
    data.details.accessedSecrets{}=client_secret
    ``` Limit monitoring to a list of applicable applications ```
    ```data.details.response.body.client_id IN ("critical-client_id-1", "critical-client_id-etc")```
    | fields data.details.response.body.client_id, data.user_id, data.ip
    ```Display the information in a table: affected clients, user checking the secret and IP of this user```
    | rename data.details.response.body.client_id as client_id
    | rename data.user_id as user_id
    | rename data.ip as ip
    | stats count by client_id, user_id, ip
comments:
    - The Splunk query above, shall be tuned to reflect a valid tenant name and a list of clients (by client_id) to monitor.
tenant_logs: |
    type: "mgmt_api_read" AND description: "Get client by ID"
prevention:
    - Limit number of admins ("Admin", "Editor - Specific App", "Viewer - Config Settings").
    - Rotate client credentials periodically.
    - Stop relying on client_secret, but explore Private key JWT for client authentication.
falsepositives:
    - Legitimate access by an administrator to read client settings.
level: medium
tags:
    - attack.credential-access
    - attack.t1528

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    data.type: mgmt_api_read
    data.description: "Get client by ID"
    data.details.accessedSecrets{}: client_secret
    data.details.response.body.client_id:
        - "critical-client_id-1"
        - "critical-client_id-etc"

Indicators

These rows show field, operator, and value matches.

Inline Python Execution - Spawn Shell Via OS System Library

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

Detects execution of inline Python code via the "-c" in order to call the "system" function from the "os" library, and spawn a shell.

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Inline Python Execution - Spawn Shell Via OS System Library
id: 2d2f44ff-4611-4778-a8fc-323a0e9850cc
status: test
description: |
    Detects execution of inline Python code via the "-c" in order to call the "system" function from the "os" library, and spawn a shell.
references:
    - https://gtfobins.github.io/gtfobins/python/#shell
author: Li Ling, Andy Parkidomo, Robert Rakowski, Blake Hartstein (Bloomberg L.P.)
date: 2024-09-02
tags:
    - attack.execution
    - attack.t1059
logsource:
    category: process_creation
    product: linux
detection:
    selection_img:
        - Image|endswith:
              - '/python'
              - '/python2'
              - '/python3'
        - Image|contains:
              - '/python2.'  # python image is always of the form ../python3.10; ../python is just a symlink
              - '/python3.'
    selection_cli:
        CommandLine|contains|all:
            - ' -c '
            - 'os.system('
        CommandLine|contains:
            - '/bin/bash'
            - '/bin/dash'
            - '/bin/fish'
            - '/bin/sh'
            - '/bin/zsh'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '/python'
          - '/python2'
          - '/python3'
    - Image|contains:
          - '/python2.'
          - '/python3.'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - ' -c '
        - 'os.system('
    CommandLine|contains:
        - '/bin/bash'
        - '/bin/dash'
        - '/bin/fish'
        - '/bin/sh'
        - '/bin/zsh'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -c corpus 13 (sigma 13)
  • /bin/bash corpus 8 (sigma 8)
  • /bin/dash corpus 7 (sigma 7)
  • /bin/fish corpus 7 (sigma 7)
  • /bin/sh corpus 12 (sigma 12)
  • /bin/zsh corpus 8 (sigma 8)
  • os.system(
field:"CommandLine" kind:match
Imageends_with
  • /python corpus 8 (sigma 8)
  • /python2 corpus 5 (sigma 5)
  • /python3 corpus 5 (sigma 5)
field:"Image" kind:ends_with
Imagematch
  • /python2. corpus 3 (sigma 3)
  • /python3. corpus 3 (sigma 3)
field:"Image" kind:match

New Okta User Created

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

Detects new user account creation

Known False Positives

  • Legitimate and authorized user creation

MITRE ATT&CK Coverage

TacticTechniques
Credential AccessNo specific technique

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: New Okta User Created
id: b6c718dd-8f53-4b9f-98d8-93fdca966969
status: test
description: Detects new user account creation
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-10-25
modified: 2026-04-27
references:
    - https://developer.okta.com/docs/reference/api/event-types/
tags:
    - attack.credential-access
logsource:
    service: okta
    product: okta
detection:
    selection:
        eventType: 'user.lifecycle.create'
    condition: selection
falsepositives:
    - Legitimate and authorized user creation
level: informational

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    eventType: 'user.lifecycle.create'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
eventTypeeq
  • user.lifecycle.create corpus 2 (sigma 2)
field:"eventType" kind:eq value:"user.lifecycle.create"

OpenEDR Spawning Command Shell

#
Status
experimental
Severity
medium
Author
@kostastsale
Source
github.com/SigmaHQ/sigma

Detects the OpenEDR ssh-shellhost.exe spawning a command shell (cmd.exe) or PowerShell with PTY (pseudo-terminal) capabilities. This may indicate remote command execution through OpenEDR's remote management features, which could be legitimate administrative activity or potential abuse of the remote access tool. Threat actors may leverage OpenEDR's remote shell capabilities to execute commands on compromised systems, facilitating lateral movement or other command-and-control operations.

Known False Positives

  • Legitimate use of OpenEDR for remote command execution

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: OpenEDR Spawning Command Shell
id: 7f3a9c2d-4e8b-4a7f-9d3e-5c6f8a9b2e1d
status: experimental
description: |
    Detects the OpenEDR ssh-shellhost.exe spawning a command shell (cmd.exe) or PowerShell with PTY (pseudo-terminal) capabilities.
    This may indicate remote command execution through OpenEDR's remote management features, which could be legitimate administrative activity or potential abuse of the remote access tool.
    Threat actors may leverage OpenEDR's remote shell capabilities to execute commands on compromised systems, facilitating lateral movement or other command-and-control operations.
author: '@kostastsale'
date: 2026-02-19
references:
    - https://kostas-ts.medium.com/detecting-abuse-of-openedrs-permissive-edr-trial-a-security-researcher-s-perspective-fc55bf53972c
tags:
    - attack.execution
    - attack.t1059.003
    - attack.lateral-movement
    - attack.t1021.004
    - attack.command-and-control
    - attack.t1219
logsource:
    product: windows
    category: process_creation
detection:
    selection_img:
        ParentImage|endswith: '\ITSMService.exe'
        Image|endswith: '\ssh-shellhost.exe'
        CommandLine|contains: '--pty'
    selection_cli_shell:
        CommandLine|contains:
            - 'bash'
            - 'cmd'
            - 'powershell'
            - 'pwsh'
    condition: all of selection_*
falsepositives:
    - Legitimate use of OpenEDR for remote command execution
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    ParentImage|endswith: '\ITSMService.exe'
    Image|endswith: '\ssh-shellhost.exe'
    CommandLine|contains: '--pty'

Stage 2: selection_cli_shell

selection_cli_shell:
    CommandLine|contains:
        - 'bash'
        - 'cmd'
        - 'powershell'
        - 'pwsh'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --pty
  • bash corpus 5 (sigma 5)
  • cmd corpus 8 (sigma 8)
  • powershell corpus 24 (sigma 24)
  • pwsh corpus 7 (sigma 7)
field:"CommandLine" kind:match
Imageends_with
  • \ssh-shellhost.exe
field:"Image" kind:ends_with value:"\ssh-shellhost.exe"
ParentImageends_with
  • \ITSMService.exe
field:"ParentImage" kind:ends_with value:"\ITSMService.exe"

Password Protected ZIP File Opened (Email Attachment)

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

Detects the extraction of password protected ZIP archives. See the filename variable for more details on which file has been opened.

Known False Positives

  • Legitimate used of encrypted ZIP files

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Password Protected ZIP File Opened (Email Attachment)
id: 571498c8-908e-40b4-910b-d2369159a3da
status: test
description: Detects the extraction of password protected ZIP archives. See the filename variable for more details on which file has been opened.
references:
    - https://twitter.com/sbousseaden/status/1523383197513379841
author: Florian Roth (Nextron Systems)
date: 2022-05-09
tags:
    - attack.initial-access
    - attack.stealth
    - attack.t1027
    - attack.t1566.001
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 5379
        TargetName|contains|all:
            - 'Microsoft_Windows_Shell_ZipFolder:filename'
            - '\Temporary Internet Files\Content.Outlook'
    condition: selection
falsepositives:
    - Legitimate used of encrypted ZIP files
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 5379
    TargetName|contains|all:
        - 'Microsoft_Windows_Shell_ZipFolder:filename'
        - '\Temporary Internet Files\Content.Outlook'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetNamematch
  • Microsoft_Windows_Shell_ZipFolder:filename corpus 3 (sigma 3)
  • \Temporary Internet Files\Content.Outlook
field:"TargetName" kind:match

Potential Arbitrary Command Execution Using Msdt.EXE

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

Detects processes leveraging the "ms-msdt" handler or the "msdt.exe" binary to execute arbitrary commands as seen in the follina (CVE-2022-30190) vulnerability

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Potential Arbitrary Command Execution Using Msdt.EXE
id: 258fc8ce-8352-443a-9120-8a11e4857fa5
status: test
description: Detects processes leveraging the "ms-msdt" handler or the "msdt.exe" binary to execute arbitrary commands as seen in the follina (CVE-2022-30190) vulnerability
references:
    - https://twitter.com/nao_sec/status/1530196847679401984
    - https://app.any.run/tasks/713f05d2-fe78-4b9d-a744-f7c133e3fafb/
    - https://twitter.com/_JohnHammond/status/1531672601067675648
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-05-29
modified: 2024-03-13
tags:
    - attack.stealth
    - attack.t1202
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\msdt.exe'
        - OriginalFileName: 'msdt.exe'
    selection_cmd_inline:
        CommandLine|contains: 'IT_BrowseForFile='
    selection_cmd_answerfile_flag:
        CommandLine|contains: ' PCWDiagnostic'
    selection_cmd_answerfile_param:
        CommandLine|contains|windash: ' -af '
    condition: selection_img and (selection_cmd_inline or all of selection_cmd_answerfile_*)
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_img and (selection_cmd_inline or all of selection_cmd_answerfile_*)

Stage 1: selection_img

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

Stage 2: selection_cmd_inline

selection_cmd_inline:
    CommandLine|contains: 'IT_BrowseForFile='

Stage 3: selection_cmd_answerfile_flag

selection_cmd_answerfile_flag:
    CommandLine|contains: ' PCWDiagnostic'

Stage 4: selection_cmd_answerfile_param

selection_cmd_answerfile_param:
    CommandLine|contains|windash: ' -af '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -af corpus 3 (sigma 3)
  • /af corpus 2 (sigma 2)
  • PCWDiagnostic
  • –af corpus 2 (sigma 2)
  • —af corpus 2 (sigma 2)
  • ―af corpus 2 (sigma 2)
  • IT_BrowseForFile= corpus 2 (sigma 1, splunk 1)
field:"CommandLine" kind:match
Imageends_with
  • \msdt.exe corpus 10 (sigma 9, splunk 1)
field:"Image" kind:ends_with value:"\msdt.exe"
OriginalFileNameeq
  • msdt.exe corpus 7 (sigma 6, elastic 1)
field:"OriginalFileName" kind:eq value:"msdt.exe"

Potential DLL Sideloading Of Libcurl.DLL Via GUP.EXE

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

Detects potential DLL sideloading of "libcurl.dll" by the "gup.exe" process from an uncommon location

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential DLL Sideloading Of Libcurl.DLL Via GUP.EXE
id: e49b5745-1064-4ac1-9a2e-f687bc2dd37e
status: test
description: Detects potential DLL sideloading of "libcurl.dll" by the "gup.exe" process from an uncommon location
references:
    - https://labs.withsecure.com/publications/fin7-target-veeam-servers
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-05
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith: '\gup.exe'
        ImageLoaded|endswith: '\libcurl.dll'
    filter_main_notepad_plusplus:
        Image|endswith: '\Notepad++\updater\GUP.exe'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    Image|endswith: '\gup.exe'
    ImageLoaded|endswith: '\libcurl.dll'

Stage 2: not filter_main_notepad_plusplus

filter_main_notepad_plusplus:
    Image|endswith: '\Notepad++\updater\GUP.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \gup.exe corpus 5 (sigma 5)
field:"Image" kind:ends_with value:"\gup.exe"
ImageLoadedends_with
  • \libcurl.dll
field:"ImageLoaded" kind:ends_with value:"\libcurl.dll"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with\Notepad++\updater\GUP.exeexcludes:Image field:"Image" value:"\Notepad++\updater\GUP.exe"

Potential MuddyWater APT Activity

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

Detects potential Muddywater APT activity

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Potential MuddyWater APT Activity
id: 36222790-0d43-4fe8-86e4-674b27809543
status: test
description: Detects potential Muddywater APT activity
references:
    - https://www.mandiant.com/resources/blog/iranian-threat-group-updates-ttps-in-spear-phishing-campaign
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-03-10
tags:
    - attack.execution
    - attack.stealth
    - attack.g0069
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection_mshta:
        CommandLine|contains|all:
            - 'vbscript:Close(Execute("CreateObject('
            - 'powershell'
            - '-w 1 -exec Bypass'
            - '\ProgramData\'
    selection_survey:
        CommandLine|contains|all:
            - 'Win32_OperatingSystem'
            - 'Win32_NetworkAdapterConfiguration'
            - 'root\SecurityCenter2'
            - '[System.Net.DNS]'
    selection_pwsh_backdoor:
        CommandLine|contains|all:
            - '[Convert]::ToBase64String'
            - '[System.Text.Encoding]::UTF8.GetString]'
            - 'GetResponse().GetResponseStream()'
            - '[System.Net.HttpWebRequest]::Create('
            - '-bxor '
    condition: 1 of selection_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_mshta

selection_mshta:
    CommandLine|contains|all:
        - 'vbscript:Close(Execute("CreateObject('
        - 'powershell'
        - '-w 1 -exec Bypass'
        - '\ProgramData\'

Stage 2: selection_survey

selection_survey:
    CommandLine|contains|all:
        - 'Win32_OperatingSystem'
        - 'Win32_NetworkAdapterConfiguration'
        - 'root\SecurityCenter2'
        - '[System.Net.DNS]'

Stage 3: selection_pwsh_backdoor

selection_pwsh_backdoor:
    CommandLine|contains|all:
        - '[Convert]::ToBase64String'
        - '[System.Text.Encoding]::UTF8.GetString]'
        - 'GetResponse().GetResponseStream()'
        - '[System.Net.HttpWebRequest]::Create('
        - '-bxor '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -bxor
  • -w 1 -exec Bypass
  • GetResponse().GetResponseStream()
  • Win32_NetworkAdapterConfiguration
  • Win32_OperatingSystem
  • [Convert]::ToBase64String corpus 2 (sigma 1, elastic 1)
  • [System.Net.DNS]
  • [System.Net.HttpWebRequest]::Create(
  • [System.Text.Encoding]::UTF8.GetString]
  • \ProgramData\ corpus 5 (sigma 3, elastic 1, splunk 1)
  • powershell corpus 24 (sigma 24)
  • root\SecurityCenter2
  • vbscript:Close(Execute("CreateObject(
field:"CommandLine" kind:match

Potential RipZip Attack on Startup Folder

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

Detects a phishing attack which expands a ZIP file containing a malicious shortcut. If the victim expands the ZIP file via the explorer process, then the explorer process expands the malicious ZIP file and drops a malicious shortcut redirected to a backdoor into the Startup folder. Additionally, the file name of the malicious shortcut in Startup folder contains {0AFACED1-E828-11D1-9187-B532F1E9575D} meaning the folder shortcut operation.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Potential RipZip Attack on Startup Folder
id: a6976974-ea6f-4e97-818e-ea08625c52cb
status: test
description: |
    Detects a phishing attack which expands a ZIP file containing a malicious shortcut.
    If the victim expands the ZIP file via the explorer process, then the explorer process expands the malicious ZIP file and drops a malicious shortcut redirected to a backdoor into the Startup folder.
    Additionally, the file name of the malicious shortcut in Startup folder contains {0AFACED1-E828-11D1-9187-B532F1E9575D} meaning the folder shortcut operation.
references:
    - https://twitter.com/jonasLyk/status/1549338335243534336?t=CrmPocBGLbDyE4p6zTX1cg&s=19
author: Greg (rule)
date: 2022-07-21
modified: 2023-01-05
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1547
logsource:
    category: file_event
    product: windows
detection:
    selection: # %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\target.lnk.{0AFACED1-E828-11D1-9187-B532F1E9575D}\target.lnk
        TargetFilename|contains|all:
            - '\Microsoft\Windows\Start Menu\Programs\Startup'
            - '.lnk.{0AFACED1-E828-11D1-9187-B532F1E9575D}'
        Image|endswith: '\explorer.exe'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains|all:
        - '\Microsoft\Windows\Start Menu\Programs\Startup'
        - '.lnk.{0AFACED1-E828-11D1-9187-B532F1E9575D}'
    Image|endswith: '\explorer.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \explorer.exe corpus 13 (sigma 13)
field:"Image" kind:ends_with value:"\explorer.exe"
TargetFilenamematch
  • .lnk.{0AFACED1-E828-11D1-9187-B532F1E9575D}
  • \Microsoft\Windows\Start Menu\Programs\Startup corpus 2 (sigma 2)
field:"TargetFilename" kind:match

Potentially Suspicious Execution From Parent Process In Public Folder

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

Detects a potentially suspicious execution of a parent process located in the "\Users\Public" folder executing a child process containing references to shell or scripting binaries and commandlines.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potentially Suspicious Execution From Parent Process In Public Folder
id: 69bd9b97-2be2-41b6-9816-fb08757a4d1a
status: test
description: |
    Detects a potentially suspicious execution of a parent process located in the "\Users\Public" folder executing a child process containing references to shell or scripting binaries and commandlines.
references:
    - https://redcanary.com/blog/blackbyte-ransomware/
author: Florian Roth (Nextron Systems), Nasreddine Bencherchali (Nextron Systems)
date: 2022-02-25
modified: 2024-07-12
tags:
    - attack.execution
    - attack.stealth
    - attack.t1564
    - attack.t1059
logsource:
    category: process_creation
    product: windows
detection:
    selection_parent:
        ParentImage|contains: ':\Users\Public\'
    selection_child:
        - Image|endswith:
              - '\bitsadmin.exe'
              - '\certutil.exe'
              - '\cmd.exe'
              - '\cscript.exe'
              - '\mshta.exe'
              - '\powershell.exe'
              - '\pwsh.exe'
              - '\regsvr32.exe'
              - '\rundll32.exe'
              - '\wscript.exe'
        - CommandLine|contains:
              - 'bitsadmin'
              - 'certutil'
              - 'cscript'
              - 'mshta'
              - 'powershell'
              - 'regsvr32'
              - 'rundll32'
              - 'wscript'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_parent

selection_parent:
    ParentImage|contains: ':\Users\Public\'

Stage 2: selection_child

selection_child:
    - Image|endswith:
          - '\bitsadmin.exe'
          - '\certutil.exe'
          - '\cmd.exe'
          - '\cscript.exe'
          - '\mshta.exe'
          - '\powershell.exe'
          - '\pwsh.exe'
          - '\regsvr32.exe'
          - '\rundll32.exe'
          - '\wscript.exe'
    - CommandLine|contains:
          - 'bitsadmin'
          - 'certutil'
          - 'cscript'
          - 'mshta'
          - 'powershell'
          - 'regsvr32'
          - 'rundll32'
          - 'wscript'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • bitsadmin corpus 10 (sigma 10)
  • certutil corpus 10 (sigma 10)
  • cscript corpus 15 (sigma 15)
  • mshta corpus 14 (sigma 14)
  • powershell corpus 24 (sigma 24)
  • regsvr32 corpus 15 (sigma 15)
  • rundll32 corpus 23 (sigma 23)
  • wscript corpus 16 (sigma 16)
field:"CommandLine" kind:match
Imageends_with
  • \bitsadmin.exe corpus 29 (sigma 29)
  • \certutil.exe corpus 43 (sigma 43)
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \cscript.exe corpus 72 (sigma 72)
  • \mshta.exe corpus 67 (sigma 66, splunk 1)
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \regsvr32.exe corpus 64 (sigma 64)
  • \rundll32.exe corpus 94 (sigma 94)
  • \wscript.exe corpus 74 (sigma 74)
field:"Image" kind:ends_with
ParentImagematch
  • :\Users\Public\ corpus 2 (sigma 2)
field:"ParentImage" kind:match value:":\Users\Public\"

PowerShell Module File Created By Non-PowerShell Process

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

Detects the creation of a new PowerShell module ".psm1", ".psd1", ".dll", ".ps1", etc. by a non-PowerShell process

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: PowerShell Module File Created By Non-PowerShell Process
id: e3845023-ca9a-4024-b2b2-5422156d5527
status: test
description: Detects the creation of a new PowerShell module ".psm1", ".psd1", ".dll", ".ps1", etc. by a non-PowerShell process
references:
    - Internal Research
    - https://learn.microsoft.com/en-us/powershell/scripting/developer/module/understanding-a-windows-powershell-module?view=powershell-7.3
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-09
modified: 2025-10-07
tags:
    - attack.persistence
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains:
            - '\WindowsPowerShell\Modules\'
            - '\PowerShell\7\Modules\'
    filter_main_pwsh:
        Image|endswith:
            - ':\Program Files\PowerShell\7-preview\pwsh.exe'
            - ':\Program Files\PowerShell\7\pwsh.exe'
            - ':\Windows\System32\poqexec.exe' # https://github.com/SigmaHQ/sigma/issues/4448
            - ':\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe'
            - ':\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
            - ':\Windows\SysWOW64\poqexec.exe' # https://github.com/SigmaHQ/sigma/issues/4448
            - ':\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell_ise.exe'
            - ':\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe'
    filter_main_msiexec:
        Image:
            - 'C:\Windows\System32\msiexec.exe'
            - 'C:\Windows\SysWOW64\msiexec.exe'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    TargetFilename|contains:
        - '\WindowsPowerShell\Modules\'
        - '\PowerShell\7\Modules\'

Stage 2: not filter_main_*

filter_main_pwsh:
    Image|endswith:
        - ':\Program Files\PowerShell\7-preview\pwsh.exe'
        - ':\Program Files\PowerShell\7\pwsh.exe'
        - ':\Windows\System32\poqexec.exe'
        - ':\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe'
        - ':\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
        - ':\Windows\SysWOW64\poqexec.exe'
        - ':\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell_ise.exe'
        - ':\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.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
TargetFilenamematch
  • \PowerShell\7\Modules\ corpus 2 (sigma 2)
  • \WindowsPowerShell\Modules\ corpus 2 (sigma 2)
field:"TargetFilename" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with:\Program Files\PowerShell\7-preview\pwsh.exeexcludes:Image field:"Image" value:":\Program Files\PowerShell\7-preview\pwsh.exe"
Imageends_with:\Program Files\PowerShell\7\pwsh.exeexcludes:Image field:"Image" value:":\Program Files\PowerShell\7\pwsh.exe"
Imageends_with:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exeexcludes:Image field:"Image" value:":\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe"
Imageends_with:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell_ise.exeexcludes:Image field:"Image" value:":\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell_ise.exe"
Imageends_with:\Windows\SysWOW64\poqexec.exeexcludes:Image field:"Image" value:":\Windows\SysWOW64\poqexec.exe"
Imageends_with:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeexcludes:Image field:"Image" value:":\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
Imageends_with:\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exeexcludes:Image field:"Image" value:":\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe"
Imageends_with:\Windows\System32\poqexec.exeexcludes:Image field:"Image" value:":\Windows\System32\poqexec.exe"
ImageeqC:\Windows\SysWOW64\msiexec.exeexcludes:Image field:"Image" value:"C:\Windows\SysWOW64\msiexec.exe"
ImageeqC:\Windows\System32\msiexec.exeexcludes:Image field:"Image" value:"C:\Windows\System32\msiexec.exe"

Print spooler privilege escalation via printer added (CVE-2020-1048)

#
Status
experimental
Severity
high
Author
Emir Erdogan (shortly adapted by mdecrevoisier)
Source
github.com/mdecrevoisier/SIGMA-detection-rules

Detects scenarios where an attacker abuse the printer spooler features to load a DLL. The attack is composed by 4 steps > 1) create a printer that points to a missing DLL 2) print to that port 3) crash the printer spool 4) have his original DLL registered for privilege escalation.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Print spooler privilege escalation via printer added (CVE-2020-1048)
description: Detects scenarios where an attacker abuse the printer spooler features to load a DLL. The attack is composed by 4 steps > 1) create a printer that points to a missing DLL 2) print to that port 3) crash the printer spool 4) have his original DLL registered for privilege escalation.
reference:
- https://twitter.com/aionescu/status/1260466215299973121
- https://windows-internals.com/printdemon-cve-2020-1048/
tags:
- attack.privilege_escalation
- attack.t1547.010
author: Emir Erdogan (shortly adapted by mdecrevoisier)
status: experimental
logsource:
  product: windows
  category:
    - ps_module
    - ps_classic_script
    - ps_script
detection: # full command "Add-PrinterPort -Name c:\windows\system32\\*.exe'"
  selection_powershell_native:
    EventID: 800
    EventData|contains|all:
      - Add-PrinterPort
      - Name
    EventData|contains:
      - .exe
      - .dll

  selection_powershell_modern:
    EventID: 4103
    Payload|contains|all:
      - Add-PrinterPort
      - Name
    Payload|contains:
      - .exe
      - .dll

  selection_powershell_block:
    EventID: 4104
    ScriptBlockText|contains|all:
      - Add-PrinterPort
      - Name
    ScriptBlockText|contains:
      - .exe
      - .dll

  condition: selection_powershell_native or selection_powershell_modern or selection_powershell_block
falsepositives:
- unknown
level: high

Stages and Predicates

Stage 0: condition

selection_powershell_native or selection_powershell_modern or selection_powershell_block

Stage 1: selection_powershell_native

selection_powershell_native:
  EventID: 800
  EventData|contains|all:
    - Add-PrinterPort
    - Name
  EventData|contains:
    - .exe
    - .dll

Stage 2: selection_powershell_modern

selection_powershell_modern:
  EventID: 4103
  Payload|contains|all:
    - Add-PrinterPort
    - Name
  Payload|contains:
    - .exe
    - .dll

Stage 3: selection_powershell_block

selection_powershell_block:
  EventID: 4104
  ScriptBlockText|contains|all:
    - Add-PrinterPort
    - Name
  ScriptBlockText|contains:
    - .exe
    - .dll

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
EventDatamatch
  • .dll corpus 3 (sigma 3)
  • .exe
  • Add-PrinterPort
  • Name corpus 3 (sigma 3)
field:"EventData" kind:match
Payloadmatch
  • .dll corpus 3 (sigma 3)
  • .exe
  • Add-PrinterPort
  • Name corpus 3 (sigma 3)
field:"Payload" kind:match
ScriptBlockTextmatch
  • .dll corpus 3 (sigma 3)
  • .exe
  • Add-PrinterPort
  • Name corpus 4 (sigma 4)
field:"ScriptBlockText" kind:match

Privileged Container Deployed

#
Status
test
Severity
low
Author
Leo Tsaousis (@laripping)
Source
github.com/SigmaHQ/sigma

Detects the creation of a "privileged" container, an action which could be indicative of a threat actor mounting a container breakout attacks. A privileged container is a container that can access the host with all of the root capabilities of the host machine. This allows it to view, interact and modify processes, network operations, IPC calls, the file system, mount points, SELinux configurations etc. as the root user on the host. Various versions of "privileged" containers can be specified, e.g. by setting the securityContext.privileged flag in the resource specification, setting non-standard Linux capabilities, or configuring the hostNetwork/hostPID fields

MITRE ATT&CK Coverage

TacticTechniques
Privilege Escalation

Telemetry Coverage

PlatformRecord / event type
Kubernetescreate-pods: create pods

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Privileged Container Deployed
id: c5cd1b20-36bb-488d-8c05-486be3d0cb97
status: test
description: |
    Detects the creation of a "privileged" container, an action which could be indicative of a threat actor mounting a container breakout attacks.
    A privileged container is a container that can access the host with all of the root capabilities of the host machine. This allows it to view, interact and modify processes, network operations, IPC calls, the file system, mount points, SELinux configurations etc. as the root user on the host.
    Various versions of "privileged" containers can be specified, e.g. by setting the securityContext.privileged flag in the resource specification, setting non-standard Linux capabilities, or configuring the hostNetwork/hostPID fields
references:
    - https://microsoft.github.io/Threat-Matrix-for-Kubernetes/techniques/Privileged%20container/
    - https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-kubernetes.html#privilegeescalation-kubernetes-privilegedcontainer
    - https://www.elastic.co/guide/en/security/current/kubernetes-pod-created-with-hostnetwork.html
    - https://www.elastic.co/guide/en/security/current/kubernetes-container-created-with-excessive-linux-capabilities.html
author: Leo Tsaousis (@laripping)
date: 2024-03-26
tags:
    - attack.t1611
    - attack.privilege-escalation
logsource:
    category: application
    product: kubernetes
    service: audit
detection:
    selection:
        verb: 'create'
        objectRef.resource: 'pods'
        capabilities: '*' # Note: Add the "exists" when it's implemented in SigmaHQ/Aurora
    condition: selection
falsepositives:
    - Unknown
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    verb: 'create'
    objectRef.resource: 'pods'
    capabilities: '*'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
capabilitieswildcard
  • *
field:"capabilities" kind:wildcard value:"*"
objectRef.resourceeq
  • pods corpus 8 (sigma 4, splunk 4)
field:"objectRef.resource" kind:eq value:"pods"
verbeq
  • create corpus 23 (sigma 10, splunk 7, panther 6)
field:"verb" kind:eq value:"create"

Procdump Execution

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

Detects usage of the SysInternals Procdump utility

Known False Positives

  • Legitimate use of procdump by a developer or administrator

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Procdump Execution
id: 2e65275c-8288-4ab4-aeb7-6274f58b6b20
status: test
description: Detects usage of the SysInternals Procdump utility
references:
    - https://learn.microsoft.com/en-us/sysinternals/downloads/procdump
author: Florian Roth (Nextron Systems)
date: 2021-08-16
modified: 2026-06-29
tags:
    - attack.stealth
    - attack.t1036
    - attack.t1003.001
    - attack.credential-access
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith:
            - '\procdump.exe'
            - '\procdump64.exe'
            - '\procdump64a.exe'
    condition: selection
falsepositives:
    - Legitimate use of procdump by a developer or administrator
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_sysinternals_procdump/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\procdump.exe'
        - '\procdump64.exe'
        - '\procdump64a.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \procdump.exe corpus 4 (sigma 4)
  • \procdump64.exe corpus 2 (sigma 2)
  • \procdump64a.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with

Query Usage To Exfil Data

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

Detects usage of "query.exe" a system binary to exfil information such as "sessions" and "processes" for later use

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

Rule Body

title: Query Usage To Exfil Data
id: 53ef0cef-fa24-4f25-a34a-6c72dfa2e6e2
status: test
description: Detects usage of "query.exe" a system binary to exfil information such as "sessions" and "processes" for later use
references:
    - https://twitter.com/MichalKoczwara/status/1553634816016498688
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-08-01
modified: 2023-01-19
tags:
    - attack.execution
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: ':\Windows\System32\query.exe'
        CommandLine|contains:
            - 'session >'
            - 'process >'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: ':\Windows\System32\query.exe'
    CommandLine|contains:
        - 'session >'
        - 'process >'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • process >
  • session >
field:"CommandLine" kind:match
Imageends_with
  • :\Windows\System32\query.exe
field:"Image" kind:ends_with value:":\Windows\System32\query.exe"

Renamed AutoHotkey.EXE Execution

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

Detects execution of a renamed autohotkey.exe binary based on PE metadata fields

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Renamed AutoHotkey.EXE Execution
id: 0f16d9cf-0616-45c8-8fad-becc11b5a41c
status: test
description: Detects execution of a renamed autohotkey.exe binary based on PE metadata fields
references:
    - https://www.autohotkey.com/download/
    - https://thedfirreport.com/2023/02/06/collect-exfiltrate-sleep-repeat/
author: Nasreddine Bencherchali
date: 2023-02-07
tags:
    - attack.stealth
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Product|contains: 'AutoHotkey'
        - Description|contains: 'AutoHotkey'
        - OriginalFileName:
              - 'AutoHotkey.exe'
              - 'AutoHotkey.rc'
    filter:
        - Image|endswith:
              - '\AutoHotkey.exe'
              - '\AutoHotkey32.exe'
              - '\AutoHotkey32_UIA.exe'
              - '\AutoHotkey64.exe'
              - '\AutoHotkey64_UIA.exe'
              - '\AutoHotkeyA32.exe'
              - '\AutoHotkeyA32_UIA.exe'
              - '\AutoHotkeyU32.exe'
              - '\AutoHotkeyU32_UIA.exe'
              - '\AutoHotkeyU64.exe'
              - '\AutoHotkeyU64_UIA.exe'
        - Image|contains: '\AutoHotkey'
    condition: selection and not filter
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    - Product|contains: 'AutoHotkey'
    - Description|contains: 'AutoHotkey'
    - OriginalFileName:
          - 'AutoHotkey.exe'
          - 'AutoHotkey.rc'

Stage 2: not filter

filter:
    - Image|endswith:
          - '\AutoHotkey.exe'
          - '\AutoHotkey32.exe'
          - '\AutoHotkey32_UIA.exe'
          - '\AutoHotkey64.exe'
          - '\AutoHotkey64_UIA.exe'
          - '\AutoHotkeyA32.exe'
          - '\AutoHotkeyA32_UIA.exe'
          - '\AutoHotkeyU32.exe'
          - '\AutoHotkeyU32_UIA.exe'
          - '\AutoHotkeyU64.exe'
          - '\AutoHotkeyU64_UIA.exe'
    - Image|contains: '\AutoHotkey'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Descriptionmatch
  • AutoHotkey
field:"Description" kind:match value:"AutoHotkey"
OriginalFileNameeq
  • AutoHotkey.exe corpus 2 (sigma 1, elastic 1)
  • AutoHotkey.rc
field:"OriginalFileName" kind:eq
Productmatch
  • AutoHotkey
field:"Product" kind:match value:"AutoHotkey"

Exclusions

The rule actively suppresses these predicates.

ScreenConnect Temporary Installation Artefact

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

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

Known False Positives

  • Legitimate use

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: ScreenConnect Temporary Installation Artefact
id: fec96f39-988b-4586-b746-b93d59fd1922
status: test
description: |
    An adversary may use legitimate desktop support and remote access software, such as Team Viewer, Go2Assist, LogMein, AmmyyAdmin, etc, to establish an interactive command and control channel to target systems within networks.
    These services are commonly used as legitimate technical support software, and may be allowed by application control within a target environment.
    Remote access tools like VNC, Ammyy, and Teamviewer are used frequently when compared with other legitimate software commonly used by adversaries. (Citation: Symantec Living off the Land)
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1219/T1219.md#atomic-test-5---screenconnect-application-download-and-install-on-windows
author: frack113
date: 2022-02-13
tags:
    - attack.command-and-control
    - attack.t1219.002
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains: '\Bin\ScreenConnect.' # pattern to dll and jar file
    condition: selection
falsepositives:
    - Legitimate use
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains: '\Bin\ScreenConnect.'

Indicators

These rows show field, operator, and value matches.

Source Code Enumeration Detection by Keyword

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

Detects source code enumeration that use GET requests by keyword searches in URL strings

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Rule Body

title: Source Code Enumeration Detection by Keyword
id: 953d460b-f810-420a-97a2-cfca4c98e602
status: test
description: Detects source code enumeration that use GET requests by keyword searches in URL strings
references:
    - https://pentester.land/tutorials/2018/10/25/source-code-disclosure-via-exposed-git-folder.html
    - https://medium.com/@logicbomb_1/bugbounty-how-i-was-able-to-download-the-source-code-of-indias-largest-telecom-service-52cf5c5640a1
author: James Ahearn
date: 2019-06-08
modified: 2022-10-05
tags:
    - attack.discovery
    - attack.t1083
logsource:
    category: webserver
detection:
    keywords:
        - '.git/'
    condition: keywords
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - '.git/'

Suspicious Activity in Shell Commands

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

Detects suspicious shell commands used in various exploit codes (see references)

MITRE ATT&CK Coverage

Rule Body

title: Suspicious Activity in Shell Commands
id: 2aa1440c-9ae9-4d92-84a7-a9e5f5e31695
status: test
description: Detects suspicious shell commands used in various exploit codes (see references)
references:
    - https://web.archive.org/web/20170319121015/http://www.threatgeek.com/2017/03/widespread-exploitation-attempts-using-cve-2017-5638.html
    - https://github.com/rapid7/metasploit-framework/blob/eb6535009f5fdafa954525687f09294918b5398d/modules/exploits/multi/http/struts_code_exec_exception_delegator.rb
    - http://pastebin.com/FtygZ1cg
    - https://artkond.com/2017/03/23/pivoting-guide/
author: Florian Roth (Nextron Systems)
date: 2017-08-21
modified: 2021-11-27
tags:
    - attack.execution
    - attack.t1059.004
logsource:
    product: linux
detection:
    keywords:
        # Generic suspicious commands
        - 'wget * - http* | perl'
        - 'wget * - http* | sh'
        - 'wget * - http* | bash'
        - 'python -m SimpleHTTPServer'
        - '-m http.server'      # Python 3
        - 'import pty; pty.spawn*'
        - 'socat exec:*'
        - 'socat -O /tmp/*'
        - 'socat tcp-connect*'
        - '*echo binary >>*'
        # Malware
        - '*wget *; chmod +x*'
        - '*wget *; chmod 777 *'
        - '*cd /tmp || cd /var/run || cd /mnt*'
        # Apache Struts in-the-wild exploit codes
        - '*stop;service iptables stop;*'
        - '*stop;SuSEfirewall2 stop;*'
        - 'chmod 777 2020*'
        - '*>>/etc/rc.local'
        # Metasploit framework exploit codes
        - '*base64 -d /tmp/*'
        - '* | base64 -d *'
        - '*/chmod u+s *'
        - '*chmod +s /tmp/*'
        - '*chmod u+s /tmp/*'
        - '* /tmp/haxhax*'
        - '* /tmp/ns_sploit*'
        - 'nc -l -p *'
        - 'cp /bin/ksh *'
        - 'cp /bin/sh *'
        - '* /tmp/*.b64 *'
        - '*/tmp/ysocereal.jar*'
        - '*/tmp/x *'
        - '*; chmod +x /tmp/*'
        - '*;chmod +x /tmp/*'
    condition: keywords
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'wget * - http* | perl'
    - 'wget * - http* | sh'
    - 'wget * - http* | bash'
    - 'python -m SimpleHTTPServer'
    - '-m http.server'
    - 'import pty; pty.spawn*'
    - 'socat exec:*'
    - 'socat -O /tmp/*'
    - 'socat tcp-connect*'
    - '*echo binary >>*'
    - '*wget *; chmod +x*'
    - '*wget *; chmod 777 *'
    - '*cd /tmp || cd /var/run || cd /mnt*'
    - '*stop;service iptables stop;*'
    - '*stop;SuSEfirewall2 stop;*'
    - 'chmod 777 2020*'
    - '*>>/etc/rc.local'
    - '*base64 -d /tmp/*'
    - '* | base64 -d *'
    - '*/chmod u+s *'
    - '*chmod +s /tmp/*'
    - '*chmod u+s /tmp/*'
    - '* /tmp/haxhax*'
    - '* /tmp/ns_sploit*'
    - 'nc -l -p *'
    - 'cp /bin/ksh *'
    - 'cp /bin/sh *'
    - '* /tmp/*.b64 *'
    - '*/tmp/ysocereal.jar*'
    - '*/tmp/x *'
    - '*; chmod +x /tmp/*'
    - '*;chmod +x /tmp/*'

Suspicious ClickFix/FileFix Execution Pattern

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

Detects suspicious execution patterns where users are tricked into running malicious commands via clipboard manipulation, either through the Windows Run dialog (ClickFix) or File Explorer address bar (FileFix). Attackers leverage social engineering campaigns—such as fake CAPTCHA challenges or urgent alerts—encouraging victims to paste clipboard contents, often executing mshta.exe, powershell.exe, or similar commands to infect systems.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious ClickFix/FileFix Execution Pattern
id: d487ed4a-fd24-436d-a0b2-f4e95f7b2635
related:
    - id: f5fe36cf-f1ec-4c23-903d-09a3110f6bbb
      type: similar
status: experimental
description: |
    Detects suspicious execution patterns where users are tricked into running malicious commands via clipboard manipulation, either through the Windows Run dialog (ClickFix) or File Explorer address bar (FileFix).
    Attackers leverage social engineering campaigns—such as fake CAPTCHA challenges or urgent alerts—encouraging victims to paste clipboard contents, often executing mshta.exe, powershell.exe, or similar commands to infect systems.
references:
    - https://github.com/JohnHammond/recaptcha-phish
    - https://www.zscaler.com/blogs/security-research/deepseek-lure-using-captchas-spread-malware
    - https://www.threatdown.com/blog/clipboard-hijacker-tries-to-install-a-trojan/
    - https://app.any.run/tasks/5c16b4db-4b36-4039-a0ed-9b09abff8be2
    - https://www.esentire.com/security-advisories/netsupport-rat-clickfix-distribution
    - https://www.scpx.com.au/2025/11/16/decades-old-finger-protocol-abused-in-clickfix-malware-attacks/ # filefix variant
author: montysecurity, Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-11-19
tags:
    - attack.execution
    - attack.t1204.001
    - attack.t1204.004
logsource:
    category: process_creation
    product: windows
detection:
    selection_parent:
        ParentImage|endswith: '\explorer.exe'
        CommandLine|contains: '#'
    selection_cli_captcha:
        CommandLine|contains:
            - 'account'
            - 'anti-bot'
            - 'botcheck'
            - 'captcha'
            - 'challenge'
            - 'confirmation'
            - 'fraud'
            - 'human'
            - 'identification'
            - 'identificator'
            - 'identity'
            - 'robot'
            - 'validation'
            - 'verification'
            - 'verify'
    condition: all of selection_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_parent

selection_parent:
    ParentImage|endswith: '\explorer.exe'
    CommandLine|contains: '#'

Stage 2: selection_cli_captcha

selection_cli_captcha:
    CommandLine|contains:
        - 'account'
        - 'anti-bot'
        - 'botcheck'
        - 'captcha'
        - 'challenge'
        - 'confirmation'
        - 'fraud'
        - 'human'
        - 'identification'
        - 'identificator'
        - 'identity'
        - 'robot'
        - 'validation'
        - 'verification'
        - 'verify'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • # corpus 3 (sigma 3)
  • account corpus 2 (sigma 2)
  • anti-bot corpus 2 (sigma 2)
  • botcheck corpus 2 (sigma 2)
  • captcha corpus 2 (sigma 2)
  • challenge corpus 2 (sigma 2)
  • confirmation corpus 2 (sigma 2)
  • fraud corpus 2 (sigma 2)
  • human corpus 2 (sigma 2)
  • identification corpus 2 (sigma 2)
  • identificator corpus 2 (sigma 2)
  • identity corpus 2 (sigma 2)
  • robot corpus 2 (sigma 2)
  • validation corpus 2 (sigma 2)
  • verification corpus 2 (sigma 2)
  • verify corpus 2 (sigma 2)
field:"CommandLine" kind:match
ParentImageends_with
  • \explorer.exe corpus 15 (sigma 13, splunk 2)
field:"ParentImage" kind:ends_with value:"\explorer.exe"

Suspicious File Download From IP Via Wget.EXE

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

Detects potentially suspicious file downloads directly from IP addresses using Wget.exe

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious File Download From IP Via Wget.EXE
id: 17f0c0a8-8bd5-4ee0-8c5f-a342c0199f35
status: test
description: Detects potentially suspicious file downloads directly from IP addresses using Wget.exe
references:
    - https://www.gnu.org/software/wget/manual/wget.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-07-27
tags:
    - attack.execution
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\wget.exe'
        - OriginalFileName: 'wget.exe'
    selection_ip:
        CommandLine|re: '://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'
    selection_http:
        CommandLine|contains: 'http'
    selection_flag:
        - CommandLine|re: '\s-O\s'
        - CommandLine|contains: '--output-document'
    selection_ext:
        CommandLine|endswith:
            # Note you can transform this into a "contains" to increase coverage but you would need to take care of some FP.
            - '.ps1'
            - ".ps1'"
            - '.ps1"'
            - '.dat'
            - ".dat'"
            - '.dat"'
            - '.msi'
            - ".msi'"
            - '.msi"'
            - '.bat'
            - ".bat'"
            - '.bat"'
            - '.exe'
            - ".exe'"
            - '.exe"'
            - '.vbs'
            - ".vbs'"
            - '.vbs"'
            - '.vbe'
            - ".vbe'"
            - '.vbe"'
            - '.hta'
            - ".hta'"
            - '.hta"'
            - '.dll'
            - ".dll'"
            - '.dll"'
            - '.psm1'
            - ".psm1'"
            - '.psm1"'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_ip

selection_ip:
    CommandLine|re: '://[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'

Stage 3: selection_http

selection_http:
    CommandLine|contains: 'http'

Stage 4: selection_flag

selection_flag:
    - CommandLine|re: '\s-O\s'
    - CommandLine|contains: '--output-document'

Stage 5: selection_ext

selection_ext:
    CommandLine|endswith:
        - '.ps1'
        - ".ps1'"
        - '.ps1"'
        - '.dat'
        - ".dat'"
        - '.dat"'
        - '.msi'
        - ".msi'"
        - '.msi"'
        - '.bat'
        - ".bat'"
        - '.bat"'
        - '.exe'
        - ".exe'"
        - '.exe"'
        - '.vbs'
        - ".vbs'"
        - '.vbs"'
        - '.vbe'
        - ".vbe'"
        - '.vbe"'
        - '.hta'
        - ".hta'"
        - '.hta"'
        - '.dll'
        - ".dll'"
        - '.dll"'
        - '.psm1'
        - ".psm1'"
        - '.psm1"'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • .bat corpus 4 (sigma 4)
  • .bat" corpus 4 (sigma 4)
  • .bat' corpus 4 (sigma 4)
  • .dat corpus 6 (sigma 6)
  • .dat" corpus 4 (sigma 4)
  • .dat' corpus 4 (sigma 4)
  • .dll corpus 7 (sigma 7)
  • .dll" corpus 5 (sigma 5)
  • .dll' corpus 5 (sigma 5)
  • .exe corpus 6 (sigma 6)
  • .exe" corpus 4 (sigma 4)
  • .exe' corpus 4 (sigma 4)
  • .hta corpus 6 (sigma 6)
  • .hta" corpus 4 (sigma 4)
  • .hta' corpus 4 (sigma 4)
  • .msi corpus 5 (sigma 4, elastic 1)
  • .msi" corpus 4 (sigma 4)
  • .msi' corpus 4 (sigma 4)
  • .ps1 corpus 6 (sigma 6)
  • .ps1" corpus 4 (sigma 4)
  • .ps1' corpus 4 (sigma 4)
  • .psm1 corpus 5 (sigma 5)
  • .psm1" corpus 4 (sigma 4)
  • .psm1' corpus 4 (sigma 4)
  • .vbe corpus 7 (sigma 7)
  • .vbe" corpus 4 (sigma 4)
  • .vbe' corpus 4 (sigma 4)
  • .vbs corpus 7 (sigma 7)
  • .vbs" corpus 4 (sigma 4)
  • .vbs' corpus 4 (sigma 4)
field:"CommandLine" kind:ends_with
CommandLinematch
  • --output-document corpus 4 (sigma 4)
  • http corpus 45 (sigma 34, elastic 10, splunk 1)
field:"CommandLine" kind:match
CommandLineregex_match
  • ://[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3} corpus 5 (sigma 5)
  • \s-O\s corpus 4 (sigma 4)
field:"CommandLine" kind:regex_match
Imageends_with
  • \wget.exe corpus 9 (sigma 9)
field:"Image" kind:ends_with value:"\wget.exe"
OriginalFileNameeq
  • wget.exe corpus 4 (sigma 3, elastic 1)
field:"OriginalFileName" kind:eq value:"wget.exe"

Suspicious Filename with Embedded Base64 Commands

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

Detects files with specially crafted filenames that embed Base64-encoded bash payloads designed to execute when processed by shell scripts. These filenames exploit shell interpretation quirks to trigger hidden commands, a technique observed in VShell malware campaigns.

Known False Positives

  • Legitimate files with similar naming patterns (very unlikely).

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 11: File created

Rule Body

title: Suspicious Filename with Embedded Base64 Commands
id: 179b3686-6271-4d87-807d-17d843a8af73
status: experimental
description: |
    Detects files with specially crafted filenames that embed Base64-encoded bash payloads designed to execute when processed by shell scripts.
    These filenames exploit shell interpretation quirks to trigger hidden commands, a technique observed in VShell malware campaigns.
references:
    - https://www.trellix.com/blogs/research/the-silent-fileless-threat-of-vshell/
author: '@kostastsale'
date: 2025-11-22
tags:
    - attack.execution
    - attack.stealth
    - attack.t1059.004
    - attack.t1027
logsource:
    product: linux
    category: file_event
detection:
    selection:
        TargetFilename|contains:
            - '{echo'
            - '{base64,-d}'
    condition: selection
falsepositives:
    - Legitimate files with similar naming patterns (very unlikely).
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains:
        - '{echo'
        - '{base64,-d}'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • {base64,-d}
  • {echo
field:"TargetFilename" kind:match

Suspicious Get Local Groups Information - PowerShell

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

Detects the use of PowerShell modules and cmdlets to gather local group information. Adversaries may use local system permission groups to determine which groups exist and which users belong to a particular group such as the local administrators group.

Known False Positives

  • Inventory scripts or admin tasks

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Get Local Groups Information - PowerShell
id: fa6a5a45-3ee2-4529-aa14-ee5edc9e29cb
related:
    - id: cef24b90-dddc-4ae1-a09a-8764872f69fc
      type: similar
status: test
description: |
    Detects the use of PowerShell modules and cmdlets to gather local group information.
    Adversaries may use local system permission groups to determine which groups exist and which users belong to a particular group such as the local administrators group.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1069.001/T1069.001.md
author: frack113
date: 2021-12-12
modified: 2025-08-22
tags:
    - attack.discovery
    - attack.t1069.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection_localgroup:
        ScriptBlockText|contains:
            - 'get-localgroup '
            - 'get-localgroupmember '
    selection_wmi_module:
        ScriptBlockText|contains:
            - 'get-wmiobject '
            - 'gwmi '
            - 'get-ciminstance '
            - 'gcim '
    selection_wmi_class:
        ScriptBlockText|contains: 'win32_group' # Covers both win32_group and win32_groupuser
    condition: selection_localgroup or all of selection_wmi_*
falsepositives:
    - Inventory scripts or admin tasks
level: low

Stages and Predicates

Stage 0: condition

selection_localgroup or all of selection_wmi_*

Stage 1: selection_localgroup

selection_localgroup:
    ScriptBlockText|contains:
        - 'get-localgroup '
        - 'get-localgroupmember '

Stage 2: selection_wmi_module

selection_wmi_module:
    ScriptBlockText|contains:
        - 'get-wmiobject '
        - 'gwmi '
        - 'get-ciminstance '
        - 'gcim '

Stage 3: selection_wmi_class

selection_wmi_class:
    ScriptBlockText|contains: 'win32_group'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • gcim
  • get-ciminstance
  • get-localgroup
  • get-localgroupmember
  • get-wmiobject corpus 2 (sigma 2)
  • gwmi corpus 2 (sigma 2)
  • win32_group corpus 2 (sigma 1, splunk 1)
field:"ScriptBlockText" kind:match

Suspicious PowerShell Download and Execute Pattern

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

Detects suspicious PowerShell download patterns that are often used in malicious scripts, stagers or downloaders (make sure that your backend applies the strings case-insensitive)

Known False Positives

  • Software installers that pull packages from remote systems and execute them

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious PowerShell Download and Execute Pattern
id: e6c54d94-498c-4562-a37c-b469d8e9a275
related:
    - id: 3b6ab547-8ec2-4991-b9d2-2b06702a48d7
      type: derived
status: test
description: Detects suspicious PowerShell download patterns that are often used in malicious scripts, stagers or downloaders (make sure that your backend applies the strings case-insensitive)
references:
    - https://gist.github.com/jivoi/c354eaaf3019352ce32522f916c03d70
    - https://www.trendmicro.com/en_us/research/22/j/lv-ransomware-exploits-proxyshell-in-attack.html
author: Florian Roth (Nextron Systems)
date: 2022-02-28
modified: 2022-03-01
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains: # make sure that your backend applies the strings case-insensitive
            - 'IEX ((New-Object Net.WebClient).DownloadString'
            - 'IEX (New-Object Net.WebClient).DownloadString'
            - 'IEX((New-Object Net.WebClient).DownloadString'
            - 'IEX(New-Object Net.WebClient).DownloadString'
            - ' -command (New-Object System.Net.WebClient).DownloadFile('
            - ' -c (New-Object System.Net.WebClient).DownloadFile('
    condition: selection
falsepositives:
    - Software installers that pull packages from remote systems and execute them
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_powershell_susp_download_patterns/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains:
        - 'IEX ((New-Object Net.WebClient).DownloadString'
        - 'IEX (New-Object Net.WebClient).DownloadString'
        - 'IEX((New-Object Net.WebClient).DownloadString'
        - 'IEX(New-Object Net.WebClient).DownloadString'
        - ' -command (New-Object System.Net.WebClient).DownloadFile('
        - ' -c (New-Object System.Net.WebClient).DownloadFile('

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -c (New-Object System.Net.WebClient).DownloadFile(
  • -command (New-Object System.Net.WebClient).DownloadFile(
  • IEX ((New-Object Net.WebClient).DownloadString
  • IEX (New-Object Net.WebClient).DownloadString
  • IEX((New-Object Net.WebClient).DownloadString
  • IEX(New-Object Net.WebClient).DownloadString
field:"CommandLine" kind:match

Sysmon Configuration Error

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

Detects when an adversary is trying to hide it's action from Sysmon logging based on error messages

Known False Positives

  • Legitimate administrative action

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

Rule Body

title: Sysmon Configuration Error
id: 815cd91b-7dbc-4247-841a-d7dd1392b0a8
status: test
description: Detects when an adversary is trying to hide it's action from Sysmon logging based on error messages
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1562.001/T1562.001.md
    - https://talesfrominfosec.blogspot.com/2017/12/killing-sysmon-silently.html
author: frack113
date: 2021-06-04
modified: 2026-07-23
tags:
    - attack.stealth
    - attack.t1564
logsource:
    product: windows
    category: sysmon_error
detection:
    selection_error:
        Description|contains:
            - 'Failed to open service configuration with error'
            - 'Failed to connect to the driver to update configuration'
    filter_generic_english:
        Description|contains|all:
            - 'Failed to open service configuration with error'
            - 'Last error: The media is write protected.'
    filter_generic_french:
        Description|contains|all:
            - 'Failed to open service configuration with error'
            - 'Last error: Média protégé en écriture.'
    filter_by_errorcode:
        Description|contains:
            - 'Failed to open service configuration with error 19'
            - 'Failed to open service configuration with error 93'
    condition: selection_error and not 1 of filter*
falsepositives:
    - Legitimate administrative action
level: high

Stages and Predicates

Stage 0: condition

selection_error and not 1 of filter*

Stage 1: selection_error

selection_error:
    Description|contains:
        - 'Failed to open service configuration with error'
        - 'Failed to connect to the driver to update configuration'

Stage 2: not filter*

filter_generic_english:
    Description|contains|all:
        - 'Failed to open service configuration with error'
        - 'Last error: The media is write protected.'
filter_generic_french:
    Description|contains|all:
        - 'Failed to open service configuration with error'
        - 'Last error: Média protégé en écriture.'
filter_by_errorcode:
    Description|contains:
        - 'Failed to open service configuration with error 19'
        - 'Failed to open service configuration with error 93'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Descriptionmatch
  • Failed to connect to the driver to update configuration
  • Failed to open service configuration with error
field:"Description" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
DescriptionmatchFailed to open service configuration with errorexcludes:Description field:"Description" value:"Failed to open service configuration with error"
DescriptionmatchLast error: Média protégé en écriture.excludes:Description field:"Description" value:"Last error: Média protégé en écriture."
DescriptionmatchLast error: The media is write protected.excludes:Description field:"Description" value:"Last error: The media is write protected."
DescriptionmatchFailed to open service configuration with error 19excludes:Description field:"Description" value:"Failed to open service configuration with error 19"
DescriptionmatchFailed to open service configuration with error 93excludes:Description field:"Description" value:"Failed to open service configuration with error 93"

Ursnif Malware C2 URL Pattern

#
Status
stable
Severity
critical
Author
Thomas Patzke
Source
github.com/SigmaHQ/sigma

Detects Ursnif C2 traffic.

MITRE ATT&CK Coverage

Rule Body

title: Ursnif Malware C2 URL Pattern
id: 932ac737-33ca-4afd-9869-0d48b391fcc9
status: stable
description: Detects Ursnif C2 traffic.
references:
    - https://www.fortinet.com/blog/threat-research/ursnif-variant-spreading-word-document.html
author: Thomas Patzke
date: 2019-12-19
modified: 2021-08-09
tags:
    - attack.initial-access
    - attack.t1566.001
    - attack.execution
    - attack.t1204.002
    - attack.command-and-control
    - attack.t1071.001
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    b64encoding:
        c-uri|contains:
            - '_2f'
            - '_2b'
    urlpatterns:
        c-uri|contains|all:
            - '.avi'
            - '/images/'
    condition: b64encoding and urlpatterns
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

b64encoding and urlpatterns

Stage 1: b64encoding

b64encoding:
    c-uri|contains:
        - '_2f'
        - '_2b'

Stage 2: urlpatterns

urlpatterns:
    c-uri|contains|all:
        - '.avi'
        - '/images/'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
c-urimatch
  • .avi
  • /images/
  • _2b
  • _2f
field:"c-uri" kind:match

UtilityFunctions.ps1 Proxy Dll

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

Detects the use of a Microsoft signed script executing a managed DLL with PowerShell.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: UtilityFunctions.ps1 Proxy Dll
id: 0403d67d-6227-4ea8-8145-4e72db7da120
status: test
description: Detects the use of a Microsoft signed script executing a managed DLL with PowerShell.
references:
    - https://lolbas-project.github.io/lolbas/Scripts/UtilityFunctions/
author: frack113
date: 2022-05-28
tags:
    - attack.stealth
    - attack.t1216
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains:
            - 'UtilityFunctions.ps1'
            - 'RegSnapin '
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains:
        - 'UtilityFunctions.ps1'
        - 'RegSnapin '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • RegSnapin
  • UtilityFunctions.ps1
field:"CommandLine" kind:match

Virtual Machine Created

#
Status
test
Severity
informational
Author
Fukusuke Takahashi
Source
github.com/Yamato-Security/suzaku-rules

Creates a new virtual machine.

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

Rule Body

title: Virtual Machine Created
id: fa1feca0-3566-4e3a-9bcf-8f399ea2db3f
status: test
description: |
    Creates a new virtual machine.
references:
    - https://learn.microsoft.com/en-us/azure/azure-monitor/reference/queries/azureactivity#vm-creation
author: Fukusuke Takahashi
date: 2025-12-02
tags:
    - attack.execution
logsource:
    product: azure
    service: activitylogs
detection:
    selection:
        operationName: MICROSOFT.COMPUTE/VIRTUALMACHINES/WRITE
        properties.statusCode: Created
    condition: selection
falsepositives:
level: informational

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    operationName: MICROSOFT.COMPUTE/VIRTUALMACHINES/WRITE
    properties.statusCode: Created

Indicators

These rows show field, operator, and value matches.

Windows Defender Configuration Changes

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

Detects suspicious changes to the Windows Defender configuration

Known False Positives

  • Administrator activity (must be investigated)

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Windows Defender Configuration Changes
id: 801bd44f-ceed-4eb6-887c-11544633c0aa
related:
    - id: 1321dc4e-a1fe-481d-a016-52c45f0c8b4f
      type: similar
    - id: a3ab73f1-bd46-4319-8f06-4b20d0617886
      type: similar
    - id: 91903aba-1088-42ee-b680-d6d94fe002b0
      type: similar
status: stable
description: Detects suspicious changes to the Windows Defender configuration
references:
    - https://learn.microsoft.com/en-us/defender-endpoint/troubleshoot-microsoft-defender-antivirus?view=o365-worldwide
    - https://bidouillesecurity.com/disable-windows-defender-in-powershell/#DisableAntiSpyware
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-12-06
modified: 2023-11-24
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    product: windows
    service: windefend
detection:
    selection:
        EventID: 5007 # The antimalware platform configuration changed.
        NewValue|contains:
            # TODO: Add more suspicious values
            - '\Windows Defender\DisableAntiSpyware '
            # - '\Windows Defender\Features\TamperProtection ' # Might produce FP
            - '\Windows Defender\Scan\DisableRemovableDriveScanning '
            - '\Windows Defender\Scan\DisableScanningMappedNetworkDrivesForFullScan '
            - '\Windows Defender\SpyNet\DisableBlockAtFirstSeen '
            - '\Real-Time Protection\SpyNetReporting '
            # Exclusions changes are covered in 1321dc4e-a1fe-481d-a016-52c45f0c8b4f
            # Exploit guard changes are covered in a3ab73f1-bd46-4319-8f06-4b20d0617886
    condition: selection
falsepositives:
    - Administrator activity (must be investigated)
level: high
regression_tests_path: regression_data/rules/windows/builtin/windefend/win_defender_suspicious_features_tampering/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 5007
    NewValue|contains:
        - '\Windows Defender\DisableAntiSpyware '
        - '\Windows Defender\Scan\DisableRemovableDriveScanning '
        - '\Windows Defender\Scan\DisableScanningMappedNetworkDrivesForFullScan '
        - '\Windows Defender\SpyNet\DisableBlockAtFirstSeen '
        - '\Real-Time Protection\SpyNetReporting '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
NewValuematch
  • \Real-Time Protection\SpyNetReporting
  • \Windows Defender\DisableAntiSpyware
  • \Windows Defender\Scan\DisableRemovableDriveScanning
  • \Windows Defender\Scan\DisableScanningMappedNetworkDrivesForFullScan
  • \Windows Defender\SpyNet\DisableBlockAtFirstSeen
field:"Details" kind:match

WordPress Wp2shell REST Batch Endpoint Exploitation

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

Detects exploitation attempts against the WordPress REST batch endpoint (CVE-2026-63030, CVE-2026-60137) using the wp2shell PoC tool. The tool sends POST requests to the batch endpoint via the ?rest_route=/batch/v1 query parameter, covering all attack phases from initial probe through SQL injection and pre-auth admin creation. A 207 response confirms the endpoint is active on the target.

Known False Positives

  • WordPress CLI scripts or maintenance tooling invoking the batch endpoint via query parameter

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: WordPress Wp2shell REST Batch Endpoint Exploitation
id: b8d5f301-2c49-4e6d-af83-4a5b6c7d8e9f
status: experimental
description: |
    Detects exploitation attempts against the WordPress REST batch endpoint (CVE-2026-63030,
    CVE-2026-60137) using the wp2shell PoC tool. The tool sends POST requests to the batch endpoint
    via the ?rest_route=/batch/v1 query parameter, covering all attack phases from initial probe
    through SQL injection and pre-auth admin creation. A 207 response confirms the endpoint is
    active on the target.
references:
    - https://github.com/Icex0/wp2shell-poc
    - https://slcyber.io/research-center/wp2shell-pre-authentication-rce-in-wordpress-core/
    - https://wordpress.org/news/2026/07/wordpress-7-0-2-release/
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2026-07-19
tags:
    - attack.initial-access
    - attack.t1190
    - detection.emerging-threats
    - cve.2026-63030
    - cve.2026-60137
logsource:
    category: webserver
detection:
    selection:
        cs-method: 'POST'
        sc-status: 207
        cs-uri-query|contains:
            - 'rest_route=/batch/v1'
            - 'rest_route=%2Fbatch%2Fv1'
    condition: selection
falsepositives:
    - WordPress CLI scripts or maintenance tooling invoking the batch endpoint via query parameter
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'POST'
    sc-status: 207
    cs-uri-query|contains:
        - 'rest_route=/batch/v1'
        - 'rest_route=%2Fbatch%2Fv1'

Indicators

These rows show field, operator, and value matches.

Back to all Sigma rules