
Локальная техника внедрения PE с использованием аппаратных точек останова и векторизованной обработки исключений для управления загрузкой DLL и выполнения произвольных полезных нагрузок, как это наблюдается в вредоносном ПО KidKadi.
Vectored Overloading — это локальная техника внедрения PE, впервые обнаруженная в вредоносном ПО KidKadi.
Она работает путём манипулирования загрузкой легитимной DLL с использованием аппаратных точек останова (HWBP) и векторизованной обработки исключений (VEH) для изменения объекта секции DLL на лету.
По сути, техника делает следующее:
SEC_IMAGE из легитимной DLL (например, wmp.dll)0 и принудительно задаёт флаг DLL в поле FileHeader->CharacteristicsNtOpenSection и загружает любую легитимную DLLNtOpenSection, VEH эмулирует системный вызов, пропуская его и подменяя выходные параметры (OUT), так что объектом секции теперь становится секция полезной нагрузки. VEH также устанавливает новый HWBP на NtMapViewOfSectionNtMapViewOfSectionOUT) системного вызова и пропускает его выполнение, эмулируя отображение представления вредоносного PEБолее подробный анализ см. в нашем посте в блоге: