Ingress Tool Transfer T1105

Tactic: Command & Control

Adversaries may transfer tools or other files from an external system into a compromised environment. Tools or files may be copied from an external adversary-controlled system to the victim network through the command and control channel or through alternate protocols such as ftp. Once present, adversaries may also transfer/spread tools between victim devices within a compromised environment (i.e. Lateral Tool Transfer).

Events covered

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

Authoring guide

Patterns shared across the 265 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 (120 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
CommandLine126contains 77, regex_match 29, in 13, match 11, wildcard 6, ends_with 2, eq 2, is_not_null 1http, /create , %appdata%, /addfile , /transfer
process_name86eq 45, in 27, match 8, regex_match 7, wildcard 5curl, bash, wget, certutil.exe, bitsadmin.exe
Image82ends_with 63, contains 9, eq 9, regex_match 8, starts_with 7, in 1, wildcard 1\curl.exe, /curl, \bitsadmin.exe, \certutil.exe, \brave.exe
EventID59eq 594688, 1, 4104, 4103, 15
event.type44eq 43, in 1start, creation, process_started
EventType42eq 33, in 10exec, ProcessRollup2, creation, exec_event, ConnectionEvent
OriginalFileName36eq 36bitsadmin.exe, certutil.exe, powershell.exe, powershell_ise.exe, pwsh.dll
parent_process_name28eq 16, in 9, wildcard 3, regex_match 2, starts_with 1cmd.exe, explorer.exe, bash, conhost.exe, (?i)\x5cUsers\x5cPublic\x5c\.exe
process.args28eq 14, wildcard 10, in 7, starts_with 6, contains 5, match 3, ends_with 1*http*, --directory, --download, --output, -i
host.os.type25eq 24, in 1
TargetFilename18starts_with 5, contains 4, ends_with 4, eq 2, wildcard 2, regex_match 1/tmp/, /dev/shm/, /dev/shm/*, /var/tmp/, .7z
Type16eq 16
sourcetype13eq 13cisco:sfw:estreamer, azure:monitor:activity, cisco:nvm:flowdata, cisco:isovalent:processExec
Initiated9eq 9true, egress, outgoing
data_stream.dataset7eq 6, in 1network_traffic.http, endpoint.events.file, windows.sysmon, windows.sysmon_operational, auditd_manager.auditd

Top indicator values (2264 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
event.typeeq
start
39606
EventIDeq
4688
19313
EventIDeq
1
16237
EventIDeq
4104
15268
EventIDeq
4103
10105
process_namein
curl
1527
process_namein
wget
1019
process_namein
bash
788
process_namein
sh
783
process_namein
zsh
782
CommandLinecontains
http
1439
CommandLinecontains
curl
812
CommandLinecontains
/create
515
CommandLinecontains
%appdata%
513
EventTypeeq
exec
14171
EventTypein
exec
9171
EventTypein
ProcessRollup2
6117
EventTypein
start
6134
Initiatedeq
true
850
process_nameeq
powershell.exe
8104
process_nameeq
curl
718
process_nameeq
curl.exe
615
sourcetypeeq
cisco:sfw:estreamer
832
Imageends_with
\curl.exe
730
Imageends_with
/curl
622
Imageends_with
\bitsadmin.exe
629
Imageends_with
\certutil.exe
643
OriginalFileNameeq
bitsadmin.exe
612
OriginalFileNameeq
certutil.exe
621
parent_process_nameeq
explorer.exe
620

Exclusions (501 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
dest_ipcidr_match
10.0.0.0/8
6
dest_ipcidr_match
127.0.0.0/8
6
dest_ipcidr_match
169.254.0.0/16
6
dest_ipcidr_match
172.16.0.0/12
6
dest_ipcidr_match
192.168.0.0/16
6
dest_ipcidr_match
100.64.0.0/10
5
dest_ipcidr_match
192.0.0.0/24
5
dest_ipcidr_match
192.0.2.0/24
5
dest_ipcidr_match
192.175.48.0/24
5
dest_ipcidr_match
192.31.196.0/24
5
dest_ipcidr_match
192.52.193.0/24
5
dest_ipcidr_match
192.88.99.0/24
5
dest_ipcidr_match
198.18.0.0/15
5
dest_ipcidr_match
198.51.100.0/24
5
dest_ipcidr_match
203.0.113.0/24
5

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

Elastic 61 rules

Splunk 95 rules

Kusto 8 rules

YARA-L 8 rules