Detection rules › Sigma

Sigma rules: 2n

Axios NPM Compromise Indicators - Windows

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

Detects the specific Windows execution chain and process tree associated with the Axios NPM supply chain compromise. On March 30, 2026, malicious versions (1.14.1, 0.30.4) were published to npm, injecting a dependency (plain-crypto-js@4.2.1) that executed a postinstall script as a cross-platform RAT dropper. The dropper contacted a C2 server, delivered platform-specific payloads, deleted itself, and replaced package.json to evade detection. The attack used cscript.exe (VBScript), curl.exe (C2), and PowerShell masquerading as Windows Terminal.

Known False Positives

  • Highly unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Axios NPM Compromise Indicators - Windows
id: f6c27ecc-d890-4452-80e6-2e274a10e097
status: experimental
description: |
    Detects the specific Windows execution chain and process tree associated with the Axios NPM supply chain compromise.
    On March 30, 2026, malicious versions (1.14.1, 0.30.4) were published to npm, injecting a dependency (plain-crypto-js@4.2.1) that executed a postinstall script as a cross-platform RAT dropper.
    The dropper contacted a C2 server, delivered platform-specific payloads, deleted itself, and replaced package.json to evade detection.
    The attack used cscript.exe (VBScript), curl.exe (C2), and PowerShell masquerading as Windows Terminal.
references:
    - https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan
    - https://thehackernews.com/2026/03/axios-supply-chain-attack-pushes-cross.html?m=1
    - https://www.derp.ca/research/axios-npm-supply-chain-rat/
    - https://www.elastic.co/security-labs/axios-supply-chain-compromise-detections
    - https://www.virustotal.com/gui/file/e10b1fa84f1d6481625f741b69892780140d4e0e7769e7491e5f4d894c2e0e09
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2026-04-01
tags:
    - attack.initial-access
    - attack.t1195.002
    - attack.execution
    - attack.command-and-control
    - attack.t1059.003
    - attack.t1059.005
    - attack.t1105
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection_cscript:
        ParentImage|endswith:
            - '\node.exe'
            - '\bun.exe'
        Image|endswith: '\cmd.exe'
        CommandLine|contains|all:
            - 'cscript'
            - 'AppData\Local\Temp'
            - '//nologo && del'
            - '6202033.vbs'
    selection_curl:
        Image|endswith:
            - '\curl.exe'
            - '\powershell.exe'
        CommandLine|contains: 'http://sfrclak.com'
    selection_susp_cli:
        OriginalFileName: 'PowerShell.EXE'
        CommandLine|contains: '"C:\ProgramData\wt.exe" -w hidden -ep bypass -file'
    condition: 1 of selection_*
falsepositives:
    - Highly unlikely
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_cscript

selection_cscript:
    ParentImage|endswith:
        - '\node.exe'
        - '\bun.exe'
    Image|endswith: '\cmd.exe'
    CommandLine|contains|all:
        - 'cscript'
        - 'AppData\Local\Temp'
        - '//nologo && del'
        - '6202033.vbs'

Stage 2: selection_curl

selection_curl:
    Image|endswith:
        - '\curl.exe'
        - '\powershell.exe'
    CommandLine|contains: 'http://sfrclak.com'

Stage 3: selection_susp_cli

selection_susp_cli:
    OriginalFileName: 'PowerShell.EXE'
    CommandLine|contains: '"C:\ProgramData\wt.exe" -w hidden -ep bypass -file'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • "C:\ProgramData\wt.exe" -w hidden -ep bypass -file
  • //nologo && del
  • 6202033.vbs
  • AppData\Local\Temp
  • cscript corpus 15 (sigma 15)
  • http://sfrclak.com corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \curl.exe corpus 31 (sigma 31)
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
field:"Image" kind:ends_with
OriginalFileNameeq
  • PowerShell.EXE corpus 134 (sigma 86, splunk 30, elastic 18)
field:"OriginalFileName" kind:eq value:"PowerShell.EXE"
ParentImageends_with
  • \bun.exe corpus 2 (sigma 2)
  • \node.exe corpus 4 (sigma 4)
field:"ParentImage" kind:ends_with

Azure AD Threat Intelligence

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

Indicates user activity that is unusual for the user or consistent with known attack patterns.

Known False Positives

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

MITRE ATT&CK Coverage

TacticTechniques
Initial Access
Persistence
Privilege Escalation
Stealth

Rule Body

title: Azure AD Threat Intelligence
id: a2cb56ff-4f46-437a-a0fa-ffa4d1303cba
status: test
description: Indicates user activity that is unusual for the user or consistent with known attack patterns.
references:
    - https://learn.microsoft.com/en-us/entra/id-protection/concept-identity-protection-risks#azure-ad-threat-intelligence-sign-in
    - https://learn.microsoft.com/en-us/entra/id-protection/concept-identity-protection-risks#azure-ad-threat-intelligence-user
    - https://learn.microsoft.com/en-us/entra/architecture/security-operations-user-accounts#unusual-sign-ins
author: Mark Morowczynski '@markmorow', Gloria Lee, '@gleeiamglo'
date: 2023-09-07
tags:
    - attack.stealth
    - attack.t1078
    - attack.persistence
    - attack.privilege-escalation
    - attack.initial-access
logsource:
    product: azure
    service: riskdetection
detection:
    selection:
        riskEventType: 'investigationsThreatIntelligence'
    condition: selection
falsepositives:
    - We recommend investigating the sessions flagged by this detection in the context of other sign-ins from the user.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    riskEventType: 'investigationsThreatIntelligence'

Indicators

These rows show field, operator, and value matches.

Bitbucket Secret Scanning Exempt Repository Added

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

Detects when a repository is exempted from secret scanning feature.

Known False Positives

  • Legitimate user activity.

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Rule Body

title: Bitbucket Secret Scanning Exempt Repository Added
id: b91e8d5e-0033-44fe-973f-b730316f23a1
status: test
description: Detects when a repository is exempted from secret scanning feature.
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.defense-impairment
    - attack.t1685
logsource:
    product: bitbucket
    service: audit
    definition: 'Requirements: "Basic" log level is required to receive these audit events.'
detection:
    selection:
        auditType.category: 'Repositories'
        auditType.action: 'Secret scanning exempt repository added'
    condition: selection
falsepositives:
    - Legitimate user activity.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    auditType.category: 'Repositories'
    auditType.action: 'Secret scanning exempt repository added'

Indicators

These rows show field, operator, and value matches.

Bpfdoor TCP Ports Redirect

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

All TCP traffic on particular port from attacker is routed to different port. ex. '/sbin/iptables -t nat -D PREROUTING -p tcp -s 192.168.1.1 --dport 22 -j REDIRECT --to-ports 42392' The traffic looks like encrypted SSH communications going to TCP port 22, but in reality is being directed to the shell port once it hits the iptables rule for the attacker host only.

Known False Positives

  • Legitimate ports redirect

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Bpfdoor TCP Ports Redirect
id: 70b4156e-50fc-4523-aa50-c9dddf1993fc
status: test
description: |
    All TCP traffic on particular port from attacker is routed to different port. ex. '/sbin/iptables -t nat -D PREROUTING -p tcp -s 192.168.1.1 --dport 22 -j REDIRECT --to-ports 42392'
    The traffic looks like encrypted SSH communications going to TCP port 22, but in reality is being directed to the shell port once it hits the iptables rule for the attacker host only.
references:
    - https://www.sandflysecurity.com/blog/bpfdoor-an-evasive-linux-backdoor-technical-analysis/
    - https://www.elastic.co/security-labs/a-peek-behind-the-bpfdoor
author: Rafal Piasecki
date: 2022-08-10
tags:
    - attack.defense-impairment
    - attack.t1686
logsource:
    product: linux
    service: auditd
detection:
    cmd:
        type: 'EXECVE'
        a0|endswith: 'iptables'
        a1: '-t'
        a2: 'nat'
    keywords:
        - '--to-ports 42'
        - '--to-ports 43'
    condition: cmd and keywords
falsepositives:
    - Legitimate ports redirect
level: medium

Stages and Predicates

Stage 0: condition

cmd and keywords

Stage 1: cmd

cmd:
    type: 'EXECVE'
    a0|endswith: 'iptables'
    a1: '-t'
    a2: 'nat'

Stage 2: keywords

keywords:
    - '--to-ports 42'
    - '--to-ports 43'

Indicators

These rows show field, operator, and value matches.

CSExec Service Installation

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

Detects CSExec service installation and execution events

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: CSExec Service Installation
id: a27e5fa9-c35e-4e3d-b7e0-1ce2af66ad12
status: test
description: Detects CSExec service installation and execution events
references:
    - https://github.com/malcomvetter/CSExec
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-08-07
tags:
    - attack.execution
    - attack.t1569.002
logsource:
    product: windows
    service: system
detection:
    selection_eid:
        Provider_Name: 'Service Control Manager'
        EventID: 7045
    selection_service:
        - ServiceName: 'csexecsvc'
        - ImagePath|endswith: '\csexecsvc.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: 'csexecsvc'
    - ImagePath|endswith: '\csexecsvc.exe'

Indicators

These rows show field, operator, and value matches.

Data Exfiltration with Wget

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

Detects attempts to post the file with the usage of wget utility. The adversary can bypass the permission restriction with the misconfigured sudo permission for wget utility which could allow them to read files like /etc/shadow.

Known False Positives

  • Legitimate usage of wget utility to post a file

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Data Exfiltration with Wget
id: cb39d16b-b3b6-4a7a-8222-1cf24b686ffc
status: test
description: |
    Detects attempts to post the file with the usage of wget utility.
    The adversary can bypass the permission restriction with the misconfigured sudo permission for wget utility which could allow them to read files like /etc/shadow.
references:
    - https://linux.die.net/man/1/wget
    - https://gtfobins.github.io/gtfobins/wget/
author: 'Pawel Mazur'
date: 2021-11-18
modified: 2022-12-25
tags:
    - attack.exfiltration
    - attack.t1048.003
logsource:
    product: linux
    service: auditd
detection:
    selection:
        type: EXECVE
        a0: wget
        a1|startswith: '--post-file='
    condition: selection
falsepositives:
    - Legitimate usage of wget utility to post a file
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    type: EXECVE
    a0: wget
    a1|startswith: '--post-file='

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
a0eq
  • wget
field:"a0" kind:eq value:"wget"
a1starts_with
  • --post-file=
field:"a1" kind:starts_with value:"--post-file="
typeeq
  • EXECVE corpus 37 (sigma 31, splunk 6)
field:"type" kind:eq value:"EXECVE"

DLL Sideloading Of ShellChromeAPI.DLL

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

Detects processes loading the non-existent DLL "ShellChromeAPI". One known example is the "DeviceEnroller" binary in combination with the "PhoneDeepLink" flag tries to load this DLL. Adversaries can drop their own renamed DLL and execute it via DeviceEnroller.exe using this parameter

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: DLL Sideloading Of ShellChromeAPI.DLL
id: ee4c5d06-3abc-48cc-8885-77f1c20f4451
related:
    - id: e173ad47-4388-4012-ae62-bd13f71c18a8
      type: similar
status: test
description: |
    Detects processes loading the non-existent DLL "ShellChromeAPI". One known example is the "DeviceEnroller" binary in combination with the "PhoneDeepLink" flag tries to load this DLL.
    Adversaries can drop their own renamed DLL and execute it via DeviceEnroller.exe using this parameter
references:
    - https://mobile.twitter.com/0gtweet/status/1564131230941122561
    - https://strontic.github.io/xcyclopedia/library/DeviceEnroller.exe-24BEF0D6B0ECED36BB41831759FDE18D.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-12-01
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    category: image_load
    product: windows
detection:
    selection:
        # The DLL shouldn't exist on Windows anymore. If for some reason you still have it. You could filter out legitimate calls
        ImageLoaded|endswith: '\ShellChromeAPI.dll'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ImageLoaded|endswith: '\ShellChromeAPI.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ImageLoadedends_with
  • \ShellChromeAPI.dll
field:"ImageLoaded" kind:ends_with value:"\ShellChromeAPI.dll"

HackTool - Certipy Execution

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

Detects Certipy execution, a tool for Active Directory Certificate Services enumeration and abuse based on PE metadata characteristics and common command line arguments.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: HackTool - Certipy Execution
id: 6938366d-8954-4ddc-baff-c830b3ba8fcd
status: test
description: |
    Detects Certipy execution, a tool for Active Directory Certificate Services enumeration and abuse based on PE metadata characteristics and common command line arguments.
references:
    - https://github.com/ly4k/Certipy
    - https://research.ifcr.dk/certipy-4-0-esc9-esc10-bloodhound-gui-new-authentication-and-request-methods-and-more-7237d88061f7
author: pH-T (Nextron Systems), Sittikorn Sangrattanapitak
date: 2023-04-17
modified: 2024-10-08
tags:
    - attack.discovery
    - attack.credential-access
    - attack.t1649
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\Certipy.exe'
        - OriginalFileName: 'Certipy.exe'
        - Description|contains: 'Certipy'
    selection_cli_commands:
        CommandLine|contains:
            - ' account '
            - ' auth '
            # - ' ca ' # Too short to be used with just one CLI
            - ' cert '
            - ' find '
            - ' forge '
            - ' ptt '
            - ' relay '
            - ' req '
            - ' shadow '
            - ' template '
    selection_cli_flags:
        CommandLine|contains:
            - ' -bloodhound'
            - ' -ca-pfx '
            - ' -dc-ip '
            - ' -kirbi'
            - ' -old-bloodhound'
            - ' -pfx '
            - ' -target'
            - ' -template'
            - ' -username '
            - ' -vulnerable'
            - 'auth -pfx'
            - 'shadow auto'
            - 'shadow list'
    condition: selection_img or all of selection_cli_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection_img or all of selection_cli_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\Certipy.exe'
    - OriginalFileName: 'Certipy.exe'
    - Description|contains: 'Certipy'

Stage 2: selection_cli_commands

selection_cli_commands:
    CommandLine|contains:
        - ' account '
        - ' auth '
        - ' cert '
        - ' find '
        - ' forge '
        - ' ptt '
        - ' relay '
        - ' req '
        - ' shadow '
        - ' template '

Stage 3: selection_cli_flags

selection_cli_flags:
    CommandLine|contains:
        - ' -bloodhound'
        - ' -ca-pfx '
        - ' -dc-ip '
        - ' -kirbi'
        - ' -old-bloodhound'
        - ' -pfx '
        - ' -target'
        - ' -template'
        - ' -username '
        - ' -vulnerable'
        - 'auth -pfx'
        - 'shadow auto'
        - 'shadow list'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -bloodhound
  • -ca-pfx
  • -dc-ip
  • -kirbi
  • -old-bloodhound
  • -pfx
  • -target
  • -template
  • -username
  • -vulnerable
  • account
  • auth
  • cert
  • find corpus 2 (sigma 1, splunk 1)
  • forge
  • ptt
  • relay corpus 2 (sigma 2)
  • req
  • shadow
  • template
  • auth -pfx
  • shadow auto
  • shadow list
field:"CommandLine" kind:match
Descriptionmatch
  • Certipy
field:"Description" kind:match value:"Certipy"
Imageends_with
  • \Certipy.exe
field:"Image" kind:ends_with value:"\Certipy.exe"
OriginalFileNameeq
  • Certipy.exe
field:"OriginalFileName" kind:eq value:"Certipy.exe"

Import New Module Via PowerShell CommandLine

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

Detects usage of the "Import-Module" cmdlet in order to add new Cmdlets to the current PowerShell session

Known False Positives

  • Depending on the environement, many legitimate scripts will import modules inline. This rule is targeted for hunting purposes.

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Import New Module Via PowerShell CommandLine
id: 4ad74d01-f48c-42d0-b88c-b31efa4d2262
status: test
description: Detects usage of the "Import-Module" cmdlet in order to add new Cmdlets to the current PowerShell session
references:
    - https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/import-module?view=powershell-7.3
    - https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/import-module?view=powershell-5.1
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-09
modified: 2023-12-01
tags:
    - attack.execution
    - detection.threat-hunting
logsource:
    product: windows
    category: process_creation
detection:
    selection_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_cmdlet:
        CommandLine|contains:
            - 'Import-Module '
            - 'ipmo '
    filter_main_vsstudio:
        ParentImage|contains:
            - ':\Program Files\WindowsApps\Microsoft.WindowsTerminal_'
            - ':\Windows\System32\cmd.exe'
        CommandLine|contains|all:
            - ':\Program Files\Microsoft Visual Studio\'
            - 'Tools\Microsoft.VisualStudio.DevShell.dll'
    condition: all of selection_* and not 1 of filter_main_*
falsepositives:
    - Depending on the environement, many legitimate scripts will import modules inline. This rule is targeted for hunting purposes.
level: low

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_main_*

Stage 1: selection_img

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

Stage 2: selection_cmdlet

selection_cmdlet:
    CommandLine|contains:
        - 'Import-Module '
        - 'ipmo '

Stage 3: not filter_main_vsstudio

filter_main_vsstudio:
    ParentImage|contains:
        - ':\Program Files\WindowsApps\Microsoft.WindowsTerminal_'
        - ':\Windows\System32\cmd.exe'
    CommandLine|contains|all:
        - ':\Program Files\Microsoft Visual Studio\'
        - 'Tools\Microsoft.VisualStudio.DevShell.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Import-Module corpus 3 (sigma 3)
  • ipmo corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
field:"Image" kind:ends_with
OriginalFileNameeq
  • PowerShell.EXE corpus 134 (sigma 86, splunk 30, elastic 18)
  • pwsh.dll corpus 115 (sigma 81, splunk 30, elastic 4)
field:"OriginalFileName" kind:eq

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ParentImagematch:\Program Files\WindowsApps\Microsoft.WindowsTerminal_excludes:ParentImage field:"ParentImage" value:":\Program Files\WindowsApps\Microsoft.WindowsTerminal_"
ParentImagematch:\Windows\System32\cmd.exeexcludes:ParentImage field:"ParentImage" value:":\Windows\System32\cmd.exe"
CommandLinematch:\Program Files\Microsoft Visual Studio\excludes:CommandLine field:"CommandLine" value:":\Program Files\Microsoft Visual Studio\"
CommandLinematchTools\Microsoft.VisualStudio.DevShell.dllexcludes:CommandLine field:"CommandLine" value:"Tools\Microsoft.VisualStudio.DevShell.dll"

LSASS Process Memory Dump Files

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

Detects creation of files with names used by different memory dumping tools to create a memory dump of the LSASS process memory, which contains user credentials.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: LSASS Process Memory Dump Files
id: a5a2d357-1ab8-4675-a967-ef9990a59391
related:
    - id: db2110f3-479d-42a6-94fb-d35bc1e46492
      type: obsolete
    - id: 5e3d3601-0662-4af0-b1d2-36a05e90c40a
      type: obsolete
status: test
description: Detects creation of files with names used by different memory dumping tools to create a memory dump of the LSASS process memory, which contains user credentials.
references:
    - https://www.google.com/search?q=procdump+lsass
    - https://medium.com/@markmotig/some-ways-to-dump-lsass-exe-c4a75fdc49bf
    - https://github.com/elastic/detection-rules/blob/c76a39796972ecde44cb1da6df47f1b6562c9770/rules/windows/credential_access_lsass_memdump_file_created.toml
    - https://www.whiteoaksecurity.com/blog/attacks-defenses-dumping-lsass-no-mimikatz/
    - https://github.com/helpsystems/nanodump
    - https://github.com/CCob/MirrorDump
    - https://github.com/safedv/RustiveDump/blob/1a9b026b477587becfb62df9677cede619d42030/src/main.rs#L35
    - https://github.com/ricardojoserf/NativeDump/blob/01d8cd17f31f51f5955a38e85cd3c83a17596175/NativeDump/Program.cs#L258
author: Florian Roth (Nextron Systems)
date: 2021-11-15
modified: 2024-10-08
tags:
    - attack.credential-access
    - attack.t1003.001
logsource:
    product: windows
    category: file_event
detection:
    selection_1:
        TargetFilename|endswith:
            - '\Andrew.dmp'
            - '\Coredump.dmp'
            - '\lsass.dmp'
            - '\lsass.rar'
            - '\lsass.zip'
            - '\NotLSASS.zip'  # https://github.com/CCob/MirrorDump
            - '\PPLBlade.dmp'  # https://github.com/tastypepperoni/PPLBlade
            - '\rustive.dmp' # https://github.com/safedv/RustiveDump/blob/main/src/main.rs#L35
    selection_2:
        TargetFilename|contains:
            - '\lsass_2'  # default format of procdump v9.0 is lsass_YYMMDD_HHmmss.dmp
            - '\lsassdmp'
            - '\lsassdump'
    selection_3:
        TargetFilename|contains|all:
            - '\lsass'
            - '.dmp'
    selection_4:
        TargetFilename|contains: 'SQLDmpr'
        TargetFilename|endswith: '.mdmp'
    selection_5:
        TargetFilename|contains:
            - '\nanodump'
            - '\proc_' # NativeDump pattern https://github.com/ricardojoserf/NativeDump/blob/01d8cd17f31f51f5955a38e85cd3c83a17596175/NativeDump/Program.cs#L258
        TargetFilename|endswith: '.dmp'
    condition: 1 of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    TargetFilename|endswith:
        - '\Andrew.dmp'
        - '\Coredump.dmp'
        - '\lsass.dmp'
        - '\lsass.rar'
        - '\lsass.zip'
        - '\NotLSASS.zip'
        - '\PPLBlade.dmp'
        - '\rustive.dmp'

Stage 2: selection_2

selection_2:
    TargetFilename|contains:
        - '\lsass_2'
        - '\lsassdmp'
        - '\lsassdump'

Stage 3: selection_3

selection_3:
    TargetFilename|contains|all:
        - '\lsass'
        - '.dmp'

Stage 4: selection_4

selection_4:
    TargetFilename|contains: 'SQLDmpr'
    TargetFilename|endswith: '.mdmp'

Stage 5: selection_5

selection_5:
    TargetFilename|contains:
        - '\nanodump'
        - '\proc_'
    TargetFilename|endswith: '.dmp'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .dmp corpus 5 (sigma 5)
  • .mdmp
  • \Andrew.dmp
  • \Coredump.dmp
  • \NotLSASS.zip
  • \PPLBlade.dmp
  • \lsass.dmp
  • \lsass.rar
  • \lsass.zip
  • \rustive.dmp
field:"TargetFilename" kind:ends_with
TargetFilenamematch
  • .dmp corpus 3 (sigma 3)
  • SQLDmpr
  • \lsass corpus 3 (sigma 3)
  • \lsass_2
  • \lsassdmp
  • \lsassdump
  • \nanodump
  • \proc_
field:"TargetFilename" kind:match

macOS Multiple Failed Sudo Attempts

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

Detects multiple failed sudo authentication attempts, which may indicate password guessing, brute force attempts, or an attacker trying to escalate privileges using compromised credentials.

Known False Positives

  • Users forgetting their password
  • Mistyped passwords

MITRE ATT&CK Coverage

Rule Body

title: macOS Multiple Failed Sudo Attempts
id: f6a7b8c9-d0e1-4234-f012-345678901234
status: experimental
description: |
  Detects multiple failed sudo authentication attempts, which may indicate
  password guessing, brute force attempts, or an attacker trying to escalate
  privileges using compromised credentials.
references:
  - https://attack.mitre.org/techniques/T1548/003/
  - https://attack.mitre.org/techniques/T1110/
author: Eric Brown - Nebulock, Inc.
date: 2025/01/22
modified: 2025/01/22
logsource:
  product: macos
  service: unifiedlog
detection:
  selection_subsystem:
    subsystem: com.apple.sudo
  selection_failed:
    message|contains:
      - 'authentication failed'
      - 'incorrect password attempt'
      - '3 incorrect password attempts'
      - 'NOT in sudoers'
      - 'user NOT authorized'
      - 'sorry, try again'
  condition: selection_subsystem and selection_failed
falsepositives:
  - Users forgetting their password
  - Mistyped passwords
level: high
tags:
  - attack.privilege_escalation
  - attack.t1548.003
  - attack.credential_access
  - attack.t1110

Stages and Predicates

Stage 0: condition

selection_subsystem and selection_failed

Stage 1: selection_subsystem

selection_subsystem:
  subsystem: com.apple.sudo

Stage 2: selection_failed

selection_failed:
  message|contains:
    - 'authentication failed'
    - 'incorrect password attempt'
    - '3 incorrect password attempts'
    - 'NOT in sudoers'
    - 'user NOT authorized'
    - 'sorry, try again'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
messagematch
  • 3 incorrect password attempts
  • NOT in sudoers
  • authentication failed
  • incorrect password attempt
  • sorry, try again
  • user NOT authorized
field:"message" kind:match
subsystemeq
  • com.apple.sudo
field:"subsystem" kind:eq value:"com.apple.sudo"

Msxsl.EXE Execution

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

Detects the execution of the MSXSL utility. This can be used to execute Extensible Stylesheet Language (XSL) files. These files are commonly used to describe the processing and rendering of data within XML files. Adversaries can abuse this functionality to execute arbitrary files while potentially bypassing application whitelisting defenses.

Known False Positives

  • Msxsl is not installed by default and is deprecated, so unlikely on most systems.

MITRE ATT&CK Coverage

TacticTechniques
Stealth

Telemetry Coverage

Rule Body

title: Msxsl.EXE Execution
id: 9e50a8b3-dd05-4eb8-9153-bdb6b79d50b0
status: test
description: |
    Detects the execution of the MSXSL utility. This can be used to execute Extensible Stylesheet Language (XSL) files. These files are commonly used to describe the processing and rendering of data within XML files.
    Adversaries can abuse this functionality to execute arbitrary files while potentially bypassing application whitelisting defenses.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1220/T1220.md
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Msxsl/
author: Timur Zinniatullin, oscd.community
date: 2019-10-21
modified: 2023-11-09
tags:
    - attack.stealth
    - attack.t1220
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\msxsl.exe'
    condition: selection
falsepositives:
    - Msxsl is not installed by default and is deprecated, so unlikely on most systems.
# Note: If you levreage this utility please consider adding additional filters. As this is looking for "any" type of execition
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

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

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \msxsl.exe corpus 6 (sigma 6)
field:"Image" kind:ends_with value:"\msxsl.exe"

New member added to an "OCS/Lync/Skype for Business" administration group (high risk)

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

Detects scenarios where a new member is added to a sensitive administration group related to OCS/Lync/Skype for Business in order to scan topology, infiltrate servers and move laterally.

Known False Positives

  • OCS/Lync/Skype administrator updating server configuration or topology
  • OCS/Lync/Skype upgrade or migration

MITRE ATT&CK Coverage

TacticTechniques
Persistence

Telemetry Coverage

Rule Body

title: New member added to an "OCS/Lync/Skype for Business" administration group (high risk)
description: Detects scenarios where a new member is added to a sensitive administration group related to OCS/Lync/Skype for Business in order to scan topology, infiltrate servers and move laterally.
references:
- https://docs.microsoft.com/en-us/previous-versions/office/lync-server-2013/lync-server-2013-planning-for-role-based-access-control
- https://docs.microsoft.com/en-us/skypeforbusiness/schema-reference/active-directory-schema-extensions-classes-and-attributes/changes-made-by-forest-preparation
- https://blog.insideo365.com/2012/11/a-lync-administrator-access-refresher/
tags:
- attack.persistence
- attack.t1098
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID:
      - 4728 # security global group member added
      - 4756 # universal group member added
      - 4732 # local and domain local group member added
    TargetUserName:
      - CSAdministrator
      - CSServerAdministrator
      - RTCUniversalServerAdmins
  condition: selection
falsepositives:
- OCS/Lync/Skype administrator updating server configuration or topology
- OCS/Lync/Skype upgrade or migration
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID:
    - 4728
    - 4756
    - 4732
  TargetUserName:
    - CSAdministrator
    - CSServerAdministrator
    - RTCUniversalServerAdmins

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetUserNameeq
  • CSAdministrator
  • CSServerAdministrator
  • RTCUniversalServerAdmins
field:"TargetUserName" kind:eq

New Module Module Added To IIS Server

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

Detects the addition of a new module to an IIS server.

Known False Positives

  • Legitimate administrator activity

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: New Module Module Added To IIS Server
id: dd857d3e-0c6e-457b-9b48-e82ae7f86bd7
status: test
description: Detects the addition of a new module to an IIS server.
references:
    - https://learn.microsoft.com/en-us/iis/manage/provisioning-and-managing-iis/configure-logging-in-iis
    - https://www.microsoft.com/en-us/security/blog/2022/12/12/iis-modules-the-evolution-of-web-shells-and-how-to-detect-them/
    - https://www.microsoft.com/en-us/security/blog/2022/07/26/malicious-iis-extensions-quietly-open-persistent-backdoors-into-servers/
    - https://learn.microsoft.com/en-us/iis/get-started/introduction-to-iis/iis-modules-overview
author: frack113
date: 2024-10-06
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1685.001
    - attack.t1505.004
logsource:
    product: windows
    service: iis-configuration
detection:
    selection:
        EventID: 29
        Configuration|contains: '/system.webServer/modules/add'
    filter_main_builtin:
        NewValue:
            - 'AnonymousAuthenticationModule'
            - 'CustomErrorModule'
            - 'DefaultDocumentModule'
            - 'DirectoryListingModule'
            - 'FileCacheModule'
            - 'HttpCacheModule'
            - 'HttpLoggingModule'
            - 'ProtocolSupportModule'
            - 'RequestFilteringModule'
            - 'StaticCompressionModule'
            - 'StaticFileModule'
            - 'TokenCacheModule'
            - 'UriCacheModule'
    filter_main_remove:
        NewValue: ''
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Legitimate administrator activity
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    EventID: 29
    Configuration|contains: '/system.webServer/modules/add'

Stage 2: not filter_main_*

filter_main_builtin:
    NewValue:
        - 'AnonymousAuthenticationModule'
        - 'CustomErrorModule'
        - 'DefaultDocumentModule'
        - 'DirectoryListingModule'
        - 'FileCacheModule'
        - 'HttpCacheModule'
        - 'HttpLoggingModule'
        - 'ProtocolSupportModule'
        - 'RequestFilteringModule'
        - 'StaticCompressionModule'
        - 'StaticFileModule'
        - 'TokenCacheModule'
        - 'UriCacheModule'
filter_main_remove:
    NewValue: ''

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

OpenCanary - REDIS Action Command Attempt

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

Detects instances where a REDIS service on an OpenCanary node has had an action command attempted.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Rule Body

title: OpenCanary - REDIS Action Command Attempt
id: 547dfc53-ebf6-4afe-8d2e-793d9574975d
status: test
description: Detects instances where a REDIS service on an OpenCanary node has had an action command attempted.
references:
    - https://opencanary.readthedocs.io/en/latest/starting/configuration.html#services-configuration
    - https://github.com/thinkst/opencanary/blob/a0896adfcaf0328cfd5829fe10d2878c7445138e/opencanary/logger.py#L52
author: Security Onion Solutions
date: 2024-03-08
tags:
    - attack.credential-access
    - attack.collection
    - attack.t1003
    - attack.t1213
logsource:
    category: application
    product: opencanary
detection:
    selection:
        logtype: 17001
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    logtype: 17001

Indicators

These rows show field, operator, and value matches.

Pingback Backdoor DLL Loading Activity

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

Detects the use of Pingback backdoor that creates ICMP tunnel for C2 as described in the trustwave report

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Pingback Backdoor DLL Loading Activity
id: 35a7dc42-bc6f-46e0-9f83-81f8e56c8d4b
related:
    - id: 35a7dc42-bc6f-46e0-9f83-81f8e56c8d4b # File indicators
      type: similar
    - id: b2400ffb-7680-47c0-b08a-098a7de7e7a9 # Process Creation
      type: similar
status: test
description: Detects the use of Pingback backdoor that creates ICMP tunnel for C2 as described in the trustwave report
references:
    - https://www.trustwave.com/en-us/resources/blogs/spiderlabs-blog/backdoor-at-the-end-of-the-icmp-tunnel
    - https://app.any.run/tasks/4a54c651-b70b-4b72-84d7-f34d301d6406
author: Bhabesh Raj
date: 2021-05-05
modified: 2023-02-17
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.execution
    - attack.stealth
    - attack.t1574.001
    - detection.emerging-threats
logsource:
    product: windows
    category: image_load
detection:
    selection:
        Image|endswith: '\msdtc.exe'
        ImageLoaded: 'C:\Windows\oci.dll'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\msdtc.exe'
    ImageLoaded: 'C:\Windows\oci.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \msdtc.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\msdtc.exe"
ImageLoadedeq
  • C:\Windows\oci.dll
field:"ImageLoaded" kind:eq value:"C:\Windows\oci.dll"

Potential AMSI COM Server Hijacking

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

Detects changes to the AMSI come server registry key in order disable AMSI scanning functionalities. When AMSI attempts to starts its COM component, it will query its registered CLSID and return a non-existent COM server. This causes a load failure and prevents any scanning methods from being accessed, ultimately rendering AMSI useless

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Potential AMSI COM Server Hijacking
id: 160d2780-31f7-4922-8b3a-efce30e63e96
status: test
description: Detects changes to the AMSI come server registry key in order disable AMSI scanning functionalities. When AMSI attempts to starts its COM component, it will query its registered CLSID and return a non-existent COM server. This causes a load failure and prevents any scanning methods from being accessed, ultimately rendering AMSI useless
references:
    - https://enigma0x3.net/2017/07/19/bypassing-amsi-via-com-server-hijacking/
    - https://github.com/r00t-3xp10it/hacking-material-books/blob/43cb1e1932c16ff1f58b755bc9ab6b096046853f/obfuscation/simple_obfuscation.md#amsi-comreg-bypass
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-01-04
modified: 2023-08-17
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|endswith: '\CLSID\{fdb00e52-a214-4aa1-8fba-4357bb0072ec}\InProcServer32\(Default)'
    filter:
        Details: '%windir%\system32\amsi.dll'
    condition: selection and not filter
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    TargetObject|endswith: '\CLSID\{fdb00e52-a214-4aa1-8fba-4357bb0072ec}\InProcServer32\(Default)'

Stage 2: not filter

filter:
    Details: '%windir%\system32\amsi.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \CLSID\{fdb00e52-a214-4aa1-8fba-4357bb0072ec}\InProcServer32\(Default)
field:"TargetObject" kind:ends_with value:"\CLSID\{fdb00e52-a214-4aa1-8fba-4357bb0072ec}\InProcServer32\(Default)"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Detailseq%windir%\system32\amsi.dllexcludes:Details field:"Details" value:"%windir%\system32\amsi.dll"

Potential CVE-2023-36884 Exploitation - URL Marker

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

Detects a unique URL marker seen being used by RomCom potentially exploiting CVE-2023-36884

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Rule Body

title: Potential CVE-2023-36884 Exploitation - URL Marker
id: e59f71ff-c042-4f7a-8a82-8f53beea817e
status: test
description: Detects a unique URL marker seen being used by RomCom potentially exploiting CVE-2023-36884
references:
    - https://blogs.blackberry.com/en/2023/07/romcom-targets-ukraine-nato-membership-talks-at-nato-summit
author: X__Junior
date: 2023-07-12
tags:
    - attack.command-and-control
    - cve.2023-36884
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    selection:
        cs-method: 'GET'
        c-uri|contains: '/MSHTML_C7/'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'GET'
    c-uri|contains: '/MSHTML_C7/'

Indicators

These rows show field, operator, and value matches.

Potential DLL Sideloading Via VMware Xfer

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

Detects loading of a DLL by the VMware Xfer utility from the non-default directory which may be an attempt to sideload arbitrary DLL

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential DLL Sideloading Via VMware Xfer
id: 9313dc13-d04c-46d8-af4a-a930cc55d93b
status: test
description: Detects loading of a DLL by the VMware Xfer utility from the non-default directory which may be an attempt to sideload arbitrary DLL
references:
    - https://www.sentinelone.com/labs/lockbit-ransomware-side-loads-cobalt-strike-beacon-with-legitimate-vmware-utility/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-08-02
modified: 2023-02-17
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    product: windows
    category: image_load
detection:
    selection:
        Image|endswith: '\VMwareXferlogs.exe'
        ImageLoaded|endswith: '\glib-2.0.dll'
    filter: # VMware might be installed in another path so update the rule accordingly
        ImageLoaded|startswith: 'C:\Program Files\VMware\'
    condition: selection and not filter
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    Image|endswith: '\VMwareXferlogs.exe'
    ImageLoaded|endswith: '\glib-2.0.dll'

Stage 2: not filter

filter:
    ImageLoaded|startswith: 'C:\Program Files\VMware\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \VMwareXferlogs.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\VMwareXferlogs.exe"
ImageLoadedends_with
  • \glib-2.0.dll
field:"ImageLoaded" kind:ends_with value:"\glib-2.0.dll"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImageLoadedstarts_withC:\Program Files\VMware\excludes:ImageLoaded field:"ImageLoaded" value:"C:\Program Files\VMware\"

Potential OGNL Injection Exploitation In JVM Based Application

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

Detects potential OGNL Injection exploitation, which may lead to RCE. OGNL is an expression language that is supported in many JVM based systems. OGNL Injection is the reason for some high profile RCE's such as Apache Struts (CVE-2017-5638) and Confluence (CVE-2022-26134)

Known False Positives

  • Application bugs

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Potential OGNL Injection Exploitation In JVM Based Application
id: 4d0af518-828e-4a04-a751-a7d03f3046ad
status: test
description: |
    Detects potential OGNL Injection exploitation, which may lead to RCE.
    OGNL is an expression language that is supported in many JVM based systems.
    OGNL Injection is the reason for some high profile RCE's such as Apache Struts (CVE-2017-5638) and Confluence (CVE-2022-26134)
references:
    - https://www.wix.engineering/post/threat-and-vulnerability-hunting-with-application-server-error-logs
author: Moti Harmats
date: 2023-02-11
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2017-5638
    - cve.2022-26134
logsource:
    category: application
    product: jvm
    definition: 'Requirements: application error logs must be collected (with LOG_LEVEL=ERROR and above)'
detection:
    keywords:
        - 'org.apache.commons.ognl.OgnlException'
        - 'ExpressionSyntaxException'
    condition: keywords
falsepositives:
    - Application bugs
level: high

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'org.apache.commons.ognl.OgnlException'
    - 'ExpressionSyntaxException'

Potential SmadHook.DLL Sideloading

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

Detects potential DLL sideloading of "SmadHook.dll", a DLL used by SmadAV antivirus

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential SmadHook.DLL Sideloading
id: 24b6cf51-6122-469e-861a-22974e9c1e5b
status: test
description: Detects potential DLL sideloading of "SmadHook.dll", a DLL used by SmadAV antivirus
references:
    - https://research.checkpoint.com/2023/malware-spotlight-camaro-dragons-tinynote-backdoor/
    - https://www.qurium.org/alerts/targeted-malware-against-crph/
author: X__Junior (Nextron Systems)
date: 2023-06-01
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    category: image_load
    product: windows
detection:
    selection:
        ImageLoaded|endswith:
            - '\SmadHook32c.dll'
            - '\SmadHook64c.dll'
    filter_main_legit_path:
        Image:
            - 'C:\Program Files (x86)\SMADAV\SmadavProtect32.exe'
            - 'C:\Program Files (x86)\SMADAV\SmadavProtect64.exe'
            - 'C:\Program Files\SMADAV\SmadavProtect32.exe'
            - 'C:\Program Files\SMADAV\SmadavProtect64.exe'
        ImageLoaded|startswith:
            - 'C:\Program Files (x86)\SMADAV\'
            - 'C:\Program Files\SMADAV\'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    ImageLoaded|endswith:
        - '\SmadHook32c.dll'
        - '\SmadHook64c.dll'

Stage 2: not filter_main_legit_path

filter_main_legit_path:
    Image:
        - 'C:\Program Files (x86)\SMADAV\SmadavProtect32.exe'
        - 'C:\Program Files (x86)\SMADAV\SmadavProtect64.exe'
        - 'C:\Program Files\SMADAV\SmadavProtect32.exe'
        - 'C:\Program Files\SMADAV\SmadavProtect64.exe'
    ImageLoaded|startswith:
        - 'C:\Program Files (x86)\SMADAV\'
        - 'C:\Program Files\SMADAV\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ImageLoadedends_with
  • \SmadHook32c.dll
  • \SmadHook64c.dll
field:"ImageLoaded" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImageeqC:\Program Files (x86)\SMADAV\SmadavProtect32.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\SMADAV\SmadavProtect32.exe"
ImageeqC:\Program Files (x86)\SMADAV\SmadavProtect64.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\SMADAV\SmadavProtect64.exe"
ImageeqC:\Program Files\SMADAV\SmadavProtect32.exeexcludes:Image field:"Image" value:"C:\Program Files\SMADAV\SmadavProtect32.exe"
ImageeqC:\Program Files\SMADAV\SmadavProtect64.exeexcludes:Image field:"Image" value:"C:\Program Files\SMADAV\SmadavProtect64.exe"
ImageLoadedstarts_withC:\Program Files (x86)\SMADAV\excludes:ImageLoaded field:"ImageLoaded" value:"C:\Program Files (x86)\SMADAV\"
ImageLoadedstarts_withC:\Program Files\SMADAV\excludes:ImageLoaded field:"ImageLoaded" value:"C:\Program Files\SMADAV\"

Powershell Directory Enumeration

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

Detects technique used by MAZE ransomware to enumerate directories using Powershell

Known False Positives

  • Legitimate PowerShell scripts

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

Rule Body

title: Powershell Directory Enumeration
id: 162e69a7-7981-4344-84a9-0f1c9a217a52
status: test
description: Detects technique used by MAZE ransomware to enumerate directories using Powershell
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1083/T1083.md
    - https://www.mandiant.com/resources/tactics-techniques-procedures-associated-with-maze-ransomware-incidents
author: frack113
date: 2022-03-17
tags:
    - attack.discovery
    - attack.t1083
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains|all:
            - foreach
            - Get-ChildItem
            - '-Path '
            - '-ErrorAction '
            - SilentlyContinue
            - 'Out-File '
            - '-append'
    condition: selection
falsepositives:
    - Legitimate PowerShell scripts
level: medium
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_susp_directory_enum/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains|all:
        - foreach
        - Get-ChildItem
        - '-Path '
        - '-ErrorAction '
        - SilentlyContinue
        - 'Out-File '
        - '-append'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • -ErrorAction
  • -Path corpus 3 (sigma 3)
  • -append
  • Get-ChildItem corpus 4 (sigma 4)
  • Out-File
  • SilentlyContinue
  • foreach corpus 2 (sigma 2)
field:"ScriptBlockText" kind:match

Process Discovery

#
Status
stable
Severity
low
Author
Ömer Günal, oscd.community, CheraaghiMilad
Source
github.com/SigmaHQ/sigma

Detects process discovery commands. Adversaries may attempt to get information about running processes on a system. Information obtained could be used to gain an understanding of common software/applications running on systems within the network

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Process Discovery
id: 4e2f5868-08d4-413d-899f-dc2f1508627b
status: stable
description: |
  Detects process discovery commands. Adversaries may attempt to get information about running processes on a system.
  Information obtained could be used to gain an understanding of common software/applications running on systems within the network
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1057/T1057.md
    - https://www.cyberciti.biz/faq/show-all-running-processes-in-linux/
author: Ömer Günal, oscd.community, CheraaghiMilad
date: 2020-10-06
modified: 2022-07-07
tags:
    - attack.discovery
    - attack.t1057
    - detection.threat-hunting
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        Image|endswith:
            - '/atop'
            - '/htop'
            - '/pgrep'
            - '/ps'
            - '/pstree'
            - '/top'
    condition: selection
falsepositives:
    - Legitimate administration activities
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '/atop'
        - '/htop'
        - '/pgrep'
        - '/ps'
        - '/pstree'
        - '/top'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /atop
  • /htop
  • /pgrep
  • /ps
  • /pstree
  • /top
field:"Image" kind:ends_with

PUA - PingCastle Execution From Potentially Suspicious Parent

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

Detects the execution of PingCastle, a tool designed to quickly assess the Active Directory security level via a script located in a potentially suspicious or uncommon location.

MITRE ATT&CK Coverage

TacticTechniques
Reconnaissance

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: PUA - PingCastle Execution From Potentially Suspicious Parent
id: b37998de-a70b-4f33-b219-ec36bf433dc0
related:
    - id: b1cb4ab6-ac31-43f4-adf1-d9d08957419c
      type: derived
status: test
description: |
    Detects the execution of PingCastle, a tool designed to quickly assess the Active Directory security level via a script located in a potentially suspicious or uncommon location.
references:
    - https://github.com/vletoux/pingcastle
    - https://thedfirreport.com/2023/10/30/netsupport-intrusion-results-in-domain-compromise/
    - https://github.com/fengjixuchui/Start-ADEnum/blob/e237a739db98b6104427d833004836507da36a58/Functions/Start-ADEnum.ps1#L450
    - https://github.com/lkys37en/Start-ADEnum/blob/5b42c54215fe5f57fc59abc52c20487d15764005/Functions/Start-ADEnum.ps1#L680
    - https://github.com/projectHULK/AD_Recon/blob/dde2daba9b3393a9388cbebda87068972cc0bd3b/SecurityAssessment.ps1#L2699
    - https://github.com/802-1x/Compliance/blob/2e53df8b6e89686a0b91116b3f42c8f717dca820/Ping%20Castle/Get-PingCastle-HTMLComplianceReport.ps1#L8
    - https://github.com/EvotecIT/TheDashboard/blob/481a9ce8f82f2fd55fe65220ee6486bae6df0c9d/Examples/RunReports/PingCastle.ps1
author: Nasreddine Bencherchali (Nextron Systems), X__Junior (Nextron Systems)
date: 2024-01-11
tags:
    - attack.reconnaissance
    - attack.t1595
logsource:
    category: process_creation
    product: windows
detection:
    selection_parent_ext:
        ParentCommandLine|contains:
            - '.bat'
            - '.chm'
            - '.cmd'
            - '.hta'
            - '.htm'
            - '.html'
            - '.js'
            - '.lnk'
            - '.ps1'
            - '.vbe'
            - '.vbs'
            - '.wsf'
    selection_parent_path_1:
        ParentCommandLine|contains:
            - ':\Perflogs\'
            - ':\Temp\'
            - ':\Users\Public\'
            - ':\Windows\Temp\'
            - '\AppData\Local\Temp'
            - '\AppData\Roaming\'
            - '\Temporary Internet'
    selection_parent_path_2:
        - ParentCommandLine|contains|all:
              - ':\Users\'
              - '\Favorites\'
        - ParentCommandLine|contains|all:
              - ':\Users\'
              - '\Favourites\'
        - ParentCommandLine|contains|all:
              - ':\Users\'
              - '\Contacts\'
    selection_cli:
        - Image|endswith: '\PingCastle.exe'
        - OriginalFileName: PingCastle.exe
        - Product: 'Ping Castle'
        - CommandLine|contains:
              - '--scanner aclcheck'
              - '--scanner antivirus'
              - '--scanner computerversion'
              - '--scanner foreignusers'
              - '--scanner laps_bitlocker'
              - '--scanner localadmin'
              - '--scanner nullsession'
              - '--scanner nullsession-trust'
              - '--scanner oxidbindings'
              - '--scanner remote'
              - '--scanner share'
              - '--scanner smb'
              - '--scanner smb3querynetwork'
              - '--scanner spooler'
              - '--scanner startup'
              - '--scanner zerologon'
        - CommandLine|contains: '--no-enum-limit'
        - CommandLine|contains|all:
              - '--healthcheck'
              - '--level Full'
        - CommandLine|contains|all:
              - '--healthcheck'
              - '--server '
    condition: 1 of selection_parent_* and selection_parent_ext and selection_cli
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

1 of selection_parent_* and selection_parent_ext and selection_cli

Stage 1: selection_parent_ext

selection_parent_ext:
    ParentCommandLine|contains:
        - '.bat'
        - '.chm'
        - '.cmd'
        - '.hta'
        - '.htm'
        - '.html'
        - '.js'
        - '.lnk'
        - '.ps1'
        - '.vbe'
        - '.vbs'
        - '.wsf'

Stage 2: selection_parent_path_1

selection_parent_path_1:
    ParentCommandLine|contains:
        - ':\Perflogs\'
        - ':\Temp\'
        - ':\Users\Public\'
        - ':\Windows\Temp\'
        - '\AppData\Local\Temp'
        - '\AppData\Roaming\'
        - '\Temporary Internet'

Stage 3: selection_parent_path_2

selection_parent_path_2:
    - ParentCommandLine|contains|all:
          - ':\Users\'
          - '\Favorites\'
    - ParentCommandLine|contains|all:
          - ':\Users\'
          - '\Favourites\'
    - ParentCommandLine|contains|all:
          - ':\Users\'
          - '\Contacts\'

Stage 4: selection_parent_ext

selection_parent_ext:
    ParentCommandLine|contains:
        - '.bat'
        - '.chm'
        - '.cmd'
        - '.hta'
        - '.htm'
        - '.html'
        - '.js'
        - '.lnk'
        - '.ps1'
        - '.vbe'
        - '.vbs'
        - '.wsf'

Stage 5: selection_cli

selection_cli:
    - Image|endswith: '\PingCastle.exe'
    - OriginalFileName: PingCastle.exe
    - Product: 'Ping Castle'
    - CommandLine|contains:
          - '--scanner aclcheck'
          - '--scanner antivirus'
          - '--scanner computerversion'
          - '--scanner foreignusers'
          - '--scanner laps_bitlocker'
          - '--scanner localadmin'
          - '--scanner nullsession'
          - '--scanner nullsession-trust'
          - '--scanner oxidbindings'
          - '--scanner remote'
          - '--scanner share'
          - '--scanner smb'
          - '--scanner smb3querynetwork'
          - '--scanner spooler'
          - '--scanner startup'
          - '--scanner zerologon'
    - CommandLine|contains: '--no-enum-limit'
    - CommandLine|contains|all:
          - '--healthcheck'
          - '--level Full'
    - CommandLine|contains|all:
          - '--healthcheck'
          - '--server '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --healthcheck corpus 3 (sigma 3)
  • --level Full corpus 3 (sigma 3)
  • --no-enum-limit corpus 3 (sigma 3)
  • --scanner aclcheck corpus 3 (sigma 3)
  • --scanner antivirus corpus 3 (sigma 3)
  • --scanner computerversion corpus 3 (sigma 3)
  • --scanner foreignusers corpus 3 (sigma 3)
  • --scanner laps_bitlocker corpus 3 (sigma 3)
  • --scanner localadmin corpus 3 (sigma 3)
  • --scanner nullsession corpus 3 (sigma 3)
  • --scanner nullsession-trust corpus 3 (sigma 3)
  • --scanner oxidbindings corpus 3 (sigma 3)
  • --scanner remote corpus 3 (sigma 3)
  • --scanner share corpus 3 (sigma 3)
  • --scanner smb corpus 3 (sigma 3)
  • --scanner smb3querynetwork corpus 3 (sigma 3)
  • --scanner spooler corpus 3 (sigma 3)
  • --scanner startup corpus 3 (sigma 3)
  • --scanner zerologon corpus 3 (sigma 3)
  • --server corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \PingCastle.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\PingCastle.exe"
OriginalFileNameeq
  • PingCastle.exe corpus 3 (sigma 3)
field:"OriginalFileName" kind:eq value:"PingCastle.exe"
ParentCommandLinematch
  • .bat corpus 2 (sigma 1, splunk 1)
  • .chm
  • .cmd
  • .hta
  • .htm
  • .html
  • .js corpus 2 (sigma 2)
  • .lnk corpus 3 (sigma 2, elastic 1)
  • .ps1
  • .vbe
  • .vbs corpus 2 (sigma 2)
  • .wsf
  • :\Perflogs\ corpus 2 (sigma 2)
  • :\Temp\
  • :\Users\ corpus 2 (sigma 2)
  • :\Users\Public\ corpus 2 (sigma 2)
  • :\Windows\Temp\ corpus 2 (sigma 2)
  • \AppData\Local\Temp corpus 2 (sigma 2)
  • \AppData\Roaming\
  • \Contacts\ corpus 2 (sigma 2)
  • \Favorites\ corpus 2 (sigma 2)
  • \Favourites\ corpus 2 (sigma 2)
  • \Temporary Internet corpus 2 (sigma 2)
field:"ParentCommandLine" kind:match
Producteq
  • Ping Castle corpus 2 (sigma 2)
field:"Product" kind:eq value:"Ping Castle"

Small Sieve Malware Potential C2 Communication

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

Detects potential C2 communication related to Small Sieve malware

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Rule Body

title: Small Sieve Malware Potential C2 Communication
id: b0422664-37a4-4e78-949a-4a139309eaf0
status: test
description: Detects potential C2 communication related to Small Sieve malware
references:
    - https://www.ncsc.gov.uk/static-assets/documents/malware-analysis-reports/goofy-guineapig/NCSC-MAR-Goofy-Guineapig.pdf
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-19
tags:
    - attack.command-and-control
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    selection:
        cs-method: 'GET'
        cs-host: 'api.telegram.org'
        cs-uri|contains|all:
            - 'chat_id=2090761833'
            - 'text=com/'
    condition: selection
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'GET'
    cs-host: 'api.telegram.org'
    cs-uri|contains|all:
        - 'chat_id=2090761833'
        - 'text=com/'

Indicators

These rows show field, operator, and value matches.

Suspicious Processes Spawned by WinRM

#
Status
test
Severity
high
Author
Andreas Hunkeler (@Karneades), Markus Neis
Source
github.com/SigmaHQ/sigma

Detects suspicious processes including shells spawnd from WinRM host process

Known False Positives

  • Legitimate WinRM usage

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Telemetry Coverage

Rule Body

title: Suspicious Processes Spawned by WinRM
id: 5cc2cda8-f261-4d88-a2de-e9e193c86716
status: test
description: Detects suspicious processes including shells spawnd from WinRM host process
author: Andreas Hunkeler (@Karneades), Markus Neis
references:
    - Internal Research
date: 2021-05-20
modified: 2022-07-14
tags:
    - attack.t1190
    - attack.initial-access
    - attack.persistence
    - attack.privilege-escalation
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith: '\wsmprovhost.exe'
        Image|endswith:
            - '\cmd.exe'
            - '\sh.exe'
            - '\bash.exe'
            - '\powershell.exe'
            - '\pwsh.exe'
            - '\wsl.exe'
            - '\schtasks.exe'
            - '\certutil.exe'
            - '\whoami.exe'
            - '\bitsadmin.exe'
    condition: selection
falsepositives:
    - Legitimate WinRM usage
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith: '\wsmprovhost.exe'
    Image|endswith:
        - '\cmd.exe'
        - '\sh.exe'
        - '\bash.exe'
        - '\powershell.exe'
        - '\pwsh.exe'
        - '\wsl.exe'
        - '\schtasks.exe'
        - '\certutil.exe'
        - '\whoami.exe'
        - '\bitsadmin.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \bash.exe corpus 21 (sigma 21)
  • \bitsadmin.exe corpus 29 (sigma 29)
  • \certutil.exe corpus 43 (sigma 43)
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \schtasks.exe corpus 55 (sigma 55)
  • \sh.exe corpus 16 (sigma 16)
  • \whoami.exe corpus 19 (sigma 19)
  • \wsl.exe corpus 11 (sigma 11)
field:"Image" kind:ends_with
ParentImageends_with
  • \wsmprovhost.exe corpus 2 (sigma 2)
field:"ParentImage" kind:ends_with value:"\wsmprovhost.exe"

Suspicious Rejected SMB Guest Logon From IP

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

Detect Attempt PrintNightmare (CVE-2021-1675) Remote code execution in Windows Spooler Service

Known False Positives

  • Account fallback reasons (after failed login with specific account)

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: Suspicious Rejected SMB Guest Logon From IP
id: 71886b70-d7b4-4dbf-acce-87d2ca135262
status: test
description: Detect Attempt PrintNightmare (CVE-2021-1675) Remote code execution in Windows Spooler Service
references:
    - https://twitter.com/KevTheHermit/status/1410203844064301056
    - https://web.archive.org/web/20210629055600/https://github.com/hhlxf/PrintNightmare/
    - https://web.archive.org/web/20210701042336/https://github.com/afwu/PrintNightmare
author: Florian Roth (Nextron Systems), KevTheHermit, fuzzyf10w
date: 2021-06-30
modified: 2023-01-02
tags:
    - attack.credential-access
    - attack.t1110.001
logsource:
    product: windows
    service: smbclient-security
detection:
    selection:
        EventID: 31017
        UserName: ''
        ServerName|startswith: '\1'
    condition: selection
falsepositives:
    - Account fallback reasons (after failed login with specific account)
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 31017
    UserName: ''
    ServerName|startswith: '\1'

Indicators

These rows show field, operator, and value matches.

Back to all Sigma rules