T1055.011: Внедрение в дополнительную память окна (EWM)
Злоумышленники могут внедрить вредоносный код в процессы через дополнительную память окна (EWM) с целью обхода защиты, действующей на уровне процессов, а также для повышения уровня своих привилегий. Внедрение в дополнительную память окна — это способ выполнения произвольного кода в адресном пространстве отдельного активного процесса.
Перед созданием окна графические процессы в Windows должны задать или зарегистрировать класс окна, который будет определять внешний вид и поведение окна (посредством процедур окна, представляющих собой функции, обрабатывающие ввод и вывод данных). Регистрация новых классов окна может включать запрос до 40 байт дополнительной памяти окна, которые присоединяются к выделенной памяти каждого экземпляра класса. Эта дополнительная память окна используется для хранения данных, специфичных для данного окна, и использует специальные функции API для задания и получения этих значений .
Несмотря на малый размер дополнительной памяти окна, она может вмещать 32-битный указатель, который часто используется для указания на процедуру окна. Вредоносное ПО может задействовать эту область памяти в цепочке атаки, включающей запись кода в совместно используемые разделы памяти процесса, размещение указателя на код в EWM и инициирование выполнения посредством передачи управления адресу в EWM процесса.
Выполнение через внедрение в EWM может обеспечить доступ к памяти целевого процесса и, возможно, повышенным привилегиям. Запись полезных нагрузок в совместно используемые разделы памяти также позволяет избежать использования часто отслеживаемых вызовов API, таких как WriteProcessMemory
и CreateRemoteThread
. Более сложные образцы вредоносного ПО также потенциально могут обходить такие механизмы защиты, как запрет выполнения данных (DEP), комбинируя вызовы процедур окна и других системных функций, которые перезаписывают полезную нагрузку в исполняемой секции целевого процесса .
Запуск кода в контексте другого процесса может обеспечить доступ к памяти процесса, системным и сетевым ресурсам и, возможно, повышенным привилегиям. Выполнение посредством внедрения в дополнительную память окна также дает возможность избежать обнаружения защитными решениями, поскольку маскируется под легитимный процесс.
Какие продукты Positive Technologies покрывают технику
Описание методов обнаружения техники пока недоступно
Способы обнаружения
ID | DS0009 | Источник и компонент данных | Процесс: Вызовы API ОС | Описание | Отслеживайте вызовы API, связанные с составлением списков EWM и манипулированием ими, такие как GetWindowLong и SetWindowLong. Вредоносное ПО, использующее эту технику, также использовало SendNotifyMessage для запуска связанной оконной процедуры и последующего внедрения вредоносного кода . |
---|
Меры противодействия
ID | M1040 | Название | Предотвращение некорректного поведения | Описание | В некоторых решениях для обеспечения безопасности конечных точек можно настроить блокирование определенных типов внедрения кода в процессы на основе детектирования распространенных последовательностей действий, характерных для процесса внедрения. |
---|