ATT&CK coverage › Technique

Exfiltration Over Alternative Protocol: Exfiltration Over Unencrypted Non-C2 Protocol T1048.003

Adversaries may steal data by exfiltrating it over an un-encrypted network protocol other than that of the existing command and control channel. The data may also be sent to an alternate network location from the main command and control server.

Events covered

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

ProviderEvent IDTitle
Sysmon1Process creation
Sysmon3Network connection
Sysmon22DNSEvent (DNS query)
PowerShell4104Creating Scriptblock text (MessageNumber of MessageTotal).

Authoring guide

Patterns shared across the 6 rules above: which fields they filter on, what specific values they look for, and what they exclude. Field names are normalized 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 (13 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
Image3ends_with 3, starts_with 1\rundll32.exe, \thunderbird.exe, C:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_, \HxTsr.exe
CommandLine3match 2, regex_match 1, in 1://172.21., ://\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}, ://172.19., C:\windows\system32\davclnt.dll,DavSetCookie, "*\\windows\\system32\\davclnt.dll,*davsetcookie*"
DestinationPort2eq 1, ne 1465, 25, 587, 0
ParentImage2ends_with 2\svchost.exe
OriginalFileName2eq 2RUNDLL32.EXE
ScriptBlockText1match 1New-Object, System.Net.NetworkInformation.Ping, .Send(
Initiated1eq 1true
ParentCommandLine1match 1-s WebClient
tld_len1le 120
dns.question.name1ne 1*.
query_length1gt 1
process_name1eq 1rundll32.exe
parent_process_name1eq 1svchost.exe

Top indicator values (46 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.

FieldKindValueRules (here)Corpus reach
ParentImageends_with\svchost.exe28
CommandLinematchC:\windows\system32\davclnt.dll,DavSetCookie23
Imageends_with\rundll32.exe276
OriginalFileNameeqRUNDLL32.EXE228
ScriptBlockTextmatch.Send(1
ScriptBlockTextmatchNew-Object16
ScriptBlockTextmatchSystem.Net.NetworkInformation.Ping1
Initiatedeqtrue140
DestinationPorteq25251
Imagestarts_withC:\Program Files\Microsoft\Exchange Server\13
Imageends_with\thunderbird.exe12
Imageends_with\HxTsr.exe1
Imagestarts_withC:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_1
DestinationPorteq2512
DestinationPorteq46513
Imageends_with\outlook.exe116
DestinationPorteq58714
CommandLineregex_match://\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}12
CommandLinematch://192.168.1
CommandLinematch://172.26.1

Common exclusions (7 distinct)

Field/operator/value combinations that rules under this technique routinely exclude (top-level not() clauses). 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.

FieldKindValueRules excluding
dns.answers.typein"Pointer"1
dns.answers.typein"PTR"1
dns.answers.typein"SOA"1
dns.answers.typein"SRV"1
All_Traffic.dest_ipin172.16.0.0/121
All_Traffic.dest_ipin10.0.0.0/81
All_Traffic.dest_ipin192.168.0.0/161

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.

Sigma 4 rules

Splunk 2 rules