Detection rules › Sigma

Sigma rules: 36

AWS Successful Console Login Without MFA

#
Status
experimental
Severity
medium
Author
Thuya@Hacktilizer, Ivan Saakov
Source
github.com/SigmaHQ/sigma

Detects successful AWS console logins that were performed without Multi-Factor Authentication (MFA). This alert can be used to identify potential unauthorized access attempts, as logging in without MFA can indicate compromised credentials or misconfigured security settings.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: AWS Successful Console Login Without MFA
id: 77caf516-34e5-4df9-b4db-20744fea0a60
status: experimental
description: |
    Detects successful AWS console logins that were performed without Multi-Factor Authentication (MFA).
    This alert can be used to identify potential unauthorized access attempts, as logging in without MFA can indicate compromised credentials or misconfigured security settings.
references:
    - https://securitylabs.datadoghq.com/cloud-security-atlas/vulnerabilities/iam-user-without-mfa/
    - https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-aws-console-sign-in-events.html
author: Thuya@Hacktilizer, Ivan Saakov
date: 2025-10-18
modified: 2025-10-21
tags:
    - attack.initial-access
    - attack.persistence
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1078.004
logsource:
    product: aws
    service: cloudtrail
detection:
    selection:
        eventName: 'ConsoleLogin'
        additionalEventData.MFAUsed: 'NO'
        responseElements.ConsoleLogin: 'Success'
    condition: selection
falsepositives:
    - Unlikely
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    eventName: 'ConsoleLogin'
    additionalEventData.MFAUsed: 'NO'
    responseElements.ConsoleLogin: 'Success'

Indicators

These rows show field, operator, and value matches.

Certutil root certificate installation

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

Detects scenarios where an attacker attempts to alter certificate chain validation by installing a root CA.

Known False Positives

  • Administrator manually adding a root CA

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Certutil root certificate installation
description: Detects scenarios where an attacker attempts to alter certificate chain validation by installing a root CA.
references:
- https://twitter.com/Alh4zr3d/status/1592925753984880641
- https://specterops.io/wp-content/uploads/sites/3/2022/06/Certified_Pre-Owned.pdf
- https://posts.specterops.io/code-signing-certificate-cloning-attacks-and-defenses-6f98657fc6ec
- https://learn.microsoft.com/en-us/troubleshoot/windows-server/windows-security/import-third-party-ca-to-enterprise-ntauth-store#method-2---import-a-certificate-by-using-certutilexe
- https://strontic.github.io/xcyclopedia/library/certutil.exe-138DC8312317ED386C1CB62E19EA9269.html
tags:
- attack.defense_evasion
- attack.t1553.004 # Subvert Trust Controls: Install Root Certificate 
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: process_creation
detection: # certutil.exe -dspublish -f C:\rogue.crt NTAuthCA
  selection:
    NewProcessName|endswith: '\certutil.exe'
    Commandline|contains|all:
      - '-dspublish'
      - '.crt'
      - NTAuthCA
  condition: selection
falsepositives:
- Administrator manually adding a root CA
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  NewProcessName|endswith: '\certutil.exe'
  Commandline|contains|all:
    - '-dspublish'
    - '.crt'
    - NTAuthCA

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Commandlinematch
  • -dspublish
  • .crt
  • NTAuthCA
field:"CommandLine" kind:match
NewProcessNameends_with
  • \certutil.exe corpus 43 (sigma 43)
field:"Image" kind:ends_with value:"\certutil.exe"

Communication To LocaltoNet Tunneling Service Initiated

#
Status
test
Severity
high
Author
Andreas Braathen (mnemonic.io)
Source
github.com/SigmaHQ/sigma

Detects an executable initiating a network connection to "LocaltoNet" tunneling sub-domains. LocaltoNet is a reverse proxy that enables localhost services to be exposed to the Internet. Attackers have been seen to use this service for command-and-control activities to bypass MFA and perimeter controls.

Known False Positives

  • Legitimate use of the LocaltoNet service.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 3: Network connection

Rule Body

title: Communication To LocaltoNet Tunneling Service Initiated
id: 3ab65069-d82a-4d44-a759-466661a082d1
status: test
description: |
    Detects an executable initiating a network connection to "LocaltoNet" tunneling sub-domains.
    LocaltoNet is a reverse proxy that enables localhost services to be exposed to the Internet.
    Attackers have been seen to use this service for command-and-control activities to bypass MFA and perimeter controls.
references:
    - https://localtonet.com/documents/supported-tunnels
    - https://cloud.google.com/blog/topics/threat-intelligence/unc3944-targets-saas-applications
author: Andreas Braathen (mnemonic.io)
date: 2024-06-17
tags:
    - attack.command-and-control
    - attack.t1572
    - attack.t1090
    - attack.t1102
logsource:
    category: network_connection
    product: windows
detection:
    selection:
        DestinationHostname|endswith:
            - '.localto.net'
            - '.localtonet.com'
        Initiated: 'true'
    condition: selection
falsepositives:
    - Legitimate use of the LocaltoNet service.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    DestinationHostname|endswith:
        - '.localto.net'
        - '.localtonet.com'
    Initiated: 'true'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
DestinationHostnameends_with
  • .localto.net corpus 2 (sigma 2)
  • .localtonet.com corpus 2 (sigma 2)
field:"DestinationHostname" kind:ends_with
Initiatedeq
  • true corpus 50 (sigma 50)
field:"Initiated" kind:eq value:"true"

Confluence Exploitation CVE-2019-3398

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

Detects the exploitation of the Confluence vulnerability described in CVE-2019-3398

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Confluence Exploitation CVE-2019-3398
id: e9bc39ae-978a-4e49-91ab-5bd481fc668b
status: test
description: Detects the exploitation of the Confluence vulnerability described in CVE-2019-3398
references:
    - https://devcentral.f5.com/s/articles/confluence-arbitrary-file-write-via-path-traversal-cve-2019-3398-34181
author: Florian Roth (Nextron Systems)
date: 2020-05-26
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2019-3398
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains|all:
            - '/upload.action'
            - 'filename=../../../../'
    condition: selection
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'POST'
    cs-uri-query|contains|all:
        - '/upload.action'
        - 'filename=../../../../'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-methodeq
  • POST
field:"cs-method" kind:eq value:"POST"
cs-uri-querymatch
  • /upload.action
  • filename=../../../../
field:"cs-uri-query" kind:match

DarkGate - User Created Via Net.EXE

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

Detects creation of local users via the net.exe command with the name of "DarkGate"

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Persistence

Telemetry Coverage

Rule Body

title: DarkGate - User Created Via Net.EXE
id: bf906d7b-7070-4642-8383-e404cf26eba5
status: test
description: Detects creation of local users via the net.exe command with the name of "DarkGate"
references:
    - Internal Research
author: X__Junior (Nextron Systems)
date: 2023-08-27
modified: 2023-10-15
tags:
    - attack.persistence
    - attack.t1136.001
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    # /c net user /add SafeMode DarkGate0!
    selection:
        Image|endswith:
            - '\net.exe'
            - '\net1.exe'
        CommandLine|contains|all:
            - 'user'
            - 'add'
            - 'DarkGate'
            - 'SafeMode'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\net.exe'
        - '\net1.exe'
    CommandLine|contains|all:
        - 'user'
        - 'add'
        - 'DarkGate'
        - 'SafeMode'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • DarkGate
  • SafeMode
  • add corpus 30 (sigma 26, splunk 4)
  • user corpus 15 (sigma 11, splunk 4)
field:"CommandLine" kind:match
Imageends_with
  • \net.exe corpus 49 (sigma 49)
  • \net1.exe corpus 47 (sigma 47)
field:"Image" kind:ends_with

Esentutl Gather Credentials

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

Conti recommendation to its affiliates to use esentutl to access NTDS dumped file. Trickbot also uses this utilities to get MSEdge info via its module pwgrab.

Known False Positives

  • To be determined

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: Esentutl Gather Credentials
id: 7df1713a-1a5b-4a4b-a071-dc83b144a101
status: test
description: Conti recommendation to its affiliates to use esentutl to access NTDS dumped file. Trickbot also uses this utilities to get MSEdge info via its module pwgrab.
references:
    - https://twitter.com/vxunderground/status/1423336151860002816
    - https://thedfirreport.com/2021/08/01/bazarcall-to-conti-ransomware-via-trickbot-and-cobalt-strike/
author: sam0x90
date: 2021-08-06
modified: 2022-10-09
tags:
    - attack.credential-access
    - attack.t1003
    - attack.t1003.003
    - attack.s0404
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|all:
            - 'esentutl'
            - ' /p'
    condition: selection
falsepositives:
    - To be determined
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - 'esentutl'
        - ' /p'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /p corpus 2 (sigma 2)
  • esentutl
field:"CommandLine" kind:match

Exploit Framework User Agent

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

Detects suspicious user agent strings used by exploit / pentest frameworks like Metasploit in proxy logs

MITRE ATT&CK Coverage

Rule Body

title: Exploit Framework User Agent
id: fdd1bfb5-f60b-4a35-910e-f36ed3d0b32f
status: test
description: Detects suspicious user agent strings used by exploit / pentest frameworks like Metasploit in proxy logs
references:
    - https://blog.didierstevens.com/2015/03/16/quickpost-metasploit-user-agent-strings/
author: Florian Roth (Nextron Systems)
date: 2017-07-08
modified: 2025-01-18
tags:
    - attack.command-and-control
    - attack.t1071.001
logsource:
    category: proxy
detection:
    selection:
        c-useragent:
        # Cobalt Strike https://www.cobaltstrike.com/help-malleable-c2
            - 'Internet Explorer *'
            - 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)' # https://bluescreenofjeff.com/2016-06-28-cobalt-strike-http-c2-redirectors-with-apache-mod_rewrite/

        # Metasploit Framework - Analysis by Didier Stevens https://blog.didierstevens.com/2015/03/16/quickpost-metasploit-user-agent-strings/
            - 'Mozilla/4.0 (compatible; Metasploit RSPEC)'
            - 'Mozilla/4.0 (compatible; MSIE 6.1; Windows NT)'
            - 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)' # old browser, rare, base-lining needed
            - 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)' # old browser, rare, base-lining needed
            - 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)' # old browser, rare, base-lining needed
            - 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SIMBAR={7DB0F6DE-8DE7-4841-9084-28FA914B0F2E}; SLCC1; .N'
            - 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)' # only use in proxy logs - not for detection in web server logs
            - 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/4.0.221.6 Safari/525.13'
            - 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; MAAU)' # Payloads

        # Metasploit Update by Florian Roth 08.07.2017
            - 'Mozilla/5.0'
            - 'Mozilla/4.0 (compatible; SPIPE/1.0'
        # - 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)'  # too many false positives expected
        # - 'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko'  # too many false positives expected
            - 'Mozilla/5.0 (Windows NT 6.3; rv:39.0) Gecko/20100101 Firefox/35.0'
            - 'Sametime Community Agent' # Unknown if prone to false positives - https://github.com/rapid7/metasploit-framework/blob/97095ab3113de2f046e64a64c461a1f888554401/modules/exploits/windows/http/steamcast_useragent.rb
            - 'X-FORWARDED-FOR'
            - 'DotDotPwn v2.1'
            - 'SIPDROID'
            - 'Mozilla/5.0 (Windows NT 10.0; Win32; x32; rv:60.0)' # CobaltStrike https://unit42.paloaltonetworks.com/tracking-oceanlotus-new-downloader-kerrdown/

        # Empire
            - 'Mozilla/6.0 (X11; Linux x86_64; rv:24.0) Gecko/20140205     Firefox/27.0 Iceweasel/25.3.0'

        # Exploits
            - '*wordpress hash grabber*'
            - '*exploit*'

        # Havoc
            - 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36'  # https://github.com/HavocFramework/Havoc/issues/519
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    c-useragent:
        - 'Internet Explorer *'
        - 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)'
        - 'Mozilla/4.0 (compatible; Metasploit RSPEC)'
        - 'Mozilla/4.0 (compatible; MSIE 6.1; Windows NT)'
        - 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)'
        - 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)'
        - 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)'
        - 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SIMBAR={7DB0F6DE-8DE7-4841-9084-28FA914B0F2E}; SLCC1; .N'
        - 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)'
        - 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/4.0.221.6 Safari/525.13'
        - 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; MAAU)'
        - 'Mozilla/5.0'
        - 'Mozilla/4.0 (compatible; SPIPE/1.0'
        - 'Mozilla/5.0 (Windows NT 6.3; rv:39.0) Gecko/20100101 Firefox/35.0'
        - 'Sametime Community Agent'
        - 'X-FORWARDED-FOR'
        - 'DotDotPwn v2.1'
        - 'SIPDROID'
        - 'Mozilla/5.0 (Windows NT 10.0; Win32; x32; rv:60.0)'
        - 'Mozilla/6.0 (X11; Linux x86_64; rv:24.0) Gecko/20140205     Firefox/27.0 Iceweasel/25.3.0'
        - '*wordpress hash grabber*'
        - '*exploit*'
        - 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
c-useragentwildcard
  • *exploit*
  • *wordpress hash grabber*
  • DotDotPwn v2.1
  • Internet Explorer *
  • Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
  • Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; InfoPath.2)
  • Mozilla/4.0 (compatible; MSIE 6.1; Windows NT)
  • Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)
  • Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0; SIMBAR={7DB0F6DE-8DE7-4841-9084-28FA914B0F2E}; SLCC1; .N
  • Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)
  • Mozilla/4.0 (compatible; Metasploit RSPEC)
  • Mozilla/4.0 (compatible; SPIPE/1.0
  • Mozilla/5.0
  • Mozilla/5.0 (Windows NT 10.0; Win32; x32; rv:60.0)
  • Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
  • Mozilla/5.0 (Windows NT 6.3; rv:39.0) Gecko/20100101 Firefox/35.0
  • Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/4.0.221.6 Safari/525.13
  • Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
  • Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; MAAU)
  • Mozilla/6.0 (X11; Linux x86_64; rv:24.0) Gecko/20140205 Firefox/27.0 Iceweasel/25.3.0
  • SIPDROID
  • Sametime Community Agent
  • X-FORWARDED-FOR
field:"c-useragent" kind:wildcard

F5 BIG-IP iControl Rest API Command Execution - Webserver

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

Detects POST requests to the F5 BIG-IP iControl Rest API "bash" endpoint, which allows the execution of commands on the BIG-IP

Known False Positives

  • Legitimate usage of the BIG IP REST API to execute command for administration purposes

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: F5 BIG-IP iControl Rest API Command Execution - Webserver
id: 85254a62-22be-4239-b79c-2ec17e566c37
related:
    - id: b59c98c6-95e8-4d65-93ee-f594dfb96b17
      type: similar
status: test
description: Detects POST requests to the F5 BIG-IP iControl Rest API "bash" endpoint, which allows the execution of commands on the BIG-IP
references:
    - https://f5-sdk.readthedocs.io/en/latest/apidoc/f5.bigip.tm.util.html#module-f5.bigip.tm.util.bash
    - https://community.f5.com/t5/technical-forum/icontrolrest-11-5-execute-bash-command/td-p/203029
    - https://community.f5.com/t5/technical-forum/running-bash-commands-via-rest-api/td-p/272516
author: Nasreddine Bencherchali (Nextron Systems), Thurein Oo
date: 2023-11-08
tags:
    - attack.execution
    - attack.t1190
    - attack.initial-access
logsource:
    category: webserver
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|endswith: '/mgmt/tm/util/bash'
    condition: selection
falsepositives:
    - Legitimate usage of the BIG IP REST API to execute command for administration purposes
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'POST'
    cs-uri-query|endswith: '/mgmt/tm/util/bash'

Indicators

These rows show field, operator, and value matches.

Failed Console Login

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

Detects failed console login attempts, which may indicate an attacker attempting to gain access to

MITRE ATT&CK Coverage

TacticTechniques
Initial AccessNo specific technique

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Failed Console Login
id: 978c15f1-3468-42b2-bf0f-bb29ae6168cc
status: test
description: Detects failed console login attempts, which may indicate an attacker attempting to gain access to
references:
author: Zach Mathis (@yamatosecurity)
date: 2025-08-02
modified: 2025-08-02
tags:
    - attack.initial_access
logsource:
    product: aws
    service: cloudtrail
detection:
    selection:
        eventSource: signin.amazonaws.com
        eventName: 'ConsoleLogin'
        responseElements.ConsoleLogin: 'Failure'
    condition: selection
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    eventSource: signin.amazonaws.com
    eventName: 'ConsoleLogin'
    responseElements.ConsoleLogin: 'Failure'

Indicators

These rows show field, operator, and value matches.

FileFix - Command Evidence in TypedPaths

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

Detects commonly-used chained commands and strings in the most recent 'url' value of the 'TypedPaths' key, which could be indicative of a user being targeted by the FileFix technique.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: FileFix - Command Evidence in TypedPaths
id: 4fee3d51-8069-4a4c-a0f7-924fcaff2c70
related:
    - id: 4be03877-d5b6-4520-85c9-a5911c0a656c
      type: similar
status: experimental
description: |
    Detects commonly-used chained commands and strings in the most recent 'url' value of the 'TypedPaths' key, which could be indicative of a user being targeted by the FileFix technique.
references:
    - https://x.com/russianpanda9xx/status/1940831134759506029
    - https://mrd0x.com/filefix-clickfix-alternative/
    - https://www.scpx.com.au/2025/11/16/decades-old-finger-protocol-abused-in-clickfix-malware-attacks/
author: Alfie Champion (delivr.to), Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-07-05
modified: 2025-11-19
tags:
    - attack.execution
    - attack.t1204.004
logsource:
    category: registry_set
    product: windows
detection:
    selection_base:
        TargetObject|endswith: '\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths\url1'
        Details|contains|all:
            - '#'
            - 'http'
    selection_cmd:
        - Details|contains:
              # Add more suspicious keywords
              - 'account'
              - 'anti-bot'
              - 'botcheck'
              - 'captcha'
              - 'challenge'
              - 'confirmation'
              - 'fraud'
              - 'human'
              - 'identification'
              - 'identificator'
              - 'identity'
              - 'robot'
              - 'validation'
              - 'verification'
              - 'verify'
        - Details|contains:
              - '%comspec%'
              - 'bitsadmin'
              - 'certutil'
              - 'cmd'
              - 'cscript'
              - 'curl'
              - 'finger'
              - 'mshta'
              - 'powershell'
              - 'pwsh'
              - 'regsvr32'
              - 'rundll32'
              - 'schtasks'
              - 'wget'
              - 'wscript'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_base

selection_base:
    TargetObject|endswith: '\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths\url1'
    Details|contains|all:
        - '#'
        - 'http'

Stage 2: selection_cmd

selection_cmd:
    - Details|contains:
          - 'account'
          - 'anti-bot'
          - 'botcheck'
          - 'captcha'
          - 'challenge'
          - 'confirmation'
          - 'fraud'
          - 'human'
          - 'identification'
          - 'identificator'
          - 'identity'
          - 'robot'
          - 'validation'
          - 'verification'
          - 'verify'
    - Details|contains:
          - '%comspec%'
          - 'bitsadmin'
          - 'certutil'
          - 'cmd'
          - 'cscript'
          - 'curl'
          - 'finger'
          - 'mshta'
          - 'powershell'
          - 'pwsh'
          - 'regsvr32'
          - 'rundll32'
          - 'schtasks'
          - 'wget'
          - 'wscript'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsmatch
  • # corpus 3 (sigma 3)
  • %comspec% corpus 3 (sigma 3)
  • account corpus 2 (sigma 2)
  • anti-bot corpus 2 (sigma 2)
  • bitsadmin corpus 2 (sigma 2)
  • botcheck corpus 2 (sigma 2)
  • captcha corpus 2 (sigma 2)
  • certutil corpus 2 (sigma 2)
  • challenge corpus 2 (sigma 2)
  • cmd corpus 3 (sigma 3)
  • confirmation corpus 2 (sigma 2)
  • cscript corpus 4 (sigma 4)
  • curl corpus 2 (sigma 2)
  • finger corpus 2 (sigma 2)
  • fraud corpus 2 (sigma 2)
  • http corpus 3 (sigma 2, elastic 1)
  • human corpus 2 (sigma 2)
  • identification corpus 2 (sigma 2)
  • identificator corpus 2 (sigma 2)
  • identity corpus 2 (sigma 2)
  • mshta corpus 5 (sigma 4, splunk 1)
  • powershell corpus 10 (sigma 9, elastic 1)
  • pwsh corpus 5 (sigma 5)
  • regsvr32 corpus 3 (sigma 3)
  • robot corpus 2 (sigma 2)
  • rundll32 corpus 4 (sigma 4)
  • schtasks corpus 2 (sigma 2)
  • validation corpus 2 (sigma 2)
  • verification corpus 2 (sigma 2)
  • verify corpus 2 (sigma 2)
  • wget corpus 2 (sigma 2)
  • wscript corpus 4 (sigma 4)
field:"Details" kind:match
TargetObjectends_with
  • \Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths\url1 corpus 2 (sigma 2)
field:"TargetObject" kind:ends_with value:"\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths\url1"

Fireball Archer Install

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

Detects Archer malware invocation via rundll32

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Fireball Archer Install
id: 3d4aebe0-6d29-45b2-a8a4-3dfde586a26d
status: test
description: Detects Archer malware invocation via rundll32
references:
    - https://www.virustotal.com/en/file/9b4971349ae85aa09c0a69852ed3e626c954954a3927b3d1b6646f139b930022/analysis/
    - https://www.hybrid-analysis.com/sample/9b4971349ae85aa09c0a69852ed3e626c954954a3927b3d1b6646f139b930022?environmentId=100
author: Florian Roth (Nextron Systems)
date: 2017-06-03
modified: 2021-11-27
tags:
    - attack.execution
    - attack.stealth
    - attack.t1218.011
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains|all:
            - 'rundll32.exe'
            - 'InstallArcherSvc'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - 'rundll32.exe'
        - 'InstallArcherSvc'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • InstallArcherSvc
  • rundll32.exe corpus 8 (sigma 8)
field:"CommandLine" kind:match

Firewall Disabled via Netsh.EXE

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

Detects netsh commands that turns off the Windows firewall

Known False Positives

  • Legitimate administration activity

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Firewall Disabled via Netsh.EXE
id: 57c4bf16-227f-4394-8ec7-1b745ee061c3
status: test
description: Detects netsh commands that turns off the Windows firewall
references:
    - https://www.winhelponline.com/blog/enable-and-disable-windows-firewall-quickly-using-command-line/
    - https://app.any.run/tasks/210244b9-0b6b-4a2c-83a3-04bd3175d017/
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1562.004/T1562.004.md#atomic-test-1---disable-microsoft-defender-firewall
author: Fatih Sirin
date: 2019-11-01
modified: 2023-02-13
tags:
    - attack.defense-impairment
    - attack.t1686.003
    - attack.s0108
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\netsh.exe'
        - OriginalFileName: 'netsh.exe'
    selection_cli_1:
        # Example: netsh firewall set opmode disable
        CommandLine|contains|all:
            - 'firewall'
            - 'set'
            - 'opmode'
            - 'disable'
    selection_cli_2:
        # Example: netsh advfirewall set currentprofile state off
        CommandLine|contains|all:
            - 'advfirewall'
            - 'set'
            - 'state'
            - 'off'
    condition: selection_img and 1 of selection_cli_*
falsepositives:
    - Legitimate administration activity
level: medium

Stages and Predicates

Stage 0: condition

selection_img and 1 of selection_cli_*

Stage 1: selection_img

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

Stage 2: selection_cli_1

selection_cli_1:
    CommandLine|contains|all:
        - 'firewall'
        - 'set'
        - 'opmode'
        - 'disable'

Stage 3: selection_cli_2

selection_cli_2:
    CommandLine|contains|all:
        - 'advfirewall'
        - 'set'
        - 'state'
        - 'off'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • advfirewall corpus 6 (sigma 6)
  • disable corpus 13 (sigma 10, splunk 3)
  • firewall corpus 13 (sigma 7, splunk 6)
  • off corpus 4 (sigma 3, splunk 1)
  • opmode corpus 2 (sigma 2)
  • set corpus 11 (sigma 10, splunk 1)
  • state corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \netsh.exe corpus 28 (sigma 28)
field:"Image" kind:ends_with value:"\netsh.exe"
OriginalFileNameeq
  • netsh.exe corpus 21 (sigma 14, splunk 7)
field:"OriginalFileName" kind:eq value:"netsh.exe"

HackTool - XORDump Execution

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

Detects suspicious use of XORDump process memory dumping utility

Known False Positives

  • Another tool that uses the command line switches of XORdump

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: HackTool - XORDump Execution
id: 66e563f9-1cbd-4a22-a957-d8b7c0f44372
status: test
description: Detects suspicious use of XORDump process memory dumping utility
references:
    - https://github.com/audibleblink/xordump
author: Florian Roth (Nextron Systems)
date: 2022-01-28
modified: 2023-02-08
tags:
    - attack.stealth
    - attack.t1036
    - attack.t1003.001
    - attack.credential-access
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Image|endswith: '\xordump.exe'
        - CommandLine|contains:
              - ' -process lsass.exe '
              - ' -m comsvcs '
              - ' -m dbghelp '
              - ' -m dbgcore '
    condition: selection
falsepositives:
    - Another tool that uses the command line switches of XORdump
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_hktl_xordump/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    - Image|endswith: '\xordump.exe'
    - CommandLine|contains:
          - ' -process lsass.exe '
          - ' -m comsvcs '
          - ' -m dbghelp '
          - ' -m dbgcore '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -m comsvcs
  • -m dbgcore
  • -m dbghelp
  • -process lsass.exe
field:"CommandLine" kind:match
Imageends_with
  • \xordump.exe
field:"Image" kind:ends_with value:"\xordump.exe"

MacOS Network Service Scanning

#
Status
test
Severity
low
Author
Alejandro Ortuno, oscd.community
Source
github.com/SigmaHQ/sigma

Detects enumeration of local or remote network services.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

Rule Body

title: MacOS Network Service Scanning
id: 84bae5d4-b518-4ae0-b331-6d4afd34d00f
status: test
description: Detects enumeration of local or remote network services.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1046/T1046.md
author: Alejandro Ortuno, oscd.community
date: 2020-10-21
modified: 2021-11-27
tags:
    - attack.discovery
    - attack.t1046
logsource:
    category: process_creation
    product: macos
detection:
    selection_1:
        Image|endswith:
            - '/nc'
            - '/netcat'
    selection_2:
        Image|endswith:
            - '/nmap'
            - '/telnet'
    filter:
        CommandLine|contains: 'l'
    condition: (selection_1 and not filter) or selection_2
falsepositives:
    - Legitimate administration activities
level: low

Stages and Predicates

Stage 0: condition

(selection_1 and not filter) or selection_2

Stage 1: selection_1

selection_1:
    Image|endswith:
        - '/nc'
        - '/netcat'

Stage 2: not filter

filter:
    CommandLine|contains: 'l'

Stage 3: selection_2

selection_2:
    Image|endswith:
        - '/nmap'
        - '/telnet'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /nc corpus 7 (sigma 7)
  • /netcat corpus 6 (sigma 6)
  • /nmap corpus 3 (sigma 3)
  • /telnet corpus 3 (sigma 3)
field:"Image" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematchlexcludes:CommandLine field:"CommandLine" value:"l"

Microsoft Defender massive host infection

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

Detects scenarios where multiple suspicious threats are detected on a single host

Known False Positives

  • EICAR test file

Telemetry Coverage

Rule Body

title: Microsoft Defender massive host infection
description: Detects scenarios where multiple suspicious threats are detected on a single host
references:
- https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-antivirus/troubleshoot-microsoft-defender-antivirus
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/Antivirus
tags:
- malware
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: windefend
detection:
  selection:
    EventID: 1116 # Threat detected, no action taken
  condition: selection | count(ThreatName) by Computer > 5
  timeframe: 30m
falsepositives:
- EICAR test file
level: high

Stages and Predicates

Stage 0: condition

selection | count(ThreatName) by Computer > 5

Stage 1: selection

selection:
  EventID: 1116
Threshold
> 5

Office Macro File Creation From Suspicious Process

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

Detects the creation of a office macro file from a a suspicious process

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Office Macro File Creation From Suspicious Process
id: b1c50487-1967-4315-a026-6491686d860e
status: test
description: Detects the creation of a office macro file from a a suspicious process
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1566.001/T1566.001.md
    - https://learn.microsoft.com/en-us/deployoffice/compat/office-file-format-reference
author: frack113, Nasreddine Bencherchali (Nextron Systems)
date: 2022-01-23
modified: 2023-02-22
tags:
    - attack.initial-access
    - attack.t1566.001
logsource:
    category: file_event
    product: windows
    definition: 'Requirements: The "ParentImage" field is not available by default on EID 11 of Sysmon logs. To be able to use this rule to the full extent you need to enriche the log with additional ParentImage data'
detection:
    selection_cmd:
        - Image|endswith:
              - '\cscript.exe'
              - '\mshta.exe'
              - '\regsvr32.exe'
              - '\rundll32.exe'
              - '\wscript.exe'
        # Note: ParentImage is a custom field and is not available by default on Sysmon EID 11
        - ParentImage|endswith:
              - '\cscript.exe'
              - '\mshta.exe'
              - '\regsvr32.exe'
              - '\rundll32.exe'
              - '\wscript.exe'
    selection_ext:
        TargetFilename|endswith:
            - '.docm'
            - '.dotm'
            - '.xlsm'
            - '.xltm'
            - '.potm'
            - '.pptm'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_cmd

selection_cmd:
    - Image|endswith:
          - '\cscript.exe'
          - '\mshta.exe'
          - '\regsvr32.exe'
          - '\rundll32.exe'
          - '\wscript.exe'
    - ParentImage|endswith:
          - '\cscript.exe'
          - '\mshta.exe'
          - '\regsvr32.exe'
          - '\rundll32.exe'
          - '\wscript.exe'

Stage 2: selection_ext

selection_ext:
    TargetFilename|endswith:
        - '.docm'
        - '.dotm'
        - '.xlsm'
        - '.xltm'
        - '.potm'
        - '.pptm'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \cscript.exe corpus 72 (sigma 72)
  • \mshta.exe corpus 67 (sigma 66, splunk 1)
  • \regsvr32.exe corpus 64 (sigma 64)
  • \rundll32.exe corpus 94 (sigma 94)
  • \wscript.exe corpus 74 (sigma 74)
field:"Image" kind:ends_with
ParentImageends_with
  • \cscript.exe corpus 17 (sigma 17)
  • \mshta.exe corpus 13 (sigma 13)
  • \regsvr32.exe corpus 11 (sigma 11)
  • \rundll32.exe corpus 15 (sigma 15)
  • \wscript.exe corpus 19 (sigma 19)
field:"ParentImage" kind:ends_with
TargetFilenameends_with
  • .docm corpus 4 (sigma 4)
  • .dotm corpus 4 (sigma 4)
  • .potm corpus 3 (sigma 3)
  • .pptm corpus 3 (sigma 3)
  • .xlsm corpus 4 (sigma 4)
  • .xltm corpus 4 (sigma 4)
field:"TargetFilename" kind:ends_with

Outlook Macro Execution Without Warning Setting Enabled

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

Detects the modification of Outlook security setting to allow unprompted execution of macros.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Outlook Macro Execution Without Warning Setting Enabled
id: e3b50fa5-3c3f-444e-937b-0a99d33731cd
status: test
description: Detects the modification of Outlook security setting to allow unprompted execution of macros.
references:
    - https://www.mdsec.co.uk/2020/11/a-fresh-outlook-on-mail-based-persistence/
    - https://speakerdeck.com/heirhabarov/hunting-for-persistence-via-microsoft-exchange-server-or-outlook?slide=53
author: '@ScoubiMtl'
date: 2021-04-05
modified: 2023-08-17
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.command-and-control
    - attack.t1137
    - attack.t1008
    - attack.t1546
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|endswith: '\Outlook\Security\Level'
        Details|contains: '0x00000001' # Enable all Macros
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|endswith: '\Outlook\Security\Level'
    Details|contains: '0x00000001'

Indicators

These rows show field, operator, and value matches.

Password Dumper Activity on LSASS

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

Detects process handle on LSASS process with certain access mask and object type SAM_DOMAIN

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: Password Dumper Activity on LSASS
id: aa1697b7-d611-4f9a-9cb2-5125b4ccfd5c
status: test
description: Detects process handle on LSASS process with certain access mask and object type SAM_DOMAIN
references:
    - https://twitter.com/jackcr/status/807385668833968128
author: sigma
date: 2017-02-12
modified: 2022-10-09
tags:
    - attack.credential-access
    - attack.t1003.001
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4656
        ProcessName|endswith: '\lsass.exe'
        AccessMask: '0x705'
        ObjectType: 'SAM_DOMAIN'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 4656
    ProcessName|endswith: '\lsass.exe'
    AccessMask: '0x705'
    ObjectType: 'SAM_DOMAIN'

Indicators

These rows show field, operator, and value matches.

Potential AMSI Bypass Script Using NULL Bits

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

Detects usage of special strings/null bits in order to potentially bypass AMSI functionalities

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Potential AMSI Bypass Script Using NULL Bits
id: fa2559c8-1197-471d-9cdd-05a0273d4522
related:
    - id: 92a974db-ab84-457f-9ec0-55db83d7a825
      type: similar
status: test
description: Detects usage of special strings/null bits in order to potentially bypass AMSI functionalities
references:
    - https://github.com/r00t-3xp10it/hacking-material-books/blob/43cb1e1932c16ff1f58b755bc9ab6b096046853f/obfuscation/simple_obfuscation.md#amsi-bypass-using-null-bits-satoshi
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-01-04
modified: 2023-05-09
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains:
            - "if(0){{{0}}}' -f $(0 -as [char]) +"
            - "#<NULL>"
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains:
        - "if(0){{{0}}}' -f $(0 -as [char]) +"
        - "#<NULL>"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • #<NULL>
  • if(0){{{0}}}' -f $(0 -as [char]) +
field:"ScriptBlockText" kind:match

Potential JNDI Injection Exploitation In JVM Based Application

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

Detects potential JNDI Injection exploitation. Often coupled with Log4Shell exploitation.

Known False Positives

  • Application bugs

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Potential JNDI Injection Exploitation In JVM Based Application
id: bb0e9cec-d4da-46f5-997f-22efc59f3dca
status: test
description: Detects potential JNDI Injection exploitation. Often coupled with Log4Shell exploitation.
references:
    - https://www.wix.engineering/post/threat-and-vulnerability-hunting-with-application-server-error-logs
    - https://secariolabs.com/research/analysing-and-reproducing-poc-for-log4j-2-15-0
author: Moti Harmats
date: 2023-02-11
tags:
    - attack.initial-access
    - attack.t1190
logsource:
    category: application
    product: jvm
    definition: 'Requirements: application error logs must be collected (with LOG_LEVEL=ERROR and above)'
detection:
    keywords:
        - 'com.sun.jndi.ldap.'
        - 'org.apache.logging.log4j.core.net.JndiManager'
    condition: keywords
falsepositives:
    - Application bugs
level: high

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'com.sun.jndi.ldap.'
    - 'org.apache.logging.log4j.core.net.JndiManager'

Potential XCSSET Malware Infection

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

Identifies the execution traces of the XCSSET malware. XCSSET is a macOS trojan that primarily spreads via Xcode projects and maliciously modifies applications. Infected users are also vulnerable to having their credentials, accounts, and other vital data stolen.

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Telemetry Coverage

Rule Body

title: Potential XCSSET Malware Infection
id: 47d65ac0-c06f-4ba2-a2e3-d263139d0f51
status: test
description: Identifies the execution traces of the XCSSET malware. XCSSET is a macOS trojan that primarily spreads via Xcode projects and maliciously modifies applications. Infected users are also vulnerable to having their credentials, accounts, and other vital data stolen.
references:
    - https://github.com/elastic/protections-artifacts/commit/746086721fd385d9f5c6647cada1788db4aea95f#diff-f5deb07688e1a8dec9530bc3071967b2da5c16b482e671812b864c37beb28f08
    - https://malpedia.caad.fkie.fraunhofer.de/details/osx.xcsset
author: Tim Rauch (rule), Elastic (idea)
date: 2022-10-17
tags:
    - attack.command-and-control
logsource:
    category: process_creation
    product: macos
detection:
    selection_1_curl:
        ParentImage|endswith: '/bash'
        Image|endswith: '/curl'
        CommandLine|contains:
            - '/sys/log.php'
            - '/sys/prepod.php'
            - '/sys/bin/Pods'
    selection_1_https:
        CommandLine|contains: 'https://'
    selection_other_1:
        ParentImage|endswith: '/bash'
        Image|endswith: '/osacompile'
        CommandLine|contains|all:
            - '/Users/'
            - '/Library/Group Containers/'
    selection_other_2:
        ParentImage|endswith: '/bash'
        Image|endswith: '/plutil'
        CommandLine|contains|all:
            - 'LSUIElement'
            - '/Users/'
            - '/Library/Group Containers/'
    selection_other_3:
        Image|endswith: '/zip'
        CommandLine|contains|all:
            - '-r'
            - '/Users/'
            - '/Library/Group Containers/'
    condition: all of selection_1_* or 1 of selection_other_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_1_* or 1 of selection_other_*

Stage 1: selection_1_curl

selection_1_curl:
    ParentImage|endswith: '/bash'
    Image|endswith: '/curl'
    CommandLine|contains:
        - '/sys/log.php'
        - '/sys/prepod.php'
        - '/sys/bin/Pods'

Stage 2: selection_1_https

selection_1_https:
    CommandLine|contains: 'https://'

Stage 3: selection_other_1

selection_other_1:
    ParentImage|endswith: '/bash'
    Image|endswith: '/osacompile'
    CommandLine|contains|all:
        - '/Users/'
        - '/Library/Group Containers/'

Stage 4: selection_other_2

selection_other_2:
    ParentImage|endswith: '/bash'
    Image|endswith: '/plutil'
    CommandLine|contains|all:
        - 'LSUIElement'
        - '/Users/'
        - '/Library/Group Containers/'

Stage 5: selection_other_3

selection_other_3:
    Image|endswith: '/zip'
    CommandLine|contains|all:
        - '-r'
        - '/Users/'
        - '/Library/Group Containers/'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -r corpus 9 (sigma 9)
  • /Library/Group Containers/
  • /Users/ corpus 2 (sigma 2)
  • /sys/bin/Pods
  • /sys/log.php
  • /sys/prepod.php
  • LSUIElement
  • https:// corpus 20 (sigma 18, elastic 1, splunk 1)
field:"CommandLine" kind:match
Imageends_with
  • /curl corpus 22 (sigma 22)
  • /osacompile corpus 2 (sigma 2)
  • /plutil corpus 3 (sigma 3)
  • /zip corpus 2 (sigma 2)
field:"Image" kind:ends_with
ParentImageends_with
  • /bash
field:"ParentImage" kind:ends_with value:"/bash"

PsExec Service Installation

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

Detects PsExec service installation and execution events

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: PsExec Service Installation
id: 42c575ea-e41e-41f1-b248-8093c3e82a28
status: test
description: Detects PsExec service installation and execution events
references:
    - https://www.jpcert.or.jp/english/pub/sr/ir_research.html
    - https://jpcertcc.github.io/ToolAnalysisResultSheet
author: Thomas Patzke
date: 2017-06-12
modified: 2023-08-04
tags:
    - attack.execution
    - attack.t1569.002
    - attack.s0029
logsource:
    product: windows
    service: system
detection:
    selection_eid:
        Provider_Name: 'Service Control Manager'
        EventID: 7045
    selection_service:
        - ServiceName: 'PSEXESVC'
        - ImagePath|endswith: '\PSEXESVC.exe'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_eid

selection_eid:
    Provider_Name: 'Service Control Manager'
    EventID: 7045

Stage 2: selection_service

selection_service:
    - ServiceName: 'PSEXESVC'
    - ImagePath|endswith: '\PSEXESVC.exe'

Indicators

These rows show field, operator, and value matches.

PUA - Chisel Tunneling Tool Execution

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

Detects usage of the Chisel tunneling tool via the commandline arguments

Known False Positives

  • Some false positives may occur with other tools with similar commandlines

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

Rule Body

title: PUA - Chisel Tunneling Tool Execution
id: 8b0e12da-d3c3-49db-bb4f-256703f380e5
related:
    - id: cf93e05e-d798-4d9e-b522-b0248dc61eaf
      type: similar
status: test
description: Detects usage of the Chisel tunneling tool via the commandline arguments
references:
    - https://github.com/jpillora/chisel/
    - https://arcticwolf.com/resources/blog/lorenz-ransomware-chiseling-in/
    - https://blog.sekoia.io/lucky-mouse-incident-response-to-detection-engineering/
author: Florian Roth (Nextron Systems)
date: 2022-09-13
modified: 2023-02-13
tags:
    - attack.command-and-control
    - attack.t1090.001
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        Image|endswith: '\chisel.exe'
    selection_param1:
        CommandLine|contains:
            - 'exe client '
            - 'exe server '
    selection_param2:
        CommandLine|contains:
            - '-socks5'
            - '-reverse'
            - ' r:'
            - ':127.0.0.1:'
            - '-tls-skip-verify '
            - ':socks'
    condition: selection_img or all of selection_param*
falsepositives:
    - Some false positives may occur with other tools with similar commandlines
level: high

Stages and Predicates

Stage 0: condition

selection_img or all of selection_param*

Stage 1: selection_img

selection_img:
    Image|endswith: '\chisel.exe'

Stage 2: selection_param1

selection_param1:
    CommandLine|contains:
        - 'exe client '
        - 'exe server '

Stage 3: selection_param2

selection_param2:
    CommandLine|contains:
        - '-socks5'
        - '-reverse'
        - ' r:'
        - ':127.0.0.1:'
        - '-tls-skip-verify '
        - ':socks'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • r:
  • -reverse
  • -socks5
  • -tls-skip-verify
  • :127.0.0.1:
  • :socks
  • exe client
  • exe server
field:"CommandLine" kind:match
Imageends_with
  • \chisel.exe
field:"Image" kind:ends_with value:"\chisel.exe"

RedSun - TieringEngineService.exe Detected as EICAR Test File

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

Detects Windows Defender (EventID 1119 - Remediation Action Failed) flagging TieringEngineService.exe dropped in a characteristic RS-{GUID} temporary directory, or the RedSun.exe process itself being present. This covers the staging pattern used by RedSun, a Cloud Files API and opportunistic lock (oplock) based AV bypass/privilege escalation tool. RedSun works as follows: 1. Registers a Cloud Files sync root and creates a Cloud Files placeholder for TieringEngineService.exe under %TEMP%\RS-{GUID}
2. The placeholder file carries EICAR test file content (Virus:DOS/EICAR_Test_File) to reliably trigger a Defender scan and remediation attempt 3. Requests a batch oplock (FSCTL_REQUEST_BATCH_OPLOCK) on the placeholder file 4. When Defender attempts to scan/quarantine the file, the oplock triggers - holding the file open 5. During the oplock break window, RedSun swaps the mount point (junction) to redirect \?\C:\Windows\System32 to the attacker-controlled temp path 6. This races the AV/OS into executing the malicious TieringEngineService.exe with elevated privileges

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: RedSun - TieringEngineService.exe Detected as EICAR Test File
id: a7c3e5f2-8b1d-4e9a-b6c2-3d7f5e8a9b4c
status: experimental
description: |
    Detects Windows Defender (EventID 1119 - Remediation Action Failed) flagging TieringEngineService.exe
    dropped in a characteristic RS-{GUID} temporary directory, or the RedSun.exe process itself being present.
    This covers the staging pattern used by RedSun, a Cloud Files API and opportunistic lock (oplock) based
    AV bypass/privilege escalation tool.

    RedSun works as follows:
      1. Registers a Cloud Files sync root and creates a Cloud Files placeholder for TieringEngineService.exe under %TEMP%\RS-{GUID}\
      2. The placeholder file carries EICAR test file content (Virus:DOS/EICAR_Test_File) to reliably trigger
         a Defender scan and remediation attempt
      3. Requests a batch oplock (FSCTL_REQUEST_BATCH_OPLOCK) on the placeholder file
      4. When Defender attempts to scan/quarantine the file, the oplock triggers - holding the file open
      5. During the oplock break window, RedSun swaps the mount point (junction) to redirect
         \\?\C:\Windows\System32 to the attacker-controlled temp path
      6. This races the AV/OS into executing the malicious TieringEngineService.exe with elevated privileges
references:
    - https://github.com/Nightmare-Eclipse/RedSun/blob/7456cc8cf066f5e5fc6cdf7d3272a466ebd6b2f6/RedSun.cpp#L605
    - https://deadeclipse666.blogspot.com/2026/04/public-disclosure-response-for-cve-2026.html
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2026-04-17
tags:
    - attack.stealth
    - attack.defense-impairment
    - attack.t1036.005
    - attack.t1685
    - attack.privilege-escalation
    - attack.t1055
    - detection.emerging-threats
logsource:
    product: windows
    service: windefend
detection:
    # EventID 1119: Microsoft Defender Antivirus has encountered an error trying to take action on malware or unwanted software
    # Path field from event: file:_C:\Users\<user>\AppData\Local\Temp\<n>\RS-{GUID}\TieringEngineService.exe
    # Threat name 'Virus:DOS/EICAR_Test_File' is expected - RedSun uses EICAR content to reliably trigger a Defender scan/remediation
    selection_eid:
        EventID: 1119
        SourceName: 'Real-Time Protection'
    selection_susp_path:
        Path|endswith: '\TieringEngineService.exe'
        ThreatName|endswith: 'EICAR_Test_File'
    selection_susp_process:
        ProcessName|endswith: '\RedSun.exe'
    condition: selection_eid and 1 of selection_susp_*
falsepositives:
    - Unlikely
level: critical
regression_tests_path: regression_data/rules-emerging-threats/2026/Exploits/RedSun/win_defender_exploit_redsun_tiering_engine_detected_as_eicar/info.yml

Stages and Predicates

Stage 0: condition

selection_eid and 1 of selection_susp_*

Stage 1: selection_eid

selection_eid:
    EventID: 1119
    SourceName: 'Real-Time Protection'

Stage 2: selection_susp_path

selection_susp_path:
    Path|endswith: '\TieringEngineService.exe'
    ThreatName|endswith: 'EICAR_Test_File'

Stage 3: selection_susp_process

selection_susp_process:
    ProcessName|endswith: '\RedSun.exe'

Indicators

These rows show field, operator, and value matches.

Remote Access Tool - Anydesk Execution From Suspicious Folder

#
Status
test
Severity
high
Author
Florian Roth (Nextron Systems)
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 of AnyDesk from a non-standard folder

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Remote Access Tool - Anydesk Execution From Suspicious Folder
id: 065b00ca-5d5c-4557-ac95-64a6d0b64d86
related:
    - id: b52e84a3-029e-4529-b09b-71d19dd27e94
      type: similar
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-2---anydesk-files-detected-test-on-windows
    - https://thedfirreport.com/2025/02/24/confluence-exploit-leads-to-lockbit-ransomware/
author: Florian Roth (Nextron Systems)
date: 2022-05-20
modified: 2025-02-24
tags:
    - attack.command-and-control
    - attack.t1219.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Image|endswith:
              - '\AnyDesk.exe'
              - '\AnyDeskMSI.exe'
        - Description: AnyDesk
        - Product: AnyDesk
        - Company: AnyDesk Software GmbH
    filter:
        Image|contains:
            - '\AppData\'
            - 'Program Files (x86)\AnyDesk'
            - 'Program Files\AnyDesk'
    condition: selection and not filter
falsepositives:
    - Legitimate use of AnyDesk from a non-standard folder
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    - Image|endswith:
          - '\AnyDesk.exe'
          - '\AnyDeskMSI.exe'
    - Description: AnyDesk
    - Product: AnyDesk
    - Company: AnyDesk Software GmbH

Stage 2: not filter

filter:
    Image|contains:
        - '\AppData\'
        - 'Program Files (x86)\AnyDesk'
        - 'Program Files\AnyDesk'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Companyeq
  • AnyDesk Software GmbH corpus 3 (sigma 3)
field:"Company" kind:eq value:"AnyDesk Software GmbH"
Descriptioneq
  • AnyDesk corpus 3 (sigma 3)
field:"Description" kind:eq value:"AnyDesk"
Imageends_with
  • \AnyDesk.exe corpus 5 (sigma 5)
  • \AnyDeskMSI.exe corpus 4 (sigma 4)
field:"Image" kind:ends_with
Producteq
  • AnyDesk corpus 3 (sigma 3)
field:"Product" kind:eq value:"AnyDesk"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImagematchProgram Files (x86)\AnyDeskexcludes:Image field:"Image" value:"Program Files (x86)\AnyDesk"
ImagematchProgram Files\AnyDeskexcludes:Image field:"Image" value:"Program Files\AnyDesk"
Imagematch\AppData\excludes:Image field:"Image" value:"\AppData\"

Service abuse with backdoored "command failure" (service)

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

Detects scenarios where an attacker modify the configuration of a service to trigger an action when the service is crashed.

Known False Positives

  • administrator reconfiguring service

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Service abuse with backdoored "command failure" (service)
description: Detects scenarios where an attacker modify the configuration of a service to trigger an action when the service is crashed.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1543.003-Create%20or%20Modify%20System%20Process-Windows%20Service
- https://twitter.com/JohnLaTwC/status/1432689635122159623?s=09
- https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/cc742019(v=ws.11)
- https://pentestlab.blog/2020/01/22/persistence-modify-existing-service/
tags:
- attack.persistence
- attack.t1543.003
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    EventID: 4688
    NewProcessName|endswith: \sc.exe
    CommandLine|contains|all: # Full command: sc failure W32Time command= "\"c:\Windows\system32\pentestlab.exe\""
      - sc
      - failure
      - command
  condition: selection
falsepositives:
- administrator reconfiguring service
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 4688
  NewProcessName|endswith: \sc.exe
  CommandLine|contains|all:
    - sc
    - failure
    - command

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • command corpus 4 (sigma 4)
  • failure corpus 3 (sigma 3)
  • sc corpus 6 (sigma 6)
field:"CommandLine" kind:match
NewProcessNameends_with
  • \sc.exe corpus 30 (sigma 30)
field:"Image" kind:ends_with value:"\sc.exe"

Suspicious Digital Signature Of AppX Package

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

Detects execution of AppX packages with known suspicious or malicious signature

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Suspicious Digital Signature Of AppX Package
id: b5aa7d60-c17e-4538-97de-09029d6cd76b
status: test
description: Detects execution of AppX packages with known suspicious or malicious signature
references:
    - Internal Research
    - https://www.sentinelone.com/labs/inside-malicious-windows-apps-for-malware-deployment/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-01-16
tags:
    - attack.execution
    - attack.stealth
logsource:
    product: windows
    service: appxpackaging-om
detection:
    selection:
        EventID: 157
        # Add more known suspicious/malicious certificates used in different attacks
        subjectName: 'CN=Foresee Consulting Inc., O=Foresee Consulting Inc., L=North York, S=Ontario, C=CA, SERIALNUMBER=1004913-1, OID.1.3.6.1.4.1.311.60.2.1.3=CA, OID.2.5.4.15=Private Organization'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 157
    subjectName: 'CN=Foresee Consulting Inc., O=Foresee Consulting Inc., L=North York, S=Ontario, C=CA, SERIALNUMBER=1004913-1, OID.1.3.6.1.4.1.311.60.2.1.3=CA, OID.2.5.4.15=Private Organization'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
subjectNameeq
  • CN=Foresee Consulting Inc., O=Foresee Consulting Inc., L=North York, S=Ontario, C=CA, SERIALNUMBER=1004913-1, OID.1.3.6.1.4.1.311.60.2.1.3=CA, OID.2.5.4.15=Private Organization
field:"subjectName" kind:eq value:"CN=Foresee Consulting Inc., O=Foresee Consulting Inc., L=North York, S=Ontario, C=CA, SERIALNUMBER=1004913-1, OID.1.3.6.1.4.1.311.60.2.1.3=CA, OID.2.5.4.15=Private Organization"

Suspicious Reverse Shell Command Line

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

Detects suspicious shell commands or program code that may be executed or used in command line to establish a reverse shell

MITRE ATT&CK Coverage

Rule Body

title: Suspicious Reverse Shell Command Line
id: 738d9bcf-6999-4fdb-b4ac-3033037db8ab
status: test
description: Detects suspicious shell commands or program code that may be executed or used in command line to establish a reverse shell
references:
    - https://alamot.github.io/reverse_shells/
author: Florian Roth (Nextron Systems)
date: 2019-04-02
modified: 2021-11-27
tags:
    - attack.execution
    - attack.t1059.004
logsource:
    product: linux
detection:
    keywords:
        - 'BEGIN {s = "/inet/tcp/0/'
        - 'bash -i >& /dev/tcp/'
        - 'bash -i >& /dev/udp/'
        - 'sh -i >$ /dev/udp/'
        - 'sh -i >$ /dev/tcp/'
        - '&& while read line 0<&5; do'
        - '/bin/bash -c exec 5<>/dev/tcp/'
        - '/bin/bash -c exec 5<>/dev/udp/'
        - 'nc -e /bin/sh '
        - '/bin/sh | nc'
        - 'rm -f backpipe; mknod /tmp/backpipe p && nc '
        - ';socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i))))'
        - ';STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
        - '/bin/sh -i <&3 >&3 2>&3'
        - 'uname -a; w; id; /bin/bash -i'
        - '$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2); $stream.Write($sendbyte,0,$sendbyte.Length); $stream.Flush()};'
        - ';os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);os.putenv(''HISTFILE'',''/dev/null'');'
        - '.to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
        - ';while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print'
        - 'socat exec:''bash -li'',pty,stderr,setsid,sigint,sane tcp:'
        - 'rm -f /tmp/p; mknod /tmp/p p &&'
        - ' | /bin/bash | telnet '
        - ',echo=0,raw tcp-listen:'
        - 'nc -lvvp '
        - 'xterm -display 1'
    condition: keywords
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'BEGIN {s = "/inet/tcp/0/'
    - 'bash -i >& /dev/tcp/'
    - 'bash -i >& /dev/udp/'
    - 'sh -i >$ /dev/udp/'
    - 'sh -i >$ /dev/tcp/'
    - '&& while read line 0<&5; do'
    - '/bin/bash -c exec 5<>/dev/tcp/'
    - '/bin/bash -c exec 5<>/dev/udp/'
    - 'nc -e /bin/sh '
    - '/bin/sh | nc'
    - 'rm -f backpipe; mknod /tmp/backpipe p && nc '
    - ';socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i))))'
    - ';STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
    - '/bin/sh -i <&3 >&3 2>&3'
    - 'uname -a; w; id; /bin/bash -i'
    - '$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2); $stream.Write($sendbyte,0,$sendbyte.Length); $stream.Flush()};'
    - ';os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);os.putenv(''HISTFILE'',''/dev/null'');'
    - '.to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
    - ';while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print'
    - 'socat exec:''bash -li'',pty,stderr,setsid,sigint,sane tcp:'
    - 'rm -f /tmp/p; mknod /tmp/p p &&'
    - ' | /bin/bash | telnet '
    - ',echo=0,raw tcp-listen:'
    - 'nc -lvvp '
    - 'xterm -display 1'

Unusual Parent Process For Cmd.EXE

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

Detects suspicious parent process for cmd.exe

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Unusual Parent Process For Cmd.EXE
id: 4b991083-3d0e-44ce-8fc4-b254025d8d4b
status: test
description: Detects suspicious parent process for cmd.exe
references:
    - https://www.elastic.co/guide/en/security/current/unusual-parent-process-for-cmd.exe.html
author: Tim Rauch, Elastic (idea)
date: 2022-09-21
modified: 2023-12-05
tags:
    - attack.execution
    - attack.t1059
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\cmd.exe'
        ParentImage|endswith:
            - '\csrss.exe'
            - '\ctfmon.exe'
            - '\dllhost.exe'
            - '\epad.exe'
            - '\FlashPlayerUpdateService.exe'
            - '\GoogleUpdate.exe'
            - '\jucheck.exe'
            - '\jusched.exe'
            - '\LogonUI.exe'
            - '\lsass.exe'
            - '\regsvr32.exe'
            - '\SearchIndexer.exe'
            - '\SearchProtocolHost.exe'
            - '\SIHClient.exe'
            - '\sihost.exe'
            - '\slui.exe'
            - '\spoolsv.exe'
            - '\sppsvc.exe'
            - '\taskhostw.exe'
            - '\unsecapp.exe'
            - '\WerFault.exe'
            - '\wermgr.exe'
            - '\wlanext.exe'
            - '\WUDFHost.exe'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\cmd.exe'
    ParentImage|endswith:
        - '\csrss.exe'
        - '\ctfmon.exe'
        - '\dllhost.exe'
        - '\epad.exe'
        - '\FlashPlayerUpdateService.exe'
        - '\GoogleUpdate.exe'
        - '\jucheck.exe'
        - '\jusched.exe'
        - '\LogonUI.exe'
        - '\lsass.exe'
        - '\regsvr32.exe'
        - '\SearchIndexer.exe'
        - '\SearchProtocolHost.exe'
        - '\SIHClient.exe'
        - '\sihost.exe'
        - '\slui.exe'
        - '\spoolsv.exe'
        - '\sppsvc.exe'
        - '\taskhostw.exe'
        - '\unsecapp.exe'
        - '\WerFault.exe'
        - '\wermgr.exe'
        - '\wlanext.exe'
        - '\WUDFHost.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
field:"Image" kind:ends_with value:"\cmd.exe"
ParentImageends_with
  • \FlashPlayerUpdateService.exe
  • \GoogleUpdate.exe corpus 3 (sigma 3)
  • \LogonUI.exe
  • \SIHClient.exe
  • \SearchIndexer.exe corpus 3 (sigma 3)
  • \SearchProtocolHost.exe corpus 2 (sigma 2)
  • \WUDFHost.exe
  • \WerFault.exe
  • \csrss.exe corpus 3 (sigma 3)
  • \ctfmon.exe
  • \dllhost.exe corpus 7 (sigma 7)
  • \epad.exe
  • \jucheck.exe
  • \jusched.exe
  • \lsass.exe corpus 3 (sigma 3)
  • \regsvr32.exe corpus 11 (sigma 11)
  • \sihost.exe
  • \slui.exe corpus 2 (sigma 2)
  • \spoolsv.exe corpus 5 (sigma 5)
  • \sppsvc.exe
  • \taskhostw.exe
  • \unsecapp.exe
  • \wermgr.exe corpus 2 (sigma 2)
  • \wlanext.exe
field:"ParentImage" kind:ends_with

User Added To Admin Group Via Dscl

#
Status
test
Severity
medium
Author
Sohan G (D4rkCiph3r)
Source
github.com/SigmaHQ/sigma

Detects attempts to create and add an account to the admin group via "dscl"

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: User Added To Admin Group Via Dscl
id: b743623c-2776-40e0-87b1-682b975d0ca5
related:
    - id: 0c1ffcf9-efa9-436e-ab68-23a9496ebf5b
      type: obsolete
status: test
description: Detects attempts to create and add an account to the admin group via "dscl"
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1078.003/T1078.003.md#atomic-test-2---create-local-account-with-admin-privileges---macos
    - https://ss64.com/osx/dscl.html
author: Sohan G (D4rkCiph3r)
date: 2023-03-19
tags:
    - attack.persistence
    - attack.initial-access
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1078.003
logsource:
    category: process_creation
    product: macos
detection:
    selection: # adds to admin group
        Image|endswith: '/dscl'
        CommandLine|contains|all:
            - ' -append '
            - ' /Groups/admin '
            - ' GroupMembership '
    condition: selection
falsepositives:
    - Legitimate administration activities
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '/dscl'
    CommandLine|contains|all:
        - ' -append '
        - ' /Groups/admin '
        - ' GroupMembership '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -append
  • /Groups/admin
  • GroupMembership
field:"CommandLine" kind:match
Imageends_with
  • /dscl corpus 5 (sigma 5)
field:"Image" kind:ends_with value:"/dscl"

Visual Studio Code Tunnel Remote File Creation

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

Detects the creation of file by the "node.exe" process in the ".vscode-server" directory. Could be a sign of remote file creation via VsCode tunnel feature

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Visual Studio Code Tunnel Remote File Creation
id: 56e05d41-ce99-4ecd-912d-93f019ee0b71
status: test
description: |
    Detects the creation of file by the "node.exe" process in the ".vscode-server" directory. Could be a sign of remote file creation via VsCode tunnel feature
references:
    - Internal Research
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-10-25
tags:
    - attack.command-and-control
logsource:
    category: file_event
    product: windows
detection:
    selection:
        Image|contains: '\servers\Stable-'
        Image|endswith: '\server\node.exe'
        TargetFilename|contains: '\.vscode-server\data\User\History\'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|contains: '\servers\Stable-'
    Image|endswith: '\server\node.exe'
    TargetFilename|contains: '\.vscode-server\data\User\History\'

Indicators

These rows show field, operator, and value matches.

WSL Kali-Linux Usage

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

Detects the use of Kali Linux through Windows Subsystem for Linux

Known False Positives

  • Legitimate installation or usage of Kali Linux WSL by administrators or security teams

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

Rule Body

title: WSL Kali-Linux Usage
id: 6f1a11aa-4b8a-4b7f-9e13-4d3e4ff0e0d4
status: experimental
description: Detects the use of Kali Linux through Windows Subsystem for Linux
references:
    - https://medium.com/@redfanatic7/running-kali-linux-on-windows-51ad95166e6e
    - https://learn.microsoft.com/en-us/windows/wsl/install
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-10-10
tags:
    - attack.stealth
    - attack.t1202
logsource:
    category: process_creation
    product: windows
detection:
    selection_img_appdata:
        - Image|contains|all:
              - ':\Users\'
              - '\AppData\Local\packages\KaliLinux'
        - Image|contains|all:
              - ':\Users\'
              - '\AppData\Local\Microsoft\WindowsApps\kali.exe'
    selection_img_windowsapps:
        Image|contains: ':\Program Files\WindowsApps\KaliLinux.'
        Image|endswith: '\kali.exe'
    selection_kali_wsl_parent:
        ParentImage|endswith:
            - '\wsl.exe'
            - '\wslhost.exe'
    selection_kali_wsl_child:
        - Image|contains:
              - '\kali.exe'
              - '\KaliLinux'
        - CommandLine|contains:
              - 'Kali.exe'
              - 'Kali-linux'
              - 'kalilinux'
    filter_main_install_uninstall:
        CommandLine|contains:
            - ' -i '
            - ' --install '
            - ' --unregister '
    condition: 1 of selection_img_* or all of selection_kali_* and not 1 of filter_main_*
falsepositives:
    - Legitimate installation or usage of Kali Linux WSL by administrators or security teams
level: high

Stages and Predicates

Stage 0: condition

1 of selection_img_* or all of selection_kali_* and not 1 of filter_main_*

Stage 1: selection_img_appdata

selection_img_appdata:
    - Image|contains|all:
          - ':\Users\'
          - '\AppData\Local\packages\KaliLinux'
    - Image|contains|all:
          - ':\Users\'
          - '\AppData\Local\Microsoft\WindowsApps\kali.exe'

Stage 2: selection_img_windowsapps

selection_img_windowsapps:
    Image|contains: ':\Program Files\WindowsApps\KaliLinux.'
    Image|endswith: '\kali.exe'

Stage 3: selection_kali_wsl_parent

selection_kali_wsl_parent:
    ParentImage|endswith:
        - '\wsl.exe'
        - '\wslhost.exe'

Stage 4: selection_kali_wsl_child

selection_kali_wsl_child:
    - Image|contains:
          - '\kali.exe'
          - '\KaliLinux'
    - CommandLine|contains:
          - 'Kali.exe'
          - 'Kali-linux'
          - 'kalilinux'

Stage 5: not filter_main_install_uninstall

filter_main_install_uninstall:
    CommandLine|contains:
        - ' -i '
        - ' --install '
        - ' --unregister '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Kali-linux
  • Kali.exe
  • kalilinux
field:"CommandLine" kind:match
Imageends_with
  • \kali.exe
field:"Image" kind:ends_with value:"\kali.exe"
Imagematch
  • :\Program Files\WindowsApps\KaliLinux.
  • :\Users\ corpus 4 (sigma 3, elastic 1)
  • \AppData\Local\Microsoft\WindowsApps\kali.exe
  • \AppData\Local\packages\KaliLinux
  • \KaliLinux
  • \kali.exe
field:"Image" kind:match
ParentImageends_with
  • \wsl.exe corpus 4 (sigma 4)
  • \wslhost.exe corpus 2 (sigma 2)
field:"ParentImage" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

Back to all Sigma rules