System Services: Service Execution T1569.002

Tactic: Execution

Adversaries may abuse the Windows service control manager to execute malicious commands or payloads. The Windows service control manager (services.exe) is an interface to manage and manipulate services. The service control manager is accessible to users via GUI components as well as system utilities such as sc.exe and Net.

Events covered

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

Authoring guide

Patterns shared across the 85 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 (70 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
CommandLine21contains 10, regex_match 8, eq 1, in 1, is_not_null 1, match 1(?i)((\.exe(\")?(\s+|\s+\/c)\s+)|(psexec.{1,}))|(\"{1,})?..., (?i)sc(\.exe)?\s(.+)?create\s, /account=system , /account=ti , exec
EventID18eq 187045, 4688, 1, 4104, 4697
Image13ends_with 8, eq 3, contains 1, is_not_null 1/usr/bin/systemctl, :\users\public\, :\windows\temp\, ?:\windows\system32\svchost.exe, ?:\windows\syswow64\svchost.exe
ServiceName13eq 8, contains 3, starts_with 2, regex_match 1PSEXESVC, ammyyadmin, atera, (^[a-zA-Z]{4}$)|(^[a-zA-Z]{8}$)|(^[a-zA-Z]{16}$), BTOBTO
ImagePath12contains 6, ends_with 5, match 2, regex_match 1, starts_with 1.exe, %comspec%, .bat & del , ADMIN$, C:\WINDOWS\PAExec-
Provider_Name12eq 12Service Control Manager
OriginalFileName11eq 11sc.exe, psexec.c, net.exe, net1.exe, nircmd.exe
process_name11eq 8, ends_with 1, in 1, ne 1sc.exe, cmd.exe, psexec.exe, \psexesvc.exe, \wmiprvse.exe
event.type10eq 10start, change
Channel6eq 6, in 6
eventtype6eq 6
parent_process_name6eq 4, ends_with 1, match 1services.exe, (?i)(\w{8}\.exe)|(psexec), \PSEXESVC.exe, cmd.exe, mshta.exe
PipeName5contains 2, eq 2, starts_with 1\PSEXESVC, \PAExec, \csexecsvc, \remcom
ServiceFileName4contains 3, match 1, regex_match 1%comspec%, .exe, ADMIN$, ^%systemroot%\\[a-zA-Z]{8}\.exe$, cachedump
Type4eq 4

Top indicator values (546 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
Provider_Nameeq
Service Control Manager
1250
EventIDeq
7045
920
EventIDeq
4688
6313
EventIDeq
1
2237
event.typeeq
start
9606
process_nameeq
sc.exe
429
OriginalFileNameeq
sc.exe
326
OriginalFileNameeq
psexec.c
26
event.categoryeq
process
3128
CommandLineregex_match
(?i)((\.exe(\")?(\s+|\s+\/c)\s+)|(psexec.{1,}))|(\"{1,})?\x5c\x5c.{2,}
22
CommandLineregex_match
(?i)sc(\.exe)?\s(.+)?create\s
22
Detailscontains
powershell
210
ImagePathcontains
powershell
25
PipeNameeq
\PSEXESVC
22
ServiceFileNamecontains
powershell
24
ServiceNamecontains
ammyyadmin
22
ServiceNamecontains
atera
22
ServiceNamecontains
basupportexpresssrvcupdater
22
ServiceNamecontains
basupportexpressstandaloneservice
22
ServiceNamecontains
chromoting
22
ServiceNamecontains
gotoassist
22
ServiceNamecontains
gotomypc
22
ServiceNamecontains
jumpcloud
22
ServiceNamecontains
lmiguardiansvc
22
ServiceNamecontains
logmein
22
ServiceNamecontains
monblanking
22
ServiceNamecontains
parsec
22
ServiceNamecontains
rmanservice
22
ServiceNamecontains
rpcperformanceservice
22
ServiceNamecontains
rpcservice
22

Exclusions (153 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
CommandLineeq
"cmd.exe" /C sc control hptpsmarthealthservice 211
1
Detailswildcard
%SystemRoot%\system32\svchost.exe -k *
1
Detailswildcard
%systemroot%\system32\*.exe
1
Detailswildcard
%windir%\system32\*.exe
1
Detailswildcard
%windir%\system32\svchost.exe -k *
1
Detailswildcard
?:\Windows\system32\*.exe
1
EventDatacontains
gc_service.exe
1
EventDatacontains
gc_worker.exe
1
Hasheseq
214c75f678bc596bbe667a3b520aaaf09a0e50c364a28ac738a02f867a085eba
1
Hasheseq
23aa95b637a1bf6188b386c21c4e87967ede80242327c55447a5bb70d9439244
1
Hasheseq
3ed33e71641645367442e65dca6dab0d326b22b48ef9a4c2a2488e67383aa9a6
1
Hasheseq
5050b025909e81ae5481db37beb807a80c52fc6dd30c8aa47c9f7841e2a31be7
1
Hasheseq
b4db053f6032964df1b254ac44cb995ffaeb4f3ade09597670aba4f172cf65e4
1
Imageends_with
\system32\conhost.exe
1
Imageends_with
\system32\dns.exe
1

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 45 rules

Elastic 14 rules

Splunk 25 rules

Kusto 1 rule