T1129: 共享模块
摘要
攻击者可能通过加载共享模块来执行恶意载荷。共享模块是可加载到进程中的可执行文件,以提供对可重用代码的访问,例如特定的自定义函数或调用操作系统 API 函数(即 [Native API](https://attack.mitre.org/techniques/T1106))。 攻击者可能利用此功能作为在受害者系统上执行任意载荷的一种方式。例如,攻击者可以将恶意软件的功能模块化到执行各种功能的共享对象中,例如管理 C2 网络通信或执行目标上的特定操作。 Linux 和 macOS 模块加载器可以从任意本地路径加载并执行共享对象。此功能位于 `dlfcn.h` 中的 `dlopen` 和 `dlsym` 等函数中。尽管 macOS 可以执行 `.so` 文件,但通常做法是使用 `.dylib` 文件。(Citation: Apple Dev Dynamic Libraries)(Citation: Linux Shared Libraries)(Citation: RotaJakiro 2021 netlab360 analysis)(Citation: Unit42 OceanLotus 2017) Windows 模块加载器可以被告知从任意本地路径和任意通用命名约定(UNC)网络路径加载 DLL。此功能位于 `NTDLL.dll` 中,是 Windows [Native API](https://attack.mitre.org/techniques/T1106) 的一部分,在运行时从 `LoadLibrary` 之类的函数调用。(Citation: Microsoft DLL)
来源归属
来源:MITRE ATT&CK · 置信度:high
平台
- Linux
- macOS
- Windows
战术
执行
参考来源
- https://attack.mitre.org/techniques/T1129
- https://blog.netlab.360.com/stealth_rotajakiro_backdoor_en/
- https://developer.apple.com/library/archive/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/OverviewOfDynamicLibraries.html
- https://unit42.paloaltonetworks.com/unit42-new-improved-macos-backdoor-oceanlotus/
- https://learn.microsoft.com/troubleshoot/windows-client/deployment/dynamic-link-library
- https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html