tgoop.com/codeby_sec/9438
Last Update:
Исследователи из SpecterOps продемонстрировали инструменты для извлечения памяти процесса LSASS через протокол WMI. В данной статье приведены отличные от Win32_Process классы, позволяющие достичь той же функциональности.
Наиболее близкий к Win32_Process класс WMI. Win32_Process — это канонический пример горизонтального перемещения в WMI, и именно его в основном используют для этих целей.
В MSFT_MTProcess есть метод CreateProcess, который принимает аргумент командной строки, как и Win32_Process. Однако у этого класса есть существенный недостаток: он существует только в Windows Server 2016 и более поздних версиях. Это означает, что он недоступен на рабочих станциях, но вызовет выполнение данного двоичного файла, такого как Win32_Process.
Вторым интересным методом для MSFT_MTProcess является CreateDump. Если необходимо удаленно/локально создать дамп процесса без добавления каких-либо новых инструментов, то можно использовать метод CreateDump.
Этот класс использует ту же технику, что и дамп через диспетчер задач (нажатие на процесс правой кнопкой мыши и создание дампа). Это загружает dbghelpd.dll и вызывает MiniDumpWriteDump в экземпляре процесса, который ему предоставляют. Однако цепочка выполнения процесса немного отличается. Вместо того, чтобы диспетчер задач загружал библиотеку DLL, тут уже есть процесс WmiPrvSE, который завершает загрузку и выполняет вызов функции.
⏺️WMI_Proc_Dump.py — инструмент, использующий класс MSFT_MTProcess для удалённого дампа процесса при работе с Windows Server 2016 или более поздней версией. Он вызывает MSFT_MTProcess для дампа процесса, который автоматически записывается в C:\Windows\Temp\<Process_Name>.dmp.
Однако, если пользователь захочет переименовать это во что-то менее подозрительное, это можно сделать через CIM_DataFile.
python wmi-proc-dump.py user:pass@hostname -pid 580
python wmi-proc-dump.py user:pass@hostname -proc lsass.exe
python wmi-proc-dump.py user:pass@hostname -proc lsass.exe -rename chrome-debug.dmp
⏺️mtprocess.py - второй скрипт, реализующий метод CreateProcess класса MSFT_MTProcess. Кроме того, этот скрипт позволяет автоматически установить класс MSFT_MTProcess на рабочей станции.
python mtprocess.py -exec user:pass@hostname calc.exe
python mtprocess.py -exec -cimv2 user:pass@hostname calc.exe