T1055: Внедрение кода в процессы
Злоумышленники могут внедрить код в процессы с целью обхода защиты, действующей на уровне процессов, а также для повышения уровня своих привилегий. Внедрение кода в процессы — это способ выполнения произвольного кода в адресном пространстве отдельного активного процесса. Запуск кода в контексте другого процесса может обеспечить доступ к памяти процесса, системным и сетевым ресурсам и, возможно, повышенным привилегиям. Выполнение посредством внедрения кода в процессы также дает возможность избежать обнаружения защитными решениями, поскольку маскируется под легитимный процесс.
Есть много различных способов внедрения кода в процессы, многие из которых задействуют легитимную функциональность. Вариации этой техники существуют для всех популярных ОС и, как правило, специфичны для соответствующих платформ.
Более сложные образцы могут многократно внедрять код в процессы с целью сегментирования модулей во избежание обнаружения, используя именованные каналы или другие механизмы межпроцессных взаимодействий (IPC) в качестве канала коммуникаций.
Какие продукты Positive Technologies покрывают технику
Экспертиза MaxPatrol SIEM
mitre_attck_execution: PT-CR-1908: Execute_Over_WER_Service: Злоумышленники могут воспользоваться уязвимостью службы WER, которая позволяет подменить исполняемый файл и запустить файл злоумышленников с системными привилегиями mitre_attck_defense_evasion: PT-CR-1207: DirtyVanity_Process_Injection: Обнаружена попытка обойти EDR с помощью утилиты Dirty Vanity mitre_attck_defense_evasion: PT-CR-780: Process_Herpaderping_Injection: Использование техники Process Herpaderping, применяемой для обхода антивирусных и защитных механизмов путем изменения содержимого файла после его отображения в памяти, но до инициации первого потока mitre_attck_cred_access: PT-CR-767: Failed_LSASS_Injection: Обнаружена перезагрузка системы из-за процесса lsass.exe hacking_tools: PT-CR-349: Cobalt_Strike_Assembly: Возможное использование программного обеспечения Cobalt Strike hacking_tools: PT-CR-751: Cobalt_Strike_Process_Injection: Внедрение в процесс от имени процесса rundll32.exe hacking_tools: PT-CR-1355: Sliver_GetSystem: Удаленное выполнение команды Sliver GetSystem из С2 фреймворка Sliver
Подтехники
Требуется эксперт. Техника обнаруживается только в связке «Продукт PT + эксперт»
Способы обнаружения
ID | DS0009 | Источник и компонент данных | Процесс: Обращение к процессу | Описание | Отслеживайте просматриваемые процессы, которые могут внедрять вредоносный код в процессы посредством обратных вызовов (callback) локальной памяти потока (TLS) с целью обхода защиты, действующей на уровне процессов, а также для повышения уровня привилегий. |
---|
ID | DS0022 | Источник и компонент данных | Файл: Метаданные файла | Описание | Отслеживайте контекстные данные файла: имя, содержимое (подпись, заголовки, данные или встроенные объекты), пользователя/владельца, разрешения и т. д. |
---|
ID | DS0009 | Источник и компонент данных | Процесс: Изменения в процессе | Описание | Отслеживайте изменения в процессах, которые могут использоваться для внедрения вредоносного кода в процессы посредством обратных вызовов (callback) локальной памяти потока (TLS) с целью обхода защиты, действующей на уровне процессов, а также для повышения уровня привилегий. |
---|
ID | DS0022 | Источник и компонент данных | Файл: Изменение файла | Описание | Отслеживайте изменения в файлах, с помощью которых злоумышленники могут внедрить код в процессы с целью обхода защиты, действующей на уровне процессов, а также для повышения уровня своих привилегий. |
---|
ID | DS0009 | Источник и компонент данных | Процесс: Метаданные процесса | Описание | Сопоставляйте диапазоны памяти процессов с известными копиями легитимного модуля, чтобы выявить несоответствия памяти процессов. |
---|
ID | DS0009 | Источник и компонент данных | Процесс: Вызовы API ОС | Описание | Отслеживание вызовов Windows API, связанных с разными типами внедрения кода, сопряжено с генерацией больших объемов данных. Для эффективной защиты нужно осуществлять сбор данных только при определенных условиях, чтобы выявлять известные вредоносные последовательности вызовов. В противном случае будет трудно выделить вредоносные вызовы API среди множества легитимных. Для этой техники могут использоваться такие вызовы API Windows, как |
---|
ID | DS0011 | Источник и компонент данных | Модуль: Загрузка модуля | Описание | Отслеживайте события, связанные с файлами DLL/PE, особенно события создания этих бинарных файлов, а также загрузки DLL в память процессов. Отслеживайте незнакомые DLL и те, которые обычно не загружаются в память процессов. |
---|
Меры противодействия
ID | M1026 | Название | Управление привилегированными учетными записями | Описание | Используйте Yama (например: /proc/sys/kernel/yama/ptrace_scope) для защиты от внедрения кода в процессы на основе ptrace, ограничивая использование ptrace только привилегированными пользователями. Другие средства защиты включают установку модулей ядра безопасности, обеспечивающих расширенный контроль доступа и ограничения процессов, таких как SELinux, grsecurity и AppArmor. |
---|
ID | M1040 | Название | Предотвращение некорректного поведения | Описание | Некоторые решения для обеспечения безопасности конечных точек могут быть настроены на блокирование некоторых типов инъекций процессов на основе общих последовательностей поведения, которые возникают в процессе инъекции. |
---|