Native API T1106

Tactic: Execution

Adversaries may interact with the native OS application programming interface (API) to execute behaviors. Native APIs provide a controlled means of calling low-level OS services within the kernel, such as those involving hardware/devices, memory, and processes. These native APIs are leveraged by the OS during system boot (when other system components are not yet initialized) as well as carrying out tasks and requests during routine operations.

Events covered

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

Authoring guide

These 58 rules share fields, values, and exclusions.

Fields filtered most (47 distinct)

These fields appear most often in rule filters.

FieldRulesHowSample values
EventType21eq 20, in 1exec, memfd_create, connection_attempted, load, load_module
Image21wildcard 9, is_not_null 5, regex_match 5, ends_with 4, starts_with 2, /boot/*, /dev/shm/*, ?memfd:*, ./*
event.type20eq 18, ne 2start, deletion, change
ScriptBlockText12in 6, contains 4, eq 4AdjustTokenPrivileges, CloseHandle, CreateRemoteThread, Add-Win32Type, AddSecurityPackage
event.category11eq 11process, api, file
process_basename10eq 4, starts_with 4, in 3, wildcard 3, is_not_null 2, ends_with 1bash, , *.bin, *.js, *.lua
CommandLine6contains 6, ends_with 1 -c , -cf , -encodedCommand, .hta, .htm
ParentImage6ends_with 2, is_not_null 2, wildcard 2, ?memfd:*, \CompatTelRunner.exe, \cmd.exe, \cscript.exe
process.args6regex_match 3, starts_with 3, eq 2, wildcard 2/proc/(self|[0-9]{1,7})/fd/[0-9]{1,7}, -c, -e*, -r*, if=*
CallTrace5contains 2, starts_with 2, ends_with 1, length_compare 1, regex_match 1), *dbgcore*, 0, >, C:\Windows\System32\ntdll.dll+
TargetFilename4wildcard 3, starts_with 1/Users/*/Library/Application Support/com.apple.TCC/TCC.db, /boot/*, /dev/shm/*, /home/*/*, /run/*
TargetImage4ends_with 2, wildcard 2, contains 1?:\WINDOWS\system32\lsass.exe, :\Program Files (x86)\, :\Program Files\, :\Program Files\Adobe\Acrobat DC\Acrobat\, \lsass.exe
EventID3eq 310, 4688
GrantedAccess3eq 30x1000, 0x1028, 0x1440, 0x1fffff
process.code_signature.exists3eq 3false

Top indicator values (588 distinct)

These values appear most often in rule predicates.

FieldKindValueRules (here)Corpus reach
event.typeeq
start
171036
EventTypeeq
exec
10547
EventTypeeq
memfd_create
77
EventTypeeq
connection_attempted
472
Imagewildcard
?memfd:*
910
Imagewildcard
memfd:*
89
Imagewildcard
/boot/*
418
Imagewildcard
/dev/shm/*
426
Imagewildcard
/lost+found/*
412
Imagewildcard
/proc/*
412
Imagewildcard
/run/user/*
412
Imagewildcard
/sys/*
412
Imagewildcard
/tmp/*
428
Imagewildcard
/var/mail/*
412
Imagewildcard
/var/run/user/*
412
Imagewildcard
/var/tmp/*
426
Imagewildcard
./*
314
Imagewildcard
/root/*
312
event.categoryeq
process
9105
Imageis_not_null
5155
Imageregex_match
/proc/(self|[0-9]{1,7})/fd/[0-9]{1,7}
55
process.argsregex_match
/proc/(self|[0-9]{1,7})/fd/[0-9]{1,7}
33
process.code_signature.existseq
false
3118
process.code_signature.trustedeq
false
3114
process_basenamestarts_with
php*
317
process_basenamewildcard
lua*
329
process_basenamewildcard
perl*
325
process_basenamewildcard
php*
328
process_basenamewildcard
python*
332
process_basenamewildcard
ruby*
327

Exclusions (722 distinct)

These values appear most often in top-level exclusions.

FieldKindValueRules excluding
dest_ipcidr_match
127.0.0.0/8
5
dest_ipcidr_match
169.254.0.0/16
5
dest_ipcidr_match
224.0.0.0/4
5
dest_ipcidr_match
::1
5
dest_ipcidr_match
100.64.0.0/10
4
dest_ipcidr_match
172.16.0.0/12
4
dest_ipcidr_match
192.0.0.0/24
4
dest_ipcidr_match
192.0.0.0/29
4
dest_ipcidr_match
192.0.0.10/32
4
dest_ipcidr_match
192.0.0.170/32
4
dest_ipcidr_match
192.0.0.171/32
4
dest_ipcidr_match
192.0.0.8/32
4
dest_ipcidr_match
192.0.0.9/32
4
dest_ipcidr_match
192.0.2.0/24
4
dest_ipcidr_match
192.168.0.0/16
4

Rules under this technique

These vendors publish rules tagged with this technique.

Platform (all)
Domain (all)

Sigma 14 rules

Elastic 39 rules

Kusto 5 rules