T1620: Отраженная загрузка кода
Злоумышленники могут рефлексивно загружать код в процесс для маскировки выполнения полезной нагрузки. Рефлексивная загрузка включает распределение и выполнение полезных нагрузок непосредственно в памяти процесса, без создания потока или процесса с помощью файлов, записанных на диск (например, путем эксплуатации общих модулей).
Рефлексивно загружаемые полезные нагрузки могут быть скомпилированными бинарными файлами, анонимными файлами (существующими только в оперативной памяти) или фрагментами бесфайлового исполняемого кода (например, позиционно-независимого шелл-кода). Например, выполнив метод Assembly.Load()
через PowerShell, можно загрузить код в работающий процесс.
Рефлексивное внедрение кода очень похоже на внедрение кода в процессы, но отличается тем, что код загружается в память собственного, а не другого процесса. Рефлексивная загрузка помогает избежать обнаружения, основанного на анализе процессов, так как выполнение произвольного кода происходит внутри безопасного процесса. Рефлексивная загрузка полезных нагрузок непосредственно в память помогает избежать создания файлов или других артефактов на диске и позволяет вредоносному ПО сохранять данные в зашифрованном или обфусцированном виде до момента выполнения.
Какие продукты Positive Technologies покрывают технику
Экспертиза MaxPatrol SIEM
mitre_attck_defense_evasion: PT-CR-1866: Process_Injection_By_MSBuild: Злоумышленники могут внедрить шелл-код в другие процессы, вставляя код C# в файлы с расширением .xml и .csproj, предназначенные для MSBuild, чтобы скрыть вредоносную активность и избежать обнаружения mitre_attck_defense_evasion: PT-CR-2489: SysmonQuiet_Usage: Получен доступ к процессу Sysmon, что может быть признаком активности модуля SysmonQuiet. SysmonQuiet — это aggressor script для Cobalt Strike (для его работы требуются привилегии SeDebugPrivilege). SysmonQuiet использует метод Reflective DLL Loading, который автоматически обнаруживает процесс Sysmon и изменяет его EtwEventWrite API, вызывая сбои в Sysmon, пока процесс и его потоки продолжают работать
Способы обнаружения
ID | DS0011 | Источник и компонент данных | Модуль: Загрузка модуля | Описание | Отслеживайте артефакты, созданные в результате аномального выполнения процессов. Например, признаком отраженной загрузки кода в Windows часто является загрузка компонентов среды CLR (mscor.dll, mscoree.dll и clr.dll) в нетипичные процессы, такие как notepad.exe. |
---|
ID | DS0012 | Источник и компонент данных | Сценарий: Выполнение сценария | Описание | Посредством трассировки AMSI и ETW можно обнаружить следы выполнения произвольного кода из памяти потенциально скомпрометированных процессов. |
---|
ID | DS0009 | Источник и компонент данных | Процесс: Вызовы API ОС | Описание | Отслеживайте артефакты, указывающие на отраженную загрузку кода, в частности на использование таких функций .NET, как |
---|