Detection rules › Sigma
Verclsid.exe Runs COM Object
Detects when verclsid.exe is used to run COM object via GUID
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Stealth | T1218 System Binary Proxy Execution |
Event coverage
| Provider | Event | Title |
|---|---|---|
| Sysmon | Event ID 1 | Process creation |
Rule body yaml
title: Verclsid.exe Runs COM Object
id: d06be4b9-8045-428b-a567-740a26d9db25
status: test
description: Detects when verclsid.exe is used to run COM object via GUID
references:
- https://lolbas-project.github.io/lolbas/Binaries/Verclsid/
- https://gist.github.com/NickTyrer/0598b60112eaafe6d07789f7964290d5
- https://bohops.com/2018/08/18/abusing-the-com-registry-structure-part-2-loading-techniques-for-evasion-and-persistence/
author: Victor Sergeev, oscd.community
date: 2020-10-09
modified: 2025-10-07
tags:
- attack.stealth
- attack.t1218
logsource:
category: process_creation
product: windows
detection:
selection_img:
- Image|endswith: '\verclsid.exe'
- OriginalFileName: 'verclsid.exe'
selection_cli:
CommandLine|contains|all:
- '/S'
- '/C'
filter_main_runtimebroker:
ParentImage|endswith: 'C:\Windows\System32\RuntimeBroker.exe'
CommandLine|contains|all:
- 'verclsid.exe" /S /C {'
- '} /I {'
condition: all of selection_* and not 1 of filter_main_*
falsepositives:
- Unknown
level: medium
Stages and Predicates
Stage 0: condition
all of selection_* and not 1 of filter_main_*Stage 1: selection_img
selection_img:
- Image|endswith: '\verclsid.exe'
- OriginalFileName: 'verclsid.exe'
Stage 2: selection_cli
selection_cli:
CommandLine|contains|all:
- '/S'
- '/C'
Stage 3: not filter_main_runtimebroker
filter_main_runtimebroker:
ParentImage|endswith: 'C:\Windows\System32\RuntimeBroker.exe'
CommandLine|contains|all:
- 'verclsid.exe" /S /C {'
- '} /I {'
Exclusions
Top-level NOT(...) conjuncts: predicates this rule actively suppresses.
| Field | Kind | Excluded values |
|---|---|---|
CommandLine | match | verclsid.exe" /S /C { |
CommandLine | match | } /I { |
ParentImage | ends_with | C:\Windows\System32\RuntimeBroker.exe |
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
CommandLine | match |
|
Image | ends_with |
|
OriginalFileName | eq |
|