Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
PersistBOF — BOF для автоматизации общих задач закрепления для red teamers | Kitploit
Инструменты/GitHubGitHub/n4kedturtle/persistbof
Повышение привилегийГенерация полезной нагрузкиМеханизмы персистентностиПост-эксплуатацияRed Teaming
GitHubn4kedturtle/persistbof

PersistBOF

BOF для автоматизации общих задач закрепления для red teamers

Репозиторий
300433 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

PersistBOF

Инструмент для автоматизации распространенных механизмов персистентности. В настоящее время поддерживает Print Monitor (SYSTEM), Time Provider (Network Service), Start folder shortcut hijacking (User), Junction Folder (User), Xll Add-In (User).

Использование

Клонируйте, выполните make, добавьте .cna в клиент Cobalt Strike.

запустите: help persist-ice в консоли CS

Синтаксис:

  • persist-ice [PrintMon, TimeProv, Shortcut, Junction, Xll] [persist or clean] [arg1] [arg2];

Обзор техник

Все эти техники полагаются на DLL-файл, который размещается на диске отдельно. Он намеренно не является частью BOF.

Xll Add-in

Создайте DLL с экспортом xlAutoOpen(). Переименуйте .dll в .xll и поместите в %appdata%\Microsoft\Addins. Будет загружаться при каждом открытии Excel без уведомления. Записывает ключ реестра в HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\{номер версии}\Excel\Options, укажите правильный номер версии, так как их может быть несколько.

Пример:

  • persist-ice Xll persist XllName.xll 16
  • persist-ice Xll clean XllName.xll 16 > Удалит ключ реестра и попытается удалить DLL.

Print Monitor

DLL ОБЯЗАТЕЛЬНО должна быть на диске и находиться в месте, указанном в PATH (порядок поиска DLL) ДО запуска BOF. Иначе она не загрузится. DLL будет немедленно загружена процессом spoolsv.exe с правами SYSTEM. Это можно использовать как для повышения привилегий с администратора до SYSTEM, так и для персистентности. Будет выполняться при запуске системы. Для запуска требуются повышенные привилегии.

  • Демонстрационная DLL Print Monitor в проекте

Пример:

  1. загрузите NotMalware.dll в C:\Windows\NotMalware.dll
  2. persist-ice PrintMon persist TotesLegitMonitor NotMalware.dll
  3. Немедленно выполняется как SYSTEM
  4. Будет выполняться при запуске до удаления
  5. persist-ice PrintMon clean TotesLegitMonitor C:\Windows\NotMalware.dll > Удалит ключи реестра и выгрузит DLL, затем попытается удалить DLL, если указан правильный путь. Должно успешно.

Time Provider

Загружается процессом svchost.exe как NETWORK SERVICE (готовьте картошку!) при запуске после выполнения BOF. Для запуска требуются повышенные привилегии.

  • Демонстрационная DLL Time Provider в проекте

Пример:

  • persist-ice TimeProv persist TotesLegitTimeProvider C:\anywhere\NotMalware.dll
  • persist-ice TimeProv clean TotesLegitTimeProvider C:\anywhere\NotMalware.dll > Удалит ключи реестра и попытается удалить DLL, если указан правильный путь. Вероятно, завершится неудачей, так как DLL не выгружается процессом.

Junction Folder

Та же техника, что была продемонстрирована в утечках Vault 7. Выполняется при входе пользователя. Не требует повышенных привилегий. DLL будет загружена в explorer.exe

ПРИМЕЧАНИЕ: Для корректной работы это должна быть DLL COM-сервера. Вы можете выполнять код из DllRegisterServer, DllMain или DllGetClassObject в зависимости от ваших целей. Убедитесь, что реализованы другие необходимые экспорты.

Пример:

  • persist-ice Juction persist TotesLegitFolder C:\user-writable-folder\NotMalware.dll Сохраните CLSID
  • persist-ice Juction clean TotesLegitFolder C:\user-writable-folder\NotMalware.dll 6be5e092-90cc-452d-be83-208029e259e0 > Удалит ключи реестра, папку связи (junction folder) и попытается удалить DLL.

Start Folder Hijack

Создайте новую папку, доступную для записи пользователю, скопируйте в нее уязвимый для перехвата исполняемый файл Windows, затем создайте ярлык в папке автозагрузки. Выполняется при входе пользователя. Не требует повышенных привилегий.

Пример:

  • persist-ice Shortcut persist C:\TotesLegitFolder C:\Windows\System32\Dism.exe > загрузите вашу DLL как прокси-библиотеку dismcore.dll в C:\TotesLegitFolder
  • persist-ice Shortcut clean C:\TotesLegitFolder C:\Windows\System32\Dism.exe > Попытается удалить все файлы в новой папке, затем удалить саму папку. Если DLL все еще загружена в процесс, это не удастся.

Ссылки

https://stmxcsr.com/persistence/print-monitor.html

https://stmxcsr.com/persistence/time-provider.html

https://pentestlab.blog/2019/10/28/persistence-port-monitors/

https://blog.f-secure.com/hunting-for-junction-folder-persistence/

https://attack.mitre.org/techniques/T1547/010/

https://attack.mitre.org/techniques/T1547/003/

https://attack.mitre.org/techniques/T1547/009/

Скачать инструмент