Shared Modules
- ID
- T1129
- Tactics
- TA0002 Execution
- Platforms
- Linux, macOS, Windows
- Data sources
- Module Load, File Creation, Process Creation, Network Connection Creation, Process Metadata, Network Traffic Content, File Access
- Source
- attack.mitre.org
- MITRE last modified
- 12 Sep 2026
Adversaries may execute malicious payloads via loading shared modules. Shared modules are executable files that are loaded into processes to provide access to reusable code, such as specific custom functions or invoking OS API functions (i.e., Native API).
Adversaries may use this functionality as a way to execute arbitrary payloads on a victim system. For example, adversaries can modularize functionality of their malware into shared objects that perform various functions such as managing C2 network communications or execution of specific actions on objective.
The Linux & macOS module loader can load and execute shared objects from arbitrary local paths. This functionality resides in dlfcn.h in functions such as dlopen and dlsym. Although macOS can execute .so files, common practice uses .dylib files.[1][2][3][4]
The Windows module loader can be instructed to load DLLs from arbitrary local paths and arbitrary Universal Naming Convention (UNC) network paths. This functionality resides in NTDLL.dll and is part of the Windows Native API which is called from functions like LoadLibrary at run time.[5]
Detection
- DET0018 Behavior-chain, platform-aware detection strategy for T1129 Shared Modules
Data components: Module Load, File Creation, Process Creation, Network Connection Creation, Process Metadata, Network Traffic Content, File Access
Mitigations (1)
- M1038 Execution Prevention
Identify and block potentially malicious software executed through this technique by using application control tools capable of preventing unknown modules from being loaded.
Groups (1)
Software (22)
- S0032 gh0st RAT
- S0196 PUNCHBUGGY
- S0203 Hydraq
- S0352 OSX_OCEANLOTUS.D
- S0373 Astaroth
- S0377 Ebury
- S0415 BOOSTWRITE
- S0438 Attor
- S0455 Metamorfo
- S0467 TajMahal
- S0501 PipeMon
- S0520 BLINDINGCAN
- S0567 Dtrack
- S0603 Stuxnet
- S0607 KillDisk
- S0661 FoggyWeb
- S0673 DarkWatchman
- S1039 Bumblebee
- S1078 RotaJakiro
- S1154 VersaMem
- S1185 LightSpy
- S9050 Vidar
