Техники: 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
№ | Техника |
---|