DLL-инъекция
Что такое DLL-инъекция?
DLL-инъекцияТехника инъекции кода, заставляющая целевой процесс Windows загрузить и выполнить подложенную атакующим динамическую библиотеку (DLL).
DLL-инъекция вынуждает работающий процесс отобразить вредоносную DLL в своё адресное пространство, после чего её DllMain или экспортируемая функция исполняется с привилегиями и доверием хост-процесса. Классически используются OpenProcess, VirtualAllocEx и WriteProcessMemory для записи пути к DLL в память цели, затем CreateRemoteThread по адресу LoadLibraryA. К вариантам относятся reflective DLL loading (без файла на диске), SetWindowsHookEx и злоупотребление ключом реестра AppInit_DLLs. MITRE ATT&CK классифицирует технику как T1055.001 в составе Process Injection. Защита: EDR с межпроцессной трассировкой API, ядерные колбэки (PsSetCreateProcessNotifyRoutineEx), Protected Process, подпись кода, блокировка создания удалённых потоков в критичных процессах и мониторинг Sysmon Event 8.
● Примеры
- 01
Бикон Cobalt Strike мигрирует в svchost.exe через инъекцию DLL и CreateRemoteThread.
- 02
Вредоносное ПО злоупотребляет AppInit_DLLs, чтобы подгружать DLL-кейлогер в каждый интерактивный процесс.
● Частые вопросы
Что такое DLL-инъекция?
Техника инъекции кода, заставляющая целевой процесс Windows загрузить и выполнить подложенную атакующим динамическую библиотеку (DLL). Относится к категории Атаки и угрозы в кибербезопасности.
Что означает DLL-инъекция?
Техника инъекции кода, заставляющая целевой процесс Windows загрузить и выполнить подложенную атакующим динамическую библиотеку (DLL).
Как работает DLL-инъекция?
DLL-инъекция вынуждает работающий процесс отобразить вредоносную DLL в своё адресное пространство, после чего её DllMain или экспортируемая функция исполняется с привилегиями и доверием хост-процесса. Классически используются OpenProcess, VirtualAllocEx и WriteProcessMemory для записи пути к DLL в память цели, затем CreateRemoteThread по адресу LoadLibraryA. К вариантам относятся reflective DLL loading (без файла на диске), SetWindowsHookEx и злоупотребление ключом реестра AppInit_DLLs. MITRE ATT&CK классифицирует технику как T1055.001 в составе Process Injection. Защита: EDR с межпроцессной трассировкой API, ядерные колбэки (PsSetCreateProcessNotifyRoutineEx), Protected Process, подпись кода, блокировка создания удалённых потоков в критичных процессах и мониторинг Sysmon Event 8.
Как защититься от DLL-инъекция?
Защита от DLL-инъекция обычно сочетает технические меры и операционные практики, как описано в определении выше.
● Связанные термины
- attacks№ 862
Инъекция в процесс
Семейство техник обхода защит, при которых атакующий исполняет вредоносный код в адресном пространстве легитимного процесса, наследуя его доверие и идентичность.
- malware№ 417
Бесфайловое вредоносное ПО
Малварь, выполняющаяся преимущественно в памяти и использующая доверенные системные инструменты, без размещения традиционных исполняемых файлов на диске.
- malware№ 649
Вредоносное ПО
Любое программное обеспечение, специально созданное для нарушения работы, повреждения или несанкционированного доступа к компьютерам, сетям или данным.
- defense-ops№ 371
EDR (обнаружение и реагирование на конечных точках)
Технология защиты конечных точек, которая непрерывно фиксирует активность процессов, файлов, реестра и сети, чтобы обнаруживать, расследовать и устранять угрозы на хостах.
- defense-ops№ 682
Mimikatz
Открытый инструмент пост-эксплуатации Windows, извлекающий пароли в открытом виде, хеши, тикеты Kerberos и другие учётные данные из памяти и LSASS.
- defense-ops№ 298
Обход защит (Defense Evasion)
Тактика MITRE ATT&CK (TA0005), охватывающая техники, которыми атакующий уклоняется от обнаружения, отключает средства защиты и скрывает свою активность.