Detection rules › Sigma

Sigma rules: 33

RuleSeverity
Add New Download Source To Wingetmedium
Audit policy enumeratedhigh
Cisco Clear Logshigh
Cisco Modify Configurationmedium
Classes Autorun Keys Modificationmedium
Disable Windows Defender AV Security Monitoringhigh
DNS hosts file accessed via network sharehigh
Exchange Exploitation Used by HAFNIUMhigh
File Recovery From Backup Via Wbadmin.EXEmedium
Fortinet APT group abuse on Windows (user)high
GAC DLL Loaded Via Office Applicationshigh
Google Workspace Government Attack Warningmedium
GUI Input Capture - macOSlow
IcedID Malware Suspicious Single Digit DLL Execution Via Rundll32high
MacOS Emond Launch Daemonmedium
macOS ULS Sudo Execution Loggedlow
MSSQL XPCmdshell Suspicious Executionhigh
Network Sniffing - Linuxlow
New User Account Creation Attempt Via ADSI in CommandLinemedium
Possible impact of 'SMOKEDHAM backdoor' with MSDTC service privilege escalation via command linemedium
Potential DLL Sideloading Of Non-Existent DLLs From System Foldershigh
Potential Obfuscated Ordinal Call Via Rundll32medium
Potential SAP NetViewer Webshell Command Executionhigh
Potentially Suspicious File Download From File Sharing Domain Via PowerShell.EXEhigh
Scheduled Tasks Names Used By SVR For GraphicalProton Backdoor - Task Schedulerhigh
Startup Item File Created - MacOSlow
Suspicious Get Local Groups Informationlow
UAC Bypass Using ChangePK and SLUIhigh
UAC Bypass Using Iscsicpl - ImageLoadhigh
UAC Bypass via ICMLuaUtilhigh
Windows Credential Guard Related Registry Value Deleted - Registryhigh
WinRS usage for remote executionhigh
WMI Event Consumer Created Named Pipemedium

Add New Download Source To Winget

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

Detects usage of winget to add new additional download sources

Known False Positives

  • False positive are expected with legitimate sources

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Add New Download Source To Winget
id: 05ebafc8-7aa2-4bcd-a269-2aec93f9e842
related:
    - id: 81a0ecb5-0a41-4ba1-b2ba-c944eb92bfa2
      type: similar
    - id: c15a46a0-07d4-4c87-b4b6-89207835a83b
      type: similar
status: test
description: Detects usage of winget to add new additional download sources
references:
    - https://learn.microsoft.com/en-us/windows/package-manager/winget/source
    - https://github.com/nasbench/Misc-Research/tree/b9596e8109dcdb16ec353f316678927e507a5b8d/LOLBINs/Winget
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-04-17
tags:
    - attack.execution
    - attack.t1059
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\winget.exe'
        - OriginalFileName: 'winget.exe'
    selection_cli:
        CommandLine|contains|all:
            - 'source '
            - 'add '
    condition: all of selection_*
falsepositives:
    - False positive are expected with legitimate sources
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - 'source '
        - 'add '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • add corpus 12 (sigma 12)
  • source corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \winget.exe corpus 5 (sigma 5)
field:"Image" kind:ends_with value:"\winget.exe"
OriginalFileNameeq
  • winget.exe corpus 4 (sigma 4)
field:"OriginalFileName" kind:eq value:"winget.exe"

Audit policy enumerated

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

Detects scenarios where an attacker attempts enumerate the audit policy in place.

Known False Positives

  • Administrator debugging audit policy
  • Vulnerability scanners (compiance module)
  • Directory monitor

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

Rule Body

title: Audit policy enumerated
description: Detects scenarios where an attacker attempts enumerate the audit policy in place.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0005-Defense%20Evasion/T1070.xxx-Audit%20policy%20disabled
- https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/auditpol-get
tags:
- attack.discovery
- attack.t1082 # System Information Discovery
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    NewProcessName|endswith: '\auditpol.exe'
    CommandLine|contains: # full command "Auditpol.exe /get /category:* " OR "Auditpol /backup /file:C:\Audit.ini"
      - get
      - backup
  condition: selection
falsepositives:
- Administrator debugging audit policy
- Vulnerability scanners (compiance module)
- Directory monitor
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  NewProcessName|endswith: '\auditpol.exe'
  CommandLine|contains:
    - get
    - backup

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • backup corpus 6 (sigma 5, splunk 1)
  • get corpus 4 (sigma 3, splunk 1)
field:"CommandLine" kind:match
NewProcessNameends_with
  • \auditpol.exe corpus 3 (sigma 3)
field:"Image" kind:ends_with value:"\auditpol.exe"

Cisco Clear Logs

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

Clear command history in network OS which is used for defense evasion

Known False Positives

  • Legitimate administrators may run these commands

MITRE ATT&CK Coverage

Rule Body

title: Cisco Clear Logs
id: ceb407f6-8277-439b-951f-e4210e3ed956
status: test
description: Clear command history in network OS which is used for defense evasion
references:
    - https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus5000/sw/command/reference/sysmgmt/n5k-sysmgmt-cr/n5k-sm_cmds_c.html
    - https://www.cisco.com/c/en/us/td/docs/ios/12_2sr/12_2sra/feature/guide/srmgtint.html#wp1127609
author: Austin Clark
date: 2019-08-12
modified: 2023-05-26
tags:
    - attack.stealth
    - attack.t1070.003
logsource:
    product: cisco
    service: aaa
detection:
    keywords:
        - 'clear logging'
        - 'clear archive'
    condition: keywords
falsepositives:
    - Legitimate administrators may run these commands
level: high

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'clear logging'
    - 'clear archive'

Cisco Modify Configuration

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

Modifications to a config that will serve an adversary's impacts or persistence

Known False Positives

  • Legitimate administrators may run these commands

MITRE ATT&CK Coverage

Rule Body

title: Cisco Modify Configuration
id: 671ffc77-50a7-464f-9e3d-9ea2b493b26b
status: test
description: Modifications to a config that will serve an adversary's impacts or persistence
author: Austin Clark
date: 2019-08-12
modified: 2025-04-28
tags:
    - attack.privilege-escalation
    - attack.execution
    - attack.persistence
    - attack.impact
    - attack.t1490
    - attack.t1505
    - attack.t1565.002
    - attack.t1053
logsource:
    product: cisco
    service: aaa
detection:
    keywords:
        - 'ip http server'
        - 'ip https server'
        - 'kron policy-list'
        - 'kron occurrence'
        - 'policy-list'
        - 'access-list'
        - 'ip access-group'
        - 'archive maximum'
        - 'ntp server'
    condition: keywords
falsepositives:
    - Legitimate administrators may run these commands
level: medium

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'ip http server'
    - 'ip https server'
    - 'kron policy-list'
    - 'kron occurrence'
    - 'policy-list'
    - 'access-list'
    - 'ip access-group'
    - 'archive maximum'
    - 'ntp server'

Classes Autorun Keys Modification

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

Detects modification of Windows Registry Classes keys used for persistence. Adversaries modify these autostart extensibility points (ASEP) to execute malicious code when file types are opened or actions are performed. Various legitimate software also uses these keys. Currently, this rule only filters out known legitimate software paths, thus it is recommended to review and tune filters for your environment to reduce false positives before deploying to production.

Known False Positives

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

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Classes Autorun Keys Modification
id: 9df5f547-c86a-433e-b533-f2794357e242
related:
    - id: 17f878b8-9968-4578-b814-c4217fc5768c
      type: obsolete
status: test
description: |
    Detects modification of Windows Registry Classes keys used for persistence.
    Adversaries modify these autostart extensibility points (ASEP) to execute malicious code when file types are opened or actions are performed.
    Various legitimate software also uses these keys. Currently, this rule only filters out known legitimate software paths,
    thus it is recommended to review and tune filters for your environment to reduce false positives before deploying to production.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1547.001/T1547.001.md
    - https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns
    - https://gist.github.com/GlebSukhodolskiy/0fc5fa5f482903064b448890db1eaf9d # a list with registry keys
author: Victor Sergeev, Daniil Yugoslavskiy, Gleb Sukhodolskiy, Timur Zinniatullin, oscd.community, Tim Shelton, frack113 (split)
date: 2019-10-25
modified: 2025-10-22
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1547.001
logsource:
    category: registry_set
    product: windows
detection:
    selection_classes_base:
        TargetObject|contains: '\Software\Classes'
    selection_classes_target:
        TargetObject|contains:
            - '\Folder\ShellEx\ExtShellFolderViews'
            - '\Folder\ShellEx\DragDropHandlers'
            - '\Folder\Shellex\ColumnHandlers'
            - '\Filter'
            - '\Exefile\Shell\Open\Command\(Default)'
            - '\Directory\Shellex\DragDropHandlers'
            - '\Directory\Shellex\CopyHookHandlers'
            - '\CLSID\{AC757296-3522-4E11-9862-C17BE5A1767E}\Instance'
            - '\CLSID\{ABE3B9A4-257D-4B97-BD1A-294AF496222E}\Instance'
            - '\CLSID\{7ED96837-96F0-4812-B211-F13C24117ED3}\Instance'
            - '\CLSID\{083863F1-70DE-11d0-BD40-00A0C911CE86}\Instance'
            - '\Classes\AllFileSystemObjects\ShellEx\DragDropHandlers'
            - '\.exe'
            - '\.cmd'
            - '\ShellEx\PropertySheetHandlers'
            - '\ShellEx\ContextMenuHandlers'
    filter_main_drivers:
        Image: 'C:\Windows\System32\drvinst.exe'
    filter_main_empty:
        Details: '(Empty)'
    filter_main_null:
        Details: null
    filter_main_svchost:
        Image: 'C:\Windows\System32\svchost.exe'
        # If more targets are found from "svchost". Please exclude the whole image
        TargetObject|contains: '\lnkfile\shellex\ContextMenuHandlers\'
    filter_optional_msoffice:
        Details: '{807583E5-5146-11D5-A672-00B0D022E945}'
    condition: all of selection_* and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Legitimate software automatically (mostly, during installation) sets up autorun keys for legitimate reason
    - Legitimate administrator sets up autorun keys for legitimate reason
level: medium

Stages and Predicates

Stage 0: condition

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

Stage 1: selection_classes_base

selection_classes_base:
    TargetObject|contains: '\Software\Classes'

Stage 2: selection_classes_target

selection_classes_target:
    TargetObject|contains:
        - '\Folder\ShellEx\ExtShellFolderViews'
        - '\Folder\ShellEx\DragDropHandlers'
        - '\Folder\Shellex\ColumnHandlers'
        - '\Filter'
        - '\Exefile\Shell\Open\Command\(Default)'
        - '\Directory\Shellex\DragDropHandlers'
        - '\Directory\Shellex\CopyHookHandlers'
        - '\CLSID\{AC757296-3522-4E11-9862-C17BE5A1767E}\Instance'
        - '\CLSID\{ABE3B9A4-257D-4B97-BD1A-294AF496222E}\Instance'
        - '\CLSID\{7ED96837-96F0-4812-B211-F13C24117ED3}\Instance'
        - '\CLSID\{083863F1-70DE-11d0-BD40-00A0C911CE86}\Instance'
        - '\Classes\AllFileSystemObjects\ShellEx\DragDropHandlers'
        - '\.exe'
        - '\.cmd'
        - '\ShellEx\PropertySheetHandlers'
        - '\ShellEx\ContextMenuHandlers'

Stage 3: not filter_main_*

filter_main_drivers:
    Image: 'C:\Windows\System32\drvinst.exe'
filter_main_empty:
    Details: '(Empty)'
filter_main_null:
    Details: null
filter_main_svchost:
    Image: 'C:\Windows\System32\svchost.exe'
    TargetObject|contains: '\lnkfile\shellex\ContextMenuHandlers\'

Stage 4: not filter_optional_msoffice

filter_optional_msoffice:
    Details: '{807583E5-5146-11D5-A672-00B0D022E945}'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectmatch
  • \.cmd
  • \.exe
  • \CLSID\{083863F1-70DE-11d0-BD40-00A0C911CE86}\Instance corpus 2 (sigma 2)
  • \CLSID\{7ED96837-96F0-4812-B211-F13C24117ED3}\Instance corpus 2 (sigma 2)
  • \CLSID\{ABE3B9A4-257D-4B97-BD1A-294AF496222E}\Instance corpus 2 (sigma 2)
  • \CLSID\{AC757296-3522-4E11-9862-C17BE5A1767E}\Instance corpus 2 (sigma 2)
  • \Classes\AllFileSystemObjects\ShellEx\DragDropHandlers
  • \Directory\Shellex\CopyHookHandlers corpus 2 (sigma 2)
  • \Directory\Shellex\DragDropHandlers corpus 2 (sigma 2)
  • \Exefile\Shell\Open\Command\(Default)
  • \Filter
  • \Folder\ShellEx\DragDropHandlers corpus 2 (sigma 2)
  • \Folder\ShellEx\ExtShellFolderViews corpus 2 (sigma 2)
  • \Folder\Shellex\ColumnHandlers corpus 2 (sigma 2)
  • \ShellEx\ContextMenuHandlers corpus 2 (sigma 2)
  • \ShellEx\PropertySheetHandlers corpus 2 (sigma 2)
  • \Software\Classes
field:"TargetObject" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImageeqC:\Windows\System32\svchost.exeexcludes:Image field:"Image" value:"C:\Windows\System32\svchost.exe"
TargetObjectmatch\lnkfile\shellex\ContextMenuHandlers\excludes:TargetObject field:"TargetObject" value:"\lnkfile\shellex\ContextMenuHandlers\"
Detailseq(Empty)excludes:Details field:"Details" value:"(Empty)"
Detailsis_null(no value, null check)excludes:Details
ImageeqC:\Windows\System32\drvinst.exeexcludes:Image field:"Image" value:"C:\Windows\System32\drvinst.exe"
Detailseq{807583E5-5146-11D5-A672-00B0D022E945}excludes:Details field:"Details" value:"{807583E5-5146-11D5-A672-00B0D022E945}"

Disable Windows Defender AV Security Monitoring

#
Status
test
Severity
high
Author
ok @securonix invrep-de, oscd.community, frack113
Source
github.com/SigmaHQ/sigma

Detects attackers attempting to disable Windows Defender using Powershell

Known False Positives

  • Minimal, for some older versions of dev tools, such as pycharm, developers were known to sometimes disable Windows Defender to improve performance, but this generally is not considered a good security practice.

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Disable Windows Defender AV Security Monitoring
id: a7ee1722-c3c5-aeff-3212-c777e4733217
status: test
description: Detects attackers attempting to disable Windows Defender using Powershell
references:
    - https://research.nccgroup.com/2020/06/23/wastedlocker-a-new-ransomware-variant-developed-by-the-evil-corp-group/
    - https://rvsec0n.wordpress.com/2020/01/24/malwares-that-bypass-windows-defender/
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1562.001/T1562.001.md
author: 'ok @securonix invrep-de, oscd.community, frack113'
date: 2020-10-12
modified: 2022-11-18
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: process_creation
    product: windows
detection:
    selection_pwsh_binary:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_pwsh_cli:
        CommandLine|contains:
            - '-DisableBehaviorMonitoring $true'
            - '-DisableRuntimeMonitoring $true'
    selection_sc_binary:
        - Image|endswith: '\sc.exe'
        - OriginalFileName: 'sc.exe'
    selection_sc_tamper_cmd_stop:
        CommandLine|contains|all:
            - 'stop'
            - 'WinDefend'
    selection_sc_tamper_cmd_delete:
        CommandLine|contains|all:
            - 'delete'
            - 'WinDefend'
    selection_sc_tamper_cmd_disabled:
        CommandLine|contains|all:
            - 'config'
            - 'WinDefend'
            - 'start=disabled'
    condition: all of selection_pwsh_* or (selection_sc_binary and 1 of selection_sc_tamper_*)
falsepositives:
    - 'Minimal, for some older versions of dev tools, such as pycharm, developers were known to sometimes disable Windows Defender to improve performance, but this generally is not considered a good security practice.'
level: high

Stages and Predicates

Stage 0: condition

all of selection_pwsh_* or (selection_sc_binary and 1 of selection_sc_tamper_*)

Stage 1: selection_pwsh_binary

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

Stage 2: selection_pwsh_cli

selection_pwsh_cli:
    CommandLine|contains:
        - '-DisableBehaviorMonitoring $true'
        - '-DisableRuntimeMonitoring $true'

Stage 3: selection_sc_binary

selection_sc_binary:
    - Image|endswith: '\sc.exe'
    - OriginalFileName: 'sc.exe'

Stage 4: selection_sc_tamper_cmd_stop

selection_sc_tamper_cmd_stop:
    CommandLine|contains|all:
        - 'stop'
        - 'WinDefend'

Stage 5: selection_sc_tamper_cmd_delete

selection_sc_tamper_cmd_delete:
    CommandLine|contains|all:
        - 'delete'
        - 'WinDefend'

Stage 6: selection_sc_tamper_cmd_disabled

selection_sc_tamper_cmd_disabled:
    CommandLine|contains|all:
        - 'config'
        - 'WinDefend'
        - 'start=disabled'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -DisableBehaviorMonitoring $true
  • -DisableRuntimeMonitoring $true
  • WinDefend corpus 4 (sigma 3, elastic 1)
  • config corpus 16 (sigma 15, splunk 1)
  • delete corpus 30 (sigma 16, elastic 8, splunk 6)
  • start=disabled corpus 2 (sigma 2)
  • stop corpus 8 (sigma 5, splunk 2, elastic 1)
field:"CommandLine" kind:match
Imageends_with
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \sc.exe corpus 30 (sigma 30)
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)
  • sc.exe corpus 28 (sigma 12, splunk 10, elastic 6)
field:"OriginalFileName" kind:eq

DNS hosts file accessed via network share

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

Detects scenarios where an attacker attempt read the Hosts file content via network share.

Known False Positives

  • None

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

Rule Body

title: DNS hosts file accessed via network share
description: Detects scenarios where an attacker attempt read the Hosts file content via network share.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0007-Discovery/T1018-Remote%20System%20Discovery
- https://www.picussecurity.com/resource/blog/how-to-beat-nefilim-ransomware-attacks
- https://github.com/login-securite/DonPAPI
tags:
- attack.discovery
- attack.t1018
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 5145
    ShareName: '\\*\C$'
    RelativeTargetName: 'Windows\System32\Drivers\etc\hosts'
  condition: selection
falsepositives:
- None
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 5145
  ShareName: '\\*\C$'
  RelativeTargetName: 'Windows\System32\Drivers\etc\hosts'

Indicators

These rows show field, operator, and value matches.

Exchange Exploitation Used by HAFNIUM

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

Detects exploitation attempts in Exchange server logs as described in blog posts reporting on HAFNIUM group activity

Known False Positives

  • Legitimate access to other web applications that use the same folder names as Exchange (e.g. owa, ecp) but are not Microsoft Exchange related

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Exchange Exploitation Used by HAFNIUM
id: 67bce556-312f-4c81-9162-c3c9ff2599b2
status: test
description: Detects exploitation attempts in Exchange server logs as described in blog posts reporting on HAFNIUM group activity
references:
    - https://www.volexity.com/blog/2021/03/02/active-exploitation-of-microsoft-exchange-zero-day-vulnerabilities/
    - https://www.microsoft.com/security/blog/2021/03/02/hafnium-targeting-exchange-servers/
author: Florian Roth (Nextron Systems)
date: 2021-03-03
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - attack.g0125
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection_1:
        cs-method: 'POST'
        cs-uri-query|contains: '/owa/auth/Current/themes/resources/'
    selection_2:
        cs-method: 'POST'
        cs-uri-query|contains: '/owa/auth/Current/'
        cs-user-agent:
            - 'DuckDuckBot/1.0;+(+http://duckduckgo.com/duckduckbot.html)'
            - 'facebookexternalhit/1.1+(+http://www.facebook.com/externalhit_uatext.php)'
            - 'Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)'
            - 'Mozilla/5.0+(compatible;+Bingbot/2.0;++http://www.bing.com/bingbot.htm)'
            - 'Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html'
            - 'Mozilla/5.0+(compatible;+Konqueror/3.5;+Linux)+KHTML/3.5.5+(like+Gecko)+(Exabot-Thumbnails)'
            - 'Mozilla/5.0+(compatible;+Yahoo!+Slurp;+http://help.yahoo.com/help/us/ysearch/slurp)'
            - 'Mozilla/5.0+(compatible;+YandexBot/3.0;++http://yandex.com/bots)'
            - 'Mozilla/5.0+(X11;+Linux+x86_64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/51.0.2704.103+Safari/537.36'
    selection_3:
        cs-uri-query|contains: '/ecp/'
        cs-method: 'POST'
        cs-user-agent:
            - 'ExchangeServicesClient/0.0.0.0'
            - 'python-requests/2.19.1'
            - 'python-requests/2.25.1'
    selection_4:
        cs-uri-query|contains:
            - '/aspnet_client/'
            - '/owa/'
        cs-method: 'POST'
        cs-user-agent:
            - 'antSword/v2.1'
            - 'Googlebot/2.1+(+http://www.googlebot.com/bot.html)'
            - 'Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)'
    selection_5:
        cs-uri-query|contains:
            - '/owa/auth/Current/'
            - '/ecp/default.flt'
            - '/ecp/main.css'
        cs-method: 'POST'
    selection_6:
        cs-method: 'POST'
        cs-uri-query|contains|all:
            - '/ecp/'
            - '.js'
    condition: 1 of selection_*
falsepositives:
    - Legitimate access to other web applications that use the same folder names as Exchange (e.g. owa, ecp) but are not Microsoft Exchange related
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    cs-method: 'POST'
    cs-uri-query|contains: '/owa/auth/Current/themes/resources/'

Stage 2: selection_2

selection_2:
    cs-method: 'POST'
    cs-uri-query|contains: '/owa/auth/Current/'
    cs-user-agent:
        - 'DuckDuckBot/1.0;+(+http://duckduckgo.com/duckduckbot.html)'
        - 'facebookexternalhit/1.1+(+http://www.facebook.com/externalhit_uatext.php)'
        - 'Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)'
        - 'Mozilla/5.0+(compatible;+Bingbot/2.0;++http://www.bing.com/bingbot.htm)'
        - 'Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html'
        - 'Mozilla/5.0+(compatible;+Konqueror/3.5;+Linux)+KHTML/3.5.5+(like+Gecko)+(Exabot-Thumbnails)'
        - 'Mozilla/5.0+(compatible;+Yahoo!+Slurp;+http://help.yahoo.com/help/us/ysearch/slurp)'
        - 'Mozilla/5.0+(compatible;+YandexBot/3.0;++http://yandex.com/bots)'
        - 'Mozilla/5.0+(X11;+Linux+x86_64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/51.0.2704.103+Safari/537.36'

Stage 3: selection_3

selection_3:
    cs-uri-query|contains: '/ecp/'
    cs-method: 'POST'
    cs-user-agent:
        - 'ExchangeServicesClient/0.0.0.0'
        - 'python-requests/2.19.1'
        - 'python-requests/2.25.1'

Stage 4: selection_4

selection_4:
    cs-uri-query|contains:
        - '/aspnet_client/'
        - '/owa/'
    cs-method: 'POST'
    cs-user-agent:
        - 'antSword/v2.1'
        - 'Googlebot/2.1+(+http://www.googlebot.com/bot.html)'
        - 'Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)'

Stage 5: selection_5

selection_5:
    cs-uri-query|contains:
        - '/owa/auth/Current/'
        - '/ecp/default.flt'
        - '/ecp/main.css'
    cs-method: 'POST'

Stage 6: selection_6

selection_6:
    cs-method: 'POST'
    cs-uri-query|contains|all:
        - '/ecp/'
        - '.js'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-methodeq
  • POST
field:"cs-method" kind:eq value:"POST"
cs-uri-querymatch
  • .js
  • /aspnet_client/
  • /ecp/
  • /ecp/default.flt
  • /ecp/main.css
  • /owa/
  • /owa/auth/Current/
  • /owa/auth/Current/themes/resources/
field:"cs-uri-query" kind:match
cs-user-agenteq
  • DuckDuckBot/1.0;+(+http://duckduckgo.com/duckduckbot.html)
  • ExchangeServicesClient/0.0.0.0
  • Googlebot/2.1+(+http://www.googlebot.com/bot.html)
  • Mozilla/5.0+(X11;+Linux+x86_64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/51.0.2704.103+Safari/537.36
  • Mozilla/5.0+(compatible;+Baiduspider/2.0;++http://www.baidu.com/search/spider.html)
  • Mozilla/5.0+(compatible;+Bingbot/2.0;++http://www.bing.com/bingbot.htm)
  • Mozilla/5.0+(compatible;+Googlebot/2.1;++http://www.google.com/bot.html
  • Mozilla/5.0+(compatible;+Konqueror/3.5;+Linux)+KHTML/3.5.5+(like+Gecko)+(Exabot-Thumbnails)
  • Mozilla/5.0+(compatible;+Yahoo!+Slurp;+http://help.yahoo.com/help/us/ysearch/slurp)
  • Mozilla/5.0+(compatible;+YandexBot/3.0;++http://yandex.com/bots)
  • antSword/v2.1
  • facebookexternalhit/1.1+(+http://www.facebook.com/externalhit_uatext.php)
  • python-requests/2.19.1
  • python-requests/2.25.1
field:"cs-user-agent" kind:eq

File Recovery From Backup Via Wbadmin.EXE

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

Detects the recovery of files from backups via "wbadmin.exe". Attackers can restore sensitive files such as NTDS.DIT or Registry Hives from backups in order to potentially extract credentials.

MITRE ATT&CK Coverage

TacticTechniques
Impact

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: File Recovery From Backup Via Wbadmin.EXE
id: 6fe4aa1e-0531-4510-8be2-782154b73b48
related:
    - id: 84972c80-251c-4c3a-9079-4f00aad93938
      type: derived
status: test
description: |
    Detects the recovery of files from backups via "wbadmin.exe".
    Attackers can restore sensitive files such as NTDS.DIT or Registry Hives from backups in order to potentially extract credentials.
references:
    - https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/wbadmin-start-recovery
    - https://lolbas-project.github.io/lolbas/Binaries/Wbadmin/
author: Nasreddine Bencherchali (Nextron Systems), frack113
date: 2024-05-10
tags:
    - attack.impact
    - attack.t1490
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\wbadmin.exe'
        - OriginalFileName: 'WBADMIN.EXE'
    selection_cli:
        CommandLine|contains|all:
            - ' recovery'
            - 'recoveryTarget'
            - 'itemtype:File'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\wbadmin.exe'
    - OriginalFileName: 'WBADMIN.EXE'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - ' recovery'
        - 'recoveryTarget'
        - 'itemtype:File'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • recovery corpus 2 (sigma 2)
  • itemtype:File corpus 3 (sigma 2, splunk 1)
  • recoveryTarget corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \wbadmin.exe corpus 7 (sigma 7)
field:"Image" kind:ends_with value:"\wbadmin.exe"
OriginalFileNameeq
  • WBADMIN.EXE corpus 16 (elastic 8, sigma 6, splunk 2)
field:"OriginalFileName" kind:eq value:"WBADMIN.EXE"

Fortinet APT group abuse on Windows (user)

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

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

Known False Positives

  • None

MITRE ATT&CK Coverage

TacticTechniques
Persistence

Telemetry Coverage

Rule Body

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

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 4720
  TargetUserName:
    - elie
    - WADGUtilityAccount

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetUserNameeq
  • WADGUtilityAccount
  • elie
field:"TargetUserName" kind:eq

GAC DLL Loaded Via Office Applications

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

Detects any GAC DLL being loaded by an Office Product

Known False Positives

  • Legitimate macro usage. Add the appropriate filter according to your environment

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: GAC DLL Loaded Via Office Applications
id: 90217a70-13fc-48e4-b3db-0d836c5824ac
status: test
description: Detects any GAC DLL being loaded by an Office Product
references:
    - https://medium.com/threatpunter/detecting-adversary-tradecraft-with-image-load-event-logging-and-eql-8de93338c16
author: Antonlovesdnb
date: 2020-02-19
modified: 2023-02-10
tags:
    - attack.execution
    - attack.t1204.002
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith:
            - '\excel.exe'
            - '\mspub.exe'
            - '\onenote.exe'
            - '\onenoteim.exe' # Just in case
            - '\outlook.exe'
            - '\powerpnt.exe'
            - '\winword.exe'
        ImageLoaded|startswith: 'C:\Windows\Microsoft.NET\assembly\GAC_MSIL'
    condition: selection
falsepositives:
    - Legitimate macro usage. Add the appropriate filter according to your environment
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\excel.exe'
        - '\mspub.exe'
        - '\onenote.exe'
        - '\onenoteim.exe'
        - '\outlook.exe'
        - '\powerpnt.exe'
        - '\winword.exe'
    ImageLoaded|startswith: 'C:\Windows\Microsoft.NET\assembly\GAC_MSIL'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \excel.exe corpus 16 (sigma 16)
  • \mspub.exe corpus 10 (sigma 10)
  • \onenote.exe corpus 6 (sigma 6)
  • \onenoteim.exe corpus 6 (sigma 6)
  • \outlook.exe corpus 13 (sigma 13)
  • \powerpnt.exe corpus 14 (sigma 14)
  • \winword.exe corpus 17 (sigma 17)
field:"Image" kind:ends_with
ImageLoadedstarts_with
  • C:\Windows\Microsoft.NET\assembly\GAC_MSIL
field:"ImageLoaded" kind:starts_with value:"C:\Windows\Microsoft.NET\assembly\GAC_MSIL"

Google Workspace Government Attack Warning

#
Status
experimental
Severity
medium
Author
Tom Kluter
Source
github.com/SigmaHQ/sigma

Detects a login attempt in Google Workspace flagged as a potential attack by a government-backed threat actor

MITRE ATT&CK Coverage

TacticTechniques
Initial Access
Persistence
Privilege Escalation
Stealth

Telemetry Coverage

Rule Body

title: Google Workspace Government Attack Warning
id: eafe6f2b-cfec-4612-aec2-49563c33a087
status: experimental
description: Detects a login attempt in Google Workspace flagged as a potential attack by a government-backed threat actor
references:
    - https://cloud.google.com/logging/docs/audit/gsuite-audit-logging
    - https://cloud.google.com/logging/docs/audit/understanding-audit-logs
    - https://developers.google.com/workspace/admin/reports/v1/appendix/activity/login#gov_attack_warning
author: Tom Kluter
date: 2026-04-28
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.initial-access
    - attack.impact
    - attack.stealth
    - attack.t1078
logsource:
    product: gcp
    service: google_workspace.login
detection:
    selection:
        protoPayload.serviceName: 'login.googleapis.com'
        protoPayload.metadata.event.eventName: 'gov_attack_warning'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    protoPayload.serviceName: 'login.googleapis.com'
    protoPayload.metadata.event.eventName: 'gov_attack_warning'

Indicators

These rows show field, operator, and value matches.

GUI Input Capture - macOS

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

Detects attempts to use system dialog prompts to capture user credentials

Known False Positives

  • Legitimate administration tools and activities

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: GUI Input Capture - macOS
id: 60f1ce20-484e-41bd-85f4-ac4afec2c541
status: test
description: Detects attempts to use system dialog prompts to capture user credentials
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1056.002/T1056.002.md
    - https://scriptingosx.com/2018/08/user-interaction-from-bash-scripts/
author: remotephone, oscd.community
date: 2020-10-13
modified: 2025-12-05
tags:
    - attack.collection
    - attack.credential-access
    - attack.t1056.002
logsource:
    product: macos
    category: process_creation
detection:
    selection_img:
        Image|endswith: '/osascript'
    selection_cli_1:
        CommandLine|contains|all:
            - '-e'
            - 'display'
            - 'dialog'
            - 'answer'
    selection_cli_2:
        CommandLine|contains:
            - 'admin'
            - 'administrator'
            - 'authenticate'
            - 'authentication'
            - 'credentials'
            - 'pass'
            - 'password'
            - 'unlock'
    condition: all of selection_*
falsepositives:
    - Legitimate administration tools and activities
level: low

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    Image|endswith: '/osascript'

Stage 2: selection_cli_1

selection_cli_1:
    CommandLine|contains|all:
        - '-e'
        - 'display'
        - 'dialog'
        - 'answer'

Stage 3: selection_cli_2

selection_cli_2:
    CommandLine|contains:
        - 'admin'
        - 'administrator'
        - 'authenticate'
        - 'authentication'
        - 'credentials'
        - 'pass'
        - 'password'
        - 'unlock'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -e corpus 3 (splunk 2, sigma 1)
  • admin corpus 4 (sigma 3, splunk 1)
  • administrator corpus 2 (sigma 2)
  • answer
  • authenticate
  • authentication corpus 2 (sigma 1, elastic 1)
  • credentials corpus 2 (sigma 2)
  • dialog
  • display
  • pass corpus 2 (sigma 2)
  • password corpus 6 (sigma 3, elastic 3)
  • unlock
field:"CommandLine" kind:match
Imageends_with
  • /osascript corpus 7 (sigma 7)
field:"Image" kind:ends_with value:"/osascript"

IcedID Malware Suspicious Single Digit DLL Execution Via Rundll32

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

Detects RunDLL32.exe executing a single digit DLL named "1.dll" with the export function "DllRegisterServer". This behaviour was often seen used by malware and especially IcedID

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: IcedID Malware Suspicious Single Digit DLL Execution Via Rundll32
id: 2bd8e100-5b3b-4b6a-bbb5-b129d3ddddc5
status: test
description: Detects RunDLL32.exe executing a single digit DLL named "1.dll" with the export function "DllRegisterServer". This behaviour was often seen used by malware and especially IcedID
references:
    - https://thedfirreport.com/2023/05/22/icedid-macro-ends-in-nokoyawa-ransomware/
    - https://thedfirreport.com/2023/08/28/html-smuggling-leads-to-domain-wide-ransomware/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-08-31
tags:
    - attack.stealth
    - attack.t1218.011
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\rundll32.exe'
        CommandLine|endswith:
            - '\1.dll, DllRegisterServer' # In case of full path exec
            - ' 1.dll, DllRegisterServer' # In case of direct exec
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\rundll32.exe'
    CommandLine|endswith:
        - '\1.dll, DllRegisterServer'
        - ' 1.dll, DllRegisterServer'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • 1.dll, DllRegisterServer
  • \1.dll, DllRegisterServer
field:"CommandLine" kind:ends_with
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"

MacOS Emond Launch Daemon

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

Detects additions to the Emond Launch Daemon that adversaries may use to gain persistence and elevate privileges.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: MacOS Emond Launch Daemon
id: 23c43900-e732-45a4-8354-63e4a6c187ce
status: test
description: Detects additions to the Emond Launch Daemon that adversaries may use to gain persistence and elevate privileges.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1546.014/T1546.014.md
    - https://posts.specterops.io/leveraging-emond-on-macos-for-persistence-a040a2785124
author: Alejandro Ortuno, oscd.community
date: 2020-10-23
modified: 2021-11-27
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.t1546.014
logsource:
    category: file_event
    product: macos
detection:
    selection_1:
        TargetFilename|contains: '/etc/emond.d/rules/'
        TargetFilename|endswith: '.plist'
    selection_2:
        TargetFilename|contains: '/private/var/db/emondClients/'
    condition: 1 of selection_*
falsepositives:
    - Legitimate administration activities
level: medium

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    TargetFilename|contains: '/etc/emond.d/rules/'
    TargetFilename|endswith: '.plist'

Stage 2: selection_2

selection_2:
    TargetFilename|contains: '/private/var/db/emondClients/'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .plist corpus 3 (sigma 3)
field:"TargetFilename" kind:ends_with value:".plist"
TargetFilenamematch
  • /etc/emond.d/rules/
  • /private/var/db/emondClients/
field:"TargetFilename" kind:match

macOS ULS Sudo Execution Logged

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

Detect sudo execution messages in Unified Logging. Adjust subsystem/category and message patterns to environment.

Known False Positives

  • normal admin usage

Rule Body

title: macOS ULS Sudo Execution Logged
id: 7f4c4e1b-21d8-4b1c-8c3b-8f6e2d2a3b11
status: experimental
description: Detect sudo execution messages in Unified Logging. Adjust subsystem/category
  and message patterns to environment.
author: Eric Brown - Nebulock, Inc.
date: 2025-10-29
logsource:
  product: macos
  service: unifiedlog
level: low
detection:
  selection:
    message|contains:
    - 'sudo:'
    - TTY=
  condition: selection
falsepositives:
- normal admin usage
references:
- https://ss64.com/osx/sudo.html
modified: 2025/01/15

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  message|contains:
  - 'sudo:'
  - TTY=

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
messagematch
  • TTY=
  • sudo:
field:"message" kind:match

MSSQL XPCmdshell Suspicious Execution

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

Detects when the MSSQL "xp_cmdshell" stored procedure is used to execute commands

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

ProviderRecord / event type
MSSQLSERVEREvent ID 33205

Rule Body

title: MSSQL XPCmdshell Suspicious Execution
id: 7f103213-a04e-4d59-8261-213dddf22314
status: test
description: Detects when the MSSQL "xp_cmdshell" stored procedure is used to execute commands
references:
    - https://www.netspi.com/blog/technical/network-penetration-testing/sql-server-persistence-part-1-startup-stored-procedures/
    - https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-07-12
modified: 2024-06-26
tags:
    - attack.execution
logsource:
    product: windows
    service: application
    definition: 'Requirements: MSSQL audit policy to monitor for "xp_cmdshell" must be enabled in order to receive this event in the application log (Follow this tutorial https://dba.stackexchange.com/questions/103183/is-there-any-way-to-monitor-execution-of-xp-cmdshell-in-sql-server-2012)'
    # warning: The 'data' field used in the detection section is the container for the event data as a whole. You may have to adapt the rule for your backend accordingly
detection:
    selection:
        Provider_Name|contains: 'MSSQL' # Note: We use contains to account for other third party providers - See https://github.com/SigmaHQ/sigma/issues/4876
        EventID: 33205
        Data|contains|all:
            # You can modify this to include specific commands
            - 'object_name:xp_cmdshell'
            - 'statement:EXEC'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Provider_Name|contains: 'MSSQL'
    EventID: 33205
    Data|contains|all:
        - 'object_name:xp_cmdshell'
        - 'statement:EXEC'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Datamatch
  • object_name:xp_cmdshell
  • statement:EXEC corpus 2 (sigma 2)
field:"Data" kind:match
Provider_Namematch
  • MSSQL corpus 7 (sigma 7)
field:"Provider_Name" kind:match value:"MSSQL"

Network Sniffing - Linux

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

Network sniffing refers to using the network interface on a system to monitor or capture information sent over a wired or wireless connection. An adversary may place a network interface into promiscuous mode to passively access data in transit over the network, or use span ports to capture a larger amount of data.

Known False Positives

  • Legitimate administrator or user uses network sniffing tool for legitimate reasons.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access
Discovery

Telemetry Coverage

Rule Body

title: Network Sniffing - Linux
id: f4d3748a-65d1-4806-bd23-e25728081d01
status: test
description: |
  Network sniffing refers to using the network interface on a system to monitor or capture information sent over a wired or wireless connection.
  An adversary may place a network interface into promiscuous mode to passively access data in transit over the network, or use span ports to capture a larger amount of data.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1040/T1040.md
author: Timur Zinniatullin, oscd.community
date: 2019-10-21
modified: 2022-12-18
tags:
    - attack.credential-access
    - attack.discovery
    - attack.t1040
logsource:
    product: linux
    service: auditd
detection:
    selection_1:
        type: 'execve'
        a0: 'tcpdump'
        a1: '-c'
        a3|contains: '-i'
    selection_2:
        type: 'execve'
        a0: 'tshark'
        a1: '-c'
        a3: '-i'
    condition: 1 of selection_*
falsepositives:
    - Legitimate administrator or user uses network sniffing tool for legitimate reasons.
level: low

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    type: 'execve'
    a0: 'tcpdump'
    a1: '-c'
    a3|contains: '-i'

Stage 2: selection_2

selection_2:
    type: 'execve'
    a0: 'tshark'
    a1: '-c'
    a3: '-i'

Indicators

These rows show field, operator, and value matches.

New User Account Creation Attempt Via ADSI in CommandLine

#
Status
experimental
Severity
medium
Author
William Gokah (idea), Raylee Hawkins, Swachchhanda Shrawan Poudel (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects PowerShell command line arguments containing ADSI (Active Directory Service Interfaces) patterns trying to create a new user account via the WinNT or LDAP provider. This is an uncommon method to create user accounts and may indicate an attempt to evade detection by avoiding more commonly monitored commands such as "net user", "New-LocalUser" or "New-ADUser".

Known False Positives

  • Legitimate administrative scripts that use ADSI to provision user accounts but should be rare in most environments

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: New User Account Creation Attempt Via ADSI in CommandLine
id: 7c9fed65-039a-4055-8c23-fa763d94aff6
related:
    - id: e50d5d26-0cf6-4045-b82b-13c0a4e316be
      type: similar
status: experimental
description: |
    Detects PowerShell command line arguments containing ADSI (Active Directory Service Interfaces) patterns
    trying to create a new user account via the WinNT or LDAP provider. This is an uncommon method to create
    user accounts and may indicate an attempt to evade detection by avoiding more commonly monitored commands
    such as "net user", "New-LocalUser" or "New-ADUser".
references:
    - https://learn.microsoft.com/en-us/windows/win32/adsi/user-creation-with-the-adsi-ldap-provider
    - https://learn.microsoft.com/en-us/windows/win32/adsi/adsi-winnt-provider
author: William Gokah (idea), Raylee Hawkins, Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2026-08-13
tags:
    - attack.persistence
    - attack.t1136.001
    - attack.t1136.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_cli_adsi:
        CommandLine|contains: '[ADSI]'
    selection_cli_create_user:
        # Example (WinNT - local user):
        #   powershell.exe -Command "$c = [ADSI]('WinNT://' + $env:COMPUTERNAME); $u = $c.Create('User','NewUser'); $u.SetPassword('P@ssw0rd!'); $u.SetInfo()"
        # Example (LDAP - domain user):
        #   $ou = [ADSI]"LDAP://CN=Users,DC=domain,DC=com"; $user = $ou.Create("user", "CN=NewUser"); $user.Put("sAMAccountName","NewUser"); $user.SetInfo()
        CommandLine|contains:
            - '.Create("user'
            - ".Create('user"
    selection_cli_adsi_provider:
        CommandLine|contains:
            - 'WinNT://' # Local user creation via WinNT provider
            - 'LDAP://' # Domain user creation via LDAP provider
    condition: all of selection_*
falsepositives:
    - Legitimate administrative scripts that use ADSI to provision user accounts but should be rare in most environments
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_powershell_adsi_create_user/info.yml

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli_adsi

selection_cli_adsi:
    CommandLine|contains: '[ADSI]'

Stage 3: selection_cli_create_user

selection_cli_create_user:
    CommandLine|contains:
        - '.Create("user'
        - ".Create('user"

Stage 4: selection_cli_adsi_provider

selection_cli_adsi_provider:
    CommandLine|contains:
        - 'WinNT://'
        - 'LDAP://'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • .Create("user
  • .Create('user
  • LDAP://
  • WinNT://
  • [ADSI]
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

Possible impact of 'SMOKEDHAM backdoor' with MSDTC service privilege escalation via command line

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

This rule detects activity related to 'SMOKEDHAM backdoor' which manipulate the default running service accounf of the MSDTC service in order to DLL side-load a malicious binary.

Known False Positives

  • None (administrators should not change the service account for MSDTC service)

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Possible impact of 'SMOKEDHAM backdoor' with MSDTC service privilege escalation via command line
id: 726e148b-a091-4786-8f4e-3066d69608e1
description: This rule detects activity related to 'SMOKEDHAM backdoor' which manipulate the default running service accounf of the MSDTC service in order to DLL side-load a malicious binary.
references:
- https://medium.com/trac-labs/who-ordered-the-smokedham-backdoor-delicacies-in-the-wild-87f51e2e5bd2
tags:
- attack.privilege_escalation
- attack.t1574.002 # Hijack Execution Flow: DLL Side-Loading 
- attack.privilege_escalation
- attack.t1543.003 # Create or Modify System Process: Windows Service 
author: mdecrevoisier
status: production
logsource:
  product: windows
  category: process_creation
detection:
    selection_img:
        - Image|endswith: '\sc.exe'
        - OriginalFileName: 'sc.exe'
    selection_cli:
        CommandLine|contains:
            - 'config'
            - 'msdtc'
            - 'LocalSystem'
    condition: all of selection_*
falsepositives:
- None  (administrators should not change the service account for MSDTC service)
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - 'config'
        - 'msdtc'
        - 'LocalSystem'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • LocalSystem
  • config corpus 16 (sigma 15, splunk 1)
  • msdtc corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \sc.exe corpus 30 (sigma 30)
field:"Image" kind:ends_with value:"\sc.exe"
OriginalFileNameeq
  • sc.exe corpus 28 (sigma 12, splunk 10, elastic 6)
field:"OriginalFileName" kind:eq value:"sc.exe"

Potential DLL Sideloading Of Non-Existent DLLs From System Folders

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

Detects loading of specific system DLL files that are usually not present on the system (or at least not in system directories) but may be loaded by legitimate processes, potentially indicating phantom DLL hijacking attempts. Phantom DLL hijacking involves placing malicious DLLs with names of non-existent system binaries in locations where legitimate applications may search for them, leading to execution of the malicious DLLs.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential DLL Sideloading Of Non-Existent DLLs From System Folders
id: 6b98b92b-4f00-4f62-b4fe-4d1920215771
related:
    - id: df6ecb8b-7822-4f4b-b412-08f524b4576c # FileEvent rule
      type: similar
    - id: 602a1f13-c640-4d73-b053-be9a2fa58b77
      type: obsolete
status: test
description: |
    Detects loading of specific system DLL files that are usually not present on the system (or at least not in system directories) but may be loaded by legitimate processes, potentially indicating phantom DLL hijacking attempts.
    Phantom DLL hijacking involves placing malicious DLLs with names of non-existent system binaries in locations where legitimate applications may search for them, leading to execution of the malicious DLLs.
references:
    - http://remoteawesomethoughts.blogspot.com/2019/05/windows-10-task-schedulerservice.html
    - https://clement.notin.org/blog/2020/09/12/CVE-2020-7315-McAfee-Agent-DLL-injection/
    - https://decoded.avast.io/martinchlumecky/png-steganography/
    - https://github.com/Wh04m1001/SysmonEoP
    - https://itm4n.github.io/cdpsvc-dll-hijacking/
    - https://posts.specterops.io/lateral-movement-scm-and-dll-hijacking-primer-d2f61e8ab992
    - https://securelist.com/passiveneuron-campaign-with-apt-implants-and-cobalt-strike/117745/
    - https://www.crowdstrike.com/en-us/blog/4-ways-adversaries-hijack-dlls/
    - https://www.hexacorn.com/blog/2013/12/08/beyond-good-ol-run-key-part-5/
    - https://www.hexacorn.com/blog/2025/06/14/wermgr-exe-boot-offdmpsvc-dll-lolbin/
    - https://www.hexacorn.com/blog/2025/06/14/wpr-exe-boottrace-phantom-dll-axeonoffhelper-dll-lolbin/
    - https://x.com/0gtweet/status/1564131230941122561
author: Nasreddine Bencherchali (Nextron Systems), SBousseaden
date: 2022-12-09
modified: 2026-01-24
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.001
logsource:
    category: image_load
    product: windows
detection:
    selection:
        ImageLoaded|endswith:
            # Add other DLLs
            - ':\Windows\System32\axeonoffhelper.dll'
            - ':\Windows\System32\cdpsgshims.dll'
            - ':\Windows\System32\oci.dll'
            - ':\Windows\System32\offdmpsvc.dll'
            - ':\Windows\System32\shellchromeapi.dll'
            - ':\Windows\System32\TSMSISrv.dll'
            - ':\Windows\System32\TSVIPSrv.dll'
            - ':\Windows\System32\wbem\wbemcomn.dll'
            - ':\Windows\System32\WLBSCTRL.dll'
            - ':\Windows\System32\wow64log.dll'
            - ':\Windows\System32\WptsExtensions.dll'
    filter_main_ms_signed:
        Signed: 'true'
        SignatureStatus: 'Valid'
        # There could be other signatures (please add when found)
        Signature: 'Microsoft Windows'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    ImageLoaded|endswith:
        - ':\Windows\System32\axeonoffhelper.dll'
        - ':\Windows\System32\cdpsgshims.dll'
        - ':\Windows\System32\oci.dll'
        - ':\Windows\System32\offdmpsvc.dll'
        - ':\Windows\System32\shellchromeapi.dll'
        - ':\Windows\System32\TSMSISrv.dll'
        - ':\Windows\System32\TSVIPSrv.dll'
        - ':\Windows\System32\wbem\wbemcomn.dll'
        - ':\Windows\System32\WLBSCTRL.dll'
        - ':\Windows\System32\wow64log.dll'
        - ':\Windows\System32\WptsExtensions.dll'

Stage 2: not filter_main_ms_signed

filter_main_ms_signed:
    Signed: 'true'
    SignatureStatus: 'Valid'
    Signature: 'Microsoft Windows'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ImageLoadedends_with
  • :\Windows\System32\TSMSISrv.dll
  • :\Windows\System32\TSVIPSrv.dll
  • :\Windows\System32\WLBSCTRL.dll
  • :\Windows\System32\WptsExtensions.dll
  • :\Windows\System32\axeonoffhelper.dll
  • :\Windows\System32\cdpsgshims.dll
  • :\Windows\System32\oci.dll
  • :\Windows\System32\offdmpsvc.dll
  • :\Windows\System32\shellchromeapi.dll
  • :\Windows\System32\wbem\wbemcomn.dll
  • :\Windows\System32\wow64log.dll
field:"ImageLoaded" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

Potential Obfuscated Ordinal Call Via Rundll32

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

Detects execution of "rundll32" with potential obfuscated ordinal calls

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Potential Obfuscated Ordinal Call Via Rundll32
id: 43fa5350-db63-4b8f-9a01-789a427074e1
status: test
description: Detects execution of "rundll32" with potential obfuscated ordinal calls
references:
    - Internal Research
    - https://www.youtube.com/watch?v=52tAmVLg1KM&t=2070s
author: Nasreddine Bencherchali (Nextron Systems), Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2023-05-17
modified: 2025-02-23
tags:
    - attack.stealth
    - attack.t1027.010
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\rundll32.exe'
        - OriginalFileName: 'RUNDLL32.EXE'
        - CommandLine|contains: 'rundll32'
    selection_cli:
        CommandLine|contains:
            - '#+'
            - '#-'
            # ordinal can be represented by adding any number of zeros in front ordinal number, for e.g. 000000024
            - '#0'
            # ordinal is 16 bit ordinal, so if you make the number large enough (don't fit in 16 bit space), then it normally wraps around.
            # for e.g ordinal 24 can be also represented by 65560 (65536+24)
            - '#655'
            - '#656'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - '#+'
        - '#-'
        - '#0'
        - '#655'
        - '#656'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • #+ corpus 3 (sigma 3)
  • #- corpus 3 (sigma 3)
  • #0
  • #655
  • #656
  • rundll32 corpus 23 (sigma 23)
field:"CommandLine" kind:match
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"
OriginalFileNameeq
  • RUNDLL32.EXE corpus 72 (sigma 35, splunk 21, elastic 16)
field:"OriginalFileName" kind:eq value:"RUNDLL32.EXE"

Potential SAP NetViewer Webshell Command Execution

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

Detects potential command execution via webshell in SAP NetViewer through JSP files with cmd parameter. This rule is created to detect exploitation of vulnerabilities like CVE-2025-31324, which allows remote code execution via a webshell.

Known False Positives

  • Legitimate applications using cmd parameter for non-malicious purposes

MITRE ATT&CK Coverage

Rule Body

title: Potential SAP NetViewer Webshell Command Execution
id: 94e12f41-6cb3-45c5-97b1-c783a7bf2e72
status: experimental
description: |
    Detects potential command execution via webshell in SAP NetViewer through JSP files with cmd parameter.
    This rule is created to detect exploitation of vulnerabilities like CVE-2025-31324, which allows remote code execution via a webshell.
references:
    - https://blog.eclecticiq.com/china-nexus-nation-state-actors-exploit-sap-netweaver-cve-2025-31324-to-target-critical-infrastructures
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-05-14
tags:
    - attack.persistence
    - attack.t1505.003
    - attack.initial-access
    - attack.t1190
    - detection.emerging-threats
    - cve.2025-31324
logsource:
    category: webserver
detection:
    selection_uri:
        cs-uri-stem|contains|all:
            - '/irj/'
            - '.jsp'
    selection_query:
        - cs-uri-query|startswith:
              - 'cmd='
              - 'command='
              - 'exec_cmd='
              - 'exec='
        - cs-uri-query|contains:
              - '/dev/tcp'
              - '/etc/passwd'
              - '%2fdev%2ftcp' # URL encoded of /dev/tcp
              - '%2fetc%2fpasswd' # URL encoded of /etc/passwd
              - '=uname'
              - '=whoami'
              - 'ifconfig'
              - 'ping'
              - 'pwd'
        - cs-uri-query|contains|all:
              - 'echo'
              - 'base64'
    condition: all of selection_*
falsepositives:
    - Legitimate applications using cmd parameter for non-malicious purposes
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_uri

selection_uri:
    cs-uri-stem|contains|all:
        - '/irj/'
        - '.jsp'

Stage 2: selection_query

selection_query:
    - cs-uri-query|startswith:
          - 'cmd='
          - 'command='
          - 'exec_cmd='
          - 'exec='
    - cs-uri-query|contains:
          - '/dev/tcp'
          - '/etc/passwd'
          - '%2fdev%2ftcp'
          - '%2fetc%2fpasswd'
          - '=uname'
          - '=whoami'
          - 'ifconfig'
          - 'ping'
          - 'pwd'
    - cs-uri-query|contains|all:
          - 'echo'
          - 'base64'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-uri-querymatch
  • %2fdev%2ftcp
  • %2fetc%2fpasswd
  • /dev/tcp
  • /etc/passwd
  • =uname
  • =whoami
  • base64
  • echo
  • ifconfig
  • ping
  • pwd
field:"cs-uri-query" kind:match
cs-uri-querystarts_with
  • cmd=
  • command=
  • exec=
  • exec_cmd=
field:"cs-uri-query" kind:starts_with
cs-uri-stemmatch
  • .jsp
  • /irj/
field:"cs-uri-stem" kind:match

Potentially Suspicious File Download From File Sharing Domain Via PowerShell.EXE

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

Detects potentially suspicious file downloads from file sharing domains using PowerShell.exe

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Potentially Suspicious File Download From File Sharing Domain Via PowerShell.EXE
id: b6e04788-29e1-4557-bb14-77f761848ab8
related:
    - id: 8b48ad89-10d8-4382-a546-50588c410f0d
      type: similar
    - id: d635249d-86b5-4dad-a8c7-d7272b788586
      type: similar
    - id: 52182dfb-afb7-41db-b4bc-5336cb29b464
      type: similar
    - id: ae02ed70-11aa-4a22-b397-c0d0e8f6ea99
      type: similar
    - id: e0f8ab85-0ac9-423b-a73a-81b3c7b1aa97
      type: similar
    - id: 7b434893-c57d-4f41-908d-6a17bf1ae98f
      type: similar
    - id: 8518ed3d-f7c9-4601-a26c-f361a4256a0c
      type: similar
    - id: 42a5f1e7-9603-4f6d-97ae-3f37d130d794
      type: similar
    - id: 56454143-524f-49fb-b1c6-3fb8b1ad41fb
      type: similar
    - id: a0d7e4d2-bede-4141-8896-bc6e237e977c
      type: similar
    - id: 297ae038-edc2-4b2e-bb3e-7c5fc94dd5c7
      type: similar
status: test
description: Detects potentially suspicious file downloads from file sharing domains using PowerShell.exe
references:
    - https://labs.withsecure.com/publications/fin7-target-veeam-servers
    - https://github.com/WithSecureLabs/iocs/blob/344203de742bb7e68bd56618f66d34be95a9f9fc/FIN7VEEAM/iocs.csv
    - https://www.microsoft.com/en-us/security/blog/2024/01/17/new-ttps-observed-in-mint-sandstorm-campaign-targeting-high-profile-individuals-at-universities-and-research-orgs/
    - https://www.huntress.com/blog/slashandgrab-screen-connect-post-exploitation-in-the-wild-cve-2024-1709-cve-2024-1708
author: Nasreddine Bencherchali (Nextron Systems)
date: 2024-02-23
modified: 2026-03-29
tags:
    - attack.execution
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\powershell.exe'
              - '\pwsh.exe'
        - OriginalFileName:
              - 'PowerShell.EXE'
              - 'pwsh.dll'
    selection_websites:
        CommandLine|contains:
            # Note: You might want to baseline the github domain before including it
            # - '.githubusercontent.com'       # Includes both gists and github repositories / Michael Haag (idea).
            - '0x0.st'
            - 'anonfiles.com'
            - 'bashupload.com'
            - 'cdn.discordapp.com'
            - 'chunk.io'
            - 'ddns.net'
            - 'dl.dropboxusercontent.com'
            - 'ghostbin.co'
            # - 'github.com'  See note above
            - 'glitch.me'
            - 'gofile.io'
            - 'hastebin.com'
            - 'mediafire.com'
            - 'mega.nz'
            - 'onrender.com'
            - 'pages.dev'
            - 'paste.ee'
            - 'pastebin.com'
            - 'pastebin.pl'
            - 'pastetext.net'
            - 'pixeldrain.com'
            - 'privatlab.com'
            - 'privatlab.net'
            - 'send.exploit.in'
            - 'sendspace.com'
            - 'storage.googleapis.com'
            - 'storjshare.io'
            - 'supabase.co'
            - 'temp.sh'
            - 'transfer.sh'
            - 'trycloudflare.com'
            - 'ufile.io'
            - 'w3spaces.com'
            - 'workers.dev'
            - 'x0.at'
    selection_download:
        CommandLine|contains:
            - '.DownloadString('
            - '.DownloadFile('
            - 'Invoke-WebRequest '
            - 'iwr '
            - 'wget '
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_websites

selection_websites:
    CommandLine|contains:
        - '0x0.st'
        - 'anonfiles.com'
        - 'bashupload.com'
        - 'cdn.discordapp.com'
        - 'chunk.io'
        - 'ddns.net'
        - 'dl.dropboxusercontent.com'
        - 'ghostbin.co'
        - 'glitch.me'
        - 'gofile.io'
        - 'hastebin.com'
        - 'mediafire.com'
        - 'mega.nz'
        - 'onrender.com'
        - 'pages.dev'
        - 'paste.ee'
        - 'pastebin.com'
        - 'pastebin.pl'
        - 'pastetext.net'
        - 'pixeldrain.com'
        - 'privatlab.com'
        - 'privatlab.net'
        - 'send.exploit.in'
        - 'sendspace.com'
        - 'storage.googleapis.com'
        - 'storjshare.io'
        - 'supabase.co'
        - 'temp.sh'
        - 'transfer.sh'
        - 'trycloudflare.com'
        - 'ufile.io'
        - 'w3spaces.com'
        - 'workers.dev'
        - 'x0.at'

Stage 3: selection_download

selection_download:
    CommandLine|contains:
        - '.DownloadString('
        - '.DownloadFile('
        - 'Invoke-WebRequest '
        - 'iwr '
        - 'wget '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • .DownloadFile( corpus 7 (sigma 7)
  • .DownloadString( corpus 7 (sigma 7)
  • 0x0.st corpus 6 (sigma 6)
  • Invoke-WebRequest corpus 4 (sigma 4)
  • anonfiles.com corpus 5 (sigma 5)
  • bashupload.com corpus 6 (sigma 6)
  • cdn.discordapp.com corpus 5 (sigma 5)
  • chunk.io corpus 6 (sigma 6)
  • ddns.net corpus 5 (sigma 5)
  • dl.dropboxusercontent.com corpus 5 (sigma 5)
  • ghostbin.co corpus 5 (sigma 5)
  • glitch.me corpus 5 (sigma 5)
  • gofile.io corpus 6 (sigma 5, elastic 1)
  • hastebin.com corpus 5 (sigma 5)
  • iwr corpus 11 (sigma 11)
  • mediafire.com corpus 5 (sigma 5)
  • mega.nz corpus 5 (sigma 5)
  • onrender.com corpus 5 (sigma 5)
  • pages.dev corpus 5 (sigma 5)
  • paste.ee corpus 6 (sigma 5, elastic 1)
  • pastebin.com corpus 5 (sigma 5)
  • pastebin.pl corpus 5 (sigma 5)
  • pastetext.net corpus 5 (sigma 5)
  • pixeldrain.com corpus 4 (sigma 3, elastic 1)
  • privatlab.com corpus 5 (sigma 5)
  • privatlab.net corpus 5 (sigma 5)
  • send.exploit.in corpus 5 (sigma 5)
  • sendspace.com corpus 5 (sigma 5)
  • storage.googleapis.com corpus 5 (sigma 5)
  • storjshare.io corpus 5 (sigma 5)
  • supabase.co corpus 5 (sigma 5)
  • temp.sh corpus 6 (sigma 6)
  • transfer.sh corpus 7 (sigma 6, elastic 1)
  • trycloudflare.com corpus 5 (sigma 5)
  • ufile.io corpus 7 (sigma 6, elastic 1)
  • w3spaces.com corpus 5 (sigma 5)
  • wget corpus 7 (sigma 7)
  • workers.dev corpus 5 (sigma 5)
  • x0.at corpus 6 (sigma 6)
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

Scheduled Tasks Names Used By SVR For GraphicalProton Backdoor - Task Scheduler

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

Hunts for known SVR-specific scheduled task names

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique

Telemetry Coverage

Rule Body

title: Scheduled Tasks Names Used By SVR For GraphicalProton Backdoor - Task Scheduler
id: 2bfc1373-0220-4fbd-8b10-33ddafd2a142
related:
    - id: 8fa65166-f463-4fd2-ad4f-1436133c52e1 # Security-Audting Eventlog
      type: similar
status: test
description: Hunts for known SVR-specific scheduled task names
author: CISA
references:
    - https://www.cisa.gov/news-events/cybersecurity-advisories/aa23-347a
date: 2023-12-18
tags:
    - attack.persistence
    - detection.emerging-threats
logsource:
    product: windows
    service: taskscheduler
    definition: 'Requirements: The "Microsoft-Windows-TaskScheduler/Operational" is disabled by default and needs to be enabled in order for this detection to trigger'
detection:
    selection:
        EventID:
            - 129 # Task Created
            - 140 # Task Updated
            - 141 # Task Deleted
        TaskName:
            - '\defender'
            - '\Microsoft\DefenderService'
            - '\Microsoft\Windows\Application Experience\StartupAppTaskCheck'
            - '\Microsoft\Windows\Application Experience\StartupAppTaskCkeck'
            - '\Microsoft\Windows\ATPUpd'
            - '\Microsoft\Windows\Data Integrity Scan\Data Integrity Update'
            - '\Microsoft\Windows\DefenderUPDService'
            - '\Microsoft\Windows\IISUpdateService'
            - '\Microsoft\Windows\Speech\SpeechModelInstallTask'
            - '\Microsoft\Windows\WiMSDFS'
            - '\Microsoft\Windows\Windows Defender\Defender Update Service'
            - '\Microsoft\Windows\Windows Defender\Service Update'
            - '\Microsoft\Windows\Windows Error Reporting\CheckReporting'
            - '\Microsoft\Windows\Windows Error Reporting\SubmitReporting'
            - '\Microsoft\Windows\Windows Filtering Platform\BfeOnServiceStart'
            - '\Microsoft\Windows\WindowsDefenderService'
            - '\Microsoft\Windows\WindowsDefenderService2'
            - '\Microsoft\Windows\WindowsUpdate\Scheduled AutoCheck'
            - '\Microsoft\Windows\WindowsUpdate\Scheduled Check'
            - '\WindowUpdate'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID:
        - 129
        - 140
        - 141
    TaskName:
        - '\defender'
        - '\Microsoft\DefenderService'
        - '\Microsoft\Windows\Application Experience\StartupAppTaskCheck'
        - '\Microsoft\Windows\Application Experience\StartupAppTaskCkeck'
        - '\Microsoft\Windows\ATPUpd'
        - '\Microsoft\Windows\Data Integrity Scan\Data Integrity Update'
        - '\Microsoft\Windows\DefenderUPDService'
        - '\Microsoft\Windows\IISUpdateService'
        - '\Microsoft\Windows\Speech\SpeechModelInstallTask'
        - '\Microsoft\Windows\WiMSDFS'
        - '\Microsoft\Windows\Windows Defender\Defender Update Service'
        - '\Microsoft\Windows\Windows Defender\Service Update'
        - '\Microsoft\Windows\Windows Error Reporting\CheckReporting'
        - '\Microsoft\Windows\Windows Error Reporting\SubmitReporting'
        - '\Microsoft\Windows\Windows Filtering Platform\BfeOnServiceStart'
        - '\Microsoft\Windows\WindowsDefenderService'
        - '\Microsoft\Windows\WindowsDefenderService2'
        - '\Microsoft\Windows\WindowsUpdate\Scheduled AutoCheck'
        - '\Microsoft\Windows\WindowsUpdate\Scheduled Check'
        - '\WindowUpdate'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TaskNameeq
  • \Microsoft\DefenderService corpus 2 (sigma 2)
  • \Microsoft\Windows\ATPUpd corpus 2 (sigma 2)
  • \Microsoft\Windows\Application Experience\StartupAppTaskCheck corpus 2 (sigma 2)
  • \Microsoft\Windows\Application Experience\StartupAppTaskCkeck corpus 2 (sigma 2)
  • \Microsoft\Windows\Data Integrity Scan\Data Integrity Update corpus 2 (sigma 2)
  • \Microsoft\Windows\DefenderUPDService corpus 2 (sigma 2)
  • \Microsoft\Windows\IISUpdateService corpus 2 (sigma 2)
  • \Microsoft\Windows\Speech\SpeechModelInstallTask corpus 2 (sigma 2)
  • \Microsoft\Windows\WiMSDFS corpus 2 (sigma 2)
  • \Microsoft\Windows\Windows Defender\Defender Update Service corpus 2 (sigma 2)
  • \Microsoft\Windows\Windows Defender\Service Update corpus 2 (sigma 2)
  • \Microsoft\Windows\Windows Error Reporting\CheckReporting corpus 2 (sigma 2)
  • \Microsoft\Windows\Windows Error Reporting\SubmitReporting corpus 2 (sigma 2)
  • \Microsoft\Windows\Windows Filtering Platform\BfeOnServiceStart corpus 2 (sigma 2)
  • \Microsoft\Windows\WindowsDefenderService corpus 2 (sigma 2)
  • \Microsoft\Windows\WindowsDefenderService2 corpus 2 (sigma 2)
  • \Microsoft\Windows\WindowsUpdate\Scheduled AutoCheck corpus 2 (sigma 2)
  • \Microsoft\Windows\WindowsUpdate\Scheduled Check corpus 2 (sigma 2)
  • \WindowUpdate corpus 2 (sigma 2)
  • \defender corpus 2 (sigma 2)
field:"TaskName" kind:eq

Startup Item File Created - MacOS

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

Detects the creation of a startup item plist file, that automatically get executed at boot initialization to establish persistence. Adversaries may use startup items automatically executed at boot initialization to establish persistence. Startup items execute during the final phase of the boot process and contain shell scripts or other executable files along with configuration information used by the system to determine the execution order for all startup items.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Startup Item File Created - MacOS
id: dfe8b941-4e54-4242-b674-6b613d521962
status: test
description: |
    Detects the creation of a startup item plist file, that automatically get executed at boot initialization to establish persistence.
    Adversaries may use startup items automatically executed at boot initialization to establish persistence.
    Startup items execute during the final phase of the boot process and contain shell scripts or other executable files along with configuration information used by the system to determine the execution order for all startup items.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1037.005/T1037.005.md
    - https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/StartupItems.html
author: Alejandro Ortuno, oscd.community
date: 2020-10-14
modified: 2024-08-11
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.t1037.005
logsource:
    category: file_event
    product: macos
detection:
    selection:
        TargetFilename|startswith:
            - '/Library/StartupItems/'
            - '/System/Library/StartupItems'
        TargetFilename|endswith: '.plist'
    condition: selection
falsepositives:
    - Legitimate administration activities
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|startswith:
        - '/Library/StartupItems/'
        - '/System/Library/StartupItems'
    TargetFilename|endswith: '.plist'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .plist corpus 3 (sigma 3)
field:"TargetFilename" kind:ends_with value:".plist"
TargetFilenamestarts_with
  • /Library/StartupItems/
  • /System/Library/StartupItems
field:"TargetFilename" kind:starts_with

Suspicious Get Local Groups Information

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

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

Known False Positives

  • Administrator script

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Get Local Groups Information
id: cef24b90-dddc-4ae1-a09a-8764872f69fc
related:
    - id: fa6a5a45-3ee2-4529-aa14-ee5edc9e29cb
      type: similar
status: test
description: |
    Detects the use of PowerShell modules and cmdlets to gather local group information.
    Adversaries may use local system permission groups to determine which groups exist and which users belong to a particular group such as the local administrators group.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1069.001/T1069.001.md
author: frack113
date: 2021-12-12
modified: 2025-08-22
tags:
    - attack.discovery
    - attack.t1069.001
logsource:
    product: windows
    category: ps_module
    definition: 0ad03ef1-f21b-4a79-8ce8-e6900c54b65b
detection:
    selection_localgroup:
        - Payload|contains:
              - 'get-localgroup '
              - 'get-localgroupmember '
        - ContextInfo|contains:
              - 'get-localgroup '
              - 'get-localgroupmember '
    selection_wmi_module:
        - Payload|contains:
              - 'get-wmiobject '
              - 'gwmi '
              - 'get-ciminstance '
              - 'gcim '
        - ContextInfo|contains|all:
              - 'get-wmiobject '
              - 'gwmi '
              - 'get-ciminstance '
              - 'gcim '
    selection_wmi_class:
        - Payload|contains: 'win32_group'
        - ContextInfo|contains: 'win32_group'
    condition: selection_localgroup or all of selection_wmi_*
falsepositives:
    - Administrator script
level: low

Stages and Predicates

Stage 0: condition

selection_localgroup or all of selection_wmi_*

Stage 1: selection_localgroup

selection_localgroup:
    - Payload|contains:
          - 'get-localgroup '
          - 'get-localgroupmember '
    - ContextInfo|contains:
          - 'get-localgroup '
          - 'get-localgroupmember '

Stage 2: selection_wmi_module

selection_wmi_module:
    - Payload|contains:
          - 'get-wmiobject '
          - 'gwmi '
          - 'get-ciminstance '
          - 'gcim '
    - ContextInfo|contains|all:
          - 'get-wmiobject '
          - 'gwmi '
          - 'get-ciminstance '
          - 'gcim '

Stage 3: selection_wmi_class

selection_wmi_class:
    - Payload|contains: 'win32_group'
    - ContextInfo|contains: 'win32_group'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ContextInfomatch
  • gcim
  • get-ciminstance
  • get-localgroup
  • get-localgroupmember
  • get-wmiobject
  • gwmi
  • win32_group
field:"ContextInfo" kind:match
Payloadmatch
  • gcim
  • get-ciminstance
  • get-localgroup
  • get-localgroupmember
  • get-wmiobject
  • gwmi
  • win32_group
field:"Payload" kind:match

UAC Bypass Using ChangePK and SLUI

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

Detects an UAC bypass that uses changepk.exe and slui.exe (UACMe 61)

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: UAC Bypass Using ChangePK and SLUI
id: 503d581c-7df0-4bbe-b9be-5840c0ecc1fc
status: test
description: Detects an UAC bypass that uses changepk.exe and slui.exe (UACMe 61)
references:
    - https://mattharr0ey.medium.com/privilege-escalation-uac-bypass-in-changepk-c40b92818d1b
    - https://github.com/hfiref0x/UACME
    - https://medium.com/falconforce/falconfriday-detecting-uac-bypasses-0xff16-86c2a9107abf
author: Christian Burkard (Nextron Systems)
date: 2021-08-23
modified: 2024-12-01
tags:
    - attack.privilege-escalation
    - attack.t1548.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\changepk.exe'
        ParentImage|endswith: '\slui.exe'
        IntegrityLevel:
            - 'High'
            - 'System'
            - 'S-1-16-16384' # System
            - 'S-1-16-12288' # High
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\changepk.exe'
    ParentImage|endswith: '\slui.exe'
    IntegrityLevel:
        - 'High'
        - 'System'
        - 'S-1-16-16384'
        - 'S-1-16-12288'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \changepk.exe
field:"Image" kind:ends_with value:"\changepk.exe"
IntegrityLeveleq
  • High corpus 18 (sigma 17, splunk 1)
  • S-1-16-12288 corpus 18 (sigma 17, splunk 1)
  • S-1-16-16384 corpus 31 (sigma 22, splunk 5, elastic 3, kusto 1)
  • System corpus 31 (sigma 22, splunk 5, elastic 3, kusto 1)
field:"IntegrityLevel" kind:eq
ParentImageends_with
  • \slui.exe corpus 2 (sigma 2)
field:"ParentImage" kind:ends_with value:"\slui.exe"

UAC Bypass Using Iscsicpl - ImageLoad

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

Detects the "iscsicpl.exe" UAC bypass technique that leverages a DLL Search Order hijacking technique to load a custom DLL's from temp or a any user controlled location in the users %PATH%

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: UAC Bypass Using Iscsicpl - ImageLoad
id: 9ed5959a-c43c-4c59-84e3-d28628429456
status: test
description: Detects the "iscsicpl.exe" UAC bypass technique that leverages a DLL Search Order hijacking technique to load a custom DLL's from temp or a any user controlled location in the users %PATH%
references:
    - https://github.com/hackerhouse-opensource/iscsicpl_bypassUAC
    - https://twitter.com/wdormann/status/1547583317410607110
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-07-17
modified: 2022-07-25
tags:
    - attack.privilege-escalation
    - attack.t1548.002
logsource:
    product: windows
    category: image_load
detection:
    selection:
        Image: C:\Windows\SysWOW64\iscsicpl.exe
        ImageLoaded|endswith: '\iscsiexe.dll'
    filter:
        ImageLoaded|contains|all:
            - 'C:\Windows\'
            - 'iscsiexe.dll'
    condition: selection and not filter
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    Image: C:\Windows\SysWOW64\iscsicpl.exe
    ImageLoaded|endswith: '\iscsiexe.dll'

Stage 2: not filter

filter:
    ImageLoaded|contains|all:
        - 'C:\Windows\'
        - 'iscsiexe.dll'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImageLoadedmatchC:\Windows\excludes:ImageLoaded field:"ImageLoaded" value:"C:\Windows\"
ImageLoadedmatchiscsiexe.dllexcludes:ImageLoaded field:"ImageLoaded" value:"iscsiexe.dll"

UAC Bypass via ICMLuaUtil

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

Detects the pattern of UAC Bypass using ICMLuaUtil Elevated COM interface

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: UAC Bypass via ICMLuaUtil
id: 49f2f17b-b4c8-4172-a68b-d5bf95d05130
status: test
description: Detects the pattern of UAC Bypass using ICMLuaUtil Elevated COM interface
references:
    - https://www.elastic.co/guide/en/security/current/uac-bypass-via-icmluautil-elevated-com-interface.html
author: Florian Roth (Nextron Systems), Elastic (idea)
date: 2022-09-13
modified: 2022-09-27
tags:
    - attack.privilege-escalation
    - attack.t1548.002
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        ParentImage|endswith: '\dllhost.exe'
        ParentCommandLine|contains:
            - '/Processid:{3E5FC7F9-9A51-4367-9063-A120244FBEC7}'
            - '/Processid:{D2E7041B-2927-42FB-8E9F-7CE93B6DC937}'
    filter:
        - Image|endswith: '\WerFault.exe'
        - OriginalFileName: 'WerFault.exe'
    condition: selection and not filter
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection and not filter

Stage 1: selection

selection:
    ParentImage|endswith: '\dllhost.exe'
    ParentCommandLine|contains:
        - '/Processid:{3E5FC7F9-9A51-4367-9063-A120244FBEC7}'
        - '/Processid:{D2E7041B-2927-42FB-8E9F-7CE93B6DC937}'

Stage 2: not filter

filter:
    - Image|endswith: '\WerFault.exe'
    - OriginalFileName: 'WerFault.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ParentCommandLinematch
  • /Processid:{3E5FC7F9-9A51-4367-9063-A120244FBEC7}
  • /Processid:{D2E7041B-2927-42FB-8E9F-7CE93B6DC937}
field:"ParentCommandLine" kind:match
ParentImageends_with
  • \dllhost.exe corpus 7 (sigma 7)
field:"ParentImage" kind:ends_with value:"\dllhost.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with\WerFault.exeexcludes:Image field:"Image" value:"\WerFault.exe"
OriginalFileNameeqWerFault.exeexcludes:OriginalFileName field:"OriginalFileName" value:"WerFault.exe"

Windows Credential Guard Related Registry Value Deleted - Registry

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

Detects attempts to disable Windows Credential Guard by deleting registry values. Credential Guard uses virtualization-based security to isolate secrets so that only privileged system software can access them. Adversaries may disable Credential Guard to gain access to sensitive credentials stored in the system, such as NTLM hashes and Kerberos tickets, which can be used for lateral movement and privilege escalation.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Windows Credential Guard Related Registry Value Deleted - Registry
id: d645ef86-2396-48a1-a2b6-b629ca3f57ff
related:
    - id: c17d47b7-dcd6-4109-87eb-d1817bd4cbc9
      type: similar
status: experimental
description: |
    Detects attempts to disable Windows Credential Guard by deleting registry values. Credential Guard uses virtualization-based security to isolate secrets so that only privileged system software can access them.
    Adversaries may disable Credential Guard to gain access to sensitive credentials stored in the system, such as NTLM hashes and Kerberos tickets, which can be used for lateral movement and privilege escalation.
references:
    - https://github.com/DambergC/SaveFolder/blob/90e945eba80fae85f2d54b4616e05a44ec90c500/Cygate%20Installation%20tool%206.22/Script/OSD/OSDeployment-CredentialGuardDisable.ps1#L50
    - https://learn.microsoft.com/en-us/windows/security/identity-protection/credential-guard/configure
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-12-26
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: registry_delete
    product: windows
detection:
    selection:
        TargetObject|endswith:
            - '\DeviceGuard\EnableVirtualizationBasedSecurity'
            - '\DeviceGuard\LsaCfgFlags'
            - '\DeviceGuard\RequirePlatformSecurityFeatures'
            - '\Lsa\LsaCfgFlags'
    condition: selection
falsepositives:
    - Unlikely
level: high
regression_tests_path: regression_data/rules/windows/registry/registry_delete/registry_delete_disable_credential_guard/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|endswith:
        - '\DeviceGuard\EnableVirtualizationBasedSecurity'
        - '\DeviceGuard\LsaCfgFlags'
        - '\DeviceGuard\RequirePlatformSecurityFeatures'
        - '\Lsa\LsaCfgFlags'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \DeviceGuard\EnableVirtualizationBasedSecurity corpus 2 (sigma 2)
  • \DeviceGuard\LsaCfgFlags corpus 2 (sigma 2)
  • \DeviceGuard\RequirePlatformSecurityFeatures
  • \Lsa\LsaCfgFlags corpus 2 (sigma 2)
field:"TargetObject" kind:ends_with

WinRS usage for remote execution

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

Detects scenarios where an attacker abuses the WinRS capacities for remote execution.

Known False Positives

  • Pentest, Administrator activity

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: WinRS usage for remote execution
description: Detects scenarios where an attacker abuses the WinRS capacities for remote execution.
references:
- https://www.ired.team/offensive-security/lateral-movement/winrs-for-lateral-movement
- https://bohops.com/2020/05/12/ws-management-com-another-approach-for-winrm-lateral-movement/
- https://4sysops.com/archives/powershell-remoting-without-administrator-rights/
- https://www.synacktiv.com/publications/traces-of-windows-remote-command-execution.html
tags:
- attack.lateral_movement
- attack.t1021.006
author: mdecrevoisier
logsource:
  product: windows
  category: process_creation
detection:
  selection: # Full command example: "winrs -r:<target> -u:domain\user -p:<psw> 'whoami /priv'"
    NewProcessName|endswith: \winrs.exe
    CommandLine|contains:
      - '-r:'
      - '/r:'
  condition: selection
falsepositives:
- Pentest, Administrator activity
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  NewProcessName|endswith: \winrs.exe
  CommandLine|contains:
    - '-r:'
    - '/r:'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -r: corpus 2 (sigma 1, splunk 1)
  • /r:
field:"CommandLine" kind:match
NewProcessNameends_with
  • \winrs.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\winrs.exe"

WMI Event Consumer Created Named Pipe

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

Detects the WMI Event Consumer service scrcons.exe creating a named pipe

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: WMI Event Consumer Created Named Pipe
id: 493fb4ab-cdcc-4c4f-818c-0e363bd1e4bb
status: test
description: Detects the WMI Event Consumer service scrcons.exe creating a named pipe
references:
    - https://github.com/RiccardoAncarani/LiquidSnake
author: Florian Roth (Nextron Systems)
date: 2021-09-01
modified: 2023-11-30
tags:
    - attack.t1047
    - attack.execution
logsource:
    product: windows
    category: pipe_created
    definition: 'Note that you have to configure logging for Named Pipe Events in Sysmon config (Event ID 17 and Event ID 18). The basic configuration is in popular sysmon configuration (https://github.com/SwiftOnSecurity/sysmon-config), but it is worth verifying. You can also use other repo, e.g. https://github.com/Neo23x0/sysmon-config, https://github.com/olafhartong/sysmon-modular. How to test detection? You can check powershell script from this site https://svch0st.medium.com/guide-to-named-pipes-and-hunting-for-cobalt-strike-pipes-dc46b2c5f575'
detection:
    selection:
        Image|endswith: '\scrcons.exe'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

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

Indicators

These rows show field, operator, and value matches.

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

Back to all Sigma rules