Detection rules › Sigma

Sigma rules: 2p

RuleSeverity
Citrix ADS Exploitation CVE-2020-8193 CVE-2020-8195critical
Enabling COR Profiler Environment Variablesmedium
Execution of Suspicious File Type Extensionmedium
Hardware Model Reconnaissance Via Wmic.EXEmedium
IIS Native-Code Module Command Line Installationmedium
Lsass Memory Dump via Comsvcs DLLhigh
Malicious Nishang PowerShell Commandletshigh
Malicious ShellIntel PowerShell Commandletshigh
Network Connection Initiated By AddinUtil.EXEhigh
Network Sniffing - MacOsinformational
Operator Bloopers Cobalt Strike Moduleshigh
OWASSRF Exploitation Attempt Using Public POC - Proxycritical
Potential Compromised 3CXDesktopApp Beaconing Activity - Netconhigh
Potential DCOM InternetExplorer.Application DLL Hijack - Image Loadcritical
Potential Process Hollowing Activitymedium
Potential SAP NetWeaver Webshell Creationmedium
Potential SNAKE Malware Installation CLI Arguments Indicatorhigh
Potential SysInternals ProcDump Evasionhigh
Powershell MsXml COM Objectmedium
PSAsyncShell - Asynchronous TCP Reverse Shellhigh
Python Reverse Shell Execution Via PTY And Socket Moduleshigh
Schtasks Creation Or Modification With SYSTEM Privilegeshigh
Security Tools Keyword Lookup Via Findstr.EXEmedium
Shai-Hulud Malicious GitHub Workflow Creationhigh
Suspicious Csi.exe Usagemedium
Suspicious Desktopimgdownldr Commandhigh
Suspicious File Creation Activity From Fake Recycle.Bin Folderhigh
Suspicious Process Masquerading As SvcHost.EXEhigh
UAC Bypass via Sdclthigh
Unattend.XML File Access Attemptlow
Unsigned AppX Installation Attempt Using Add-AppxPackage - PsScriptmedium
Use Icacls to Hide File to Everyonemedium

Citrix ADS Exploitation CVE-2020-8193 CVE-2020-8195

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

Detects exploitation attempt against Citrix Netscaler, Application Delivery Controller (ADS) and Citrix Gateway exploiting vulnerabilities reported as CVE-2020-8193 and CVE-2020-8195

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: Citrix ADS Exploitation CVE-2020-8193 CVE-2020-8195
id: 0d0d9a8a-a49e-4e27-b061-7ce4b936cfb7
status: test
description: Detects exploitation attempt against Citrix Netscaler, Application Delivery Controller (ADS) and Citrix Gateway exploiting vulnerabilities reported as CVE-2020-8193 and CVE-2020-8195
references:
    - https://support.citrix.com/article/CTX276688
    - https://research.nccgroup.com/2020/07/10/rift-citrix-adc-vulnerabilities-cve-2020-8193-cve-2020-8195-and-cve-2020-8196-intelligence/
    - https://dmaasland.github.io/posts/citrix.html
author: Florian Roth (Nextron Systems)
date: 2020-07-10
modified: 2023-01-02
tags:
    - attack.initial-access
    - attack.t1190
    - cve.2020-8193
    - cve.2020-8195
    - detection.emerging-threats
logsource:
    category: webserver
detection:
    selection1:
        cs-uri-query|contains: '/rapi/filedownload?filter=path:%2F'
    selection2:
        cs-uri-query|contains|all:
            - '/pcidss/report'
            - 'type=all_signatures'
            - 'sig_name=_default_signature_'
    condition: 1 of selection*
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

1 of selection*

Stage 1: selection1

selection1:
    cs-uri-query|contains: '/rapi/filedownload?filter=path:%2F'

Stage 2: selection2

selection2:
    cs-uri-query|contains|all:
        - '/pcidss/report'
        - 'type=all_signatures'
        - 'sig_name=_default_signature_'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
cs-uri-querymatch
  • /pcidss/report
  • /rapi/filedownload?filter=path:%2F
  • sig_name=_default_signature_
  • type=all_signatures
field:"cs-uri-query" kind:match

Enabling COR Profiler Environment Variables

#
Status
test
Severity
medium
Author
Jose Rodriguez (@Cyb3rPandaH), OTR (Open Threat Research), Jimmy Bayne (@bohops)
Source
github.com/SigmaHQ/sigma

Detects .NET Framework CLR and .NET Core CLR "cor_enable_profiling" and "cor_profiler" variables being set and configured.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Enabling COR Profiler Environment Variables
id: ad89044a-8f49-4673-9a55-cbd88a1b374f
status: test
description: Detects .NET Framework CLR and .NET Core CLR "cor_enable_profiling" and "cor_profiler" variables being set and configured.
references:
    - https://twitter.com/jamieantisocial/status/1304520651248668673
    - https://www.slideshare.net/JamieWilliams130/started-from-the-bottom-exploiting-data-sources-to-uncover-attck-behaviors
    - https://www.sans.org/cyber-security-summit/archives
    - https://learn.microsoft.com/en-us/dotnet/core/runtime-config/debugging-profiling
author: Jose Rodriguez (@Cyb3rPandaH), OTR (Open Threat Research), Jimmy Bayne (@bohops)
date: 2020-09-10
modified: 2023-11-24
tags:
    - attack.persistence
    - attack.privilege-escalation
    - attack.execution
    - attack.stealth
    - attack.t1574.012
logsource:
    category: registry_set
    product: windows
detection:
    selection_1:
        TargetObject|endswith:
            - '\COR_ENABLE_PROFILING'
            - '\COR_PROFILER'
            - '\CORECLR_ENABLE_PROFILING'
    selection_2:
        TargetObject|contains: '\CORECLR_PROFILER_PATH'
    condition: 1 of selection_*
level: medium

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    TargetObject|endswith:
        - '\COR_ENABLE_PROFILING'
        - '\COR_PROFILER'
        - '\CORECLR_ENABLE_PROFILING'

Stage 2: selection_2

selection_2:
    TargetObject|contains: '\CORECLR_PROFILER_PATH'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetObjectends_with
  • \CORECLR_ENABLE_PROFILING
  • \COR_ENABLE_PROFILING
  • \COR_PROFILER
field:"TargetObject" kind:ends_with
TargetObjectmatch
  • \CORECLR_PROFILER_PATH
field:"TargetObject" kind:match value:"\CORECLR_PROFILER_PATH"

Execution of Suspicious File Type Extension

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

Detects whether the image specified in a process creation event doesn't refer to an ".exe" (or other known executable extension) file. This can be caused by process ghosting or other unorthodox methods to start a process. This rule might require some initial baselining to align with some third party tooling in the user environment.

MITRE ATT&CK Coverage

TacticTechniques
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Execution of Suspicious File Type Extension
id: c09dad97-1c78-4f71-b127-7edb2b8e491a
status: test
description: |
    Detects whether the image specified in a process creation event doesn't refer to an ".exe" (or other known executable extension) file. This can be caused by process ghosting or other unorthodox methods to start a process.
    This rule might require some initial baselining to align with some third party tooling in the user environment.
references:
    - https://pentestlaboratories.com/2021/12/08/process-ghosting/
author: Max Altgelt (Nextron Systems)
date: 2021-12-09
modified: 2023-11-23
tags:
    - attack.stealth
logsource:
    category: process_creation
    product: windows
detection:
    known_image_extension:
        Image|endswith:
            - '.bin'
            - '.cgi'
            - '.com'
            - '.exe'
            - '.scr'
            - '.tmp' # sadly many installers use this extension
    filter_main_image: # Windows utilities without extension
        Image:
            - 'System'
            - 'Registry'
            - 'MemCompression'
            - 'vmmem'
    filter_main_msi_installers:
        Image|contains: ':\Windows\Installer\MSI'
    filter_main_driver_store:
        Image|contains: ':\Windows\System32\DriverStore\FileRepository\'
    filter_main_msi_rollbackfiles:
        Image|contains: ':\Config.Msi\'
        Image|endswith:
            - '.rbf'
            - '.rbs'
    filter_main_windows_temp:
        - ParentImage|contains: ':\Windows\Temp\'
        - Image|contains: ':\Windows\Temp\'
    filter_main_deleted:
        Image|contains: ':\$Extend\$Deleted\'
    filter_main_empty:
        Image:
            - '-'
            - ''
    filter_main_null:
        Image: null
    filter_optional_avira:
        ParentImage|contains: ':\ProgramData\Avira\'
    filter_optional_nvidia:
        Image|contains: 'NVIDIA\NvBackend\'
        Image|endswith: '.dat'
    filter_optional_winpakpro:
        Image|contains:
            - ':\Program Files (x86)\WINPAKPRO\'
            - ':\Program Files\WINPAKPRO\'
        Image|endswith: '.ngn'
    filter_optional_myq_server:
        Image|endswith:
            - ':\Program Files (x86)\MyQ\Server\pcltool.dll'
            - ':\Program Files\MyQ\Server\pcltool.dll'
    filter_optional_wsl:
        Image|contains|all:
            - '\AppData\Local\Packages\'
            - '\LocalState\rootfs\'
    filter_optional_lzma_exe:
        Image|endswith: '\LZMA_EXE'
    filter_optional_firefox:
        Image|contains: ':\Program Files\Mozilla Firefox\'
    filter_optional_docker:
        ParentImage: 'C:\Windows\System32\services.exe'
        Image|endswith: 'com.docker.service'
    condition: not known_image_extension and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

not known_image_extension and not 1 of filter_main_* and not 1 of filter_optional_*

Stage 1: not known_image_extension

known_image_extension:
    Image|endswith:
        - '.bin'
        - '.cgi'
        - '.com'
        - '.exe'
        - '.scr'
        - '.tmp'

Stage 2: not filter_main_*

filter_main_image:
    Image:
        - 'System'
        - 'Registry'
        - 'MemCompression'
        - 'vmmem'
filter_main_msi_installers:
    Image|contains: ':\Windows\Installer\MSI'
filter_main_driver_store:
    Image|contains: ':\Windows\System32\DriverStore\FileRepository\'
filter_main_msi_rollbackfiles:
    Image|contains: ':\Config.Msi\'
    Image|endswith:
        - '.rbf'
        - '.rbs'
filter_main_windows_temp:
    - ParentImage|contains: ':\Windows\Temp\'
    - Image|contains: ':\Windows\Temp\'
filter_main_deleted:
    Image|contains: ':\$Extend\$Deleted\'
filter_main_empty:
    Image:
        - '-'
        - ''
filter_main_null:
    Image: null

Stage 3: not filter_optional_*

filter_optional_avira:
    ParentImage|contains: ':\ProgramData\Avira\'
filter_optional_nvidia:
    Image|contains: 'NVIDIA\NvBackend\'
    Image|endswith: '.dat'
filter_optional_winpakpro:
    Image|contains:
        - ':\Program Files (x86)\WINPAKPRO\'
        - ':\Program Files\WINPAKPRO\'
    Image|endswith: '.ngn'
filter_optional_myq_server:
    Image|endswith:
        - ':\Program Files (x86)\MyQ\Server\pcltool.dll'
        - ':\Program Files\MyQ\Server\pcltool.dll'
filter_optional_wsl:
    Image|contains|all:
        - '\AppData\Local\Packages\'
        - '\LocalState\rootfs\'
filter_optional_lzma_exe:
    Image|endswith: '\LZMA_EXE'
filter_optional_firefox:
    Image|contains: ':\Program Files\Mozilla Firefox\'
filter_optional_docker:
    ParentImage: 'C:\Windows\System32\services.exe'
    Image|endswith: 'com.docker.service'

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imageends_with.binexcludes:Image field:"Image" value:".bin"
Imageends_with.cgiexcludes:Image field:"Image" value:".cgi"
Imageends_with.comexcludes:Image field:"Image" value:".com"
Imageends_with.exeexcludes:Image field:"Image" value:".exe"
Imageends_with.screxcludes:Image field:"Image" value:".scr"
Imageends_with.tmpexcludes:Image field:"Image" value:".tmp"
Imageends_with.rbfexcludes:Image field:"Image" value:".rbf"
Imageends_with.rbsexcludes:Image field:"Image" value:".rbs"
Imagematch:\Config.Msi\excludes:Image field:"Image" value:":\Config.Msi\"
Imageeq-excludes:Image field:"Image" value:"-"
ImageeqMemCompressionexcludes:Image field:"Image" value:"MemCompression"
ImageeqRegistryexcludes:Image field:"Image" value:"Registry"
ImageeqSystemexcludes:Image field:"Image" value:"System"
Imageeqvmmemexcludes:Image field:"Image" value:"vmmem"
Imageis_null(no value, null check)excludes:Image
Imagematch:\$Extend\$Deleted\excludes:Image field:"Image" value:":\$Extend\$Deleted\"
Imagematch:\Windows\Installer\MSIexcludes:Image field:"Image" value:":\Windows\Installer\MSI"
Imagematch:\Windows\System32\DriverStore\FileRepository\excludes:Image field:"Image" value:":\Windows\System32\DriverStore\FileRepository\"
Imagematch:\Windows\Temp\excludes:Image field:"Image" value:":\Windows\Temp\"
ParentImagematch:\Windows\Temp\excludes:ParentImage field:"ParentImage" value:":\Windows\Temp\"
Imagematch:\Program Files (x86)\WINPAKPRO\excludes:Image field:"Image" value:":\Program Files (x86)\WINPAKPRO\"
Imagematch:\Program Files\WINPAKPRO\excludes:Image field:"Image" value:":\Program Files\WINPAKPRO\"
Imageends_with.ngnexcludes:Image field:"Image" value:".ngn"
Imageends_with.datexcludes:Image field:"Image" value:".dat"
ImagematchNVIDIA\NvBackend\excludes:Image field:"Image" value:"NVIDIA\NvBackend\"
Imageends_withcom.docker.serviceexcludes:Image field:"Image" value:"com.docker.service"
ParentImageeqC:\Windows\System32\services.exeexcludes:ParentImage field:"ParentImage" value:"C:\Windows\System32\services.exe"
Imagematch\AppData\Local\Packages\excludes:Image field:"Image" value:"\AppData\Local\Packages\"
Imagematch\LocalState\rootfs\excludes:Image field:"Image" value:"\LocalState\rootfs\"
Imageends_with:\Program Files (x86)\MyQ\Server\pcltool.dllexcludes:Image field:"Image" value:":\Program Files (x86)\MyQ\Server\pcltool.dll"
Imageends_with:\Program Files\MyQ\Server\pcltool.dllexcludes:Image field:"Image" value:":\Program Files\MyQ\Server\pcltool.dll"
Imageends_with\LZMA_EXEexcludes:Image field:"Image" value:"\LZMA_EXE"
Imagematch:\Program Files\Mozilla Firefox\excludes:Image field:"Image" value:":\Program Files\Mozilla Firefox\"
ParentImagematch:\ProgramData\Avira\excludes:ParentImage field:"ParentImage" value:":\ProgramData\Avira\"

Hardware Model Reconnaissance Via Wmic.EXE

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

Detects the execution of WMIC with the "csproduct" which is used to obtain information such as hardware models and vendor information

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Hardware Model Reconnaissance Via Wmic.EXE
id: 3e3ceccd-6c06-48b8-b5ff-ab1d25db8c1d
status: test
description: Detects the execution of WMIC with the "csproduct" which is used to obtain information such as hardware models and vendor information
references:
    - https://jonconwayuk.wordpress.com/2014/01/31/wmic-csproduct-using-wmi-to-identify-make-and-model-of-hardware/
    - https://www.uptycs.com/blog/kuraystealer-a-bandit-using-discord-webhooks
author: Florian Roth (Nextron Systems)
date: 2023-02-14
tags:
    - attack.execution
    - attack.t1047
    - car.2016-03-002
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\wmic.exe'
        - OriginalFileName: 'wmic.exe'
    selection_cli:
        CommandLine|contains: 'csproduct'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_wmic_recon_csproduct/info.yml

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains: 'csproduct'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • csproduct
field:"CommandLine" kind:match value:"csproduct"
Imageends_with
  • \wmic.exe corpus 62 (sigma 62)
field:"Image" kind:ends_with value:"\wmic.exe"
OriginalFileNameeq
  • wmic.exe corpus 74 (sigma 38, elastic 18, splunk 18)
field:"OriginalFileName" kind:eq value:"wmic.exe"

IIS Native-Code Module Command Line Installation

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

Detects suspicious IIS native-code module installations via command line

Known False Positives

  • Unknown as it may vary from organisation to organisation how admins use to install IIS modules

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: IIS Native-Code Module Command Line Installation
id: 9465ddf4-f9e4-4ebd-8d98-702df3a93239
status: test
description: Detects suspicious IIS native-code module installations via command line
references:
    - https://researchcenter.paloaltonetworks.com/2018/01/unit42-oilrig-uses-rgdoor-iis-backdoor-targets-middle-east/
    - https://www.microsoft.com/security/blog/2022/07/26/malicious-iis-extensions-quietly-open-persistent-backdoors-into-servers/
author: Florian Roth (Nextron Systems)
date: 2019-12-11
modified: 2024-03-13
tags:
    - attack.persistence
    - attack.t1505.003
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith: '\appcmd.exe'
        - OriginalFileName: 'appcmd.exe'
    selection_cli:
        CommandLine|contains|all:
            - 'install'
            - 'module'
        CommandLine|contains|windash: '-name:'
    filter_iis_setup:
        ParentImage: 'C:\Windows\System32\inetsrv\iissetup.exe'
    condition: all of selection_* and not 1 of filter_*
falsepositives:
    - Unknown as it may vary from organisation to organisation how admins use to install IIS modules
level: medium

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_*

Stage 1: selection_img

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

Stage 2: selection_cli

selection_cli:
    CommandLine|contains|all:
        - 'install'
        - 'module'
    CommandLine|contains|windash: '-name:'

Stage 3: not filter_iis_setup

filter_iis_setup:
    ParentImage: 'C:\Windows\System32\inetsrv\iissetup.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -name: transforms: windash
  • install corpus 5 (sigma 5)
  • module corpus 2 (sigma 2)
field:"CommandLine" kind:match
Imageends_with
  • \appcmd.exe corpus 6 (sigma 6)
field:"Image" kind:ends_with value:"\appcmd.exe"
OriginalFileNameeq
  • appcmd.exe corpus 5 (sigma 5)
field:"OriginalFileName" kind:eq value:"appcmd.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ParentImageeqC:\Windows\System32\inetsrv\iissetup.exeexcludes:ParentImage field:"ParentImage" value:"C:\Windows\System32\inetsrv\iissetup.exe"

Lsass Memory Dump via Comsvcs DLL

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

Detects adversaries leveraging the MiniDump export function from comsvcs.dll via rundll32 to perform a memory dump from lsass.

MITRE ATT&CK Coverage

TacticTechniques
Credential Access

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 10: ProcessAccess

Rule Body

title: Lsass Memory Dump via Comsvcs DLL
id: a49fa4d5-11db-418c-8473-1e014a8dd462
status: test
description: Detects adversaries leveraging the MiniDump export function from comsvcs.dll via rundll32 to perform a memory dump from lsass.
references:
    - https://twitter.com/shantanukhande/status/1229348874298388484
    - https://modexp.wordpress.com/2019/08/30/minidumpwritedump-via-com-services-dll/
author: Roberto Rodriguez (Cyb3rWard0g), OTR (Open Threat Research)
date: 2020-10-20
modified: 2023-11-29
tags:
    - attack.credential-access
    - attack.t1003.001
logsource:
    category: process_access
    product: windows
detection:
    selection:
        TargetImage|endswith: '\lsass.exe'
        SourceImage|endswith: '\rundll32.exe'
        CallTrace|contains: 'comsvcs.dll'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetImage|endswith: '\lsass.exe'
    SourceImage|endswith: '\rundll32.exe'
    CallTrace|contains: 'comsvcs.dll'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CallTracematch
  • comsvcs.dll
field:"CallTrace" kind:match value:"comsvcs.dll"
SourceImageends_with
  • \rundll32.exe corpus 2 (sigma 1, splunk 1)
field:"SourceImage" kind:ends_with value:"\rundll32.exe"
TargetImageends_with
  • \lsass.exe corpus 17 (sigma 16, splunk 1)
field:"TargetImage" kind:ends_with value:"\lsass.exe"

Malicious Nishang PowerShell Commandlets

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

Detects Commandlet names and arguments from the Nishang exploitation framework

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Malicious Nishang PowerShell Commandlets
id: f772cee9-b7c2-4cb2-8f07-49870adc02e0
status: test
description: Detects Commandlet names and arguments from the Nishang exploitation framework
references:
    - https://github.com/samratashok/nishang
author: Alec Costello
date: 2019-05-16
modified: 2023-01-16
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains:
            - 'Add-ConstrainedDelegationBackdoor'
            # - 'Add-Persistence' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            # - 'Add-RegBackdoor' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            # - 'Add-ScrnSaveBackdoor' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Copy-VSS'
            - 'Create-MultipleSessions'
            - 'DataToEncode'
            - 'DNS_TXT_Pwnage'
            - 'Do-Exfiltration-Dns'
            - 'Download_Execute'
            - 'Download-Execute-PS'
            - 'DownloadAndExtractFromRemoteRegistry'
            - 'DumpCerts'
            - 'DumpCreds'
            - 'DumpHashes'
            - 'Enable-DuplicateToken'
            - 'Enable-Duplication'
            - 'Execute-Command-MSSQL'
            - 'Execute-DNSTXT-Code'
            - 'Execute-OnTime'
            - 'ExetoText'
            - 'exfill'
            - 'ExfilOption'
            - 'FakeDC'
            - 'FireBuster'
            - 'FireListener'
            - 'Get-Information ' # Space at the end is required. Otherwise, we get FP with Get-InformationBarrierReportDetails or Get-InformationBarrierReportSummary
            # - 'Get-PassHashes' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Get-PassHints'
            - 'Get-Web-Credentials'
            - 'Get-WebCredentials'
            - 'Get-WLAN-Keys'
            # - 'Gupt-Backdoor' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'HTTP-Backdoor'
            # - 'Invoke-ADSBackdoor' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Invoke-AmsiBypass'
            - 'Invoke-BruteForce'
            - 'Invoke-CredentialsPhish'
            - 'Invoke-Decode'
            - 'Invoke-Encode'
            - 'Invoke-Interceptor'
            - 'Invoke-JSRatRegsvr'
            - 'Invoke-JSRatRundll'
            - 'Invoke-MimikatzWDigestDowngrade'
            - 'Invoke-NetworkRelay'
            # - 'Invoke-PortScan' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            # - 'Invoke-PoshRatHttp' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Invoke-PowerShellIcmp'
            - 'Invoke-PowerShellUdp'
            - 'Invoke-Prasadhak'
            - 'Invoke-PSGcat'
            - 'Invoke-PsGcatAgent'
            # - 'Invoke-PsUACme' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Invoke-SessionGopher'
            - 'Invoke-SSIDExfil'
            # - Jitter  # Prone to FPs
            # - 'Keylogger' # Too generic to be linked to Nishang
            - 'LoggedKeys'
            - 'Nishang'
            - 'NotAllNameSpaces' # This is param to "Set-RemoteWMI"
            - 'Out-CHM'
            - 'OUT-DNSTXT'
            - 'Out-HTA'
            - 'Out-RundllCommand'
            - 'Out-SCF'
            - 'Out-SCT'
            - 'Out-Shortcut'
            - 'Out-WebQuery'
            - 'Out-Word'
            - 'Parse_Keys'
            - 'Password-List'
            - 'Powerpreter'
            - 'Remove-Persistence'
            - 'Remove-PoshRat'
            - 'Remove-Update'
            - 'Run-EXEonRemote'
            - 'Set-DCShadowPermissions'
            - 'Set-RemotePSRemoting'
            - 'Set-RemoteWMI'
            - 'Shellcode32'
            - 'Shellcode64'
            - 'StringtoBase64'
            - 'TexttoExe'
    condition: selection
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_nishang_malicious_commandlets/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains:
        - 'Add-ConstrainedDelegationBackdoor'
        - 'Copy-VSS'
        - 'Create-MultipleSessions'
        - 'DataToEncode'
        - 'DNS_TXT_Pwnage'
        - 'Do-Exfiltration-Dns'
        - 'Download_Execute'
        - 'Download-Execute-PS'
        - 'DownloadAndExtractFromRemoteRegistry'
        - 'DumpCerts'
        - 'DumpCreds'
        - 'DumpHashes'
        - 'Enable-DuplicateToken'
        - 'Enable-Duplication'
        - 'Execute-Command-MSSQL'
        - 'Execute-DNSTXT-Code'
        - 'Execute-OnTime'
        - 'ExetoText'
        - 'exfill'
        - 'ExfilOption'
        - 'FakeDC'
        - 'FireBuster'
        - 'FireListener'
        - 'Get-Information '
        - 'Get-PassHints'
        - 'Get-Web-Credentials'
        - 'Get-WebCredentials'
        - 'Get-WLAN-Keys'
        - 'HTTP-Backdoor'
        - 'Invoke-AmsiBypass'
        - 'Invoke-BruteForce'
        - 'Invoke-CredentialsPhish'
        - 'Invoke-Decode'
        - 'Invoke-Encode'
        - 'Invoke-Interceptor'
        - 'Invoke-JSRatRegsvr'
        - 'Invoke-JSRatRundll'
        - 'Invoke-MimikatzWDigestDowngrade'
        - 'Invoke-NetworkRelay'
        - 'Invoke-PowerShellIcmp'
        - 'Invoke-PowerShellUdp'
        - 'Invoke-Prasadhak'
        - 'Invoke-PSGcat'
        - 'Invoke-PsGcatAgent'
        - 'Invoke-SessionGopher'
        - 'Invoke-SSIDExfil'
        - 'LoggedKeys'
        - 'Nishang'
        - 'NotAllNameSpaces'
        - 'Out-CHM'
        - 'OUT-DNSTXT'
        - 'Out-HTA'
        - 'Out-RundllCommand'
        - 'Out-SCF'
        - 'Out-SCT'
        - 'Out-Shortcut'
        - 'Out-WebQuery'
        - 'Out-Word'
        - 'Parse_Keys'
        - 'Password-List'
        - 'Powerpreter'
        - 'Remove-Persistence'
        - 'Remove-PoshRat'
        - 'Remove-Update'
        - 'Run-EXEonRemote'
        - 'Set-DCShadowPermissions'
        - 'Set-RemotePSRemoting'
        - 'Set-RemoteWMI'
        - 'Shellcode32'
        - 'Shellcode64'
        - 'StringtoBase64'
        - 'TexttoExe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • Add-ConstrainedDelegationBackdoor
  • Copy-VSS
  • Create-MultipleSessions
  • DNS_TXT_Pwnage
  • DataToEncode
  • Do-Exfiltration-Dns
  • Download-Execute-PS
  • DownloadAndExtractFromRemoteRegistry
  • Download_Execute
  • DumpCerts corpus 2 (sigma 2)
  • DumpCreds corpus 2 (sigma 2)
  • DumpHashes
  • Enable-DuplicateToken
  • Enable-Duplication
  • Execute-Command-MSSQL
  • Execute-DNSTXT-Code
  • Execute-OnTime
  • ExetoText
  • ExfilOption
  • FakeDC
  • FireBuster
  • FireListener
  • Get-Information
  • Get-PassHints
  • Get-WLAN-Keys
  • Get-Web-Credentials
  • Get-WebCredentials
  • HTTP-Backdoor
  • Invoke-AmsiBypass
  • Invoke-BruteForce
  • Invoke-CredentialsPhish
  • Invoke-Decode
  • Invoke-Encode
  • Invoke-Interceptor
  • Invoke-JSRatRegsvr
  • Invoke-JSRatRundll
  • Invoke-MimikatzWDigestDowngrade
  • Invoke-NetworkRelay
  • Invoke-PSGcat
  • Invoke-PowerShellIcmp
  • +32 more values (see full rule source)
field:"ScriptBlockText" kind:match

Malicious ShellIntel PowerShell Commandlets

#
Status
test
Severity
high
Author
Max Altgelt (Nextron Systems), Tobias Michalski (Nextron Systems)
Source
github.com/SigmaHQ/sigma

Detects Commandlet names from ShellIntel exploitation scripts.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Malicious ShellIntel PowerShell Commandlets
id: 402e1e1d-ad59-47b6-bf80-1ee44985b3a7
status: test
description: Detects Commandlet names from ShellIntel exploitation scripts.
references:
    - https://github.com/Shellntel/scripts/
author: Max Altgelt (Nextron Systems), Tobias Michalski (Nextron Systems)
date: 2021-08-09
modified: 2023-01-02
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains:
            - 'Invoke-SMBAutoBrute'
            - 'Invoke-GPOLinks'
            # - 'Out-Minidump' # Covered in 89819aa4-bbd6-46bc-88ec-c7f7fe30efa6
            - 'Invoke-Potato'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains:
        - 'Invoke-SMBAutoBrute'
        - 'Invoke-GPOLinks'
        - 'Invoke-Potato'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • Invoke-GPOLinks
  • Invoke-Potato
  • Invoke-SMBAutoBrute
field:"ScriptBlockText" kind:match

Network Connection Initiated By AddinUtil.EXE

#
Status
test
Severity
high
Author
Michael McKinley (@McKinleyMike), Tony Latteri (@TheLatteri)
Source
github.com/SigmaHQ/sigma

Detects a network connection initiated by the Add-In deployment cache updating utility "AddInutil.exe". This could indicate a potential command and control communication as this tool doesn't usually initiate network activity.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 3: Network connection

Rule Body

title: Network Connection Initiated By AddinUtil.EXE
id: 5205613d-2a63-4412-a895-3a2458b587b3
status: test
description: |
    Detects a network connection initiated by the Add-In deployment cache updating utility "AddInutil.exe".
    This could indicate a potential command and control communication as this tool doesn't usually initiate network activity.
references:
    - https://www.blue-prints.blog/content/blog/posts/lolbin/addinutil-lolbas.html
author: Michael McKinley (@McKinleyMike), Tony Latteri (@TheLatteri)
date: 2023-09-18
modified: 2024-07-16
tags:
    - attack.stealth
    - attack.t1218
logsource:
    category: network_connection
    product: windows
detection:
    selection:
        Initiated: 'true'
        Image|endswith: '\addinutil.exe'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Initiated: 'true'
    Image|endswith: '\addinutil.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • \addinutil.exe corpus 4 (sigma 4)
field:"Image" kind:ends_with value:"\addinutil.exe"
Initiatedeq
  • true corpus 50 (sigma 50)
field:"Initiated" kind:eq value:"true"

Network Sniffing - MacOs

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

Detects the usage of tooling to sniff network traffic. An adversary may place a network interface into promiscuous mode to passively access data in transit over the network, or use span ports to capture a larger amount of data.

Known False Positives

  • Legitimate administration activities

MITRE ATT&CK Coverage

TacticTechniques
Credential Access
Discovery

Telemetry Coverage

Rule Body

title: Network Sniffing - MacOs
id: adc9bcc4-c39c-4f6b-a711-1884017bf043
status: test
description: |
  Detects the usage of tooling to sniff network traffic.
  An adversary may place a network interface into promiscuous mode to passively access data in transit over the network, or use span ports to capture a larger amount of data.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1040/T1040.md
author: Alejandro Ortuno, oscd.community
date: 2020-10-14
modified: 2022-11-26
tags:
    - attack.discovery
    - attack.credential-access
    - attack.t1040
logsource:
    category: process_creation
    product: macos
detection:
    selection:
        Image|endswith:
            - '/tcpdump'
            - '/tshark'
    condition: selection
falsepositives:
    - Legitimate administration activities
level: informational

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith:
        - '/tcpdump'
        - '/tshark'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imageends_with
  • /tcpdump
  • /tshark
field:"Image" kind:ends_with

Operator Bloopers Cobalt Strike Modules

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

Detects Cobalt Strike module/commands accidentally entered in CMD shell

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Operator Bloopers Cobalt Strike Modules
id: 4f154fb6-27d1-4813-a759-78b93e0b9c48
related:
    - id: 647c7b9e-d784-4fda-b9a0-45c565a7b729
      type: similar
status: test
description: Detects Cobalt Strike module/commands accidentally entered in CMD shell
references:
    - https://hstechdocs.helpsystems.com/manuals/cobaltstrike/current/userguide/content/cobalt-4-5-user-guide.pdf
    - https://thedfirreport.com/2021/10/04/bazarloader-and-the-conti-leaks/
    - https://thedfirreport.com/2022/06/16/sans-ransomware-summit-2022-can-you-detect-this/
author: _pete_0, TheDFIRReport
date: 2022-05-06
modified: 2023-01-30
tags:
    - attack.execution
    - attack.t1059.003
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - OriginalFileName: 'Cmd.Exe'
        - Image|endswith: '\cmd.exe'
    selection_cli:
        CommandLine|contains:
            - 'Invoke-UserHunter'
            - 'Invoke-ShareFinder'
            - 'Invoke-Kerberoast'
            - 'Invoke-SMBAutoBrute'
            - 'Invoke-Nightmare'
            - 'zerologon'
            - 'av_query'
    condition: all of selection_*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - OriginalFileName: 'Cmd.Exe'
    - Image|endswith: '\cmd.exe'

Stage 2: selection_cli

selection_cli:
    CommandLine|contains:
        - 'Invoke-UserHunter'
        - 'Invoke-ShareFinder'
        - 'Invoke-Kerberoast'
        - 'Invoke-SMBAutoBrute'
        - 'Invoke-Nightmare'
        - 'zerologon'
        - 'av_query'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • Invoke-Kerberoast corpus 2 (sigma 2)
  • Invoke-Nightmare corpus 2 (sigma 2)
  • Invoke-SMBAutoBrute
  • Invoke-ShareFinder corpus 2 (sigma 2)
  • Invoke-UserHunter corpus 2 (sigma 2)
  • av_query
  • zerologon
field:"CommandLine" kind:match
Imageends_with
  • \cmd.exe corpus 132 (sigma 130, splunk 2)
field:"Image" kind:ends_with value:"\cmd.exe"
OriginalFileNameeq
  • Cmd.Exe corpus 75 (sigma 43, splunk 17, elastic 15)
field:"OriginalFileName" kind:eq value:"Cmd.Exe"

OWASSRF Exploitation Attempt Using Public POC - Proxy

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

Detects exploitation attempt of the OWASSRF variant targeting exchange servers using publicly available POC. It uses the OWA endpoint to access the powershell backend endpoint

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Initial Access

Rule Body

title: OWASSRF Exploitation Attempt Using Public POC - Proxy
id: fdd7e904-7304-4616-a46a-e32f917c4be4
status: test
description: Detects exploitation attempt of the OWASSRF variant targeting exchange servers using publicly available POC. It uses the OWA endpoint to access the powershell backend endpoint
references:
    - https://www.crowdstrike.com/blog/owassrf-exploit-analysis-and-recommendations/
    - https://www.rapid7.com/blog/post/2022/12/21/cve-2022-41080-cve-2022-41082-rapid7-observed-exploitation-of-owassrf-in-exchange-for-rce/
    - https://twitter.com/purp1ew0lf/status/1602989967776808961?s=12&t=OkZJl_ViICeiftVEsohRyw
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-12-22
tags:
    - attack.initial-access
    - attack.t1190
    - detection.emerging-threats
logsource:
    category: proxy
detection:
    selection:
        # Look for the header: X-OWA-ExplicitLogonUser: owa/mastermailbox@outlook.com
        c-useragent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.54 Safari/537.36'
        cs-method: 'POST'
        sc-status: 200
        c-uri|contains|all:
            - '/owa/mastermailbox'
            - '/powershell'
    condition: selection
falsepositives:
    - Unlikely
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    c-useragent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.5195.54 Safari/537.36'
    cs-method: 'POST'
    sc-status: 200
    c-uri|contains|all:
        - '/owa/mastermailbox'
        - '/powershell'

Indicators

These rows show field, operator, and value matches.

Potential Compromised 3CXDesktopApp Beaconing Activity - Netcon

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

Detects potential beaconing activity to domains related to 3CX 3CXDesktopApp compromise

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
Command & ControlNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 3: Network connection

Rule Body

title: Potential Compromised 3CXDesktopApp Beaconing Activity - Netcon
id: 51eecf75-d069-43c7-9ea2-63f75499edd4
related:
    - id: 3c4b3bbf-36b4-470c-b6cf-f07e8b1c7e26 # Proxy C2
      type: similar
    - id: 76bc1601-9546-4b75-9419-06e0e8d10651 # Proxy GH
      type: similar
    - id: bd03a0dc-5d93-49eb-b2e8-2dfd268600f8 # DNS C2
      type: similar
    - id: 93bbde78-dc86-4e73-9ffc-ff8a384ca89c # ProcCreation Exec
      type: similar
    - id: 63f3605b-979f-48c2-b7cc-7f90523fed88 # ProcCreation ChildProc
      type: similar
    - id: e7581747-1e44-4d4b-85a6-0db0b4a00f2a # ProcCreation Update
      type: similar
    - id: d0b65ad3-e945-435e-a7a9-438e62dd48e9 # ImageLoad
      type: similar
status: test
description: Detects potential beaconing activity to domains related to 3CX 3CXDesktopApp compromise
references:
    - https://www.reddit.com/r/crowdstrike/comments/125r3uu/20230329_situational_awareness_crowdstrike/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-03-29
modified: 2023-03-31
tags:
    - attack.command-and-control
    - detection.emerging-threats
logsource:
    category: network_connection
    product: windows
detection:
    selection:
        Image|endswith: '\3CXDesktopApp.exe'
        DestinationHostname|contains:
            - 'akamaicontainer.com'
            - 'akamaitechcloudservices.com'
            - 'azuredeploystore.com'
            - 'azureonlinecloud.com'
            - 'azureonlinestorage.com'
            - 'dunamistrd.com'
            - 'glcloudservice.com'
            - 'journalide.org'
            - 'msedgepackageinfo.com'
            - 'msstorageazure.com'
            - 'msstorageboxes.com'
            - 'officeaddons.com'
            - 'officestoragebox.com'
            - 'pbxcloudeservices.com'
            - 'pbxphonenetwork.com'
            - 'pbxsources.com'
            - 'qwepoi123098.com'
            - 'sbmsa.wiki'
            - 'sourceslabs.com'
            - 'visualstudiofactory.com'
            - 'zacharryblogs.com'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\3CXDesktopApp.exe'
    DestinationHostname|contains:
        - 'akamaicontainer.com'
        - 'akamaitechcloudservices.com'
        - 'azuredeploystore.com'
        - 'azureonlinecloud.com'
        - 'azureonlinestorage.com'
        - 'dunamistrd.com'
        - 'glcloudservice.com'
        - 'journalide.org'
        - 'msedgepackageinfo.com'
        - 'msstorageazure.com'
        - 'msstorageboxes.com'
        - 'officeaddons.com'
        - 'officestoragebox.com'
        - 'pbxcloudeservices.com'
        - 'pbxphonenetwork.com'
        - 'pbxsources.com'
        - 'qwepoi123098.com'
        - 'sbmsa.wiki'
        - 'sourceslabs.com'
        - 'visualstudiofactory.com'
        - 'zacharryblogs.com'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
DestinationHostnamematch
  • akamaicontainer.com
  • akamaitechcloudservices.com
  • azuredeploystore.com
  • azureonlinecloud.com
  • azureonlinestorage.com
  • dunamistrd.com
  • glcloudservice.com
  • journalide.org
  • msedgepackageinfo.com
  • msstorageazure.com
  • msstorageboxes.com
  • officeaddons.com
  • officestoragebox.com
  • pbxcloudeservices.com
  • pbxphonenetwork.com
  • pbxsources.com
  • qwepoi123098.com
  • sbmsa.wiki
  • sourceslabs.com
  • visualstudiofactory.com
  • zacharryblogs.com
field:"DestinationHostname" kind:match
Imageends_with
  • \3CXDesktopApp.exe corpus 2 (sigma 2)
field:"Image" kind:ends_with value:"\3CXDesktopApp.exe"

Potential DCOM InternetExplorer.Application DLL Hijack - Image Load

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

Detects potential DLL hijack of "iertutil.dll" found in the DCOM InternetExplorer.Application Class

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 7: Image loaded

Rule Body

title: Potential DCOM InternetExplorer.Application DLL Hijack - Image Load
id: f354eba5-623b-450f-b073-0b5b2773b6aa
related:
    - id: e554f142-5cf3-4e55-ace9-a1b59e0def65
      type: obsolete
    - id: 2f7979ae-f82b-45af-ac1d-2b10e93b0baa
      type: similar
status: test
description: Detects potential DLL hijack of "iertutil.dll" found in the DCOM InternetExplorer.Application Class
references:
    - https://threathunterplaybook.com/hunts/windows/201009-RemoteDCOMIErtUtilDLLHijack/notebook.html
author: Roberto Rodriguez @Cyb3rWard0g, Open Threat Research (OTR), wagga
date: 2020-10-12
modified: 2022-12-18
tags:
    - attack.lateral-movement
    - attack.t1021.002
    - attack.t1021.003
logsource:
    product: windows
    category: image_load
detection:
    selection:
        Image|endswith: '\Internet Explorer\iexplore.exe'
        ImageLoaded|endswith: '\Internet Explorer\iertutil.dll'
    condition: selection
falsepositives:
    - Unknown
level: critical

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|endswith: '\Internet Explorer\iexplore.exe'
    ImageLoaded|endswith: '\Internet Explorer\iertutil.dll'

Indicators

These rows show field, operator, and value matches.

Potential Process Hollowing Activity

#
Status
test
Severity
medium
Author
Christopher Peacock '@securepeacock', SCYTHE '@scythe_io', Sittikorn S
Source
github.com/SigmaHQ/sigma

Detects when a memory process image does not match the disk image, indicative of process hollowing.

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential Process Hollowing Activity
id: c4b890e5-8d8c-4496-8c66-c805753817cd
status: test
description: Detects when a memory process image does not match the disk image, indicative of process hollowing.
references:
    - https://twitter.com/SecurePeacock/status/1486054048390332423?s=20
    - https://www.bleepingcomputer.com/news/microsoft/microsoft-sysmon-now-detects-malware-process-tampering-attempts/
author: Christopher Peacock '@securepeacock', SCYTHE '@scythe_io', Sittikorn S
date: 2022-01-25
modified: 2023-11-28
tags:
    - attack.privilege-escalation
    - attack.stealth
    - attack.t1055.012
logsource:
    product: windows
    category: process_tampering
detection:
    selection:
        Type: 'Image is replaced'
    filter_main_generic:
        Image|contains:
            - ':\Program Files (x86)'
            - ':\Program Files\'
            - ':\Windows\System32\wbem\WMIADAP.exe'
            - ':\Windows\SysWOW64\wbem\WMIADAP.exe'
    filter_optional_opera:
        Image|contains: '\AppData\Local\Programs\Opera\'
        Image|endswith: '\opera.exe'
    filter_optional_edge:
        Image|endswith: '\WindowsApps\MicrosoftEdge.exe'
    condition: selection and not 1 of filter_main_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

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

Stage 1: selection

selection:
    Type: 'Image is replaced'

Stage 2: not filter_main_generic

filter_main_generic:
    Image|contains:
        - ':\Program Files (x86)'
        - ':\Program Files\'
        - ':\Windows\System32\wbem\WMIADAP.exe'
        - ':\Windows\SysWOW64\wbem\WMIADAP.exe'

Stage 3: not filter_optional_*

filter_optional_opera:
    Image|contains: '\AppData\Local\Programs\Opera\'
    Image|endswith: '\opera.exe'
filter_optional_edge:
    Image|endswith: '\WindowsApps\MicrosoftEdge.exe'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Typeeq
  • Image is replaced
field:"Type" kind:eq value:"Image is replaced"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
Imagematch:\Program Files (x86)excludes:Image field:"Image" value:":\Program Files (x86)"
Imagematch:\Program Files\excludes:Image field:"Image" value:":\Program Files\"
Imagematch:\Windows\SysWOW64\wbem\WMIADAP.exeexcludes:Image field:"Image" value:":\Windows\SysWOW64\wbem\WMIADAP.exe"
Imagematch:\Windows\System32\wbem\WMIADAP.exeexcludes:Image field:"Image" value:":\Windows\System32\wbem\WMIADAP.exe"
Imageends_with\opera.exeexcludes:Image field:"Image" value:"\opera.exe"
Imagematch\AppData\Local\Programs\Opera\excludes:Image field:"Image" value:"\AppData\Local\Programs\Opera\"
Imageends_with\WindowsApps\MicrosoftEdge.exeexcludes:Image field:"Image" value:"\WindowsApps\MicrosoftEdge.exe"

Potential SAP NetWeaver Webshell Creation

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

Detects the creation of suspicious files (jsp, java, class) in SAP NetWeaver directories, which may indicate exploitation attempts of vulnerabilities such as CVE-2025-31324.

Known False Positives

  • Legitimate creation of jsc or java files in these locations

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Potential SAP NetWeaver Webshell Creation
id: 86a7c91f-98c3-4f14-a58d-d989421e1234
status: experimental
description: |
    Detects the creation of suspicious files (jsp, java, class) in SAP NetWeaver directories,
    which may indicate exploitation attempts of vulnerabilities such as CVE-2025-31324.
references:
    - https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-31324
    - https://reliaquest.com/blog/threat-spotlight-reliaquest-uncovers-vulnerability-behind-sap-netweaver-compromise/
    - https://onapsis.com/blog/active-exploitation-of-sap-vulnerability-cve-2025-31324/
author: Elastic (idea), Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-04-28
tags:
    - attack.execution
    - attack.initial-access
    - attack.t1190
    - attack.persistence
    - attack.t1059.003
    - cve.2025-31324
    - detection.emerging-threats
logsource:
    product: windows
    category: file_event
detection:
    selection_path:
        TargetFilename|contains:
            - '\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work'
            - '\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\root'
    selection_ext:
        TargetFilename|endswith:
            - '.jsp'
            - '.java'
            - '.class'
    condition: all of selection_*
falsepositives:
    - Legitimate creation of jsc or java files in these locations
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_path

selection_path:
    TargetFilename|contains:
        - '\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work'
        - '\j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\root'

Stage 2: selection_ext

selection_ext:
    TargetFilename|endswith:
        - '.jsp'
        - '.java'
        - '.class'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .class corpus 2 (sigma 2)
  • .java corpus 2 (sigma 2)
  • .jsp corpus 5 (sigma 4, splunk 1)
field:"TargetFilename" kind:ends_with
TargetFilenamematch
  • \j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\root
  • \j2ee\cluster\apps\sap.com\irj\servlet_jsp\irj\work
field:"TargetFilename" kind:match

Potential SNAKE Malware Installation CLI Arguments Indicator

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

Detects a specific command line arguments sequence seen used by SNAKE malware during its installation as described by CISA in their report

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

Rule Body

title: Potential SNAKE Malware Installation CLI Arguments Indicator
id: 02cbc035-b390-49fe-a9ff-3bb402c826db
status: test
description: Detects a specific command line arguments sequence seen used by SNAKE malware during its installation as described by CISA in their report
references:
    - https://media.defense.gov/2023/May/09/2003218554/-1/-1/0/JOINT_CSA_HUNTING_RU_INTEL_SNAKE_MALWARE_20230509.PDF
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-04
tags:
    - attack.execution
    - detection.emerging-threats
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        # This CLI regex is based on the following description from the report:
        #   The jpsetup.exe installer requires two arguments to be passed via the command line for execution
        #   The first argument is a wide character string hashed with SHA-256 twice -> We assume that the first argument is of length SHA256
        #   The AES initialization vector (IV) consists of the first 16 bytes of the second argument to jpsetup.exe -> We assume that the second argument is of at least 16 bytes (16 characters)
        CommandLine|re: '\s[a-fA-F0-9]{64}\s[a-fA-F0-9]{16}'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    CommandLine|re: '\s[a-fA-F0-9]{64}\s[a-fA-F0-9]{16}'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineregex_match
  • \s[a-fA-F0-9]{64}\s[a-fA-F0-9]{16}
field:"CommandLine" kind:regex_match value:"\s[a-fA-F0-9]{64}\s[a-fA-F0-9]{16}"

Potential SysInternals ProcDump Evasion

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

Detects uses of the SysInternals ProcDump utility in which ProcDump or its output get renamed, or a dump file is moved or copied to a different name

Known False Positives

  • False positives are expected in cases in which ProcDump just gets copied to a different directory without any renaming

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Potential SysInternals ProcDump Evasion
id: 79b06761-465f-4f88-9ef2-150e24d3d737
status: test
description: Detects uses of the SysInternals ProcDump utility in which ProcDump or its output get renamed, or a dump file is moved or copied to a different name
references:
    - https://twitter.com/mrd0x/status/1480785527901204481
author: Florian Roth (Nextron Systems)
date: 2022-01-11
modified: 2023-05-09
tags:
    - attack.stealth
    - attack.t1036
    - attack.t1003.001
    - attack.credential-access
logsource:
    category: process_creation
    product: windows
detection:
    selection_1:
        CommandLine|contains:
            - 'copy procdump'
            - 'move procdump'
    selection_2:
        CommandLine|contains|all:
            - 'copy '
            - '.dmp '
        CommandLine|contains:
            - '2.dmp'
            - 'lsass'
            - 'out.dmp'
    selection_3:
        CommandLine|contains:
            - 'copy lsass.exe_'  # procdump default pattern e.g. lsass.exe_220111_085234.dmp
            - 'move lsass.exe_'  # procdump default pattern e.g. lsass.exe_220111_085234.dmp
    condition: 1 of selection_*
falsepositives:
    - False positives are expected in cases in which ProcDump just gets copied to a different directory without any renaming
level: high

Stages and Predicates

Stage 0: condition

1 of selection_*

Stage 1: selection_1

selection_1:
    CommandLine|contains:
        - 'copy procdump'
        - 'move procdump'

Stage 2: selection_2

selection_2:
    CommandLine|contains|all:
        - 'copy '
        - '.dmp '
    CommandLine|contains:
        - '2.dmp'
        - 'lsass'
        - 'out.dmp'

Stage 3: selection_3

selection_3:
    CommandLine|contains:
        - 'copy lsass.exe_'
        - 'move lsass.exe_'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • .dmp corpus 2 (sigma 2)
  • 2.dmp
  • copy corpus 11 (sigma 11)
  • copy lsass.exe_
  • copy procdump
  • lsass corpus 7 (sigma 6, elastic 1)
  • move lsass.exe_
  • move procdump
  • out.dmp
field:"CommandLine" kind:match

Powershell MsXml COM Object

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

Adversaries may abuse PowerShell commands and scripts for execution. PowerShell is a powerful interactive command-line interface and scripting environment included in the Windows operating system. (Citation: TechNet PowerShell) Adversaries can use PowerShell to perform a number of actions, including discovery of information and execution of code

Known False Positives

  • Legitimate administrative script

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Powershell MsXml COM Object
id: 78aa1347-1517-4454-9982-b338d6df8343
status: test
description: |
    Adversaries may abuse PowerShell commands and scripts for execution.
    PowerShell is a powerful interactive command-line interface and scripting environment included in the Windows operating system. (Citation: TechNet PowerShell)
    Adversaries can use PowerShell to perform a number of actions, including discovery of information and execution of code
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1059.001/T1059.001.md#atomic-test-7---powershell-msxml-com-object---with-prompt
    - https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms766431(v=vs.85)
    - https://www.trendmicro.com/en_id/research/22/e/uncovering-a-kingminer-botnet-attack-using-trend-micro-managed-x.html
author: frack113, MatilJ
date: 2022-01-19
modified: 2022-05-19
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains|all:
            - 'New-Object'
            - '-ComObject'
            - 'MsXml2.'
            - 'XmlHttp'
    condition: selection
falsepositives:
    - Legitimate administrative script
level: medium
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_msxml_com/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains|all:
        - 'New-Object'
        - '-ComObject'
        - 'MsXml2.'
        - 'XmlHttp'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • -ComObject
  • MsXml2.
  • New-Object corpus 8 (sigma 7, splunk 1)
  • XmlHttp
field:"ScriptBlockText" kind:match

PSAsyncShell - Asynchronous TCP Reverse Shell

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

Detects the use of PSAsyncShell an Asynchronous TCP Reverse Shell written in powershell

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: PSAsyncShell - Asynchronous TCP Reverse Shell
id: afd3df04-948d-46f6-ae44-25966c44b97f
status: test
description: Detects the use of PSAsyncShell an Asynchronous TCP Reverse Shell written in powershell
references:
    - https://github.com/JoelGMSec/PSAsyncShell
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-10-04
tags:
    - attack.execution
    - attack.t1059.001
logsource:
    product: windows
    category: ps_script
    definition: 'Requirements: Script Block Logging must be enabled'
detection:
    selection:
        ScriptBlockText|contains: 'PSAsyncShell'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    ScriptBlockText|contains: 'PSAsyncShell'

Indicators

These rows show field, operator, and value matches.

Python Reverse Shell Execution Via PTY And Socket Modules

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

Detects the execution of python with calls to the socket and pty module in order to connect and spawn a potential reverse shell.

MITRE ATT&CK Coverage

TacticTechniques
ExecutionNo specific technique

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 1: Process Create

Rule Body

title: Python Reverse Shell Execution Via PTY And Socket Modules
id: 32e62bc7-3de0-4bb1-90af-532978fe42c0
related:
    - id: c4042d54-110d-45dd-a0e1-05c47822c937
      type: similar
status: test
description: |
    Detects the execution of python with calls to the socket and pty module in order to connect and spawn a potential reverse shell.
references:
    - https://www.revshells.com/
author: '@d4ns4n_, Nasreddine Bencherchali (Nextron Systems)'
date: 2023-04-24
modified: 2024-11-04
tags:
    - attack.execution
logsource:
    category: process_creation
    product: linux
detection:
    selection:
        Image|contains: 'python'
        CommandLine|contains|all:
            - ' -c '
            - 'import'
            - 'pty'
            - 'socket'
            - 'spawn'
            - '.connect'
    condition: selection
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    Image|contains: 'python'
    CommandLine|contains|all:
        - ' -c '
        - 'import'
        - 'pty'
        - 'socket'
        - 'spawn'
        - '.connect'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • -c corpus 13 (sigma 13)
  • .connect corpus 2 (sigma 2)
  • import corpus 4 (sigma 4)
  • pty corpus 2 (sigma 1, elastic 1)
  • socket corpus 5 (elastic 3, sigma 2)
  • spawn corpus 4 (sigma 3, elastic 1)
field:"CommandLine" kind:match
Imagematch
  • python corpus 2 (sigma 2)
field:"Image" kind:match value:"python"

Schtasks Creation Or Modification With SYSTEM Privileges

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

Detects the creation or update of a scheduled task to run with "NT AUTHORITY\SYSTEM" privileges

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: Schtasks Creation Or Modification With SYSTEM Privileges
id: 89ca78fd-b37c-4310-b3d3-81a023f83936
status: test
description: Detects the creation or update of a scheduled task to run with "NT AUTHORITY\SYSTEM" privileges
references:
    - https://www.elastic.co/security-labs/exploring-the-qbot-attack-pattern
    - https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/schtasks
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-07-28
modified: 2025-02-15
tags:
    - attack.privilege-escalation
    - attack.execution
    - attack.persistence
    - attack.t1053.005
logsource:
    product: windows
    category: process_creation
detection:
    selection_root:
        Image|endswith: '\schtasks.exe'
        CommandLine|contains:
            - ' /change '
            - ' /create '
    selection_run:
        CommandLine|contains: '/ru '
    selection_user:
        CommandLine|contains:
            - 'NT AUT' # This covers the usual NT AUTHORITY\SYSTEM
            - ' SYSTEM ' # SYSTEM is a valid value for schtasks hence it gets it's own value with space
    filter_optional_teamviewer:
        # FP from test set in SIGMA
        # Cannot use ParentImage on all OSes for 4688 events
        # ParentImage|contains|all:
        #     - '\AppData\Local\Temp\'
        #     - 'TeamViewer_.exe'
        Image|endswith: '\schtasks.exe'
        CommandLine|contains|all:
            - '/TN TVInstallRestore'
            - '\TeamViewer_.exe'
    filter_optional_office:
        CommandLine|contains|all:
            # https://answers.microsoft.com/en-us/msoffice/forum/all/office-15-subscription-heartbeat-task-created-on/43ab5e53-a9fb-47c6-8c14-44889974b9ff
            - 'Subscription Heartbeat'
            - '\HeartbeatConfig.xml'
            - '\Microsoft Shared\OFFICE'
    filter_optional_avira:
        CommandLine|contains:
            - '/Create /F /RU System /SC WEEKLY /TN AviraSystemSpeedupVerify /TR '
            - ':\Program Files (x86)\Avira\System Speedup\setup\avira_speedup_setup.exe'
            - '/VERIFY /VERYSILENT /NOSTART /NODOTNET /NORESTART" /RL HIGHEST'
    condition: all of selection_* and not 1 of filter_optional_*
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_schtasks_system/info.yml

Stages and Predicates

Stage 0: condition

all of selection_* and not 1 of filter_optional_*

Stage 1: selection_root

selection_root:
    Image|endswith: '\schtasks.exe'
    CommandLine|contains:
        - ' /change '
        - ' /create '

Stage 2: selection_run

selection_run:
    CommandLine|contains: '/ru '

Stage 3: selection_user

selection_user:
    CommandLine|contains:
        - 'NT AUT'
        - ' SYSTEM '

Stage 4: not filter_optional_*

filter_optional_teamviewer:
    Image|endswith: '\schtasks.exe'
    CommandLine|contains|all:
        - '/TN TVInstallRestore'
        - '\TeamViewer_.exe'
filter_optional_office:
    CommandLine|contains|all:
        - 'Subscription Heartbeat'
        - '\HeartbeatConfig.xml'
        - '\Microsoft Shared\OFFICE'
filter_optional_avira:
    CommandLine|contains:
        - '/Create /F /RU System /SC WEEKLY /TN AviraSystemSpeedupVerify /TR '
        - ':\Program Files (x86)\Avira\System Speedup\setup\avira_speedup_setup.exe'
        - '/VERIFY /VERYSILENT /NOSTART /NODOTNET /NORESTART" /RL HIGHEST'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /change corpus 3 (sigma 3)
  • /create corpus 15 (sigma 15)
  • SYSTEM corpus 2 (sigma 2)
  • /ru corpus 2 (sigma 1, splunk 1)
  • NT AUT corpus 3 (sigma 3)
field:"CommandLine" kind:match
Imageends_with
  • \schtasks.exe corpus 55 (sigma 55)
field:"Image" kind:ends_with value:"\schtasks.exe"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
CommandLinematch/TN TVInstallRestoreexcludes:CommandLine field:"CommandLine" value:"/TN TVInstallRestore"
CommandLinematch\TeamViewer_.exeexcludes:CommandLine field:"CommandLine" value:"\TeamViewer_.exe"
Imageends_with\schtasks.exeexcludes:Image field:"Image" value:"\schtasks.exe"
CommandLinematchSubscription Heartbeatexcludes:CommandLine field:"CommandLine" value:"Subscription Heartbeat"
CommandLinematch\HeartbeatConfig.xmlexcludes:CommandLine field:"CommandLine" value:"\HeartbeatConfig.xml"
CommandLinematch\Microsoft Shared\OFFICEexcludes:CommandLine field:"CommandLine" value:"\Microsoft Shared\OFFICE"
CommandLinematch/Create /F /RU System /SC WEEKLY /TN AviraSystemSpeedupVerify /TR excludes:CommandLine field:"CommandLine" value:"/Create /F /RU System /SC WEEKLY /TN AviraSystemSpeedupVerify /TR "
CommandLinematch/VERIFY /VERYSILENT /NOSTART /NODOTNET /NORESTART" /RL HIGHESTexcludes:CommandLine
CommandLinematch:\Program Files (x86)\Avira\System Speedup\setup\avira_speedup_setup.exeexcludes:CommandLine field:"CommandLine" value:":\Program Files (x86)\Avira\System Speedup\setup\avira_speedup_setup.exe"

Security Tools Keyword Lookup Via Findstr.EXE

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

Detects execution of "findstr" to search for common names of security tools. Attackers often pipe the results of recon commands such as "tasklist" or "whoami" to "findstr" in order to filter out the results. This detection focuses on the keywords that the attacker might use as a filter.

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Security Tools Keyword Lookup Via Findstr.EXE
id: 4fe074b4-b833-4081-8f24-7dcfeca72b42
related:
    - id: fe63010f-8823-4864-a96b-a7b4a0f7b929
      type: derived
status: test
description: |
    Detects execution of "findstr" to search for common names of security tools. Attackers often pipe the results of recon commands such as "tasklist" or "whoami" to "findstr" in order to filter out the results.
    This detection focuses on the keywords that the attacker might use as a filter.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/987e3ca988ae3cff4b9f6e388c139c05bf44bbb8/atomics/T1518.001/T1518.001.md#atomic-test-1---security-software-discovery
    - https://www.microsoft.com/en-us/security/blog/2023/10/18/multiple-north-korean-threat-actors-exploiting-the-teamcity-cve-2023-42793-vulnerability/
    - https://www.hhs.gov/sites/default/files/manage-engine-vulnerability-sector-alert-tlpclear.pdf
author: Nasreddine Bencherchali (Nextron Systems), frack113
date: 2023-10-20
modified: 2023-11-14
tags:
    - attack.discovery
    - attack.t1518.001
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\find.exe'
              - '\findstr.exe'
        - OriginalFileName:
              - 'FIND.EXE'
              - 'FINDSTR.EXE'
    selection_cli:
        CommandLine|endswith:
            # Note: Add additional keywords to increase and enhance coverage
            # Note:
            #   We use the double quote variation because in cases of where the command is executed through cmd for example:
            #       cmd /c "tasklist | findstr virus"
            #   Logging utilties such as Sysmon would capture the end quote as part of findstr execution
            - ' avira'
            - ' avira"'
            - ' cb'
            - ' cb"'
            - ' cylance'
            - ' cylance"'
            - ' defender'
            - ' defender"'
            - ' kaspersky'
            - ' kaspersky"'
            - ' kes'
            - ' kes"'
            - ' mc'
            - ' mc"'
            - ' sec'
            - ' sec"'
            - ' sentinel'
            - ' sentinel"'
            - ' symantec'
            - ' symantec"'
            - ' virus'
            - ' virus"'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_findstr_security_keyword_lookup/info.yml
simulation:
    - type: atomic-red-team
      name: Security Software Discovery
      technique: T1518.001
      atomic_guid: f92a380f-ced9-491f-b338-95a991418ce2

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\find.exe'
          - '\findstr.exe'
    - OriginalFileName:
          - 'FIND.EXE'
          - 'FINDSTR.EXE'

Stage 2: selection_cli

selection_cli:
    CommandLine|endswith:
        - ' avira'
        - ' avira"'
        - ' cb'
        - ' cb"'
        - ' cylance'
        - ' cylance"'
        - ' defender'
        - ' defender"'
        - ' kaspersky'
        - ' kaspersky"'
        - ' kes'
        - ' kes"'
        - ' mc'
        - ' mc"'
        - ' sec'
        - ' sec"'
        - ' sentinel'
        - ' sentinel"'
        - ' symantec'
        - ' symantec"'
        - ' virus'
        - ' virus"'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLineends_with
  • avira
  • avira"
  • cb
  • cb"
  • cylance
  • cylance"
  • defender
  • defender"
  • kaspersky
  • kaspersky"
  • kes
  • kes"
  • mc
  • mc"
  • sec
  • sec"
  • sentinel
  • sentinel"
  • symantec
  • symantec"
  • virus
  • virus"
field:"CommandLine" kind:ends_with
Imageends_with
  • \find.exe corpus 7 (sigma 7)
  • \findstr.exe corpus 11 (sigma 11)
field:"Image" kind:ends_with
OriginalFileNameeq
  • FIND.EXE corpus 7 (sigma 7)
  • FINDSTR.EXE corpus 12 (sigma 12)
field:"OriginalFileName" kind:eq

Shai-Hulud Malicious GitHub Workflow Creation

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

Detects creation of shai-hulud-workflow.yml file associated with Shai Hulud worm targeting NPM supply chain attack that exfiltrates GitHub secrets

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

PlatformRecord / event type
LinuxEvent ID 11: File created

Rule Body

title: Shai-Hulud Malicious GitHub Workflow Creation
id: 0aba5685-6db6-486f-88ef-29a99c545cfd
status: experimental
description: Detects creation of shai-hulud-workflow.yml file associated with Shai Hulud worm targeting NPM supply chain attack that exfiltrates GitHub secrets
references:
    - https://www.safetycli.com/blog/shai-hulud-npm-attack-runs-malicious-github-action
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-09-24
modified: 2026-01-24
tags:
    - attack.persistence
    - attack.credential-access
    - attack.t1552.001
    - attack.collection
    - attack.t1119
    - detection.emerging-threats
logsource:
    product: linux
    category: file_event
detection:
    selection:
        TargetFilename|endswith:
            - '.github/workflows/shai-hulud-workflow.yaml'
            - '.github/workflows/shai-hulud-workflow.yml'
            - '.github/workflows/shai-hulud.yaml'
            - '.github/workflows/shai-hulud.yml'
    condition: selection
falsepositives:
    - Unlikely
level: high

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    TargetFilename|endswith:
        - '.github/workflows/shai-hulud-workflow.yaml'
        - '.github/workflows/shai-hulud-workflow.yml'
        - '.github/workflows/shai-hulud.yaml'
        - '.github/workflows/shai-hulud.yml'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
TargetFilenameends_with
  • .github/workflows/shai-hulud-workflow.yaml
  • .github/workflows/shai-hulud-workflow.yml
  • .github/workflows/shai-hulud.yaml
  • .github/workflows/shai-hulud.yml
field:"TargetFilename" kind:ends_with

Suspicious Csi.exe Usage

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

Csi.exe is a signed binary from Microsoft that comes with Visual Studio and provides C# interactive capabilities. It can be used to run C# code from a file passed as a parameter in command line. Early version of this utility provided with Microsoft “Roslyn” Community Technology Preview was named 'rcsi.exe'

Known False Positives

  • Legitimate usage by software developers

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious Csi.exe Usage
id: 40b95d31-1afc-469e-8d34-9a3a667d058e
status: test
description: Csi.exe is a signed binary from Microsoft that comes with Visual Studio and provides C# interactive capabilities. It can be used to run C# code from a file passed as a parameter in command line. Early version of this utility provided with Microsoft “Roslyn” Community Technology Preview was named 'rcsi.exe'
references:
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Csi/
    - https://lolbas-project.github.io/lolbas/OtherMSBinaries/Rcsi/
    - https://enigma0x3.net/2016/11/21/bypassing-application-whitelisting-by-using-rcsi-exe/
    - https://twitter.com/Z3Jpa29z/status/1317545798981324801
author: Konstantin Grishchenko, oscd.community
date: 2020-10-17
modified: 2022-07-11
tags:
    - attack.lateral-movement
    - attack.execution
    - attack.stealth
    - attack.t1072
    - attack.t1218
logsource:
    category: process_creation
    product: windows
detection:
    selection_img:
        - Image|endswith:
              - '\csi.exe'
              - '\rcsi.exe'
        - OriginalFileName:
              - 'csi.exe'
              - 'rcsi.exe'
    selection_cli:
        Company: 'Microsoft Corporation'
    condition: all of selection*
falsepositives:
    - Legitimate usage by software developers
level: medium

Stages and Predicates

Stage 0: condition

all of selection*

Stage 1: selection_img

selection_img:
    - Image|endswith:
          - '\csi.exe'
          - '\rcsi.exe'
    - OriginalFileName:
          - 'csi.exe'
          - 'rcsi.exe'

Stage 2: selection_cli

selection_cli:
    Company: 'Microsoft Corporation'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Companyeq
  • Microsoft Corporation corpus 2 (sigma 1, splunk 1)
field:"Company" kind:eq value:"Microsoft Corporation"
Imageends_with
  • \csi.exe corpus 2 (sigma 2)
  • \rcsi.exe
field:"Image" kind:ends_with
OriginalFileNameeq
  • csi.exe corpus 2 (sigma 2)
  • rcsi.exe
field:"OriginalFileName" kind:eq

Suspicious Desktopimgdownldr Command

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

Detects a suspicious Microsoft desktopimgdownldr execution with parameters used to download files from the Internet

Known False Positives

  • False positives depend on scripts and administrative tools used in the monitored environment

MITRE ATT&CK Coverage

TacticTechniques
Command & Control

Telemetry Coverage

Rule Body

title: Suspicious Desktopimgdownldr Command
id: bb58aa4a-b80b-415a-a2c0-2f65a4c81009
status: test
description: Detects a suspicious Microsoft desktopimgdownldr execution with parameters used to download files from the Internet
references:
    - https://labs.sentinelone.com/living-off-windows-land-a-new-native-file-downldr/
    - https://twitter.com/SBousseaden/status/1278977301745741825
author: Florian Roth (Nextron Systems)
date: 2020-07-03
modified: 2021-11-27
tags:
    - attack.command-and-control
    - attack.t1105
logsource:
    category: process_creation
    product: windows
detection:
    selection1:
        CommandLine|contains: ' /lockscreenurl:'
    selection1_filter:
        CommandLine|contains:
            - '.jpg'
            - '.jpeg'
            - '.png'
    selection_reg:
        CommandLine|contains|all:
            - 'reg delete'
            - '\PersonalizationCSP'
    condition: ( selection1 and not selection1_filter ) or selection_reg
falsepositives:
    - False positives depend on scripts and administrative tools used in the monitored environment
level: high

Stages and Predicates

Stage 0: condition

( selection1 and not selection1_filter ) or selection_reg

Stage 1: selection1

selection1:
    CommandLine|contains: ' /lockscreenurl:'

Stage 2: not selection1_filter

selection1_filter:
    CommandLine|contains:
        - '.jpg'
        - '.jpeg'
        - '.png'

Stage 3: selection_reg

selection_reg:
    CommandLine|contains|all:
        - 'reg delete'
        - '\PersonalizationCSP'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
CommandLinematch
  • /lockscreenurl:
  • \PersonalizationCSP
  • reg delete
field:"CommandLine" kind:match

Exclusions

The rule actively suppresses these predicates.

Suspicious File Creation Activity From Fake Recycle.Bin Folder

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

Detects file write event from/to a fake recycle bin folder that is often used as a staging directory for malware

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique
StealthNo specific technique

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 11: FileCreate

Rule Body

title: Suspicious File Creation Activity From Fake Recycle.Bin Folder
id: cd8b36ac-8e4a-4c2f-a402-a29b8fbd5bca
related:
    - id: 5ce0f04e-3efc-42af-839d-5b3a543b76c0
      type: derived
status: test
description: Detects file write event from/to a fake recycle bin folder that is often used as a staging directory for malware
references:
    - https://www.mandiant.com/resources/blog/infected-usb-steal-secrets
    - https://unit42.paloaltonetworks.com/cloaked-ursa-phishing/
author: X__Junior (Nextron Systems)
date: 2023-07-12
modified: 2023-12-11
tags:
    - attack.persistence
    - attack.stealth
logsource:
    category: file_event
    product: windows
detection:
    selection:
        - Image|contains:
              # e.g. C:\$RECYCLER.BIN
              - 'RECYCLERS.BIN\'
              - 'RECYCLER.BIN\'
        - TargetFilename|contains:
              # e.g. C:\$RECYCLER.BIN
              - 'RECYCLERS.BIN\'
              - 'RECYCLER.BIN\'
    condition: selection
falsepositives:
    - Unknown
level: high
regression_tests_path: regression_data/rules/windows/file/file_event/file_event_win_susp_recycle_bin_fake_exec/info.yml

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    - Image|contains:
          - 'RECYCLERS.BIN\'
          - 'RECYCLER.BIN\'
    - TargetFilename|contains:
          - 'RECYCLERS.BIN\'
          - 'RECYCLER.BIN\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Imagematch
  • RECYCLER.BIN\ corpus 2 (sigma 2)
  • RECYCLERS.BIN\ corpus 2 (sigma 2)
field:"Image" kind:match
TargetFilenamematch
  • RECYCLER.BIN\
  • RECYCLERS.BIN\
field:"TargetFilename" kind:match

Suspicious Process Masquerading As SvcHost.EXE

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

Detects a suspicious process that is masquerading as the legitimate "svchost.exe" by naming its binary "svchost.exe" and executing from an uncommon location. Adversaries often disguise their malicious binaries by naming them after legitimate system processes like "svchost.exe" to evade detection.

Known False Positives

  • Unlikely

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Suspicious Process Masquerading As SvcHost.EXE
id: be58d2e2-06c8-4f58-b666-b99f6dc3b6cd
related:
    - id: 01d2e2a1-5f09-44f7-9fc1-24faa7479b6d
      type: similar
    - id: e4a6b256-3e47-40fc-89d2-7a477edd6915
      type: similar
status: test
description: |
    Detects a suspicious process that is masquerading as the legitimate "svchost.exe" by naming its binary "svchost.exe" and executing from an uncommon location.
    Adversaries often disguise their malicious binaries by naming them after legitimate system processes like "svchost.exe" to evade detection.
references:
    - https://tria.ge/240731-jh4crsycnb/behavioral2
    - https://redcanary.com/blog/threat-detection/process-masquerading/
author: Swachchhanda Shrawan Poudel
date: 2024-08-07
tags:
    - attack.stealth
    - attack.t1036.005
logsource:
    category: process_creation
    product: windows
detection:
    selection:
        Image|endswith: '\svchost.exe'
    filter_main_img_location:
        Image:
            - 'C:\Windows\System32\svchost.exe'
            - 'C:\Windows\SysWOW64\svchost.exe'
    filter_main_ofn:
        OriginalFileName: 'svchost.exe'
    condition: selection and not 1 of filter_main_*
falsepositives:
    - Unlikely
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_svchost_masqueraded_execution/info.yml

Stages and Predicates

Stage 0: condition

selection and not 1 of filter_main_*

Stage 1: selection

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

Stage 2: not filter_main_*

filter_main_img_location:
    Image:
        - 'C:\Windows\System32\svchost.exe'
        - 'C:\Windows\SysWOW64\svchost.exe'
filter_main_ofn:
    OriginalFileName: 'svchost.exe'

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"

Exclusions

The rule actively suppresses these predicates.

FieldKindExcluded valuesSearch
ImageeqC:\Windows\SysWOW64\svchost.exeexcludes:Image field:"Image" value:"C:\Windows\SysWOW64\svchost.exe"
ImageeqC:\Windows\System32\svchost.exeexcludes:Image field:"Image" value:"C:\Windows\System32\svchost.exe"
OriginalFileNameeqsvchost.exeexcludes:OriginalFileName field:"OriginalFileName" value:"svchost.exe"

UAC Bypass via Sdclt

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

Detects the pattern of UAC Bypass using registry key manipulation of sdclt.exe (e.g. UACMe 53)

MITRE ATT&CK Coverage

Telemetry Coverage

Rule Body

title: UAC Bypass via Sdclt
id: 5b872a46-3b90-45c1-8419-f675db8053aa
status: test
description: Detects the pattern of UAC Bypass using registry key manipulation of sdclt.exe (e.g. UACMe 53)
references:
    - https://enigma0x3.net/2017/03/17/fileless-uac-bypass-using-sdclt-exe/
    - https://github.com/hfiref0x/UACME
author: Omer Yampel, Christian Burkard (Nextron Systems)
date: 2017-03-17
modified: 2023-08-17
tags:
    - attack.privilege-escalation
    - attack.t1548.002
    - car.2019-04-001
logsource:
    category: registry_set
    product: windows
detection:
    selection1:
        TargetObject|endswith: 'Software\Classes\exefile\shell\runas\command\isolatedCommand'
    selection2:
        TargetObject|endswith: 'Software\Classes\Folder\shell\open\command\SymbolicLinkValue'
        Details|re: '-1[0-9]{3}\\Software\\Classes\\'
    condition: 1 of selection*
falsepositives:
    - Unknown
level: high

Stages and Predicates

Stage 0: condition

1 of selection*

Stage 1: selection1

selection1:
    TargetObject|endswith: 'Software\Classes\exefile\shell\runas\command\isolatedCommand'

Stage 2: selection2

selection2:
    TargetObject|endswith: 'Software\Classes\Folder\shell\open\command\SymbolicLinkValue'
    Details|re: '-1[0-9]{3}\\Software\\Classes\\'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
Detailsregex_match
  • -1[0-9]{3}\Software\Classes\
field:"Details" kind:regex_match value:"-1[0-9]{3}\Software\Classes\"
TargetObjectends_with
  • Software\Classes\Folder\shell\open\command\SymbolicLinkValue
  • Software\Classes\exefile\shell\runas\command\isolatedCommand
field:"TargetObject" kind:ends_with

Unattend.XML File Access Attempt

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

Detects attempts to access the "unattend.xml" file, where credentials might be stored. This file is used during the unattended windows install process.

MITRE ATT&CK Coverage

Rule Body

title: Unattend.XML File Access Attempt
id: 76a26006-0942-430b-8249-bd51d448f8e5
status: test
description: |
    Detects attempts to access the "unattend.xml" file, where credentials might be stored.
    This file is used during the unattended windows install process.
references:
    - https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1552.001/T1552.001.md
author: frack113
date: 2024-07-22
tags:
    - attack.credential-access
    - attack.t1552.001
    - detection.threat-hunting
logsource:
    product: windows
    category: file_access
    definition: 'Requirements: Microsoft-Windows-Kernel-File ETW provider'
detection:
    selection:
        FileName|endswith: '\Panther\unattend.xml'
    condition: selection
falsepositives:
    - Unknown
level: low

Stages and Predicates

Stage 0: condition

selection

Stage 1: selection

selection:
    FileName|endswith: '\Panther\unattend.xml'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
FileNameends_with
  • \Panther\unattend.xml
field:"file_name" kind:ends_with value:"\Panther\unattend.xml"

Unsigned AppX Installation Attempt Using Add-AppxPackage - PsScript

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

Detects usage of the "Add-AppxPackage" or it's alias "Add-AppPackage" to install unsigned AppX packages

Known False Positives

  • Installation of unsigned packages for testing purposes

MITRE ATT&CK Coverage

TacticTechniques
PersistenceNo specific technique
StealthNo specific technique

Telemetry Coverage

Rule Body

title: Unsigned AppX Installation Attempt Using Add-AppxPackage - PsScript
id: 975b2262-9a49-439d-92a6-0709cccdf0b2
related:
    - id: 37651c2a-42cd-4a69-ae0d-22a4349aa04a
      type: similar
    - id: 9a025188-6f2d-42f8-bb2f-d3a83d24a5af
      type: similar
status: test
description: Detects usage of the "Add-AppxPackage" or it's alias "Add-AppPackage" to install unsigned AppX packages
references:
    - https://learn.microsoft.com/en-us/windows/msix/package/unsigned-package
    - https://twitter.com/WindowsDocs/status/1620078135080325122
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-01-31
tags:
    - attack.persistence
    - attack.stealth
logsource:
    product: windows
    category: ps_script
    definition: Script Block Logging must be enable
detection:
    selection_cmdlet:
        ScriptBlockText|contains:
            - 'Add-AppPackage '
            - 'Add-AppxPackage '
    selection_flag:
        ScriptBlockText|contains: ' -AllowUnsigned'
    condition: all of selection_*
falsepositives:
    - Installation of unsigned packages for testing purposes
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_cmdlet

selection_cmdlet:
    ScriptBlockText|contains:
        - 'Add-AppPackage '
        - 'Add-AppxPackage '

Stage 2: selection_flag

selection_flag:
    ScriptBlockText|contains: ' -AllowUnsigned'

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
ScriptBlockTextmatch
  • -AllowUnsigned corpus 2 (sigma 1, splunk 1)
  • Add-AppPackage
  • Add-AppxPackage
field:"ScriptBlockText" kind:match

Use Icacls to Hide File to Everyone

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

Detect use of icacls to deny access for everyone in Users folder sometimes used to hide malicious files

MITRE ATT&CK Coverage

Telemetry Coverage

ProviderRecord / event type
SysmonEvent ID 1: Process creation

Rule Body

title: Use Icacls to Hide File to Everyone
id: 4ae81040-fc1c-4249-bfa3-938d260214d9
status: test
description: Detect use of icacls to deny access for everyone in Users folder sometimes used to hide malicious files
references:
    - https://app.any.run/tasks/1df999e6-1cb8-45e3-8b61-499d1b7d5a9b/
author: frack113
date: 2022-07-18
modified: 2024-04-29
tags:
    - attack.stealth
    - attack.t1564.001
logsource:
    category: process_creation
    product: windows
detection:
    selection_icacls:
        - OriginalFileName: 'iCACLS.EXE'
        - Image|endswith: '\icacls.exe'
    selection_cmd: # icacls "C:\Users\admin\AppData\Local\37f92fe8-bcf0-4ee0-b8ba-561f797f5696" /deny *S-1-1-0:(OI)(CI)(DE,DC)
        CommandLine|contains|all:
            - '/deny'
            - '*S-1-1-0:'
    condition: all of selection_*
falsepositives:
    - Unknown
level: medium

Stages and Predicates

Stage 0: condition

all of selection_*

Stage 1: selection_icacls

selection_icacls:
    - OriginalFileName: 'iCACLS.EXE'
    - Image|endswith: '\icacls.exe'

Stage 2: selection_cmd

selection_cmd:
    CommandLine|contains|all:
        - '/deny'
        - '*S-1-1-0:'

Indicators

These rows show field, operator, and value matches.

Back to all Sigma rules