System Binary Proxy Execution T1218

Tactic: Stealth

Adversaries may bypass process and/or signature-based defenses by proxying execution of malicious content with signed, or otherwise trusted, binaries. Binaries used in this technique are often Microsoft-signed files, indicating that they have been either downloaded from Microsoft or are already native in the operating system. Binaries signed with trusted digital certificates can typically execute on Windows systems protected by digital signature validation. Several Microsoft signed binaries that are default on Windows installations can be used to proxy execution of other files or commands.

Events covered

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

ProviderEventTitle
SysmonEvent ID 1Process creation
SysmonEvent ID 3Network connection
SysmonEvent ID 7Image loaded
SysmonEvent ID 8CreateRemoteThread
SysmonEvent ID 10ProcessAccess
SysmonEvent ID 11FileCreate
SysmonEvent ID 12RegistryEvent (Object create and delete)
SysmonEvent ID 13RegistryEvent (Value Set)
SysmonEvent ID 14RegistryEvent (Key and Value Rename)
SysmonEvent ID 22DNSEvent (DNS query)
SysmonEvent ID 23FileDelete (File Delete archived)
SysmonEvent ID 26FileDeleteDetected (File Delete logged)
SysmonEvent ID 29FileExecutableDetected
Security-AuditingEvent ID 4663An attempt was made to access an object.
Security-AuditingEvent ID 4688A new process has been created.
Security-AuditingEvent ID 5156The Windows Filtering Platform has permitted a connection.
Defender-DeviceEventsCreateRemoteThreadApiCallCreateRemoteThread API call
Defender-DeviceEventsClrUnbackedModuleLoadedCLR unbacked module loaded
Defender-DeviceEventsNtAllocateVirtualMemoryRemoteApiCallRemote virtual memory allocation (NtAllocateVirtualMemory)
Defender-DeviceEventsMemoryRemoteProtectRemote virtual memory protection change
Defender-DeviceEventsNtMapViewOfSectionRemoteApiCallRemote section map (NtMapViewOfSection)
Defender-DeviceEventsQueueUserApcRemoteApiCallRemote APC queued (QueueUserApc)
Defender-DeviceEventsSetThreadContextRemoteApiCallRemote thread context change (SetThreadContext)
Defender-DeviceEventsReadProcessMemoryApiCallReadProcessMemory API call
Defender-DeviceFileEventsanyFile activity
Defender-DeviceFileEventsFileCreatedFile created
Defender-DeviceFileEventsFileRenamedFile renamed
Defender-DeviceImageLoadEventsanyImage load
Defender-DeviceImageLoadEventsImageLoadedImage loaded
Defender-DeviceNetworkEventsanyNetwork activity
Defender-DeviceProcessEventsanyProcess activity
Defender-DeviceProcessEventsProcessCreatedProcess created
ESFexecProcess Execution
ESFcreateFile or Directory Create
ESFwriteFile Write
PowerShellEvent ID 4103Payload Context: ContextInfo User Data: UserData.
PowerShellEvent ID 4104Creating Scriptblock text (MessageNumber of MessageTotal).
MsiInstallerEvent ID 1040Beginning a Windows Installer transaction: %0
MsiInstallerEvent ID 1042Ending a Windows Installer transaction: %0

Authoring guide

These 674 rules share fields, values, and exclusions.

Fields filtered most (129 distinct)

These fields appear most often in rule filters.

FieldRulesHowSample values
CommandLine313contains 199, regex_match 66, in 27, wildcard 22, ends_with 21, match 5, is_not_null 4, starts_with 4, is_null 3, eq 2, length_compare 1, ne 1http://, https://, , .dll, (?i)\w+tps?://\S+\.msi
Image244ends_with 202, wildcard 20, contains 12, starts_with 12, eq 10, is_not_null 7, in 1\rundll32.exe, \cmd.exe, \regsvr32.exe, \mshta.exe, \cscript.exe
process_basename221eq 194, in 20, wildcard 5, ne 4, is_not_null 3, contains 2, starts_with 1rundll32.exe, cmd.exe, mshta.exe, msiexec.exe, regsvr32.exe
OriginalFileName213eq 208, in 4, contains 1, is_null 1, wildcard 1RUNDLL32.EXE, REGSVR32.EXE, InstallUtil.exe, MSHTA.EXE, msiexec.exe
EventType128eq 117, in 14, ne 10, starts_with 2start, exec, creation, deletion, connection_attempted
EventID118eq 115, in 34688, 1, 4104, 4103, 7
parent_process_basename96eq 86, in 9, starts_with 3, contains 1, regex_match 1, wildcard 1explorer.exe, cmd.exe, msiexec.exe, mshta.exe, powershell.exe
ParentImage94ends_with 60, eq 26, starts_with 6, is_not_null 5, contains 4, wildcard 4, in 1, is_null 1, \cmd.exe, \cscript.exe, \mshta.exe, \rundll32.exe
event.type92eq 91, ne 1start, creation, change, deletion
process.args65eq 42, wildcard 19, starts_with 13, contains 5, in 5, ends_with 3-c, *.msc, -i*, --command, -a
process_name38regex_match 28, eq 7, ends_with 1, in 1, ne 1(?i)hh\.exe, (?i)rundll32\.exe, (?i)cmd|powershell, (?i)mshta, rundll32.exe
ParentCommandLine29contains 15, regex_match 4, wildcard 4, is_not_null 3, ends_with 2, eq 1, in 1, is_null 1, length_compare 1, -Embedding, /Processid:{3E000D72-A845-4CD9-BD83-80C07C3B881F}, /Processid:{3E5FC7F9-9A51-4367-9063-A120244FBEC7}, /Processid:{BD54C901-076B-434E-B6C7-17C531F4AB41}
process.parent.args27eq 25, ends_with 2, starts_with 1, wildcard 1-Embedding, /V, /v, Schedule, *$*$*$*$*$*
TargetFilename26ends_with 9, contains 5, starts_with 5, wildcard 5, in 4, eq 1*\Windows\PLA\Reports\*, *\Windows\PLA\Rules\*, .dll, .exe, .sed
file.extension20eq 14, in 5, is_not_null 1hta, cpl, js, bat, cmd

Top indicator values (4170 distinct)

These values appear most often in rule predicates.

FieldKindValueRules (here)Corpus reach
EventTypeeq
start
93388
EventTypeeq
exec
17547
event.typeeq
start
851036
process_basenameeq
RUNDLL32.EXE
68123
process_basenameeq
MSHTA.EXE
4384
process_basenameeq
powershell.exe
42187
process_basenameeq
regsvr32.exe
4074
process_basenameeq
wscript.exe
3584
process_basenameeq
Cmd.exe
31122
process_basenameeq
msiexec.exe
3145
process_basenameeq
cscript.exe
3068
process_basenameeq
InstallUtil.exe
2536
process_basenameeq
CertUtil.exe
1845
process_basenameeq
RegSvcs.exe
1722
process_basenameeq
cmstp.exe
1625
EventIDeq
4688
44284
EventIDeq
1
36226
EventIDeq
4104
17269
OriginalFileNameeq
RUNDLL32.EXE
4072
OriginalFileNameeq
REGSVR32.EXE
2237
OriginalFileNameeq
MSHTA.EXE
1940
Imageends_with
\rundll32.exe
3894
Imageends_with
\regsvr32.exe
2864
Imageends_with
*\mshta.exe
2567
Imageends_with
\cmd.exe
19132
Imageends_with
\powershell.exe
19181
Imageends_with
\cscript.exe
1872
Imageends_with
\pwsh.exe
18166
Imageends_with
\wscript.exe
1874
parent_process_basenameeq
explorer.exe
2150

Exclusions (2360 distinct)

These values appear most often in top-level exclusions.

FieldKindValueRules excluding
process.code_signature.trustedeq
true
22
process_basenameeq
RUNDLL32.EXE
21
process_basenameeq
regsvr32.exe
15
process_basenameeq
Cmd.exe
13
process_basenameeq
powershell.exe
12
process_basenameeq
wscript.exe
12
dest_ipcidr_match
10.0.0.0/8
16
dest_ipcidr_match
127.0.0.0/8
16
dest_ipcidr_match
169.254.0.0/16
16
dest_ipcidr_match
172.16.0.0/12
16
dest_ipcidr_match
192.168.0.0/16
16
user.ideq
S-1-5-18
14
process.argsstarts_with
?:\Program Files (x86)\*
13
process.argsstarts_with
?:\Program Files\*
13
Imagewildcard
?:\Program Files (x86)\*.exe
9

Rules under this technique

These vendors publish rules tagged with this technique.

Platform (all)
Domain (all)

Sigma 255 rules

Elastic 210 rules

Splunk 201 rules

Kusto 8 rules