ATT&CK-CN V1.01 Last Update: 2019-11 [返回索引页]

译者: 林妙倩(清华大学网络研究院网络空间安全实习生)、戴亦仑(赛宁网安) 原创翻译作品,如果需要转载请取得翻译作者同意。

数据来源:ATT&CK Matrices

原文: https://attack.mitre.org/techniques/T1103

术语表: /attack/glossary

AppInit DLLs

注册表键值 AppInit_DLLs 位于 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\WindowsHKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Windows。它所指向的动态链接库(DLL)都会加载到每个使用到 User32.DLL 的进程实际上,这几乎等同于所有程序。因为 user32.dll 是一个十分常见的库。类似于进程注入,攻击者可以滥用这些值,通过使恶意 DLL 被加载并在计算机上独立进程的上下文中运行,实现持久化和特权升级。在 Windows 8 和更高版本中开启安全引导 (secure boot) 模式时,AppInit DLL 功能会被禁用。

缓解

升级到 Windows 8 或更高版本并启用安全引导。使用能够审核和/或拦截未知 DLL 的白名单 工具(如 AppLocker)识别并拦截可能通过 AppInit DLL 执行的潜在恶意软件。

检测

通过加载 user32.dll 的进程监视 DLL 加载,并查找无法识别或未正常加载到进程中的 DLL。 监视 AppInit_DLLs 注册表值,以查找与已知软件、补丁周期等不相关的修改。监视和分析标志着注册表编辑的应用程序编程接口 (API) 调用,如 RegCreateKeyEx 和 RegSetValueEx。 Sysinternals Autoruns 等工具也可用于检测可能尝试持久化的系统更改,包括列出当前的 AppInit DLL。

查找可能由于加载恶意 DLL 的进程而导致的异常进程行为。 不应孤立地看待数据和事件,而应将其视为可能导致其他活动的行为链的一部分,例如为命令与控制建立网络连接、通过披露(Discovery)了解环境细节以及横向移动。