Windows Management Instrumentation T1047

Tactic: Execution

Adversaries may abuse Windows Management Instrumentation (WMI) to execute malicious commands and payloads. WMI is designed for programmers and is the infrastructure for management data and operations on Windows systems. WMI is an administration feature that provides a uniform environment to access Windows system components.

Events covered

20 catalog events are tagged with this technique by at least one rule.

Authoring guide

Patterns shared across the 117 rules above: which fields they filter on, what specific values they look for, and what they exclude. The catalog normalizes field names across vendors so Sigma's Image, Elastic's process.name, and Splunk's process_name collapse into one row. Each rule contributes at most once per row.

Fields filtered most (47 distinct)

The fields most rules look at when detecting this technique. The How column shows the operators authors use (eq, wildcard, regex_match, match) and how often each appears. Sample values are concrete examples to start from, not an exhaustive list.

FieldRulesHowSample values
CommandLine57contains 40, regex_match 8, match 6, in 4, ends_with 2, eq 2, starts_with 2, is_not_null 1call, create, (?i)\s(os|logicaldisk|share|cpu|memorychip|useraccount|ni..., call , service
Image45ends_with 40, contains 3, wildcard 2, eq 1, starts_with 1\wmic.exe, \cmd.exe, \powershell.exe, \pwsh.exe, \wmiprvse.exe
process_name40eq 31, in 4, ends_with 2, match 2, regex_match 2wmic.exe, cmd.exe, powershell.exe, certutil.exe, cscript.exe
OriginalFileName38eq 38wmic.exe, powershell.exe, pwsh.dll, bitsadmin.exe, certoc.exe
EventID23eq 234688, 4104, 1, 10, 4103
event.type21eq 20, ne 1start, change, deletion
parent_process_name21eq 14, in 3, match 2, regex_match 2, ends_with 1wmiprvse.exe, WmiPrvSE.exe, cmd.exe, (?i)(WmiPrvSE), (?i)(\x5cwbem\x5cwmiprvse\.exe)
process.args13eq 9, wildcard 3, contains 2, ends_with 1, is_not_null 1, starts_with 1create, delete, get, *-format*:*, *Reflection.Assembly*
ParentImage11ends_with 11, contains 1\wmiprvse.exe, \eqnedt32.exe, \excel.exe, \msaccess.exe, \explorer.exe
ScriptBlockText6contains 4, in 2, eq 1 active_users , basic_info , change_user , win32_service , *invoke-cimmethod*
Type6eq 6
event.category5eq 5process, library, driver
EventType4starts_with 3, eq 1Image loaded, start
file.name4eq 4wmiutils.dll, cmstp.exe.log, cscript.exe.log, dllhost.exe.log, jscript.dll
ImageLoaded3ends_with 3\fastprox.dll, \wbemcomn.dll, \wbem\wbemcomn.dll, \wbemprox.dll, \wbemsvc.dll

Top indicator values (760 distinct)

Specific (field, operator, value) combinations the rules check for, ranked by how many rules under this technique use each one. The Corpus reach column counts how many rules across the entire catalog (any technique) check the same combination. High numbers point to widely-used indicators that are likely noisy on their own; combine them with another condition for useful signal. Blank means the combination is specific to rules under this technique. Click a value to expand the rules under this technique that use it.

FieldKindValueRules (here)Corpus reach
OriginalFileNameeq
wmic.exe
3361
OriginalFileNameeq
powershell.exe
5120
Imageends_with
\wmic.exe
2660
Imageends_with
\powershell.exe
6182
Imageends_with
\pwsh.exe
6168
Imageends_with
\cmd.exe
5130
Imageends_with
\cscript.exe
473
Imageends_with
\mshta.exe
467
Imageends_with
\msiexec.exe
421
Imageends_with
\regsvr32.exe
465
Imageends_with
\rundll32.exe
495
Imageends_with
\wmiprvse.exe
42
Imageends_with
\wscript.exe
475
event.typeeq
start
19606
process_nameeq
wmic.exe
1447
process_nameeq
cmd.exe
777
process_nameeq
powershell.exe
5104
process_nameeq
cscript.exe
425
process_nameeq
wscript.exe
429
EventIDeq
4688
9313
EventIDeq
4104
6268
EventIDeq
1
5237
CommandLinecontains
call
78
CommandLinecontains
create
524
CommandLinecontains
process
45
CommandLinecontains
cscript
315
CommandLinecontains
mshta
314
ParentImageends_with
\wmiprvse.exe
58
event.categoryeq
process
5128
parent_process_nameeq
wmiprvse.exe
511

Exclusions (154 distinct)

Field/operator/value combinations excluded by rules under this technique (top-level not() clauses), sorted by how many rules exclude each. These are the false-positive paths the community has learned to filter out. A new rule that ignores the high-count entries here will likely fire on the same noisy paths. Click a value to expand the rules under this technique that exclude it.

FieldKindValueRules excluding
user.ideq
S-1-5-18
6
Imageends_with
\wmiprvse.exe
3
Imageends_with
\werfault.exe
2
CommandLinecontains
create
2
CommandLinecontains
install
1
CommandLinecontains
uninstall
1
CommandLinecontains
.\\install\\awk.exe
1
CommandLinecontains
/i
1
CommandLinecontains
127.0.0.1
1
CommandLinecontains
://
1
CommandLinecontains
\\\\
1
CommandLinecontains
\\dismhost.exe
1
CommandLinecontains
c:\\windows\\ccm\\
1
process_namematch
(?i)(werfault|wmiprvse)\.exe
2
usercontains
authori|autori
2

Rules under this technique

Every rule in the catalog tagged with this technique, grouped by vendor. Click a rule title for its full predicates, exclusions, and indicators.

Platform (all)
Domain (all)

Sigma 54 rules

Elastic 24 rules

Splunk 37 rules

Kusto 1 rule

YARA-L 1 rule