Detection rules › Sigma

Sigma rules: 0d

Advanced IP Scanner - File Event

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

Detects the use of Advanced IP Scanner. Seems to be a popular tool for ransomware groups.

Known False Positives

  • Legitimate administrative use

MITRE ATT&CK Coverage

TacticTechniques
Discovery

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Advanced IP Scanner - File Event
id: fed85bf9-e075-4280-9159-fbe8a023d6fa
related:
    - id: bef37fa2-f205-4a7b-b484-0759bfd5f86f
      type: derived
status: test
description: Detects the use of Advanced IP Scanner. Seems to be a popular tool for ransomware groups.
references:
    - https://news.sophos.com/en-us/2019/12/09/snatch-ransomware-reboots-pcs-into-safe-mode-to-bypass-protection/
    - https://www.fireeye.com/blog/threat-research/2020/05/tactics-techniques-procedures-associated-with-maze-ransomware-incidents.html
    - https://labs.f-secure.com/blog/prelude-to-ransomware-systembc
    - https://assets.documentcloud.org/documents/20444693/fbi-pin-egregor-ransomware-bc-01062021.pdf
    - https://thedfirreport.com/2021/01/18/all-that-for-a-coinminer
author: '@ROxPinTeddy'
date: 2020-05-12
modified: 2022-11-29
tags:
    - attack.discovery
    - attack.t1046
logsource:
    category: file_event
    product: windows
detection:
    selection:
        TargetFilename|contains: '\AppData\Local\Temp\Advanced IP Scanner 2'
    condition: selection
falsepositives:
    - Legitimate administrative use
level: medium
regression_tests_path: regression_data/rules/windows/file/file_event/file_event_win_advanced_ip_scanner/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|contains: '\AppData\Local\Temp\Advanced IP Scanner 2'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenamematch
  • \AppData\Local\Temp\Advanced IP Scanner 2
field:"TargetFilename" kind:match value:"\AppData\Local\Temp\Advanced IP Scanner 2"

Azure Active Directory Hybrid Health AD FS New Server

#
Status
test
Severity
medium
Author
Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research), MSTIC
Source
github.com/SigmaHQ/sigma

This detection uses azureactivity logs (Administrative category) to identify the creation or update of a server instance in an Azure AD Hybrid health AD FS service. A threat actor can create a new AD Health ADFS service and create a fake server instance to spoof AD FS signing logs. There is no need to compromise an on-prem AD FS server. This can be done programmatically via HTTP requests to Azure.

Known False Positives

  • Legitimate AD FS servers added to an AAD Health AD FS service instance

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rules Detecting the Same Action

These rules filter on the same operation.

Rule Body

title: Azure Active Directory Hybrid Health AD FS New Server
id: 288a39fc-4914-4831-9ada-270e9dc12cb4
status: test
description: |
    This detection uses azureactivity logs (Administrative category) to identify the creation or update of a server instance in an Azure AD Hybrid health AD FS service.
    A threat actor can create a new AD Health ADFS service and create a fake server instance to spoof AD FS signing logs. There is no need to compromise an on-prem AD FS server.
    This can be done programmatically via HTTP requests to Azure.
references:
    - https://o365blog.com/post/hybridhealthagent/
author: Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research), MSTIC
date: 2021-08-26
modified: 2023-10-11
tags:
    - attack.defense-impairment
    - attack.t1578
logsource:
    product: azure
    service: activitylogs
detection:
    selection:
        CategoryValue: 'Administrative'
        ResourceProviderValue: 'Microsoft.ADHybridHealthService'
        ResourceId|contains: 'AdFederationService'
        OperationNameValue: 'Microsoft.ADHybridHealthService/services/servicemembers/action'
    condition: selection
falsepositives:
    - Legitimate AD FS servers added to an AAD Health AD FS service instance
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CategoryValue: 'Administrative'
    ResourceProviderValue: 'Microsoft.ADHybridHealthService'
    ResourceId|contains: 'AdFederationService'
    OperationNameValue: 'Microsoft.ADHybridHealthService/services/servicemembers/action'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CategoryValueeq
  • Administrative corpus 6 (kusto 4, sigma 2)
field:"CategoryValue" kind:eq value:"Administrative"
OperationNameValueeq
  • Microsoft.ADHybridHealthService/services/servicemembers/action corpus 3 (kusto 2, sigma 1)
field:"azure_ad::operation_name_value" kind:eq value:"Microsoft.ADHybridHealthService/services/servicemembers/action"
ResourceIdmatch
  • AdFederationService corpus 2 (sigma 2)
field:"ResourceId" kind:match value:"AdFederationService"
ResourceProviderValueeq
  • Microsoft.ADHybridHealthService corpus 6 (kusto 4, sigma 2)
field:"ResourceProviderValue" kind:eq value:"Microsoft.ADHybridHealthService"

Browser Execution In Headless Mode

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

Detects execution of Chromium based browser in headless mode

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Browser Execution In Headless Mode
id: ef9dcfed-690c-4c5d-a9d1-482cd422225c
related:
    - id: 0e8cfe08-02c9-4815-a2f8-0d157b7ed33e
      type: derived
status: test
description: Detects execution of Chromium based browser in headless mode
references:
    - https://twitter.com/mrd0x/status/1478234484881436672?s=12
    - https://www.trendmicro.com/en_us/research/23/e/managed-xdr-investigation-of-ducktail-in-trend-micro-vision-one.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-09-12
tags:
    - attack.command-and-control
    - attack.stealth
    - attack.t1105
    - attack.t1564.003
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith:
            - '\brave.exe'
            - '\chrome.exe'
            - '\msedge.exe'
            - '\opera.exe'
            - '\vivaldi.exe'
        CommandLine|contains: '--headless'
    condition: selection
falsepositives:
    - Unknown
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\brave.exe'
        - '\chrome.exe'
        - '\msedge.exe'
        - '\opera.exe'
        - '\vivaldi.exe'
    CommandLine|contains: '--headless'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --headless corpus 8 (sigma 6, splunk 2)
field:"CommandLine" kind:match value:"--headless"
Imageends_with
  • \brave.exe corpus 11 (sigma 11)
  • \chrome.exe corpus 13 (sigma 13)
  • \msedge.exe corpus 14 (sigma 14)
  • \opera.exe corpus 11 (sigma 11)
  • \vivaldi.exe corpus 11 (sigma 11)
field:"Image" kind:ends_with

Certutil payload obfuscation (command)

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

Detects scenarios where an attacker attempts to abuse certutil command to download obfuscated malicious payload. Tools like Tchopper can trigger this rule.

Known False Positives

  • CSAT Cyber Security Assessment Tool

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Certutil payload obfuscation (command)
description: Detects scenarios where an attacker attempts to abuse certutil command to download obfuscated malicious payload. Tools like Tchopper can trigger this rule.
references:
- https://www.elastic.co/guide/en/security/current/suspicious-certutil-commands.html
- https://www.bleepingcomputer.com/news/security/certutilexe-could-allow-attackers-to-download-malware-while-bypassing-av/
- https://attack.mitre.org/software/S0160/
- https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certutil
- https://www.sentinelone.com/blog/malware-living-off-land-with-certutil/
- https://thedfirreport.com/2022/07/11/select-xmrig-from-sqlserver/
tags:
- attack.defense_evasion
- attack.t1140
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  category: process_creation
detection:
  selection:
    NewProcessName|endswith: '\certutil.exe'
    CommandLine|contains:
      #- urlcache # see other related rule
      - decode
      - encode
      - encodehex
      - decodehex
  condition: selection
falsepositives:
- CSAT Cyber Security Assessment Tool
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  NewProcessName|endswith: '\certutil.exe'
  CommandLine|contains:
    - decode
    - encode
    - encodehex
    - decodehex

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • decode corpus 5 (sigma 2, splunk 2, elastic 1)
  • decodehex
  • encode corpus 2 (sigma 1, elastic 1)
  • encodehex
field:"CommandLine" kind:match
NewProcessNameends_with
  • \certutil.exe corpus 43 (sigma 43)
field:"Image" kind:ends_with value:"\certutil.exe"

Communication To Ngrok Tunneling Service - Linux

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

Detects an executable accessing an ngrok tunneling endpoint, which could be a sign of forbidden exfiltration of data exfiltration by malicious actors

Known False Positives

  • Legitimate use of ngrok

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 3: Network connection

Rule Body

title: Communication To Ngrok Tunneling Service - Linux
id: 19bf6fdb-7721-4f3d-867f-53467f6a5db6
status: test
description: Detects an executable accessing an ngrok tunneling endpoint, which could be a sign of forbidden exfiltration of data exfiltration by malicious actors
references:
    - https://twitter.com/hakluke/status/1587733971814977537/photo/1
    - https://ngrok.com/docs/secure-tunnels/tunnels/ssh-reverse-tunnel-agent
author: Florian Roth (Nextron Systems)
date: 2022-11-03
tags:
    - attack.exfiltration
    - attack.command-and-control
    - attack.t1567
    - attack.t1568.002
    - attack.t1572
    - attack.t1090
    - attack.t1102
    - attack.s0508
logsource:
    product: linux
    category: network_connection
detection:
    selection:
        DestinationHostname|contains:
            - 'tunnel.us.ngrok.com'
            - 'tunnel.eu.ngrok.com'
            - 'tunnel.ap.ngrok.com'
            - 'tunnel.au.ngrok.com'
            - 'tunnel.sa.ngrok.com'
            - 'tunnel.jp.ngrok.com'
            - 'tunnel.in.ngrok.com'
    condition: selection
falsepositives:
    - Legitimate use of ngrok
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    DestinationHostname|contains:
        - 'tunnel.us.ngrok.com'
        - 'tunnel.eu.ngrok.com'
        - 'tunnel.ap.ngrok.com'
        - 'tunnel.au.ngrok.com'
        - 'tunnel.sa.ngrok.com'
        - 'tunnel.jp.ngrok.com'
        - 'tunnel.in.ngrok.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
DestinationHostnamematch
  • tunnel.ap.ngrok.com corpus 2 (sigma 2)
  • tunnel.au.ngrok.com corpus 2 (sigma 2)
  • tunnel.eu.ngrok.com corpus 2 (sigma 2)
  • tunnel.in.ngrok.com corpus 2 (sigma 2)
  • tunnel.jp.ngrok.com corpus 2 (sigma 2)
  • tunnel.sa.ngrok.com corpus 2 (sigma 2)
  • tunnel.us.ngrok.com corpus 2 (sigma 2)
field:"DestinationHostname" kind:match

CurrentControlSet 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 autostart extensibility point (ASEP) in registry.

Known False Positives

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

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: CurrentControlSet Autorun Keys Modification
id: f674e36a-4b91-431e-8aef-f8a96c2aca35
related:
    - id: 17f878b8-9968-4578-b814-c4217fc5768c
      type: obsolete
status: test
description: Detects modification of autostart extensibility point (ASEP) in registry.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1547.001/T1547.001.md
    - https://learn.microsoft.com/en-us/sysinternals/downloads/autoruns
    - https://gist.github.com/GlebSukhodolskiy/0fc5fa5f482903064b448890db1eaf9d # a list with registry keys
author: Victor Sergeev, Daniil Yugoslavskiy, Gleb Sukhodolskiy, Timur Zinniatullin, oscd.community, Tim Shelton, frack113 (split)
date: 2019-10-25
modified: 2023-08-17
tags:
    - attack.privilege-escalation
    - attack.persistence
    - attack.t1547.001
logsource:
    category: registry_set
    product: windows
detection:
    system_control_base:
        TargetObject|contains: '\SYSTEM\CurrentControlSet\Control'
    system_control_keys:
        TargetObject|contains:
            - '\Terminal Server\WinStations\RDP-Tcp\InitialProgram'
            - '\Terminal Server\Wds\rdpwd\StartupPrograms'
            - '\SecurityProviders\SecurityProviders'
            - '\SafeBoot\AlternateShell'
            - '\Print\Providers'
            - '\Print\Monitors'
            - '\NetworkProvider\Order'
            - '\Lsa\Notification Packages'
            - '\Lsa\Authentication Packages'
            - '\BootVerificationProgram\ImagePath'
    filter_empty:
        Details: '(Empty)'
    filter_cutepdf:
        Image: 'C:\Windows\System32\spoolsv.exe'
        TargetObject|contains: '\Print\Monitors\CutePDF Writer Monitor'
        Details:
            - 'cpwmon64_v40.dll'
            - 'CutePDF Writer'
    filter_onenote:
        Image: C:\Windows\System32\spoolsv.exe
        TargetObject|contains: 'Print\Monitors\Appmon\Ports\Microsoft.Office.OneNote_'
        User|contains: # covers many language settings
            - 'AUTHORI'
            - 'AUTORI'
    filter_poqexec:
        Image: 'C:\Windows\System32\poqexec.exe'
        TargetObject|endswith: '\NetworkProvider\Order\ProviderOrder'
    filter_realvnc:
        Image: 'C:\Windows\System32\spoolsv.exe'
        TargetObject|endswith: '\Print\Monitors\MONVNC\Driver'
        Details: 'VNCpm.dll'
    condition: all of system_control_* and not 1 of filter_*
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
regression_tests_path: regression_data/rules/windows/registry/registry_set/registry_set_asep_reg_keys_modification_currentcontrolset/info.yml

Stages and Predicates

Stage 0: condition

all of system_control_* and not 1 of filter_*

Stage 1: system_control_base

system_control_base:
    TargetObject|contains: '\SYSTEM\CurrentControlSet\Control'

Stage 2: system_control_keys

system_control_keys:
    TargetObject|contains:
        - '\Terminal Server\WinStations\RDP-Tcp\InitialProgram'
        - '\Terminal Server\Wds\rdpwd\StartupPrograms'
        - '\SecurityProviders\SecurityProviders'
        - '\SafeBoot\AlternateShell'
        - '\Print\Providers'
        - '\Print\Monitors'
        - '\NetworkProvider\Order'
        - '\Lsa\Notification Packages'
        - '\Lsa\Authentication Packages'
        - '\BootVerificationProgram\ImagePath'

Stage 3: not filter_*

filter_empty:
    Details: '(Empty)'
filter_cutepdf:
    Image: 'C:\Windows\System32\spoolsv.exe'
    TargetObject|contains: '\Print\Monitors\CutePDF Writer Monitor'
    Details:
        - 'cpwmon64_v40.dll'
        - 'CutePDF Writer'
filter_onenote:
    Image: C:\Windows\System32\spoolsv.exe
    TargetObject|contains: 'Print\Monitors\Appmon\Ports\Microsoft.Office.OneNote_'
    User|contains:
        - 'AUTHORI'
        - 'AUTORI'
filter_poqexec:
    Image: 'C:\Windows\System32\poqexec.exe'
    TargetObject|endswith: '\NetworkProvider\Order\ProviderOrder'
filter_realvnc:
    Image: 'C:\Windows\System32\spoolsv.exe'
    TargetObject|endswith: '\Print\Monitors\MONVNC\Driver'
    Details: 'VNCpm.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectmatch
  • \BootVerificationProgram\ImagePath
  • \Lsa\Authentication Packages
  • \Lsa\Notification Packages
  • \NetworkProvider\Order
  • \Print\Monitors
  • \Print\Providers
  • \SYSTEM\CurrentControlSet\Control
  • \SafeBoot\AlternateShell
  • \SecurityProviders\SecurityProviders
  • \Terminal Server\Wds\rdpwd\StartupPrograms
  • \Terminal Server\WinStations\RDP-Tcp\InitialProgram
field:"TargetObject" kind:match

Exclusions

The rule actively suppresses these predicates.

Disable Security Tools

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

Detects disabling security tools

Known False Positives

  • Legitimate activities

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Disable Security Tools
id: ff39f1a6-84ac-476f-a1af-37fcdf53d7c0
status: test
description: Detects disabling security tools
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1562.001/T1562.001.md
author: Daniil Yugoslavskiy, oscd.community
date: 2020-10-19
modified: 2021-11-27
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    category: process_creation
    product: macos
detection:
    launchctl_unload:
        Image: '/bin/launchctl'
        CommandLine|contains: 'unload'
    security_plists:
        CommandLine|contains:
            - 'com.objective-see.lulu.plist'                     # Objective-See firewall management utility
            - 'com.objective-see.blockblock.plist'               # Objective-See persistence locations watcher/blocker
            - 'com.google.santad.plist'                          # google santa
            - 'com.carbonblack.defense.daemon.plist'             # carbon black
            - 'com.carbonblack.daemon.plist'                     # carbon black
            - 'at.obdev.littlesnitchd.plist'                     # Objective Development Software firewall management utility
            - 'com.tenablesecurity.nessusagent.plist'            # Tenable Nessus
            - 'com.opendns.osx.RoamingClientConfigUpdater.plist' # OpenDNS Umbrella
            - 'com.crowdstrike.falcond.plist'                    # Crowdstrike Falcon
            - 'com.crowdstrike.userdaemon.plist'                 # Crowdstrike Falcon
            - 'osquery'                                          # facebook osquery
            - 'filebeat'                                         # elastic log file shipper
            - 'auditbeat'                                        # elastic auditing agent/log shipper
            - 'packetbeat'                                       # elastic network logger/shipper
            - 'td-agent'                                         # fluentd log shipper
    disable_gatekeeper:
        Image: '/usr/sbin/spctl'
        CommandLine|contains: 'disable'
    condition: (launchctl_unload and security_plists) or disable_gatekeeper
falsepositives:
    - Legitimate activities
level: medium

Stages and Predicates

Stage 0: condition

(launchctl_unload and security_plists) or disable_gatekeeper

Stage 1: launchctl_unload

launchctl_unload:
    Image: '/bin/launchctl'
    CommandLine|contains: 'unload'

Stage 2: security_plists

security_plists:
    CommandLine|contains:
        - 'com.objective-see.lulu.plist'
        - 'com.objective-see.blockblock.plist'
        - 'com.google.santad.plist'
        - 'com.carbonblack.defense.daemon.plist'
        - 'com.carbonblack.daemon.plist'
        - 'at.obdev.littlesnitchd.plist'
        - 'com.tenablesecurity.nessusagent.plist'
        - 'com.opendns.osx.RoamingClientConfigUpdater.plist'
        - 'com.crowdstrike.falcond.plist'
        - 'com.crowdstrike.userdaemon.plist'
        - 'osquery'
        - 'filebeat'
        - 'auditbeat'
        - 'packetbeat'
        - 'td-agent'

Stage 3: disable_gatekeeper

disable_gatekeeper:
    Image: '/usr/sbin/spctl'
    CommandLine|contains: 'disable'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • at.obdev.littlesnitchd.plist
  • auditbeat corpus 3 (sigma 3)
  • com.carbonblack.daemon.plist
  • com.carbonblack.defense.daemon.plist
  • com.crowdstrike.falcond.plist
  • com.crowdstrike.userdaemon.plist
  • com.google.santad.plist
  • com.objective-see.blockblock.plist
  • com.objective-see.lulu.plist
  • com.opendns.osx.RoamingClientConfigUpdater.plist
  • com.tenablesecurity.nessusagent.plist
  • disable corpus 13 (sigma 10, splunk 3)
  • filebeat corpus 3 (sigma 3)
  • osquery
  • packetbeat corpus 3 (sigma 3)
  • td-agent corpus 3 (sigma 3)
  • unload corpus 5 (sigma 4, splunk 1)
field:"CommandLine" kind:match
Imageeq
  • /bin/launchctl
  • /usr/sbin/spctl
field:"Image" kind:eq

Disable Windows Firewall by Registry

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

Detect set EnableFirewall to 0 to disable the Windows firewall

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Disable Windows Firewall by Registry
id: e78c408a-e2ea-43cd-b5ea-51975cf358c0
status: test
description: Detect set EnableFirewall to 0 to disable the Windows firewall
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/40b77d63808dd4f4eafb83949805636735a1fd15/atomics/T1562.004/T1562.004.md
author: frack113
date: 2022-08-19
modified: 2023-08-17
tags:
    - attack.defense-impairment
    - attack.t1686.003
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|endswith:
            - \SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile\EnableFirewall
            - \SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\EnableFirewall
        Details: DWORD (0x00000000)
    condition: selection
falsepositives:
    - Unknown
level: medium
simulation:
    - type: atomic-red-team
      name: LockBit Black - Unusual Windows firewall registry modification -cmd
      technique: T1686
      atomic_guid: a4651931-ebbb-4cde-9363-ddf3d66214cb

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|endswith:
        - \SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile\EnableFirewall
        - \SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\EnableFirewall
    Details: DWORD (0x00000000)

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailseq
  • DWORD (0x00000000) corpus 36 (sigma 36)
field:"Details" kind:eq value:"DWORD (0x00000000)"
TargetObjectends_with
  • \SOFTWARE\Policies\Microsoft\WindowsFirewall\DomainProfile\EnableFirewall
  • \SOFTWARE\Policies\Microsoft\WindowsFirewall\StandardProfile\EnableFirewall
field:"TargetObject" kind:ends_with

File Download And Execution Via IEExec.EXE

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

Detects execution of the IEExec utility to download and execute files

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: File Download And Execution Via IEExec.EXE
id: 9801abb8-e297-4dbf-9fbd-57dde0e830ad
status: test
description: Detects execution of the IEExec utility to download and execute files
references:
    - https://lolbas-project.github.io/lolbas/Binaries/Ieexec/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-05-16
modified: 2023-11-09
tags:
    - attack.command-and-control
    - attack.t1105
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\IEExec.exe'
        - OriginalFileName: 'IEExec.exe'
    selection_cli:
        CommandLine|contains:
            - 'http://'
            - 'https://'
    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: '\IEExec.exe'
    - OriginalFileName: 'IEExec.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - 'http://'
        - 'https://'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • http:// corpus 20 (sigma 18, elastic 1, splunk 1)
  • https:// corpus 20 (sigma 18, elastic 1, splunk 1)
field:"CommandLine" kind:match
Imageends_with
  • \IEExec.exe corpus 3 (sigma 3)
field:"Image" kind:ends_with value:"\IEExec.exe"
OriginalFileNameeq
  • IEExec.exe corpus 5 (sigma 3, elastic 2)
field:"OriginalFileName" kind:eq value:"IEExec.exe"

File With Uncommon Extension Created By An Office Application

#
Status
test
Severity
high
Author
Vadim Khrykov (ThreatIntel), Cyb3rEng (Rule), Nasreddine Bencherchali (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects the creation of files with an executable or script extension by an Office application.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: File With Uncommon Extension Created By An Office Application
id: c7a74c80-ba5a-486e-9974-ab9e682bc5e4
status: test
description: Detects the creation of files with an executable or script extension by an Office application.
references:
    - https://thedfirreport.com/2021/03/29/sodinokibi-aka-revil-ransomware/
    - https://github.com/vadim-hunter/Detection-Ideas-Rules/blob/02bcbfc2bfb8b4da601bb30de0344ae453aa1afe/Threat%20Intelligence/The%20DFIR%20Report/20210329_Sodinokibi_(aka_REvil)_Ransomware.yaml
author: Vadim Khrykov (ThreatIntel), Cyb3rEng (Rule), Nasreddine Bencherchali (Nextron Systems)
date: 2021-08-23
modified: 2025-10-17
tags:
    - attack.t1204.002
    - attack.execution
logsource:
    product: windows
    category: file_event
detection:
    # Note: Please add more file extensions to the logic of your choice.
    selection1:
        Image|endswith:
            - '\excel.exe'
            - '\msaccess.exe'
            - '\mspub.exe'
            - '\powerpnt.exe'
            - '\visio.exe'
            - '\winword.exe'
    selection2:
        TargetFilename|endswith:
            - '.bat'
            - '.cmd'
            - '.com'
            - '.dll'
            - '.exe'
            - '.hta'
            - '.ocx'
            - '.proj'
            - '.ps1'
            - '.scf'
            - '.scr'
            - '.sys'
            - '.vbe'
            - '.vbs'
            - '.wsf'
            - '.wsh'
    filter_main_localassembly:
        TargetFilename|contains: '\AppData\Local\assembly\tmp\'
        TargetFilename|endswith: '.dll'
    filter_optional_webservicecache: # matches e.g. directory with name *.microsoft.com
        TargetFilename|contains|all:
            - 'C:\Users\'
            - '\AppData\Local\Microsoft\Office\'
            - '\WebServiceCache\AllUsers'
        TargetFilename|endswith: '.com'
    filter_optional_webex:
        Image|endswith: '\winword.exe'
        TargetFilename|contains: '\AppData\Local\Temp\webexdelta\'
        TargetFilename|endswith:
            - '.dll'
            - '.exe'
    filter_optional_backstageinappnavcache: # matches e.g. C:\Users\xxxxx\AppData\Local\Microsoft\Office\16.0\BackstageInAppNavCache\ODB-user@domain.com
        TargetFilename|contains|all:
            - 'C:\Users\'
            - '\AppData\Local\Microsoft\Office\'
            - '\BackstageInAppNavCache\'
        TargetFilename|endswith: '.com'
    condition: all of selection* and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

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

Stage 1: selection1

selection1:
    Image|endswith:
        - '\excel.exe'
        - '\msaccess.exe'
        - '\mspub.exe'
        - '\powerpnt.exe'
        - '\visio.exe'
        - '\winword.exe'

Stage 2: selection2

selection2:
    TargetFilename|endswith:
        - '.bat'
        - '.cmd'
        - '.com'
        - '.dll'
        - '.exe'
        - '.hta'
        - '.ocx'
        - '.proj'
        - '.ps1'
        - '.scf'
        - '.scr'
        - '.sys'
        - '.vbe'
        - '.vbs'
        - '.wsf'
        - '.wsh'

Stage 3: not filter_main_localassembly

filter_main_localassembly:
    TargetFilename|contains: '\AppData\Local\assembly\tmp\'
    TargetFilename|endswith: '.dll'

Stage 4: not filter_optional_*

filter_optional_webservicecache:
    TargetFilename|contains|all:
        - 'C:\Users\'
        - '\AppData\Local\Microsoft\Office\'
        - '\WebServiceCache\AllUsers'
    TargetFilename|endswith: '.com'
filter_optional_webex:
    Image|endswith: '\winword.exe'
    TargetFilename|contains: '\AppData\Local\Temp\webexdelta\'
    TargetFilename|endswith:
        - '.dll'
        - '.exe'
filter_optional_backstageinappnavcache:
    TargetFilename|contains|all:
        - 'C:\Users\'
        - '\AppData\Local\Microsoft\Office\'
        - '\BackstageInAppNavCache\'
    TargetFilename|endswith: '.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \excel.exe corpus 16 (sigma 16)
  • \msaccess.exe corpus 4 (sigma 4)
  • \mspub.exe corpus 10 (sigma 10)
  • \powerpnt.exe corpus 14 (sigma 14)
  • \visio.exe corpus 3 (sigma 3)
  • \winword.exe corpus 17 (sigma 17)
field:"Image" kind:ends_with
TargetFilenameends_with
  • .bat corpus 17 (sigma 17)
  • .cmd corpus 8 (sigma 8)
  • .com corpus 4 (sigma 4)
  • .dll corpus 24 (sigma 24)
  • .exe corpus 21 (sigma 20, splunk 1)
  • .hta corpus 14 (sigma 14)
  • .ocx corpus 3 (sigma 3)
  • .proj corpus 2 (sigma 2)
  • .ps1 corpus 17 (sigma 17)
  • .scf corpus 2 (sigma 2)
  • .scr corpus 8 (sigma 8)
  • .sys corpus 6 (sigma 6)
  • .vbe corpus 16 (sigma 16)
  • .vbs corpus 18 (sigma 18)
  • .wsf corpus 7 (sigma 7)
  • .wsh corpus 3 (sigma 3)
field:"TargetFilename" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

Fortinet CVE-2018-13379 Exploitation

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

Detects CVE-2018-13379 exploitation attempt against Fortinet SSL VPNs

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Fortinet CVE-2018-13379 Exploitation
id: a2e97350-4285-43f2-a63f-d0daff291738
status: test
description: Detects CVE-2018-13379 exploitation attempt against Fortinet SSL VPNs
references:
    - https://devco.re/blog/2019/08/09/attacking-ssl-vpn-part-2-breaking-the-Fortigate-ssl-vpn/
author: Bhabesh Raj
date: 2020-12-08
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2018-13379
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection:
        cs-uri-query|contains|all:
            - 'lang=/../../'
            - '/dev/cmdb/sslvpn_websession'
    condition: selection
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-uri-query|contains|all:
        - 'lang=/../../'
        - '/dev/cmdb/sslvpn_websession'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-uri-querymatch
  • /dev/cmdb/sslvpn_websession
  • lang=/../../
field:"cs-uri-query" kind:match

HackTool - Certify Execution

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

Detects Certify a tool for Active Directory certificate abuse based on PE metadata characteristics and common command line arguments.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: HackTool - Certify Execution
id: 762f2482-ff21-4970-8939-0aa317a886bb
status: test
description: Detects Certify a tool for Active Directory certificate abuse based on PE metadata characteristics and common command line arguments.
references:
    - https://github.com/GhostPack/Certify
author: pH-T (Nextron Systems)
date: 2023-04-17
modified: 2023-04-25
tags:
    - attack.discovery
    - attack.credential-access
    - attack.t1649
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\Certify.exe'
        - OriginalFileName: 'Certify.exe'
        - Description|contains: 'Certify'
    selection_cli_commands:
        CommandLine|contains:
            - '.exe cas '
            - '.exe find '
            - '.exe pkiobjects '
            - '.exe request '
            - '.exe download '
    selection_cli_options:
        CommandLine|contains:
            - ' /vulnerable'
            - ' /template:'
            - ' /altname:'
            - ' /domain:'
            - ' /path:'
            - ' /ca:'
    condition: selection_img or all of selection_cli_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_img or all of selection_cli_*

Stage 1: selection_img

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

Stage 2: selection_cli_commands

selection_cli_commands:
    CommandLine|contains:
        - '.exe cas '
        - '.exe find '
        - '.exe pkiobjects '
        - '.exe request '
        - '.exe download '

Stage 3: selection_cli_options

selection_cli_options:
    CommandLine|contains:
        - ' /vulnerable'
        - ' /template:'
        - ' /altname:'
        - ' /domain:'
        - ' /path:'
        - ' /ca:'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /altname:
  • /ca:
  • /domain:
  • /path:
  • /template:
  • /vulnerable
  • .exe cas
  • .exe download
  • .exe find
  • .exe pkiobjects
  • .exe request
field:"CommandLine" kind:match
Descriptionmatch
  • Certify
field:"Description" kind:match value:"Certify"
Imageends_with
  • \Certify.exe
field:"Image" kind:ends_with value:"\Certify.exe"
OriginalFileNameeq
  • Certify.exe
field:"OriginalFileName" kind:eq value:"Certify.exe"

LOL-Binary Copied From System Directory

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

Detects a suspicious copy operation that tries to copy a known LOLBIN from system (System32, SysWOW64, WinSxS) directories to another on disk in order to bypass detections based on locations.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: LOL-Binary Copied From System Directory
id: f5d19838-41b5-476c-98d8-ba8af4929ee2
related:
    - id: fff9d2b7-e11c-4a69-93d3-40ef66189767
      type: derived
status: test
description: |
    Detects a suspicious copy operation that tries to copy a known LOLBIN from system (System32, SysWOW64, WinSxS) directories to another on disk in order to bypass detections based on locations.
references:
    - https://www.hybrid-analysis.com/sample/8da5b75b6380a41eee3a399c43dfe0d99eeefaa1fd21027a07b1ecaa4cd96fdd?environmentId=120
    - https://web.archive.org/web/20180331144337/https://www.fireeye.com/blog/threat-research/2018/03/sanny-malware-delivery-method-updated-in-recently-observed-attacks.html
    - https://thedfirreport.com/2023/08/28/html-smuggling-leads-to-domain-wide-ransomware/
    - https://www.virustotal.com/gui/file/14e722855605ba78dc1d21153f0e1be90e7528149f2cd2d7d6eba8ef27534bdc/behavior
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-08-29
modified: 2025-11-27
tags:
    - attack.stealth
    - attack.t1036.003
logsource:
    category: process_creation
    product: windows
detection:
    selection_tools_cmd:
        Image|endswith: '\cmd.exe'
        CommandLine|contains: 'copy '
    selection_tools_pwsh:
        Image|endswith:
            - '\powershell.exe'
            - '\pwsh.exe'
        CommandLine|contains:
            - 'copy-item'
            - ' copy '
            - 'cpi '
            - ' cp '
    selection_tools_other:
        - Image|endswith:
              - '\robocopy.exe'
              - '\xcopy.exe'
        - OriginalFileName:
              - 'robocopy.exe'
              - 'XCOPY.EXE'
    selection_target_path:
        CommandLine|contains:
            - '\System32'
            - '\SysWOW64'
            - '\WinSxS'
    selection_target_lolbin:
        CommandLine|contains:
            # Note: add more binaries to increase coverage
            - '\bitsadmin.exe'
            - '\calc.exe'
            - '\certutil.exe'
            - '\cmdl32.exe'
            - '\cscript.exe'
            - '\mshta.exe'
            - '\rundll32.exe'
            - '\wscript.exe'
            - '\ie4uinit.exe'
    condition: 1 of selection_tools_* and all of selection_target_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_susp_copy_system_dir_lolbin/info.yml

Stages and Predicates

Stage 0: condition

1 of selection_tools_* and all of selection_target_*

Stage 1: selection_tools_cmd

selection_tools_cmd:
    Image|endswith: '\cmd.exe'
    CommandLine|contains: 'copy '

Stage 2: selection_tools_pwsh

selection_tools_pwsh:
    Image|endswith:
        - '\powershell.exe'
        - '\pwsh.exe'
    CommandLine|contains:
        - 'copy-item'
        - ' copy '
        - 'cpi '
        - ' cp '

Stage 3: selection_tools_other

selection_tools_other:
    - Image|endswith:
          - '\robocopy.exe'
          - '\xcopy.exe'
    - OriginalFileName:
          - 'robocopy.exe'
          - 'XCOPY.EXE'

Stage 4: selection_target_path

selection_target_path:
    CommandLine|contains:
        - '\System32'
        - '\SysWOW64'
        - '\WinSxS'

Stage 5: selection_target_lolbin

selection_target_lolbin:
    CommandLine|contains:
        - '\bitsadmin.exe'
        - '\calc.exe'
        - '\certutil.exe'
        - '\cmdl32.exe'
        - '\cscript.exe'
        - '\mshta.exe'
        - '\rundll32.exe'
        - '\wscript.exe'
        - '\ie4uinit.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • copy corpus 4 (sigma 4)
  • cp corpus 7 (sigma 6, elastic 1)
  • \SysWOW64
  • \System32
  • \WinSxS
  • \bitsadmin.exe
  • \calc.exe
  • \certutil.exe
  • \cmdl32.exe
  • \cscript.exe
  • \ie4uinit.exe
  • \mshta.exe
  • \rundll32.exe
  • \wscript.exe
  • copy corpus 11 (sigma 11)
  • copy-item corpus 5 (sigma 5)
  • cpi corpus 4 (sigma 4)
field:"CommandLine" kind:match
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
  • \powershell.exe corpus 181 (sigma 180, splunk 1)
  • \pwsh.exe corpus 166 (sigma 166)
  • \robocopy.exe corpus 4 (sigma 4)
  • \xcopy.exe corpus 5 (sigma 5)
field:"Image" kind:ends_with
OriginalFileNameeq
  • XCOPY.EXE corpus 5 (sigma 4, elastic 1)
  • robocopy.exe corpus 4 (sigma 4)
field:"OriginalFileName" kind:eq

NTDS.DIT Creation By Uncommon Parent Process

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

Detects creation of a file named "ntds.dit" (Active Directory Database) by an uncommon parent process or directory

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: NTDS.DIT Creation By Uncommon Parent Process
id: 4e7050dd-e548-483f-b7d6-527ab4fa784d
related:
    - id: 11b1ed55-154d-4e82-8ad7-83739298f720
      type: similar
status: test
description: Detects creation of a file named "ntds.dit" (Active Directory Database) by an uncommon parent process or directory
references:
    - https://www.ired.team/offensive-security/credential-access-and-credential-dumping/ntds.dit-enumeration
    - https://www.n00py.io/2022/03/manipulating-user-passwords-without-mimikatz/
    - https://pentestlab.blog/tag/ntds-dit/
    - https://github.com/samratashok/nishang/blob/414ee1104526d7057f9adaeee196d91ae447283e/Gather/Copy-VSS.ps1
author: Florian Roth (Nextron Systems)
date: 2022-03-11
modified: 2023-01-05
tags:
    - attack.credential-access
    - attack.t1003.003
logsource:
    product: windows
    category: file_event
    definition: 'Requirements: The "ParentImage" field is not available by default on EID 11 of Sysmon logs. To be able to use this rule to the full extent you need to enrich the log with additional ParentImage data'
detection:
    selection_file:
        TargetFilename|endswith: '\ntds.dit'
    selection_process_parent:
        # Note: ParentImage is a custom field and is not available by default on Sysmon EID 11
        ParentImage|endswith:
            - '\cscript.exe'
            - '\httpd.exe'
            - '\nginx.exe'
            - '\php-cgi.exe'
            - '\powershell.exe'
            - '\pwsh.exe'
            - '\w3wp.exe'
            - '\wscript.exe'
    selection_process_parent_path:
        # Note: ParentImage is a custom field and is not available by default on Sysmon EID 11
        ParentImage|contains:
            - '\apache'
            - '\tomcat'
            - '\AppData\'
            - '\Temp\'
            - '\Public\'
            - '\PerfLogs\'
    condition: selection_file and 1 of selection_process_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_file and 1 of selection_process_*

Stage 1: selection_file

selection_file:
    TargetFilename|endswith: '\ntds.dit'

Stage 2: selection_process_parent

selection_process_parent:
    ParentImage|endswith:
        - '\cscript.exe'
        - '\httpd.exe'
        - '\nginx.exe'
        - '\php-cgi.exe'
        - '\powershell.exe'
        - '\pwsh.exe'
        - '\w3wp.exe'
        - '\wscript.exe'

Stage 3: selection_process_parent_path

selection_process_parent_path:
    ParentImage|contains:
        - '\apache'
        - '\tomcat'
        - '\AppData\'
        - '\Temp\'
        - '\Public\'
        - '\PerfLogs\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ParentImageends_with
  • \cscript.exe corpus 17 (sigma 17)
  • \httpd.exe corpus 6 (sigma 6)
  • \nginx.exe corpus 6 (sigma 6)
  • \php-cgi.exe corpus 6 (sigma 6)
  • \powershell.exe corpus 24 (sigma 24)
  • \pwsh.exe corpus 21 (sigma 21)
  • \w3wp.exe corpus 12 (sigma 12)
  • \wscript.exe corpus 19 (sigma 19)
field:"ParentImage" kind:ends_with
ParentImagematch
  • \AppData\ corpus 3 (sigma 3)
  • \PerfLogs\ corpus 2 (sigma 2)
  • \Public\ corpus 2 (sigma 2)
  • \Temp\ corpus 3 (sigma 3)
  • \apache corpus 2 (sigma 2)
  • \tomcat corpus 6 (sigma 6)
field:"ParentImage" kind:match
TargetFilenameends_with
  • \ntds.dit corpus 2 (sigma 2)
field:"TargetFilename" kind:ends_with value:"\ntds.dit"

Potential Homoglyph Attack Using Lookalike Characters

#
Status
test
Severity
medium
Author
Micah Babinski, @micahbabinski
Source
github.com/SigmaHQ/sigma

Detects the presence of unicode characters which are homoglyphs, or identical in appearance, to ASCII letter characters. This is used as an obfuscation and masquerading techniques. Only "perfect" homoglyphs are included; these are characters that are indistinguishable from ASCII characters and thus may make excellent candidates for homoglyph attack characters.

Known False Positives

  • Commandlines with legitimate Cyrillic text; will likely require tuning (or not be usable) in countries where these alphabets are in use.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Homoglyph Attack Using Lookalike Characters
id: 32e280f1-8ad4-46ef-9e80-910657611fbc
status: test
description: |
    Detects the presence of unicode characters which are homoglyphs, or identical in appearance, to ASCII letter characters.
    This is used as an obfuscation and masquerading techniques. Only "perfect" homoglyphs are included; these are characters that
    are indistinguishable from ASCII characters and thus may make excellent candidates for homoglyph attack characters.
references:
    - https://redcanary.com/threat-detection-report/threats/socgholish/#threat-socgholish
    - http://www.irongeek.com/homoglyph-attack-generator.php
author: Micah Babinski, @micahbabinski
date: 2023-05-07
tags:
    - attack.stealth
    - attack.t1036
    - attack.t1036.003
logsource:
    category: process_creation
    product: windows
detection:
    selection_upper:
        CommandLine|contains:
            - "\u0410" # А/A
            - "\u0412" # В/B
            - "\u0415" # Е/E
            - "\u041a" # К/K
            - "\u041c" # М/M
            - "\u041d" # Н/H
            - "\u041e" # О/O
            - "\u0420" # Р/P
            - "\u0421" # С/C
            - "\u0422" # Т/T
            - "\u0425" # Х/X
            - "\u0405" # Ѕ/S
            - "\u0406" # І/I
            - "\u0408" # Ј/J
            - "\u04ae" # Ү/Y
            - "\u04c0" # Ӏ/I
            - "\u050C" # Ԍ/G
            - "\u051a" # Ԛ/Q
            - "\u051c" # Ԝ/W
            - "\u0391" # Α/A
            - "\u0392" # Β/B
            - "\u0395" # Ε/E
            - "\u0396" # Ζ/Z
            - "\u0397" # Η/H
            - "\u0399" # Ι/I
            - "\u039a" # Κ/K
            - "\u039c" # Μ/M
            - "\u039d" # Ν/N
            - "\u039f" # Ο/O
            - "\u03a1" # Ρ/P
            - "\u03a4" # Τ/T
            - "\u03a5" # Υ/Y
            - "\u03a7" # Χ/X
    selection_lower:
        CommandLine|contains:
            - "\u0430" # а/a
            - "\u0435" # е/e
            - "\u043e" # о/o
            - "\u0440" # р/p
            - "\u0441" # с/c
            - "\u0445" # х/x
            - "\u0455" # ѕ/s
            - "\u0456" # і/i
            - "\u04cf" # ӏ/l
            - "\u0458" # ј/j
            - "\u04bb" # һ/h
            - "\u0501" # ԁ/d
            - "\u051b" # ԛ/q
            - "\u051d" # ԝ/w
            - "\u03bf" # ο/o
    condition: 1 of selection_*
falsepositives:
    - Commandlines with legitimate Cyrillic text; will likely require tuning (or not be usable) in countries where these alphabets are in use.
level: medium

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_upper

selection_upper:
    CommandLine|contains:
        - "\u0410"
        - "\u0412"
        - "\u0415"
        - "\u041a"
        - "\u041c"
        - "\u041d"
        - "\u041e"
        - "\u0420"
        - "\u0421"
        - "\u0422"
        - "\u0425"
        - "\u0405"
        - "\u0406"
        - "\u0408"
        - "\u04ae"
        - "\u04c0"
        - "\u050C"
        - "\u051a"
        - "\u051c"
        - "\u0391"
        - "\u0392"
        - "\u0395"
        - "\u0396"
        - "\u0397"
        - "\u0399"
        - "\u039a"
        - "\u039c"
        - "\u039d"
        - "\u039f"
        - "\u03a1"
        - "\u03a4"
        - "\u03a5"
        - "\u03a7"

Stage 2: selection_lower

selection_lower:
    CommandLine|contains:
        - "\u0430"
        - "\u0435"
        - "\u043e"
        - "\u0440"
        - "\u0441"
        - "\u0445"
        - "\u0455"
        - "\u0456"
        - "\u04cf"
        - "\u0458"
        - "\u04bb"
        - "\u0501"
        - "\u051b"
        - "\u051d"
        - "\u03bf"

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Α
  • Β
  • Ε
  • Ζ
  • Η
  • Ι
  • Κ
  • Μ
  • Ν
  • Ο
  • Ρ
  • Τ
  • Υ
  • Χ
  • ο
  • Ѕ
  • І
  • Ј
  • А
  • В
  • Е
  • К
  • М
  • Н
  • О
  • Р
  • С
  • Т
  • Х
  • а
  • е
  • о
  • р
  • с
  • х
  • ѕ
  • і
  • ј
  • Ү
  • һ
  • Ӏ
  • ӏ
  • ԁ
  • Ԍ
  • Ԛ
  • ԛ
  • Ԝ
  • ԝ
field:"CommandLine" kind:match

Potential Raspberry Robin CPL Execution Activity

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

Detects the execution of a ".CPL" file located in the user temp directory via the Shell32 DLL "Control_RunDLL" export function. This behavior was observed in multiple Raspberry-Robin variants.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Potential Raspberry Robin CPL Execution Activity
id: 92020b88-9caf-464f-bad8-cd0fb0aa2a81
status: test
description: |
    Detects the execution of a ".CPL" file located in the user temp directory via the Shell32 DLL "Control_RunDLL" export function.
    This behavior was observed in multiple Raspberry-Robin variants.
references:
    - https://tria.ge/240226-fhbe7sdc39/behavioral1
    - https://bazaar.abuse.ch/browse/signature/RaspberryRobin/
author: Swachchhanda Shrawan Poudel
date: 2024-03-07
tags:
    - attack.execution
    - attack.stealth
    - attack.t1218.011
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    # Example: "C:\Windows\system32\rundll32.exe" Shell32.dll,Control_RunDLL "C:\Users\xxxx\AppData\Local\Temp\xxxx.CPL"
    selection_parent_img:
        ParentImage|endswith:
            - '\rundll32.exe'
            - '\control.exe'
    selection_img:
        - Image|endswith: '\rundll32.exe'
        - OriginalFileName: 'RUNDLL32.EXE'
    selection_cli:
        CommandLine|contains|all:
            - 'shell32.dll'
            - 'Control_RunDLL'
            - '.CPL'
    selection_path:
        CommandLine|contains: '\AppData\Local\Temp\'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_parent_img

selection_parent_img:
    ParentImage|endswith:
        - '\rundll32.exe'
        - '\control.exe'

Stage 2: selection_img

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

Stage 3: selection_cli

selection_cli:
    CommandLine|contains|all:
        - 'shell32.dll'
        - 'Control_RunDLL'
        - '.CPL'

Stage 4: selection_path

selection_path:
    CommandLine|contains: '\AppData\Local\Temp\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • .CPL corpus 3 (sigma 3)
  • Control_RunDLL corpus 6 (sigma 3, splunk 2, elastic 1)
  • \AppData\Local\Temp\ corpus 28 (sigma 26, elastic 2)
  • shell32.dll corpus 3 (sigma 3)
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"
ParentImageends_with
  • \control.exe
  • \rundll32.exe corpus 15 (sigma 15)
field:"ParentImage" kind:ends_with

Potential Suspicious Change To Sensitive/Critical Files

#
Status
test
Severity
medium
Author
@d4ns4n_ (Wuerth-Phoenix)
Source
github.com/SigmaHQ/sigma

Detects changes of sensitive and critical files. Monitors files that you don't expect to change without planning on Linux system. These files include, but are not limited to, system configuration files, authentication files, and critical application files. Attackers often target these files to maintain persistence, escalate privileges, or disrupt system operations.

Known False Positives

  • Some false positives are to be expected on user or administrator machines. Apply additional filters as needed.

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Potential Suspicious Change To Sensitive/Critical Files
id: 86157017-c2b1-4d4a-8c33-93b8e67e4af4
status: test
description: |
    Detects changes of sensitive and critical files. Monitors files that you don't expect to change without planning on Linux system.
    These files include, but are not limited to, system configuration files, authentication files, and critical application files.
    Attackers often target these files to maintain persistence, escalate privileges, or disrupt system operations.
references:
    - https://learn.microsoft.com/en-us/azure/defender-for-cloud/file-integrity-monitoring-overview#which-files-should-i-monitor
author: '@d4ns4n_ (Wuerth-Phoenix)'
date: 2023-05-30
modified: 2026-03-18
tags:
    - attack.impact
    - attack.t1565.001
logsource:
    category: process_creation
    product: linux
detection:
    selection_img_1:
        Image|endswith:
            - '/cat'
            - '/echo'
            - '/grep'
            - '/head'
            - '/more'
            - '/tail'
        CommandLine|contains: '>'
    selection_img_2:
        Image|endswith:
            - '/emacs'
            - '/nano'
            - '/sed'
            - '/vi'
            - '/vim'
    selection_paths:
        CommandLine|contains:
            - '/bin/login'
            - '/bin/passwd'
            - '/boot/'
            - '/etc/*.conf'
            - '/etc/cron.' # Covers different cron config files "daily", "hourly", etc.
            - '/etc/crontab'
            - '/etc/hosts'
            - '/etc/init.d'
            - '/etc/sudoers'
            - '/opt/bin/'
            - '/sbin' # Covers: '/opt/sbin', '/usr/local/sbin/', '/usr/sbin/'
            - '/usr/bin/'
            - '/usr/local/bin/'
    filter_main_mdadm.conf:
        Image|endswith: '/bin/sed'
        CommandLine|startswith:
            - 'sed -i /^*'
            - 'sed -ne s/^'
        CommandLine|endswith: '/etc/mdadm/mdadm.conf'
    condition: 1 of selection_img_* and selection_paths and not 1 of filter_main_*
falsepositives:
    - Some false positives are to be expected on user or administrator machines. Apply additional filters as needed.
level: medium

Stages and Predicates

Stage 0: condition

1 of selection_img_* and selection_paths and not 1 of filter_main_*

Stage 1: selection_img_1

selection_img_1:
    Image|endswith:
        - '/cat'
        - '/echo'
        - '/grep'
        - '/head'
        - '/more'
        - '/tail'
    CommandLine|contains: '>'

Stage 2: selection_img_2

selection_img_2:
    Image|endswith:
        - '/emacs'
        - '/nano'
        - '/sed'
        - '/vi'
        - '/vim'

Stage 3: selection_paths

selection_paths:
    CommandLine|contains:
        - '/bin/login'
        - '/bin/passwd'
        - '/boot/'
        - '/etc/*.conf'
        - '/etc/cron.'
        - '/etc/crontab'
        - '/etc/hosts'
        - '/etc/init.d'
        - '/etc/sudoers'
        - '/opt/bin/'
        - '/sbin'
        - '/usr/bin/'
        - '/usr/local/bin/'

Stage 4: not filter_main_mdadm.conf

or:
CommandLine|startswith: 'sed -i /^*'
CommandLine|startswith: 'sed -ne s/^'
CommandLine|endswith: '/etc/mdadm/mdadm.conf'
Image|endswith: '/bin/sed'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /bin/login
  • /bin/passwd
  • /boot/
  • /etc/*.conf
  • /etc/cron.
  • /etc/crontab
  • /etc/hosts corpus 2 (sigma 2)
  • /etc/init.d corpus 2 (sigma 1, elastic 1)
  • /etc/sudoers corpus 6 (sigma 3, elastic 2, splunk 1)
  • /opt/bin/
  • /sbin
  • /usr/bin/
  • /usr/local/bin/ corpus 2 (sigma 1, elastic 1)
  • > corpus 6 (sigma 6)
field:"CommandLine" kind:match
Imageends_with
  • /cat corpus 10 (sigma 10)
  • /echo corpus 2 (sigma 2)
  • /emacs corpus 3 (sigma 3)
  • /grep corpus 7 (sigma 7)
  • /head corpus 7 (sigma 7)
  • /more corpus 7 (sigma 7)
  • /nano corpus 4 (sigma 4)
  • /sed corpus 2 (sigma 2)
  • /tail corpus 7 (sigma 7)
  • /vi corpus 4 (sigma 4)
  • /vim corpus 4 (sigma 4)
field:"Image" kind:ends_with

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinestarts_withsed -i /^*excludes:CommandLine field:"CommandLine" value:"sed -i /^*"
CommandLinestarts_withsed -ne s/^excludes:CommandLine field:"CommandLine" value:"sed -ne s/^"
CommandLineends_with/etc/mdadm/mdadm.confexcludes:CommandLine field:"CommandLine" value:"/etc/mdadm/mdadm.conf"
Imageends_with/bin/sedexcludes:Image field:"Image" value:"/bin/sed"

Suspicious Inbox Forwarding Identity Protection

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

Indicates suspicious rules such as an inbox rule that forwards a copy of all emails to an external address

Known False Positives

  • A legitimate forwarding rule.

MITRE ATT&CK Coverage

Rule Body

title: Suspicious Inbox Forwarding Identity Protection
id: 27e4f1d6-ae72-4ea0-8a67-77a73a289c3d
status: test
description: Indicates suspicious rules such as an inbox rule that forwards a copy of all emails to an external address
references:
    - https://learn.microsoft.com/en-us/entra/id-protection/concept-identity-protection-risks#suspicious-inbox-forwarding
    - https://learn.microsoft.com/en-us/entra/architecture/security-operations-user-accounts#unusual-sign-ins
author: Mark Morowczynski '@markmorow', Gloria Lee, '@gleeiamglo'
date: 2023-09-03
tags:
    - attack.t1114.003
    - attack.collection
logsource:
    product: azure
    service: riskdetection
detection:
    selection:
        riskEventType: 'suspiciousInboxForwarding'
    condition: selection
falsepositives:
    - A legitimate forwarding rule.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    riskEventType: 'suspiciousInboxForwarding'

Indicators

These rows show field, operator, and value matches.

Suspicious Java Children Processes

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

Detects java process spawning suspicious children

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Suspicious Java Children Processes
id: d292e0af-9a18-420c-9525-ec0ac3936892
status: test
description: Detects java process spawning suspicious children
references:
    - https://www.tecmint.com/different-types-of-linux-shells/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-06-03
tags:
    - attack.execution
    - attack.t1059
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        ParentImage|endswith: '/java'
        CommandLine|contains:
            - '/bin/sh'
            - 'bash'
            - 'dash'
            - 'ksh'
            - 'zsh'
            - 'csh'
            - 'fish'
            - 'curl'
            - 'wget'
            - 'python'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith: '/java'
    CommandLine|contains:
        - '/bin/sh'
        - 'bash'
        - 'dash'
        - 'ksh'
        - 'zsh'
        - 'csh'
        - 'fish'
        - 'curl'
        - 'wget'
        - 'python'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /bin/sh corpus 12 (sigma 12)
  • bash corpus 5 (sigma 5)
  • csh corpus 3 (sigma 3)
  • curl corpus 17 (sigma 14, elastic 2, splunk 1)
  • dash corpus 2 (sigma 2)
  • fish corpus 2 (sigma 2)
  • ksh corpus 3 (sigma 3)
  • python corpus 5 (sigma 4, elastic 1)
  • wget corpus 10 (sigma 8, elastic 1, splunk 1)
  • zsh corpus 3 (sigma 3)
field:"CommandLine" kind:match
ParentImageends_with
  • /java corpus 3 (sigma 3)
field:"ParentImage" kind:ends_with value:"/java"

Suspicious RunAs-Like Flag Combination

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

Detects suspicious command line flags that let the user set a target user and command as e.g. seen in PsExec-like tools

MITRE ATT&CK Coverage

TacticTechniques
Privilege EscalationNo specific technique

Telemetry Coverage

Rule Body

title: Suspicious RunAs-Like Flag Combination
id: 50d66fb0-03f8-4da0-8add-84e77d12a020
status: test
description: Detects suspicious command line flags that let the user set a target user and command as e.g. seen in PsExec-like tools
references:
    - https://www.trendmicro.com/en_us/research/22/k/hack-the-real-box-apt41-new-subgroup-earth-longzhi.html
author: Florian Roth (Nextron Systems)
date: 2022-11-11
tags:
    - attack.privilege-escalation
logsource:
    category: process_creation
    product: windows
detection:
    selection_user:
        CommandLine|contains:
            - ' -u system '
            - ' --user system '
            - ' -u NT'
            - ' -u "NT'
            - " -u 'NT"
            - ' --system '
            - ' -u administrator '
    selection_command:
        CommandLine|contains:
            - ' -c cmd'
            - ' -c "cmd'
            - ' -c powershell'
            - ' -c "powershell'
            - ' --command cmd'
            - ' --command powershell'
            - ' -c whoami'
            - ' -c wscript'
            - ' -c cscript'
    condition: all of selection*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection*

Stage 1: selection_user

selection_user:
    CommandLine|contains:
        - ' -u system '
        - ' --user system '
        - ' -u NT'
        - ' -u "NT'
        - " -u 'NT"
        - ' --system '
        - ' -u administrator '

Stage 2: selection_command

selection_command:
    CommandLine|contains:
        - ' -c cmd'
        - ' -c "cmd'
        - ' -c powershell'
        - ' -c "powershell'
        - ' --command cmd'
        - ' --command powershell'
        - ' -c whoami'
        - ' -c wscript'
        - ' -c cscript'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --command cmd
  • --command powershell
  • --system
  • --user system
  • -c "cmd
  • -c "powershell
  • -c cmd
  • -c cscript
  • -c powershell
  • -c whoami
  • -c wscript
  • -u "NT
  • -u 'NT
  • -u NT
  • -u administrator
  • -u system
field:"CommandLine" kind:match

Suspicious Use of /dev/tcp

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

Detects suspicious command with /dev/tcp

MITRE ATT&CK Coverage

TacticTechniques
ReconnaissanceNo specific technique

Rule Body

title: Suspicious Use of /dev/tcp
id: 6cc5fceb-9a71-4c23-aeeb-963abe0b279c
status: test
description: Detects suspicious command with /dev/tcp
references:
    - https://www.andreafortuna.org/2021/03/06/some-useful-tips-about-dev-tcp/
    - https://book.hacktricks.xyz/shells/shells/linux
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1046/T1046.md#atomic-test-1---port-scan
author: frack113
date: 2021-12-10
modified: 2023-01-06
tags:
    - attack.reconnaissance
logsource:
    product: linux
detection:
    keywords:
        - 'cat </dev/tcp/'
        - 'exec 3<>/dev/tcp/'
        - 'echo >/dev/tcp/'
        - 'bash -i >& /dev/tcp/'
        - 'sh -i >& /dev/udp/'
        - '0<&196;exec 196<>/dev/tcp/'
        - 'exec 5<>/dev/tcp/'
        - '(sh)0>/dev/tcp/'
        - 'bash -c ''bash -i >& /dev/tcp/'
        - 'echo -e ''#!/bin/bash\nbash -i >& /dev/tcp/'
    condition: keywords
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

keywords

Stage 1: keywords

keywords:
    - 'cat </dev/tcp/'
    - 'exec 3<>/dev/tcp/'
    - 'echo >/dev/tcp/'
    - 'bash -i >& /dev/tcp/'
    - 'sh -i >& /dev/udp/'
    - '0<&196;exec 196<>/dev/tcp/'
    - 'exec 5<>/dev/tcp/'
    - '(sh)0>/dev/tcp/'
    - 'bash -c ''bash -i >& /dev/tcp/'
    - 'echo -e ''#!/bin/bash\nbash -i >& /dev/tcp/'

Suspicious WSMAN Provider Image Loads

#
Status
test
Severity
medium
Author
Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research)
Source
github.com/SigmaHQ/sigma

Detects signs of potential use of the WSMAN provider from uncommon processes locally and remote execution.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Suspicious WSMAN Provider Image Loads
id: ad1f4bb9-8dfb-4765-adb6-2a7cfb6c0f94
status: test
description: Detects signs of potential use of the WSMAN provider from uncommon processes locally and remote execution.
references:
    - https://twitter.com/chadtilbury/status/1275851297770610688
    - https://bohops.com/2020/05/12/ws-management-com-another-approach-for-winrm-lateral-movement/
    - https://learn.microsoft.com/en-us/windows/win32/winrm/windows-remote-management-architecture
    - https://github.com/bohops/WSMan-WinRM
author: Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research)
date: 2020-06-24
modified: 2026-07-28
tags:
    - attack.execution
    - attack.t1059.001
    - attack.lateral-movement
    - attack.t1021.003
logsource:
    category: image_load
    product: windows
detection:
    request_client:
        - ImageLoaded|endswith:
              - '\WsmSvc.dll'
              - '\WsmAuto.dll'
              - '\Microsoft.WSMan.Management.ni.dll'
        - OriginalFileName:
              - 'WsmSvc.dll'
              - 'WSMANAUTOMATION.DLL'
              - 'Microsoft.WSMan.Management.dll'
    respond_server:
        Image|endswith: '\svchost.exe'
        OriginalFileName: 'WsmWmiPl.dll'
    filter_general:
        Image:
            - 'C:\Program Files (x86)\PowerShell\6\pwsh.exe'
            - 'C:\Program Files (x86)\PowerShell\7\pwsh.exe'
            - 'C:\Program Files\PowerShell\6\pwsh.exe'
            - 'C:\Program Files\PowerShell\7\pwsh.exe'
            - 'C:\Windows\System32\sdiagnhost.exe'
            - 'C:\Windows\System32\services.exe'
            - 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe'
            - 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
    filter_svchost: # not available in Sysmon data, but Aurora logs
        CommandLine|contains:
            - 'svchost.exe -k netsvcs -p -s BITS'
            - 'svchost.exe -k GraphicsPerfSvcGroup -s GraphicsPerfSvc'
            - 'svchost.exe -k NetworkService -p -s Wecsvc'
            - 'svchost.exe -k netsvcs'
    filter_mscorsvw: # Image: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorsvw.exe
        Image|startswith:
            - 'C:\Windows\Microsoft.NET\Framework64\v'
            - 'C:\Windows\Microsoft.NET\Framework\v'
            - 'C:\Windows\Microsoft.NET\FrameworkArm\v'
            - 'C:\Windows\Microsoft.NET\FrameworkArm64\v'
        Image|endswith: '\mscorsvw.exe'
    filter_gethelp:
        Image|startswith: 'C:\Program Files\WindowsApps\Microsoft.GetHelp_'
        Image|endswith: '\GetHelp.exe'
    filter_svr_2019:
        Image:
            - 'C:\Windows\System32\Configure-SMRemoting.exe'
            - 'C:\Windows\System32\ServerManager.exe'
    filter_nextron:
        Image|startswith: 'C:\Windows\Temp\asgard2-agent\'
    filter_citrix:
        Image|startswith: 'C:\Program Files\Citrix\'
    filter_upgrade:
        Image|startswith: 'C:\$WINDOWS.~BT\Sources\'
    filter_mmc:
        Image|endswith: '\mmc.exe'
    svchost:
        Image|endswith: '\svchost.exe'
    commandline_null:
        CommandLine: null
    condition: ( request_client or respond_server ) and not 1 of filter* and not ( svchost and commandline_null )
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

( request_client or respond_server ) and not 1 of filter* and not ( svchost and commandline_null )

Stage 1: request_client

request_client:
    - ImageLoaded|endswith:
          - '\WsmSvc.dll'
          - '\WsmAuto.dll'
          - '\Microsoft.WSMan.Management.ni.dll'
    - OriginalFileName:
          - 'WsmSvc.dll'
          - 'WSMANAUTOMATION.DLL'
          - 'Microsoft.WSMan.Management.dll'

Stage 2: respond_server

respond_server:
    Image|endswith: '\svchost.exe'
    OriginalFileName: 'WsmWmiPl.dll'

Stage 3: not filter*

filter_general:
    Image:
        - 'C:\Program Files (x86)\PowerShell\6\pwsh.exe'
        - 'C:\Program Files (x86)\PowerShell\7\pwsh.exe'
        - 'C:\Program Files\PowerShell\6\pwsh.exe'
        - 'C:\Program Files\PowerShell\7\pwsh.exe'
        - 'C:\Windows\System32\sdiagnhost.exe'
        - 'C:\Windows\System32\services.exe'
        - 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe'
        - 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe'
filter_svchost:
    CommandLine|contains:
        - 'svchost.exe -k netsvcs -p -s BITS'
        - 'svchost.exe -k GraphicsPerfSvcGroup -s GraphicsPerfSvc'
        - 'svchost.exe -k NetworkService -p -s Wecsvc'
        - 'svchost.exe -k netsvcs'
filter_mscorsvw:
    Image|startswith:
        - 'C:\Windows\Microsoft.NET\Framework64\v'
        - 'C:\Windows\Microsoft.NET\Framework\v'
        - 'C:\Windows\Microsoft.NET\FrameworkArm\v'
        - 'C:\Windows\Microsoft.NET\FrameworkArm64\v'
    Image|endswith: '\mscorsvw.exe'
filter_gethelp:
    Image|startswith: 'C:\Program Files\WindowsApps\Microsoft.GetHelp_'
    Image|endswith: '\GetHelp.exe'
filter_svr_2019:
    Image:
        - 'C:\Windows\System32\Configure-SMRemoting.exe'
        - 'C:\Windows\System32\ServerManager.exe'
filter_nextron:
    Image|startswith: 'C:\Windows\Temp\asgard2-agent\'
filter_citrix:
    Image|startswith: 'C:\Program Files\Citrix\'
filter_upgrade:
    Image|startswith: 'C:\$WINDOWS.~BT\Sources\'
filter_mmc:
    Image|endswith: '\mmc.exe'

Stage 4: not svchost

svchost:
    Image|endswith: '\svchost.exe'

Stage 5: not commandline_null

commandline_null:
    CommandLine: null

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \svchost.exe corpus 22 (sigma 22)
field:"Image" kind:ends_with value:"\svchost.exe"
ImageLoadedends_with
  • \Microsoft.WSMan.Management.ni.dll
  • \WsmAuto.dll
  • \WsmSvc.dll corpus 2 (sigma 2)
field:"ImageLoaded" kind:ends_with
OriginalFileNameeq
  • Microsoft.WSMan.Management.dll
  • WSMANAUTOMATION.DLL
  • WsmSvc.dll
  • WsmWmiPl.dll
field:"OriginalFileName" kind:eq

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imagestarts_withC:\Windows\Microsoft.NET\Framework64\vexcludes:Image field:"Image" value:"C:\Windows\Microsoft.NET\Framework64\v"
Imagestarts_withC:\Windows\Microsoft.NET\FrameworkArm64\vexcludes:Image field:"Image" value:"C:\Windows\Microsoft.NET\FrameworkArm64\v"
Imagestarts_withC:\Windows\Microsoft.NET\FrameworkArm\vexcludes:Image field:"Image" value:"C:\Windows\Microsoft.NET\FrameworkArm\v"
Imagestarts_withC:\Windows\Microsoft.NET\Framework\vexcludes:Image field:"Image" value:"C:\Windows\Microsoft.NET\Framework\v"
Imageends_with\mscorsvw.exeexcludes:Image field:"Image" value:"\mscorsvw.exe"
Imageends_with\GetHelp.exeexcludes:Image field:"Image" value:"\GetHelp.exe"
Imagestarts_withC:\Program Files\WindowsApps\Microsoft.GetHelp_excludes:Image field:"Image" value:"C:\Program Files\WindowsApps\Microsoft.GetHelp_"
CommandLinematchsvchost.exe -k GraphicsPerfSvcGroup -s GraphicsPerfSvcexcludes:CommandLine field:"CommandLine" value:"svchost.exe -k GraphicsPerfSvcGroup -s GraphicsPerfSvc"
CommandLinematchsvchost.exe -k NetworkService -p -s Wecsvcexcludes:CommandLine field:"CommandLine" value:"svchost.exe -k NetworkService -p -s Wecsvc"
CommandLinematchsvchost.exe -k netsvcs -p -s BITSexcludes:CommandLine field:"CommandLine" value:"svchost.exe -k netsvcs -p -s BITS"
CommandLinematchsvchost.exe -k netsvcsexcludes:CommandLine field:"CommandLine" value:"svchost.exe -k netsvcs"
Imageends_with\mmc.exeexcludes:Image field:"Image" value:"\mmc.exe"
ImageeqC:\Program Files (x86)\PowerShell\6\pwsh.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\PowerShell\6\pwsh.exe"
ImageeqC:\Program Files (x86)\PowerShell\7\pwsh.exeexcludes:Image field:"Image" value:"C:\Program Files (x86)\PowerShell\7\pwsh.exe"
ImageeqC:\Program Files\PowerShell\6\pwsh.exeexcludes:Image field:"Image" value:"C:\Program Files\PowerShell\6\pwsh.exe"
ImageeqC:\Program Files\PowerShell\7\pwsh.exeexcludes:Image field:"Image" value:"C:\Program Files\PowerShell\7\pwsh.exe"
ImageeqC:\Windows\System32\Configure-SMRemoting.exeexcludes:Image field:"Image" value:"C:\Windows\System32\Configure-SMRemoting.exe"
ImageeqC:\Windows\System32\ServerManager.exeexcludes:Image field:"Image" value:"C:\Windows\System32\ServerManager.exe"
ImageeqC:\Windows\System32\WindowsPowerShell\v1.0\powershell.exeexcludes:Image field:"Image" value:"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"
ImageeqC:\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exeexcludes:Image field:"Image" value:"C:\Windows\System32\WindowsPowerShell\v1.0\powershell_ise.exe"
ImageeqC:\Windows\System32\sdiagnhost.exeexcludes:Image field:"Image" value:"C:\Windows\System32\sdiagnhost.exe"
ImageeqC:\Windows\System32\services.exeexcludes:Image field:"Image" value:"C:\Windows\System32\services.exe"
Imagestarts_withC:\$WINDOWS.~BT\Sources\excludes:Image field:"Image" value:"C:\$WINDOWS.~BT\Sources\"
Imagestarts_withC:\Program Files\Citrix\excludes:Image field:"Image" value:"C:\Program Files\Citrix\"
Imagestarts_withC:\Windows\Temp\asgard2-agent\excludes:Image field:"Image" value:"C:\Windows\Temp\asgard2-agent\"
Imageends_with\svchost.exeexcludes:Image field:"Image" value:"\svchost.exe"
CommandLineis_null(no value, null check)excludes:CommandLine

Zerologon Exploitation Using Well-known Tools

#
Status
stable
Severity
critical
Author
Demyan Sokolin @_drd0c, Teymur Kheirkhabarov @HeirhabarovT, oscd.community
Source
github.com/SigmaHQ/sigma

This rule is designed to detect attempts to exploit Zerologon (CVE-2020-1472) vulnerability using mimikatz zerologon module or other exploits from machine with "kali" hostname.

MITRE ATT&CK Coverage

TacticTechniques
Lateral Movement

Telemetry Coverage

Rule Body

title: Zerologon Exploitation Using Well-known Tools
id: 18f37338-b9bd-4117-a039-280c81f7a596
status: stable
description: This rule is designed to detect attempts to exploit Zerologon (CVE-2020-1472) vulnerability using mimikatz zerologon module or other exploits from machine with "kali" hostname.
references:
    - https://www.secura.com/blog/zero-logon
    - https://bi-zone.medium.com/hunting-for-zerologon-f65c61586382
author: 'Demyan Sokolin @_drd0c, Teymur Kheirkhabarov @HeirhabarovT, oscd.community'
date: 2020-10-13
modified: 2021-05-30
tags:
    - attack.t1210
    - attack.lateral-movement
logsource:
    service: system
    product: windows
detection:
    selection:
        EventID:
            - 5805
            - 5723
    keywords:
        - kali
        - mimikatz
    condition: selection and keywords
level: critical

Stages and Predicates

Stage 0: condition

selection and keywords

Stage 1: selection

selection:
    EventID:
        - 5805
        - 5723

Stage 2: keywords

keywords:
    - kali
    - mimikatz

Back to all Sigma rules