T1055.015 - ListPlanting

Техники:  T1055 , T1055.001 , T1055.002 , T1055.003 , T1055.004 , T1055.005 , T1055.008 , T1055.009 , T1055.011 , T1055.012 , T1055.013 , T1055.014 , T1055.015

Злоумышленники могут использовать элементы управления просмотром списков для внедрения вредоносного кода в захваченные процессы, чтобы обойти защиту, основанную на процессах, и, возможно, повысить привилегии. ListPlanting - это метод выполнения произвольного кода в адресном пространстве отдельного живого процесса.(Цитата: Hexacorn Listplanting) Код, выполняемый с помощью ListPlanting, может также ускользнуть от обнаружения средствами защиты, поскольку выполнение маскируется под легитимный процесс.

Элементы управления списком - это окна пользовательского интерфейса, используемые для отображения коллекций элементов.(Цитата: Microsoft List View Controls) Информация о настройках приложения для просмотра списка хранится в памяти процесса в элементе управления SysListView32.

ListPlanting (форма передачи сообщений «атака на осколки») может быть выполнена путем копирования кода в виртуальное адресное пространство процесса, использующего элемент управления list-view, и последующего использования этого кода в качестве пользовательского обратного вызова для сортировки элементов списка. (Цитата: Modexp Windows Process Injection) Злоумышленники должны сначала скопировать код в пространство памяти целевого процесса, что может быть сделано различными способами, включая прямое получение хэндла к дочернему элементу SysListView32 окна процесса-жертвы (через вызовы Windows API, такие как FindWindow и/или EnumWindows) или другие методы Process Injection.

Некоторые варианты ListPlanting могут выделять память в целевом процессе, но затем использовать оконные сообщения для копирования полезной нагрузки, чтобы избежать использования хорошо контролируемой функции WriteProcessMemory. Например, злоумышленник может использовать API-функции PostMessage и/или SendMessage для отправки сообщений LVM_SETITEMPOSITION и LVM_GETITEMPOSITION, эффективно копируя полезную нагрузку по 2 байта за раз в выделенную память.(Цит. по: ESET InvisiMole June 2020)

Наконец, полезная нагрузка запускается путем отправки сообщения LVM_SORTITEMS дочернему окну процесса SysListView32, при этом полезная нагрузка в только что выделенном буфере передается и выполняется как обратный вызов ListView_SortItems.

https://attack.mitre.org/techniques/T1055/015

← Назад

Визуализация смежных техник для T1055.015

Отрасль:
 с подтехниками
Техника

Закрыть