Detection rules › Sigma

Sigma rules: 20

Clipboard Collection with Xclip Tool

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

Detects attempts to collect data stored in the clipboard from users with the usage of xclip tool. Xclip has to be installed. Highly recommended using rule on servers, due to high usage of clipboard utilities on user workstations.

Known False Positives

  • Legitimate usage of xclip tools.

MITRE ATT&CK Coverage

TacticTechniques
Collection

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Clipboard Collection with Xclip Tool
id: ec127035-a636-4b9a-8555-0efd4e59f316
status: test
description: |
    Detects attempts to collect data stored in the clipboard from users with the usage of xclip tool. Xclip has to be installed.
    Highly recommended using rule on servers, due to high usage of clipboard utilities on user workstations.
references:
    - https://www.packetlabs.net/posts/clipboard-data-security/
author: Pawel Mazur, Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research), MSTIC
date: 2021-10-15
modified: 2022-09-15
tags:
    - attack.collection
    - attack.t1115
logsource:
    product: linux
    category: process_creation
detection:
    selection:
        Image|contains: 'xclip'
        CommandLine|contains|all:
            - '-sel'
            - 'clip'
            - '-o'
    condition: selection
falsepositives:
    - Legitimate usage of xclip tools.
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|contains: 'xclip'
    CommandLine|contains|all:
        - '-sel'
        - 'clip'
        - '-o'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -o corpus 3 (sigma 3)
  • -sel
  • clip
field:"CommandLine" kind:match
Imagematch
  • xclip
field:"Image" kind:match value:"xclip"

Enable LM Hash Storage - ProcCreation

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

Detects changes to the "NoLMHash" registry value in order to allow Windows to store LM Hashes. By setting this registry value to "0" (DWORD), Windows will be allowed to store a LAN manager hash of your password in Active Directory and local SAM databases.

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Defense Impairment

Telemetry Coverage

Rule Body

title: Enable LM Hash Storage - ProcCreation
id: 98dedfdd-8333-49d4-9f23-d7018cccae53
related:
    - id: c420410f-c2d8-4010-856b-dffe21866437 # Registry
      type: similar
status: test
description: |
    Detects changes to the "NoLMHash" registry value in order to allow Windows to store LM Hashes.
    By setting this registry value to "0" (DWORD), Windows will be allowed to store a LAN manager hash of your password in Active Directory and local SAM databases.
references:
    - https://www.cisa.gov/news-events/cybersecurity-advisories/aa23-347a
    - https://learn.microsoft.com/en-us/troubleshoot/windows-server/windows-security/prevent-windows-store-lm-hash-password
    - https://www.sans.org/blog/protecting-privileged-domain-accounts-lm-hashes-the-good-the-bad-and-the-ugly/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-12-15
modified: 2023-12-22
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1112
logsource:
    product: windows
    category: process_creation
detection:
    selection:
        CommandLine|contains|all:
            - '\System\CurrentControlSet\Control\Lsa'
            - 'NoLMHash'
            - ' 0'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains|all:
        - '\System\CurrentControlSet\Control\Lsa'
        - 'NoLMHash'
        - ' 0'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • 0 corpus 3 (sigma 3)
  • NoLMHash
  • \System\CurrentControlSet\Control\Lsa corpus 5 (sigma 4, splunk 1)
field:"CommandLine" kind:match

Forfiles Command Execution

#
Status
test
Severity
medium
Author
Tim Rauch, Elastic, E.M. Anhaus (originally from Atomic Blue Detections, Endgame), oscd.community
Source
github.com/SigmaHQ/sigma

Detects the execution of "forfiles" with the "/c" flag. While this is an expected behavior of the tool, it can be abused in order to proxy execution through it with any binary. Can be used to bypass application whitelisting.

Known False Positives

  • Legitimate use via a batch script or by an administrator.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Forfiles Command Execution
id: 9aa5106d-bce3-4b13-86df-3a20f1d5cf0b
related:
    - id: a85cf4e3-56ee-4e79-adeb-789f8fb209a8
      type: obsolete
    - id: fa47597e-90e9-41cd-ab72-c3b74cfb0d02
      type: obsolete
status: test
description: |
    Detects the execution of "forfiles" with the "/c" flag.
    While this is an expected behavior of the tool, it can be abused in order to proxy execution through it with any binary.
    Can be used to bypass application whitelisting.
references:
    - https://lolbas-project.github.io/lolbas/Binaries/Forfiles/
    - https://pentestlab.blog/2020/07/06/indirect-command-execution/
author: Tim Rauch, Elastic, E.M. Anhaus (originally from Atomic Blue Detections, Endgame), oscd.community
date: 2022-06-14
modified: 2024-03-05
tags:
    - attack.execution
    - attack.t1059
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\forfiles.exe'
        - OriginalFileName: 'forfiles.exe'
    selection_cli:
        CommandLine|contains|windash: ' -c '
    condition: all of selection_*
falsepositives:
    - Legitimate use via a batch script or by an administrator.
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|windash: ' -c '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -c corpus 13 (sigma 13)
  • /c corpus 7 (sigma 6, splunk 1)
  • –c corpus 2 (sigma 2)
  • —c corpus 2 (sigma 2)
  • ―c corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \forfiles.exe corpus 11 (sigma 11)
field:"Image" kind:ends_with value:"\forfiles.exe"
OriginalFileNameeq
  • forfiles.exe corpus 2 (sigma 1, splunk 1)
field:"OriginalFileName" kind:eq value:"forfiles.exe"

HackTool - CrackMapExec File Indicators

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

Detects file creation events with filename patterns used by CrackMapExec.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: HackTool - CrackMapExec File Indicators
id: 736ffa74-5f6f-44ca-94ef-1c0df4f51d2a
related:
    - id: 9433ff9c-5d3f-4269-99f8-95fc826ea489
      type: obsolete
status: test
description: Detects file creation events with filename patterns used by CrackMapExec.
references:
    - https://github.com/byt3bl33d3r/CrackMapExec/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2024-03-11
modified: 2024-06-27
tags:
    - attack.credential-access
    - attack.t1003.001
logsource:
    product: windows
    category: file_event
detection:
    selection_path:
        TargetFilename|startswith: 'C:\Windows\Temp\' # The disk extension is hardcoded in the tool.
    selection_names_str:
        TargetFilename|endswith:
            - '\temp.ps1' # https://github.com/byt3bl33d3r/CrackMapExec/blob/3c3e412193cb6d3237abe90c543e5d995bfa4447/cme/modules/keepass_trigger.py#L42C41-L42C68
            - '\msol.ps1' # https://github.com/byt3bl33d3r/CrackMapExec/blob/3c3e412193cb6d3237abe90c543e5d995bfa4447/cme/modules/msol.py#L48C98-L48C106
    selection_names_re:
        - TargetFilename|re: '\\[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\.txt$' # https://github.com/byt3bl33d3r/CrackMapExec/blob/3c3e412193cb6d3237abe90c543e5d995bfa4447/cme/protocols/wmi/wmiexec.py#L86
        - TargetFilename|re: '\\[a-zA-Z]{8}\.tmp$' # https://github.com/byt3bl33d3r/CrackMapExec/blob/3c3e412193cb6d3237abe90c543e5d995bfa4447/cme/protocols/smb/atexec.py#L145C19-L146
    condition: selection_path and 1 of selection_names_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_path and 1 of selection_names_*

Stage 1: selection_path

selection_path:
    TargetFilename|startswith: 'C:\Windows\Temp\'

Stage 2: selection_names_str

selection_names_str:
    TargetFilename|endswith:
        - '\temp.ps1'
        - '\msol.ps1'

Stage 3: selection_names_re

selection_names_re:
    - TargetFilename|re: '\\[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\.txt$'
    - TargetFilename|re: '\\[a-zA-Z]{8}\.tmp$'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • \msol.ps1
  • \temp.ps1
field:"TargetFilename" kind:ends_with
TargetFilenameregex_match
  • \[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}.txt$
  • \[a-zA-Z]{8}.tmp$
field:"TargetFilename" kind:regex_match
TargetFilenamestarts_with
  • C:\Windows\Temp\
field:"TargetFilename" kind:starts_with value:"C:\Windows\Temp\"

HackTool - Stracciatella Execution

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

Detects Stracciatella which executes a Powershell runspace from within C# (aka SharpPick technique) with AMSI, ETW and Script Block Logging disabled based on PE metadata characteristics.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: HackTool - Stracciatella Execution
id: 7a4d9232-92fc-404d-8ce1-4c92e7caf539
status: test
description: Detects Stracciatella which executes a Powershell runspace from within C# (aka SharpPick technique) with AMSI, ETW and Script Block Logging disabled based on PE metadata characteristics.
references:
    - https://github.com/mgeeky/Stracciatella
author: pH-T (Nextron Systems)
date: 2023-04-17
modified: 2024-11-23
tags:
    - attack.execution
    - attack.defense-impairment
    - attack.t1059
    - attack.t1685
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        - Image|endswith: '\Stracciatella.exe'
        - OriginalFileName: 'Stracciatella.exe'
        - Description: 'Stracciatella'
        - Hashes|contains:
              - 'SHA256=9d25e61ec1527e2a69d7c2a4e3fe2fe15890710c198a66a9f25d99fdf6c7b956'
              - 'SHA256=fd16609bd9830c63b9413671678bb159b89c357d21942ddbb6b93add808d121a'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    - Image|endswith: '\Stracciatella.exe'
    - OriginalFileName: 'Stracciatella.exe'
    - Description: 'Stracciatella'
    - Hashes|contains:
          - 'SHA256=9d25e61ec1527e2a69d7c2a4e3fe2fe15890710c198a66a9f25d99fdf6c7b956'
          - 'SHA256=fd16609bd9830c63b9413671678bb159b89c357d21942ddbb6b93add808d121a'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Descriptioneq
  • Stracciatella
field:"Description" kind:eq value:"Stracciatella"
Hashesmatch
  • SHA256=9d25e61ec1527e2a69d7c2a4e3fe2fe15890710c198a66a9f25d99fdf6c7b956
  • SHA256=fd16609bd9830c63b9413671678bb159b89c357d21942ddbb6b93add808d121a
field:"Hashes" kind:match
Imageends_with
  • \Stracciatella.exe
field:"Image" kind:ends_with value:"\Stracciatella.exe"
OriginalFileNameeq
  • Stracciatella.exe
field:"OriginalFileName" kind:eq value:"Stracciatella.exe"

Invoke-Obfuscation Via Use Rundll32 - PowerShell

#
Status
test
Severity
high
Author
Nikita Nazarov, oscd.community
Source
github.com/SigmaHQ/sigma

Detects Obfuscated Powershell via use Rundll32 in Scripts

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Invoke-Obfuscation Via Use Rundll32 - PowerShell
id: a5a30a6e-75ca-4233-8b8c-42e0f2037d3b
status: test
description: Detects Obfuscated Powershell via use Rundll32 in Scripts
references:
    - https://github.com/SigmaHQ/sigma/issues/1009
author: Nikita Nazarov, oscd.community
date: 2019-10-08
modified: 2022-11-29
tags:
    - attack.stealth
    - attack.t1027
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection_4104:
        ScriptBlockText|contains|all:
            - '&&'
            - 'rundll32'
            - 'shell32.dll'
            - 'shellexec_rundll'
        ScriptBlockText|contains:
            - 'value'
            - 'invoke'
            - 'comspec'
            - 'iex'
    condition: selection_4104
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection_4104

Stage 1: selection_4104

selection_4104:
    ScriptBlockText|contains|all:
        - '&&'
        - 'rundll32'
        - 'shell32.dll'
        - 'shellexec_rundll'
    ScriptBlockText|contains:
        - 'value'
        - 'invoke'
        - 'comspec'
        - 'iex'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • && corpus 2 (sigma 2)
  • comspec
  • iex corpus 2 (sigma 2)
  • invoke
  • rundll32 corpus 2 (sigma 2)
  • shell32.dll corpus 2 (sigma 2)
  • shellexec_rundll corpus 2 (sigma 2)
  • value
field:"ScriptBlockText" kind:match

Kapeka Backdoor Configuration Persistence

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

Detects registry set activity of a value called "Seed" stored in the "\Cryptography\Providers" registry key. The Kapeka backdoor leverages this location to register a new SIP provider for backdoor configuration persistence.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Kapeka Backdoor Configuration Persistence
id: cbaa3ef3-07a9-4c8e-82d1-9e40578da7fd
status: test
description: |
    Detects registry set activity of a value called "Seed" stored in the "\Cryptography\Providers\" registry key.
    The Kapeka backdoor leverages this location to register a new SIP provider for backdoor configuration persistence.
references:
    - https://labs.withsecure.com/publications/kapeka
    - https://app.any.run/tasks/1efb3ed4-cc0f-4690-a0ed-24516809bc72/
author: Swachchhanda Shrawan Poudel
date: 2024-07-03
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1553.003
    - detection.emerging-threats
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|contains: '\SOFTWARE\Microsoft\Cryptography\Providers\{'
        TargetObject|endswith: '\Seed'
    filter_main_empty:
        Details|contains: '(Empty)'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    TargetObject|contains: '\SOFTWARE\Microsoft\Cryptography\Providers\{'
    TargetObject|endswith: '\Seed'

Stage 2: not filter_main_empty

filter_main_empty:
    Details|contains: '(Empty)'

Indicators

These rows show field, operator, and value matches.

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Detailsmatch(Empty)excludes:Details field:"Details" value:"(Empty)"

macOS Data Destruction Tools

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

Detects execution of data destruction tools (rm, shred, srm, dd) with aggressive or recursive options which may indicate data destruction for impact or anti-forensics. Adversaries use these tools to destroy data, render systems inoperable, or cover tracks.

Known False Positives

  • System maintenance and cleanup operations
  • Software uninstallation procedures
  • Legitimate disk management tasks
  • Development and testing workflows

MITRE ATT&CK Coverage

Rule Body

title: macOS Data Destruction Tools
id: e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b
status: experimental
description: 'Detects execution of data destruction tools (rm, shred, srm, dd) with
  aggressive

  or recursive options which may indicate data destruction for impact or anti-forensics.

  Adversaries use these tools to destroy data, render systems inoperable, or cover
  tracks.

  '
author: Eric Brown - Nebulock, Inc.
date: 2025/10/31
modified: 2025/10/31
references:
- https://attack.mitre.org/techniques/T1485/
- https://attack.mitre.org/techniques/T1070/004/
logsource:
  product: macos
  service: endpointsecurity
detection:
  selection_event:
    esf.event_type: 9
    event.action: exec
  selection_process:
    Image|endswith:
    - /rm
    - /shred
    - /srm
    - /dd
  selection_dangerous:
    CommandLine|contains:
    - -rf
    - -R
    - --recursive
    - if=/dev/zero
    - if=/dev/random
    - of=/dev/
  condition: selection_event and selection_process and selection_dangerous
falsepositives:
- System maintenance and cleanup operations
- Software uninstallation procedures
- Legitimate disk management tasks
- Development and testing workflows
fields:
- Image
- CommandLine
- ProcessId
- ParentProcessId
- User
tags:
- attack.impact
- attack.t1485
- attack.t1070.004
level: high

Stages and Predicates

Stage 0: condition

selection_event and selection_process and selection_dangerous

Stage 1: selection_event

selection_event:
  esf.event_type: 9
  event.action: exec

Stage 2: selection_process

selection_process:
  Image|endswith:
  - /rm
  - /shred
  - /srm
  - /dd

Stage 3: selection_dangerous

selection_dangerous:
  CommandLine|contains:
  - -rf
  - -R
  - --recursive
  - if=/dev/zero
  - if=/dev/random
  - of=/dev/

Indicators

These rows show field, operator, and value matches.

Persistence Via TypedPaths - CommandLine

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

Detects modification addition to the 'TypedPaths' key in the user or admin registry via the commandline. Which might indicate persistence attempt

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique

Telemetry Coverage

Rule Body

title: Persistence Via TypedPaths - CommandLine
id: ec88289a-7e1a-4cc3-8d18-bd1f60e4b9ba
status: test
description: Detects modification addition to the 'TypedPaths' key in the user or admin registry via the commandline. Which might indicate persistence attempt
references:
    - https://twitter.com/dez_/status/1560101453150257154
    - https://forensafe.com/blogs/typedpaths.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-08-22
tags:
    - attack.persistence
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        CommandLine|contains: '\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|contains: '\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • \Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths
field:"CommandLine" kind:match value:"\Software\Microsoft\Windows\CurrentVersion\Explorer\TypedPaths"

Potential SAM database user credentials dumped with DCshadow

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

Detects scenarios where an attacker would dump user passwords using the DCshadow attack.

Known False Positives

  • None

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: Potential SAM database user credentials dumped with DCshadow
description: Detects scenarios where an attacker would dump user passwords using the DCshadow attack.
correlation: correlate TargetLogonId from ID 4624 with SubjectLogonId from ID 4661 to identify the source of the enumeration.
requirements: extended rights auditing enabled (https://www.manageengine.com/products/active-directory-audit/active-directory-auditing-configuration-guide-configure-object-level-auditing-manually.html)
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0006-Credential%20Access/T1003-Credential%20dumping
- https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/t1207-creating-rogue-domain-controllers-with-dcshadow
- https://medium.com/@maarten.goet/dcshadow-detecting-a-rogue-domain-controller-replicating-malicious-changes-to-your-active-1e22440df9ad
- https://github.com/AlsidOfficial/UncoverDCShadow
- https://github.com/shellster/DCSYNCMonitor
- https://blog.alsid.eu/dcshadow-explained-4510f52fc19d
- https://stealthbits.com/blog/detecting-dcshadow-with-event-logs/
- https://www.labofapenetrationtester.com/2018/05/dcshadow-sacl.html
- https://blog.stealthbits.com/creating-persistence-with-dcshadow/
- https://book.hacktricks.xyz/windows/active-directory-methodology/dcshadow
tags:
- attack.credential_access
- attack.t1003.001
author: mdecrevoisier
status: experimental
logsource:
  product: windows
  service: security
detection:
  selection:
    EventID: 4661
    SubjectUserSid: S-1-5-18
    ProcessName|endswith: '\lsass.exe'
    ObjectServer: Security Account Manager
    ObjectType:
      - SAM_SERVER
      - SAM_DOMAIN
    ObjectName|startswith:
      - CN=
      - DC=
    AccessList|contains|all:
      - '%%5392' # ReadPasswordParameters
      - '%%5447' # SetPassword
  condition: selection | count(ObjectName) by Computer > 10
falsepositives:
- None
level: high

Stages and Predicates

Stage 0: condition

selection | count(ObjectName) by Computer > 10

Stage 1: selection

selection:
  EventID: 4661
  SubjectUserSid: S-1-5-18
  ProcessName|endswith: '\lsass.exe'
  ObjectServer: Security Account Manager
  ObjectType:
    - SAM_SERVER
    - SAM_DOMAIN
  ObjectName|startswith:
    - CN=
    - DC=
  AccessList|contains|all:
    - '%%5392'
    - '%%5447'
Threshold
> 10

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
AccessListmatch
  • %%5392 corpus 2 (sigma 2)
  • %%5447 corpus 2 (sigma 2)
field:"AccessList" kind:match
ObjectNamestarts_with
  • CN=
  • DC= corpus 2 (sigma 2)
field:"ObjectName" kind:starts_with
ObjectServereq
  • Security Account Manager corpus 7 (sigma 7)
field:"ObjectServer" kind:eq value:"Security Account Manager"
ObjectTypeeq
  • SAM_DOMAIN corpus 3 (sigma 3)
  • SAM_SERVER
field:"ObjectType" kind:eq
ProcessNameends_with
  • \lsass.exe corpus 7 (sigma 7)
field:"process_name" kind:ends_with value:"\lsass.exe"
SubjectUserSideq
  • S-1-5-18 corpus 4 (sigma 2, elastic 1, splunk 1)
field:"SubjectUserSid" kind:eq value:"S-1-5-18"

Potentially Suspicious ODBC Driver Registered

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

Detects the registration of a new ODBC driver where the driver is located in a potentially suspicious location

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

Rule Body

title: Potentially Suspicious ODBC Driver Registered
id: e4d22291-f3d5-4b78-9a0c-a1fbaf32a6a4
status: test
description: Detects the registration of a new ODBC driver where the driver is located in a potentially suspicious location
references:
    - https://www.hexacorn.com/blog/2020/08/23/odbcconf-lolbin-trifecta/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-23
modified: 2023-08-17
tags:
    - attack.credential-access
    - attack.persistence
    - attack.t1003
logsource:
    category: registry_set
    product: windows
detection:
    selection:
        TargetObject|contains: '\SOFTWARE\ODBC\ODBCINST.INI\'
        TargetObject|endswith:
            - '\Driver'
            - '\Setup'
        Details|contains:
            - ':\PerfLogs\'
            - ':\ProgramData\'
            - ':\Temp\'
            - ':\Users\Public\'
            - ':\Windows\Registration\CRMLog'
            - ':\Windows\System32\com\dmp\'
            - ':\Windows\System32\FxsTmp\'
            - ':\Windows\System32\Microsoft\Crypto\RSA\MachineKeys\'
            - ':\Windows\System32\spool\drivers\color\'
            - ':\Windows\System32\spool\PRINTERS\'
            - ':\Windows\System32\spool\SERVERS\'
            - ':\Windows\System32\Tasks_Migrated\'
            - ':\Windows\System32\Tasks\Microsoft\Windows\SyncCenter\'
            - ':\Windows\SysWOW64\com\dmp\'
            - ':\Windows\SysWOW64\FxsTmp\'
            - ':\Windows\SysWOW64\Tasks\Microsoft\Windows\PLA\System\'
            - ':\Windows\SysWOW64\Tasks\Microsoft\Windows\SyncCenter\'
            - ':\Windows\Tasks\'
            - ':\Windows\Temp\'
            - ':\Windows\Tracing\'
            - '\AppData\Local\Temp\'
            - '\AppData\Roaming\'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|contains: '\SOFTWARE\ODBC\ODBCINST.INI\'
    TargetObject|endswith:
        - '\Driver'
        - '\Setup'
    Details|contains:
        - ':\PerfLogs\'
        - ':\ProgramData\'
        - ':\Temp\'
        - ':\Users\Public\'
        - ':\Windows\Registration\CRMLog'
        - ':\Windows\System32\com\dmp\'
        - ':\Windows\System32\FxsTmp\'
        - ':\Windows\System32\Microsoft\Crypto\RSA\MachineKeys\'
        - ':\Windows\System32\spool\drivers\color\'
        - ':\Windows\System32\spool\PRINTERS\'
        - ':\Windows\System32\spool\SERVERS\'
        - ':\Windows\System32\Tasks_Migrated\'
        - ':\Windows\System32\Tasks\Microsoft\Windows\SyncCenter\'
        - ':\Windows\SysWOW64\com\dmp\'
        - ':\Windows\SysWOW64\FxsTmp\'
        - ':\Windows\SysWOW64\Tasks\Microsoft\Windows\PLA\System\'
        - ':\Windows\SysWOW64\Tasks\Microsoft\Windows\SyncCenter\'
        - ':\Windows\Tasks\'
        - ':\Windows\Temp\'
        - ':\Windows\Tracing\'
        - '\AppData\Local\Temp\'
        - '\AppData\Roaming\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsmatch
  • :\PerfLogs\ corpus 4 (sigma 4)
  • :\ProgramData\ corpus 3 (sigma 3)
  • :\Temp\ corpus 2 (sigma 2)
  • :\Users\Public\ corpus 4 (sigma 4)
  • :\Windows\Registration\CRMLog
  • :\Windows\SysWOW64\FxsTmp\
  • :\Windows\SysWOW64\Tasks\Microsoft\Windows\PLA\System\
  • :\Windows\SysWOW64\Tasks\Microsoft\Windows\SyncCenter\
  • :\Windows\SysWOW64\com\dmp\
  • :\Windows\System32\FxsTmp\
  • :\Windows\System32\Microsoft\Crypto\RSA\MachineKeys\
  • :\Windows\System32\Tasks\Microsoft\Windows\SyncCenter\
  • :\Windows\System32\Tasks_Migrated\
  • :\Windows\System32\com\dmp\
  • :\Windows\System32\spool\PRINTERS\
  • :\Windows\System32\spool\SERVERS\
  • :\Windows\System32\spool\drivers\color\
  • :\Windows\Tasks\
  • :\Windows\Temp\ corpus 4 (sigma 4)
  • :\Windows\Tracing\
  • \AppData\Local\Temp\ corpus 8 (sigma 8)
  • \AppData\Roaming\ corpus 3 (sigma 3)
field:"Details" kind:match
TargetObjectends_with
  • \Driver corpus 2 (sigma 2)
  • \Setup
field:"TargetObject" kind:ends_with
TargetObjectmatch
  • \SOFTWARE\ODBC\ODBCINST.INI\ corpus 2 (sigma 2)
field:"TargetObject" kind:match value:"\SOFTWARE\ODBC\ODBCINST.INI\"

PowerShell Core DLL Loaded Via Office Application

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

Detects PowerShell core DLL being loaded by an Office Product

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: PowerShell Core DLL Loaded Via Office Application
id: bb2ba6fb-95d4-4a25-89fc-30bb736c021a
status: test
description: Detects PowerShell core DLL being loaded by an Office Product
references:
    - Internal Research
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-06-01
tags:
    - attack.stealth
logsource:
    category: image_load
    product: windows
detection:
    selection:
        Image|endswith:
            - '\excel.exe'
            - '\mspub.exe'
            - '\outlook.exe'
            - '\onenote.exe'
            - '\onenoteim.exe' # Just in case
            - '\powerpnt.exe'
            - '\winword.exe'
        ImageLoaded|contains:
            - '\System.Management.Automation.Dll'
            - '\System.Management.Automation.ni.Dll'
    condition: selection
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '\excel.exe'
        - '\mspub.exe'
        - '\outlook.exe'
        - '\onenote.exe'
        - '\onenoteim.exe'
        - '\powerpnt.exe'
        - '\winword.exe'
    ImageLoaded|contains:
        - '\System.Management.Automation.Dll'
        - '\System.Management.Automation.ni.Dll'

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
ImageLoadedmatch
  • \System.Management.Automation.Dll
  • \System.Management.Automation.ni.Dll
field:"ImageLoaded" kind:match

PowerShell Scripts Installed as Services - Security

#
Status
test
Severity
high
Author
oscd.community, Natalia Shornikova
Source
github.com/SigmaHQ/sigma

Detects powershell script installed as a Service

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: PowerShell Scripts Installed as Services - Security
id: 2a926e6a-4b81-4011-8a96-e36cc8c04302
related:
    - id: a2e5019d-a658-4c6a-92bf-7197b54e2cae
      type: derived
status: test
description: Detects powershell script installed as a Service
references:
    - https://speakerdeck.com/heirhabarov/hunting-for-powershell-abuse
author: oscd.community, Natalia Shornikova
date: 2020-10-06
modified: 2022-11-29
tags:
    - attack.execution
    - attack.t1569.002
logsource:
    product: windows
    service: security
    definition: The 'System Security Extension' audit subcategory need to be enabled to log the EID 4697
detection:
    selection:
        EventID: 4697
        ServiceFileName|contains:
            - 'powershell'
            - 'pwsh'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 4697
    ServiceFileName|contains:
        - 'powershell'
        - 'pwsh'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ServiceFileNamematch
  • powershell corpus 4 (sigma 4)
  • pwsh
field:"ServiceFileName" kind:match

Refresh Token Exchange from Multiple User Agents

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

Detects when a refresh token is exchanged for an access token from an unusual volume of distinct User Agents (UAs). The use of a single refresh token across an excessive number of UAs strongly suggests the token has been hijacked and is actively being used by an attacker.

Known False Positives

  • Software Updates - Legitimate automatic or manual updates to a user's browser or application that change the User Agent string.
  • Advanced Architectures - Flows like App-to-Web SSO that inherently involve a change in the User Agent as the context switches.

MITRE ATT&CK Coverage

Rule Body

title: Refresh Token Exchange from Multiple User Agents
id: 6a19be71-ade9-4bdd-9d24-6f93800d8328
name: selected_events
status: experimental
description: |
    Detects when a refresh token is exchanged for an access token from an **unusual volume of distinct User Agents (UAs)**.
    The use of a single refresh token across an excessive number of UAs strongly suggests the token has been hijacked
    and is actively being used by an attacker.
author: Okta
date: 2025-10-01
modified: 2025-10-01
logsource:
    product: auth0
detection:
    selection:
        data.type:
            - seacft # Successful exchange of a code for access and refresh tokens
            - sertft # Successful exchange of a refresh token for an access token
    condition: selection
explanation: >
    The query collects the events where refresh token has been issued by the /token endpoint.
    The core assumption is that a user's UA typically remains consistent over time.
    An attacker, however, may keep swapping or spoofing UAs to evade detection mechanisms.
    The rule alerts when the number of distinct UAs used for a refresh token exchange exceeds a predefined threshold.
    The provided Splunk query offers two primary monitoring strategies:
    **Option 1 (Volume Check):** Checks if the count of distinct UAs exceeds a static threshold.
    This is suitable for Single Page Applications (SPAs) where a user might legitimately use multiple browsers or a browser
    has been updated, though the total UA count is usually low.
    **Option 2 (Allowed UAs Check):** Identifies exchanges originating from UAs that are **not** on an approved list.
    This suites architectures based on Regular Web Applications (RWAs) and Native Apps where the token exchange is
    performed by a backend service or a known application, making the expected UA highly predictable.
splunk: |
    index=auth0 data.tenant_name="{your-tenant-name}"
    data.type IN (seacft, sertft)
    | fields data.user_agent data.user_id data.user_name data.client_id data.details.familyId
    | stats dc(data.user_agent) as ua_count values(data.user_agent) as observed_uas
            by data.user_name data.user_id data.client_id data.details.familyId
    ``` Option 1 - check the volume of used UA, suits SPA that can be loaded in different browsers```
    | where ua_count > {threshold_ua_count}
    ``` Option 2 - check for a particular allowed user agents, suits for RWA and Native Apps```
    ```| eval total_ua_count = mvcount(uas)
    | eval approved_ua = mvfilter(match(uas, "(?i){list_of_allowed_ua}"))
    | eval approved_ua_count = mvcount(approved_ua)
    | where approved_ua_count != total_ua_count```
    ``` Print the suspicious records ```
    | table data.user_name data.user_id data.client_id data.details.familyId ua_count observed_uas
comments:
    - The Splunk query above shall be tuned to reflect a valid tenant name.
    - The following thresholds should be set based on the customer's environment and expected behavior -
      threshold_ua_count and list_of_allowed_ua (use the pipe "|" as a delimiter, e.g. "UA1|UA2|UA2")
    - Option 2 is recommended for Native apps and RWAs when UA is specific and predictable.
      Defining a precise UA list is challenging for SPAs used across various browsers.
    - Alternative to listing UAs, consider specifying a minimum **allowed UA version** or specific key components,
      as threat actors often use outdated or generic UAs.
    - To determine a **baseline of normal behavior**, it is highly recommended to run the query (excluding the "where" clauses)
      for a sufficient period and calculate thresholds based on the resulting data.
tenant_logs: |
    type: (seacft sertft)
prevention:
    - Deploy a post-login action that will compare UA of initial issuance of a refresh token (event.refresh_token.device.initial_user_agent)
      against UA of a current refresh token (event.refresh_token.device.last_user_agent).
      If they are different, terminate the session and revoke all refresh tokens.
falsepositives:
    - Software Updates - Legitimate automatic or manual updates to a user's browser or application that change the User Agent string.
    - Advanced Architectures - Flows like App-to-Web SSO that inherently involve a change in the User Agent as the context switches.
level: medium
tags:
    - attack.defense-evasion
    - attack.persistence
    - attack.t1550
    - attack.t1550.004
    - attack.t1078
---
title: Refresh Token Exchange from Multiple User Agents - Correlation
id: aeeaed8f-836a-4ec5-bc02-b148e7f18e20
correlation:
    type: value_count
    rules:
        - selected_events # Referenced here
    group-by:
        - data.user_name
        - data.user_id
        - data.client_id
        - data.details.familyId
    timespan: 30d
    condition:
        gte: 1
        field: data.user_agent

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    data.type:
        - seacft
        - sertft

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
data.typeeq
  • seacft
  • sertft
field:"data.type" kind:eq

RunMRU Registry Key Deletion - Registry

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

Detects attempts to delete the RunMRU registry key, which stores the history of commands executed via the run dialog. In the clickfix techniques, the phishing lures instruct users to open a run dialog through (Win + R) and execute malicious commands. Adversaries may delete this key to cover their tracks after executing commands.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: RunMRU Registry Key Deletion - Registry
id: 3a9b8c1e-5b2e-4f7a-9d1c-2a7f3b6e1c55
related:
    - id: c11aecef-9c37-45a6-9c07-bc0782f963fd
      type: similar
status: experimental
description: |
    Detects attempts to delete the RunMRU registry key, which stores the history of commands executed via the run dialog.
    In the clickfix techniques, the phishing lures instruct users to open a run dialog through (Win + R) and execute malicious commands.
    Adversaries may delete this key to cover their tracks after executing commands.
references:
    - https://www.zscaler.com/blogs/security-research/coldriver-updates-arsenal-baitswitch-and-simplefix
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-09-25
tags:
    - attack.stealth
    - attack.t1070.003
logsource:
    category: registry_delete
    product: windows
detection:
    selection:
        TargetObject|endswith: '\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU'
    condition: selection
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/registry/registry_delete/registry_delete_runmru/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetObject|endswith: '\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
field:"TargetObject" kind:ends_with value:"\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU"

ScreenConnect User Database Modification - Security

#
Status
test
Severity
medium
Author
Matt Anderson, Kris Luzadre, Andrew Schwartz, Huntress
Source
github.com/SigmaHQ/sigma

This detects file modifications to the temporary xml user database file indicating local user modification in the ScreenConnect server. This will occur during exploitation of the ScreenConnect Authentication Bypass vulnerability (CVE-2024-1709) in versions <23.9.8, but may also be observed when making legitimate modifications to local users or permissions. This requires an Advanced Auditing policy to log a successful Windows Event ID 4663 events and with a SACL set on the directory.

Known False Positives

  • This will occur legitimately as well and will result in some benign activity.

MITRE ATT&CK Coverage

TacticTechniques
Defense ImpairmentNo specific technique

Telemetry Coverage

Rule Body

title: ScreenConnect User Database Modification - Security
id: 4109cb6a-a4af-438a-9f0c-056abba41c6f
related:
    - id: 1a821580-588b-4323-9422-660f7e131020
      type: similar
status: test
description: |
    This detects file modifications to the temporary xml user database file indicating local user modification in the ScreenConnect server.
    This will occur during exploitation of the ScreenConnect Authentication Bypass vulnerability (CVE-2024-1709) in versions <23.9.8, but may also be observed when making legitimate modifications to local users or permissions.
    This requires an Advanced Auditing policy to log a successful Windows Event ID 4663 events and with a SACL set on the directory.
references:
    - https://www.connectwise.com/company/trust/security-bulletins/connectwise-screenconnect-23.9.8
    - https://www.cve.org/CVERecord?id=CVE-2024-1709
    - https://www.huntress.com/blog/a-catastrophe-for-control-understanding-the-screenconnect-authentication-bypass
author: Matt Anderson, Kris Luzadre, Andrew Schwartz, Huntress
date: 2024-02-20
tags:
    - cve.2024-1709
    - detection.emerging-threats
    - attack.defense-impairment
logsource:
    product: windows
    service: security
    definition: 'Requirements: SACLs must be enabled for the ScreenConnect directory'
detection:
    selection:
        EventID: 4663
        ObjectType: 'File'
        AccessMask: '0x6'
        ObjectName|endswith: '.xml'
        ObjectName|contains|all:
            - 'Temp'
            - 'ScreenConnect'
        ProcessName|contains: 'ScreenConnect.Service.exe'
    condition: selection
falsepositives:
    - This will occur legitimately as well and will result in some benign activity.
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    EventID: 4663
    ObjectType: 'File'
    AccessMask: '0x6'
    ObjectName|endswith: '.xml'
    ObjectName|contains|all:
        - 'Temp'
        - 'ScreenConnect'
    ProcessName|contains: 'ScreenConnect.Service.exe'

Indicators

These rows show field, operator, and value matches.

ScreenSaver Registry Key Set

#
Status
test
Severity
medium
Author
Jose Luis Sanchez Martinez (@Joseliyo_Jstnk)
Source
github.com/SigmaHQ/sigma

Detects registry key established after masqueraded .scr file execution using Rundll32 through desk.cpl

Known False Positives

  • Legitimate use of screen saver

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: ScreenSaver Registry Key Set
id: 40b6e656-4e11-4c0c-8772-c1cc6dae34ce
status: test
description: Detects registry key established after masqueraded .scr file execution using Rundll32 through desk.cpl
references:
    - https://twitter.com/VakninHai/status/1517027824984547329
    - https://twitter.com/pabraeken/status/998627081360695297
    - https://jstnk9.github.io/jstnk9/research/InstallScreenSaver-SCR-files
author: Jose Luis Sanchez Martinez (@Joseliyo_Jstnk)
date: 2022-05-04
modified: 2023-08-17
tags:
    - attack.stealth
    - attack.t1218.011
logsource:
    product: windows
    category: registry_set
detection:
    selection:
        Image|endswith: '\rundll32.exe'
    registry:
        TargetObject|contains: '\Control Panel\Desktop\SCRNSAVE.EXE'
        Details|endswith: '.scr'
    filter:
        Details|contains:
            - 'C:\Windows\System32\'
            - 'C:\Windows\SysWOW64\'
    condition: selection and registry and not filter
falsepositives:
    - Legitimate use of screen saver
level: medium

Stages and Predicates

Stage 0: condition

selection and registry and not filter

Stage 1: selection

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

Stage 2: registry

registry:
    TargetObject|contains: '\Control Panel\Desktop\SCRNSAVE.EXE'
    Details|endswith: '.scr'

Stage 3: not filter

filter:
    Details|contains:
        - 'C:\Windows\System32\'
        - 'C:\Windows\SysWOW64\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsends_with
  • .scr
field:"Details" kind:ends_with value:".scr"
Imageends_with
  • \rundll32.exe corpus 94 (sigma 94)
field:"Image" kind:ends_with value:"\rundll32.exe"
TargetObjectmatch
  • \Control Panel\Desktop\SCRNSAVE.EXE corpus 2 (sigma 2)
field:"TargetObject" kind:match value:"\Control Panel\Desktop\SCRNSAVE.EXE"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
DetailsmatchC:\Windows\SysWOW64\excludes:Details field:"Details" value:"C:\Windows\SysWOW64\"
DetailsmatchC:\Windows\System32\excludes:Details field:"Details" value:"C:\Windows\System32\"

SQL Server - Member got new privileges added on a SQL instance level

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

Detects scenarios where an attacker grants new privileges on a SQL instance level

Known False Positives

  • DBA activity

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Privilege Escalation

Telemetry Coverage

ProviderRecord / event type
MSSQLSERVEREvent ID 33205

Rule Body

title: SQL Server - Member got new privileges added on a SQL instance level
description: Detects scenarios where an attacker grants new privileges on a SQL instance level
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1098.xxx-Account%20manipulation
- https://docs.microsoft.com/en-us/sql/relational-databases/security/auditing/sql-server-audit-action-groups-and-actions
- https://docs.microsoft.com/en-us/sql/relational-databases/security/authentication-access/server-level-roles
tags:
- attack.account_manipulation
- attack.t1098
author: mdecrevoisier
status: experimental
logsource:
  product: mssql
  category: application
detection:
  selection: # GRANT ALTER ANY DATABASE TO [DEMO\svc-test]
    EventID: 33205
    action_id:
      - G   # GRANT
      - GWG # GRANT WITH GRANT
    class_type: SR # SERVER
  condition: selection
falsepositives:
- DBA activity
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
  EventID: 33205
  action_id:
    - G
    - GWG
  class_type: SR

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
action_ideq
  • G corpus 2 (sigma 2)
  • GWG corpus 2 (sigma 2)
field:"action_id" kind:eq
class_typeeq
  • SR
field:"class_type" kind:eq value:"SR"

Suspicious Curl Change User Agents - Linux

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

Detects a suspicious curl process start on linux with set useragent options

Known False Positives

  • Scripts created by developers and admins
  • Administrative activity

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Suspicious Curl Change User Agents - Linux
id: b86d356d-6093-443d-971c-9b07db583c68
related:
    - id: 3286d37a-00fd-41c2-a624-a672dcd34e60
      type: derived
status: test
description: Detects a suspicious curl process start on linux with set useragent options
references:
    - https://curl.se/docs/manpage.html
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-15
tags:
    - attack.command-and-control
    - attack.t1071.001
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|endswith: '/curl'
        CommandLine|contains:
            - ' -A '
            - ' --user-agent '
    condition: selection
falsepositives:
    - Scripts created by developers and admins
    - Administrative activity
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '/curl'
    CommandLine|contains:
        - ' -A '
        - ' --user-agent '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • --user-agent corpus 2 (sigma 2)
  • -A corpus 5 (sigma 5)
field:"CommandLine" kind:match
Imageends_with
  • /curl corpus 22 (sigma 22)
field:"Image" kind:ends_with value:"/curl"

Suspicious Execution via macOS Script Editor

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

Detects when the macOS Script Editor utility spawns an unusual child process.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Execution via macOS Script Editor
id: 6e4dcdd1-e48b-42f7-b2d8-3b413fc58cb4
status: test
description: Detects when the macOS Script Editor utility spawns an unusual child process.
author: Tim Rauch (rule), Elastic (idea)
references:
    - https://github.com/elastic/protections-artifacts/commit/746086721fd385d9f5c6647cada1788db4aea95f#diff-7f541fbc4a4a28a92970e8bf53effea5bd934604429112c920affb457f5b2685
    - https://wojciechregula.blog/post/macos-red-teaming-initial-access-via-applescript-url/
date: 2022-10-21
modified: 2022-12-28
logsource:
    category: process_creation
    product: macos
tags:
    - attack.defense-impairment
    - attack.t1566
    - attack.t1566.002
    - attack.initial-access
    - attack.t1059
    - attack.t1059.002
    - attack.t1204
    - attack.t1204.001
    - attack.execution
    - attack.persistence
    - attack.t1553
detection:
    selection_parent:
        ParentImage|endswith: '/Script Editor'
    selection_img:
        - Image|endswith:
              - '/curl'
              - '/bash'
              - '/sh'
              - '/zsh'
              - '/dash'
              - '/fish'
              - '/osascript'
              - '/mktemp'
              - '/chmod'
              - '/php'
              - '/nohup'
              - '/openssl'
              - '/plutil'
              - '/PlistBuddy'
              - '/xattr'
              - '/sqlite'
              - '/funzip'
              - '/popen'
        - Image|contains:
              - 'python'
              - 'perl'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_parent

selection_parent:
    ParentImage|endswith: '/Script Editor'

Stage 2: selection_img

selection_img:
    - Image|endswith:
          - '/curl'
          - '/bash'
          - '/sh'
          - '/zsh'
          - '/dash'
          - '/fish'
          - '/osascript'
          - '/mktemp'
          - '/chmod'
          - '/php'
          - '/nohup'
          - '/openssl'
          - '/plutil'
          - '/PlistBuddy'
          - '/xattr'
          - '/sqlite'
          - '/funzip'
          - '/popen'
    - Image|contains:
          - 'python'
          - 'perl'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /PlistBuddy corpus 2 (sigma 2)
  • /bash corpus 13 (sigma 13)
  • /chmod corpus 2 (sigma 2)
  • /curl corpus 22 (sigma 22)
  • /dash corpus 9 (sigma 9)
  • /fish corpus 4 (sigma 4)
  • /funzip
  • /mktemp
  • /nohup corpus 3 (sigma 3)
  • /openssl corpus 4 (sigma 4)
  • /osascript corpus 7 (sigma 7)
  • /php corpus 3 (sigma 3)
  • /plutil corpus 3 (sigma 3)
  • /popen
  • /sh corpus 12 (sigma 12)
  • /sqlite
  • /xattr corpus 2 (sigma 2)
  • /zsh corpus 7 (sigma 7)
field:"Image" kind:ends_with
Imagematch
  • perl
  • python corpus 2 (sigma 2)
field:"Image" kind:match
ParentImageends_with
  • /Script Editor
field:"ParentImage" kind:ends_with value:"/Script Editor"

Suspicious File Downloaded From File-Sharing Website Via Certutil.EXE

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

Detects the execution of certutil with certain flags that allow the utility to download files from file-sharing websites.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious File Downloaded From File-Sharing Website Via Certutil.EXE
id: 42a5f1e7-9603-4f6d-97ae-3f37d130d794
related:
    - id: 19b08b1c-861d-4e75-a1ef-ea0c1baf202b # Direct IP download
      type: similar
    - id: 13e6fe51-d478-4c7e-b0f2-6da9b400a829 # Generic download
      type: similar
    - 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: 56454143-524f-49fb-b1c6-3fb8b1ad41fb
      type: similar
    - id: b6e04788-29e1-4557-bb14-77f761848ab8
      type: similar
    - id: a0d7e4d2-bede-4141-8896-bc6e237e977c
      type: similar
    - id: 297ae038-edc2-4b2e-bb3e-7c5fc94dd5c7
      type: similar
status: test
description: Detects the execution of certutil with certain flags that allow the utility to download files from file-sharing websites.
references:
    - https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/certutil
    - https://forensicitguy.github.io/agenttesla-vba-certutil-download/
    - https://news.sophos.com/en-us/2021/04/13/compromised-exchange-server-hosting-cryptojacker-targeting-other-exchange-servers/
    - https://twitter.com/egre55/status/1087685529016193025
    - https://lolbas-project.github.io/lolbas/Binaries/Certutil/
    - 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.hexacorn.com/blog/2020/08/23/certutil-one-more-gui-lolbin
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-02-15
modified: 2026-03-29
tags:
    - attack.stealth
    - attack.t1027
    - attack.command-and-control
    - attack.t1105
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\certutil.exe'
        - OriginalFileName: 'CertUtil.exe'
    selection_flags:
        CommandLine|contains:
            - 'urlcache '
            - 'verifyctl '
            - 'URL '
    selection_http:
        CommandLine|contains:
            - '.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'
            - 'glitch.me'
            - 'gofile.io'
            - 'hastebin.com'
            - 'mediafire.com'
            - 'mega.nz'
            - 'onrender.com'
            - 'pages.dev'
            - 'paste.ee'
            - 'pastebin.com'
            - 'pastebin.pl'
            - 'pastetext.net'
            - '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'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_certutil_download_file_sharing_domains/info.yml

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith: '\certutil.exe'
    - OriginalFileName: 'CertUtil.exe'

Stage 2: selection_flags

selection_flags:
    CommandLine|contains:
        - 'urlcache '
        - 'verifyctl '
        - 'URL '

Stage 3: selection_http

selection_http:
    CommandLine|contains:
        - '.githubusercontent.com'
        - '0x0.st'
        - 'anonfiles.com'
        - 'bashupload.com'
        - 'cdn.discordapp.com'
        - 'chunk.io'
        - 'ddns.net'
        - 'dl.dropboxusercontent.com'
        - 'ghostbin.co'
        - 'github.com'
        - 'glitch.me'
        - 'gofile.io'
        - 'hastebin.com'
        - 'mediafire.com'
        - 'mega.nz'
        - 'onrender.com'
        - 'pages.dev'
        - 'paste.ee'
        - 'pastebin.com'
        - 'pastebin.pl'
        - 'pastetext.net'
        - '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'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • .githubusercontent.com corpus 4 (sigma 4)
  • 0x0.st corpus 6 (sigma 6)
  • URL corpus 3 (sigma 3)
  • 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)
  • github.com corpus 4 (sigma 4)
  • glitch.me corpus 5 (sigma 5)
  • gofile.io corpus 6 (sigma 5, elastic 1)
  • hastebin.com corpus 5 (sigma 5)
  • 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)
  • 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)
  • urlcache corpus 3 (sigma 3)
  • verifyctl corpus 3 (sigma 3)
  • w3spaces.com corpus 5 (sigma 5)
  • workers.dev corpus 5 (sigma 5)
  • x0.at corpus 6 (sigma 6)
field:"CommandLine" kind:match
Imageends_with
  • \certutil.exe corpus 43 (sigma 43)
field:"Image" kind:ends_with value:"\certutil.exe"
OriginalFileNameeq
  • CertUtil.exe corpus 26 (sigma 14, elastic 6, splunk 6)
field:"OriginalFileName" kind:eq value:"CertUtil.exe"

Suspicious Speech Runtime Binary Child Process

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

Detects suspicious Speech Runtime Binary Execution by monitoring its child processes. Child processes spawned by SpeechRuntime.exe could indicate an attempt for lateral movement via COM & DCOM hijacking.

Known False Positives

  • Unlikely.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Suspicious Speech Runtime Binary Child Process
id: 78f10490-f2f4-4d19-a75b-4e0683bf3b8d
status: experimental
description: |
    Detects suspicious Speech Runtime Binary Execution by monitoring its child processes.
    Child processes spawned by SpeechRuntime.exe could indicate an attempt for lateral movement via COM & DCOM hijacking.
references:
    - https://github.com/rtecCyberSec/SpeechRuntimeMove
author: andrewdanis
date: 2025-10-23
logsource:
    category: process_creation
    product: windows
tags:
    - attack.lateral-movement
    - attack.stealth
    - attack.t1021.003
    - attack.t1218
detection:
    selection:
        ParentImage|endswith: '\SpeechRuntime.exe'
    condition: selection
falsepositives:
    - Unlikely.
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ParentImage|endswith: '\SpeechRuntime.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ParentImageends_with
  • \SpeechRuntime.exe
field:"ParentImage" kind:ends_with value:"\SpeechRuntime.exe"

Suspicious Usage Of ShellExec_RunDLL

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

Detects suspicious usage of the ShellExec_RunDLL function to launch other commands as seen in the the raspberry-robin attack

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Suspicious Usage Of ShellExec_RunDLL
id: d87bd452-6da1-456e-8155-7dc988157b7d
related:
    - id: 36c5146c-d127-4f85-8e21-01bf62355d5a
      type: obsolete
    - id: 8823e85d-31d8-473e-b7f4-92da070f0fc6
      type: similar
status: test
description: Detects suspicious usage of the ShellExec_RunDLL function to launch other commands as seen in the the raspberry-robin attack
references:
    - https://redcanary.com/blog/raspberry-robin/
    - https://www.microsoft.com/en-us/security/blog/2022/10/27/raspberry-robin-worm-part-of-larger-ecosystem-facilitating-pre-ransomware-activity/
    - https://github.com/SigmaHQ/sigma/issues/1009
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-01
modified: 2022-12-30
tags:
    - attack.stealth
logsource:
    category: process_creation
    product: windows
detection:
    selection_openasrundll:
        CommandLine|contains: 'ShellExec_RunDLL'
    selection_suspcli:
        CommandLine|contains:
            # Note: The ordinal number may differ depending on the DLL version
            - '\Desktop\'
            - '\Temp\'
            - '\Users\Public\'
            - 'comspec'
            - 'iex'
            - 'Invoke-'
            - 'msiexec'
            - 'odbcconf'
            - 'regsvr32'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_openasrundll

selection_openasrundll:
    CommandLine|contains: 'ShellExec_RunDLL'

Stage 2: selection_suspcli

selection_suspcli:
    CommandLine|contains:
        - '\Desktop\'
        - '\Temp\'
        - '\Users\Public\'
        - 'comspec'
        - 'iex'
        - 'Invoke-'
        - 'msiexec'
        - 'odbcconf'
        - 'regsvr32'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Invoke- corpus 6 (sigma 6)
  • ShellExec_RunDLL corpus 3 (sigma 3)
  • \Desktop\ corpus 13 (sigma 13)
  • \Temp\ corpus 5 (sigma 5)
  • \Users\Public\ corpus 18 (sigma 17, elastic 1)
  • comspec
  • iex corpus 6 (sigma 5, splunk 1)
  • msiexec corpus 5 (sigma 5)
  • odbcconf
  • regsvr32 corpus 15 (sigma 15)
field:"CommandLine" kind:match

Suspicious Use of PsLogList

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

Detects usage of the PsLogList utility to dump event log in order to extract admin accounts and perform account discovery or delete events logs

Known False Positives

  • Another tool that uses the command line switches of PsLogList
  • Legitimate use of PsLogList by an administrator

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious Use of PsLogList
id: aae1243f-d8af-40d8-ab20-33fc6d0c55bc
status: test
description: Detects usage of the PsLogList utility to dump event log in order to extract admin accounts and perform account discovery or delete events logs
references:
    - https://research.nccgroup.com/2021/01/12/abusing-cloud-services-to-fly-under-the-radar/
    - https://www.cybereason.com/blog/deadringer-exposing-chinese-threat-actors-targeting-major-telcos
    - https://github.com/3CORESec/MAL-CL/tree/master/Descriptors/Sysinternals/PsLogList
    - https://twitter.com/EricaZelic/status/1614075109827874817
author: Nasreddine Bencherchali (Nextron Systems)
date: 2021-12-18
modified: 2026-06-29
tags:
    - attack.discovery
    - attack.t1087
    - attack.t1087.001
    - attack.t1087.002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - OriginalFileName: 'psloglist.exe'
        - Image|endswith:
              - '\psloglist.exe'
              - '\psloglist64.exe'
              - '\psloglist64a.exe'
    selection_cli_eventlog:
        CommandLine|contains:
            - ' security'
            - ' application'
            - ' system'
    selection_cli_flags:
        CommandLine|contains|windash:
            - ' -d'
            - ' -x'
            - ' -s'
            - ' -c' # Clear event log after displaying
            - ' -g' # Export an event log as an evt file.
    condition: all of selection_*
falsepositives:
    - Another tool that uses the command line switches of PsLogList
    - Legitimate use of PsLogList by an administrator
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - OriginalFileName: 'psloglist.exe'
    - Image|endswith:
          - '\psloglist.exe'
          - '\psloglist64.exe'
          - '\psloglist64a.exe'

Stage 2: selection_cli_eventlog

selection_cli_eventlog:
    CommandLine|contains:
        - ' security'
        - ' application'
        - ' system'

Stage 3: selection_cli_flags

selection_cli_flags:
    CommandLine|contains|windash:
        - ' -d'
        - ' -x'
        - ' -s'
        - ' -c'
        - ' -g'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -c corpus 5 (sigma 5)
  • -d corpus 4 (sigma 2, elastic 2)
  • -g corpus 2 (sigma 2)
  • -s corpus 3 (sigma 3)
  • -x
  • /c corpus 2 (sigma 2)
  • /d
  • /g corpus 2 (sigma 2)
  • /s corpus 3 (sigma 3)
  • /x
  • application
  • security
  • system corpus 2 (sigma 2)
  • –c
  • –d
  • –g corpus 2 (sigma 2)
  • –s corpus 3 (sigma 3)
  • –x
  • —c
  • —d
  • —g corpus 2 (sigma 2)
  • —s corpus 3 (sigma 3)
  • —x
  • ―c
  • ―d
  • ―g corpus 2 (sigma 2)
  • ―s corpus 3 (sigma 3)
  • ―x
field:"CommandLine" kind:match
Imageends_with
  • \psloglist.exe corpus 2 (sigma 2)
  • \psloglist64.exe corpus 2 (sigma 2)
  • \psloglist64a.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with
OriginalFileNameeq
  • psloglist.exe
field:"OriginalFileName" kind:eq value:"psloglist.exe"

Suspicious VBoxDrvInst.exe Parameters

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

Detect VBoxDrvInst.exe run with parameters allowing processing INF file. This allows to create values in the registry and install drivers. For example one could use this technique to obtain persistence via modifying one of Run or RunOnce registry keys

Known False Positives

  • Legitimate use of VBoxDrvInst.exe utility by VirtualBox Guest Additions installation process

MITRE ATT&CK Coverage

TacticTechniques
Persistence
Defense Impairment

Telemetry Coverage

Rule Body

title: Suspicious VBoxDrvInst.exe Parameters
id: b7b19cb6-9b32-4fc4-a108-73f19acfe262
status: test
description: |
  Detect VBoxDrvInst.exe run with parameters allowing processing INF file.
  This allows to create values in the registry and install drivers.
  For example one could use this technique to obtain persistence via modifying one of Run or RunOnce registry keys
references:
    - https://github.com/LOLBAS-Project/LOLBAS/blob/4db780e0f0b2e2bb8cb1fa13e09196da9b9f1834/yml/LOLUtilz/OtherBinaries/VBoxDrvInst.yml
    - https://twitter.com/pabraeken/status/993497996179492864
author: Konstantin Grishchenko, oscd.community
date: 2020-10-06
modified: 2021-11-27
tags:
    - attack.persistence
    - attack.defense-impairment
    - attack.t1112
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\VBoxDrvInst.exe'
        CommandLine|contains|all:
            - 'driver'
            - 'executeinf'
    condition: selection
falsepositives:
    - Legitimate use of VBoxDrvInst.exe utility by VirtualBox Guest Additions installation process
level: medium

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\VBoxDrvInst.exe'
    CommandLine|contains|all:
        - 'driver'
        - 'executeinf'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • driver
  • executeinf
field:"CommandLine" kind:match
Imageends_with
  • \VBoxDrvInst.exe
field:"Image" kind:ends_with value:"\VBoxDrvInst.exe"

System Network Connections Discovery Via Net.EXE

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

Adversaries may attempt to get a listing of network connections to or from the compromised system they are currently accessing or from remote systems by querying for information over the network.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: System Network Connections Discovery Via Net.EXE
id: 1c67a717-32ba-409b-a45d-0fb704a73a81
status: test
description: Adversaries may attempt to get a listing of network connections to or from the compromised system they are currently accessing or from remote systems by querying for information over the network.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1049/T1049.md#atomic-test-1---system-network-connections-discovery
author: frack113
date: 2021-12-10
modified: 2023-02-21
tags:
    - attack.discovery
    - attack.t1049
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\net.exe'
              - '\net1.exe'
        - OriginalFileName:
              - 'net.exe'
              - 'net1.exe'
    selection_cli:
        - CommandLine|endswith:
              - ' use'
              - ' sessions'
        - CommandLine|contains:
              - ' use '
              - ' sessions '
    condition: all of selection_*
falsepositives:
    - Unknown
level: low

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\net.exe'
          - '\net1.exe'
    - OriginalFileName:
          - 'net.exe'
          - 'net1.exe'

Stage 2: selection_cli

selection_cli:
    - CommandLine|endswith:
          - ' use'
          - ' sessions'
    - CommandLine|contains:
          - ' use '
          - ' sessions '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • sessions
  • use
field:"CommandLine" kind:ends_with
CommandLinematch
  • sessions
  • use corpus 6 (sigma 6)
field:"CommandLine" kind:match
Imageends_with
  • \net.exe corpus 49 (sigma 49)
  • \net1.exe corpus 47 (sigma 47)
field:"Image" kind:ends_with
OriginalFileNameeq
  • net.exe corpus 25 (sigma 19, elastic 4, splunk 2)
  • net1.exe corpus 39 (sigma 19, splunk 19, elastic 1)
field:"OriginalFileName" kind:eq

Tamper Windows Defender Remove-MpPreference

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

Detects attempts to remove Windows Defender configurations using the 'MpPreference' cmdlet

Known False Positives

  • Legitimate PowerShell scripts

MITRE ATT&CK Coverage

TacticTechniques
Defense Impairment

Telemetry Coverage

Rule Body

title: Tamper Windows Defender Remove-MpPreference
id: 07e3cb2c-0608-410d-be4b-1511cb1a0448
related:
    - id: ae2bdd58-0681-48ac-be7f-58ab4e593458
      type: similar
status: test
description: Detects attempts to remove Windows Defender configurations using the 'MpPreference' cmdlet
references:
    - https://techcommunity.microsoft.com/t5/core-infrastructure-and-security/windows-10-controlled-folder-access-event-search/ba-p/2326088
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-08-05
tags:
    - attack.defense-impairment
    - attack.t1685
logsource:
    product: windows
    category: process_creation
detection:
    selection_remove:
        CommandLine|contains: 'Remove-MpPreference'
    selection_tamper:
        CommandLine|contains:
            - '-ControlledFolderAccessProtectedFolders '
            - '-AttackSurfaceReductionRules_Ids '
            - '-AttackSurfaceReductionRules_Actions '
            - '-CheckForSignaturesBeforeRunningScan '
    condition: all of selection_*
falsepositives:
    - Legitimate PowerShell scripts
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_remove

selection_remove:
    CommandLine|contains: 'Remove-MpPreference'

Stage 2: selection_tamper

selection_tamper:
    CommandLine|contains:
        - '-ControlledFolderAccessProtectedFolders '
        - '-AttackSurfaceReductionRules_Ids '
        - '-AttackSurfaceReductionRules_Actions '
        - '-CheckForSignaturesBeforeRunningScan '

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -AttackSurfaceReductionRules_Actions
  • -AttackSurfaceReductionRules_Ids
  • -CheckForSignaturesBeforeRunningScan
  • -ControlledFolderAccessProtectedFolders
  • Remove-MpPreference
field:"CommandLine" kind:match

VMware vCenter Server File Upload CVE-2021-22005

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

Detects exploitation attempts using file upload vulnerability CVE-2021-22005 in the VMWare vCenter Server.

Known False Positives

  • Vulnerability Scanning

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: VMware vCenter Server File Upload CVE-2021-22005
id: b014ea07-8ea0-4859-b517-50a4e5b7ecec
status: test
description: Detects exploitation attempts using file upload vulnerability CVE-2021-22005 in the VMWare vCenter Server.
references:
    - https://kb.vmware.com/s/article/85717
    - https://www.tenable.com/blog/cve-2021-22005-critical-file-upload-vulnerability-in-vmware-vcenter-server
author: Sittikorn S
date: 2021-09-24
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2021-22005
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains: '/analytics/telemetry/ph/api/hyper/send?'
    condition: selection
falsepositives:
    - Vulnerability Scanning
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    cs-method: 'POST'
    cs-uri-query|contains: '/analytics/telemetry/ph/api/hyper/send?'

Indicators

These rows show field, operator, and value matches.

Windows Event Auditing Disabled

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

Detects scenarios where system auditing (i.e.: Windows event log auditing) is disabled. This may be used in a scenario where an entity would want to bypass local logging to evade detection when Windows event logging is enabled and reviewed. Also, it is recommended to turn off "Local Group Policy Object Processing" via GPO, which will make sure that Active Directory GPOs take precedence over local/edited computer policies via something such as "gpedit.msc". Please note, that disabling "Local Group Policy Object Processing" may cause an issue in scenarios of one off specific GPO modifications - however, it is recommended to perform these modifications in Active Directory anyways.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Windows Event Auditing Disabled
id: 69aeb277-f15f-4d2d-b32a-55e883609563
related:
    - id: ab4561b1-6c7e-48a7-ad08-087cfb9ce8f1
      type: derived
status: test
description: |
    Detects scenarios where system auditing (i.e.: Windows event log auditing) is disabled.
    This may be used in a scenario where an entity would want to bypass local logging to evade detection when Windows event logging is enabled and reviewed.
    Also, it is recommended to turn off "Local Group Policy Object Processing" via GPO, which will make sure that Active Directory GPOs take precedence over local/edited computer policies via something such as "gpedit.msc".
    Please note, that disabling "Local Group Policy Object Processing" may cause an issue in scenarios of one off specific GPO modifications - however, it is recommended to perform these modifications in Active Directory anyways.
references:
    - https://docs.google.com/presentation/d/1dkrldTTlN3La-OjWtkWJBb4hVk6vfsSMBFBERs6R8zA/edit
author: '@neu5ron, Nasreddine Bencherchali (Nextron Systems)'
date: 2017-11-19
modified: 2023-11-15
tags:
    - attack.defense-impairment
    - attack.t1685.001
logsource:
    product: windows
    service: security
    definition: dfd8c0f4-e6ad-4e07-b91b-f2fca0ddef64
detection:
    selection:
        EventID: 4719
        AuditPolicyChanges|contains:
            - '%%8448' # This is "Success removed"
            - '%%8450' # This is "Failure removed"
    filter_main_guid:
        # Note: We filter these GUID to avoid alert duplication as these are covered by ab4561b1-6c7e-48a7-ad08-087cfb9ce8f1
        SubcategoryGuid:
            - '{0CCE9210-69AE-11D9-BED3-505054503030}' # Audit Security State Change
            - '{0CCE9211-69AE-11D9-BED3-505054503030}' # Audit Security System Extension
            - '{0CCE9212-69AE-11D9-BED3-505054503030}' # Audit System Integrity
            - '{0CCE9215-69AE-11D9-BED3-505054503030}' # Audit Logon
            - '{0CCE9217-69AE-11D9-BED3-505054503030}' # Audit Account Lockout
            - '{0CCE921B-69AE-11D9-BED3-505054503030}' # Audit Special Logon
            - '{0CCE922B-69AE-11D9-BED3-505054503030}' # Audit Process Creation
            - '{0CCE922F-69AE-11D9-BED3-505054503030}' # Audit Audit Policy Change
            - '{0CCE9230-69AE-11D9-BED3-505054503030}' # Audit Authentication Policy Change
            - '{0CCE9235-69AE-11D9-BED3-505054503030}' # Audit User Account Management
            - '{0CCE9236-69AE-11D9-BED3-505054503030}' # Audit Computer Account Management
            - '{0CCE9237-69AE-11D9-BED3-505054503030}' # Audit Security Group Management
            - '{0CCE923F-69AE-11D9-BED3-505054503030}' # Audit Credential Validation
            - '{0CCE9240-69AE-11D9-BED3-505054503030}' # Audit Kerberos Service Ticket Operations
            - '{0CCE9242-69AE-11D9-BED3-505054503030}' # Audit Kerberos Authentication Service'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unknown
level: low # Increase this after a testing period in your environment

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

selection:
    EventID: 4719
    AuditPolicyChanges|contains:
        - '%%8448'
        - '%%8450'

Stage 2: not filter_main_guid

filter_main_guid:
    SubcategoryGuid:
        - '{0CCE9210-69AE-11D9-BED3-505054503030}'
        - '{0CCE9211-69AE-11D9-BED3-505054503030}'
        - '{0CCE9212-69AE-11D9-BED3-505054503030}'
        - '{0CCE9215-69AE-11D9-BED3-505054503030}'
        - '{0CCE9217-69AE-11D9-BED3-505054503030}'
        - '{0CCE921B-69AE-11D9-BED3-505054503030}'
        - '{0CCE922B-69AE-11D9-BED3-505054503030}'
        - '{0CCE922F-69AE-11D9-BED3-505054503030}'
        - '{0CCE9230-69AE-11D9-BED3-505054503030}'
        - '{0CCE9235-69AE-11D9-BED3-505054503030}'
        - '{0CCE9236-69AE-11D9-BED3-505054503030}'
        - '{0CCE9237-69AE-11D9-BED3-505054503030}'
        - '{0CCE923F-69AE-11D9-BED3-505054503030}'
        - '{0CCE9240-69AE-11D9-BED3-505054503030}'
        - '{0CCE9242-69AE-11D9-BED3-505054503030}'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
AuditPolicyChangesmatch
  • %%8448 corpus 3 (sigma 3)
  • %%8450 corpus 3 (sigma 3)
field:"AuditPolicyChanges" kind:match

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
SubcategoryGuideq{0CCE9210-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9210-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9211-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9211-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9212-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9212-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9215-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9215-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9217-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9217-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE921B-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE921B-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE922B-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE922B-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE922F-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE922F-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9230-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9230-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9235-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9235-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9236-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9236-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9237-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9237-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE923F-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE923F-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9240-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9240-69AE-11D9-BED3-505054503030}"
SubcategoryGuideq{0CCE9242-69AE-11D9-BED3-505054503030}excludes:SubcategoryGuid field:"SubcategoryGuid" value:"{0CCE9242-69AE-11D9-BED3-505054503030}"

Back to all Sigma rules