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

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

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

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

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

Категории

Все категории
Loading categories
spawn — Cobalt Strike BOF, который запускает процесс-жертву, внедряет в него shellcode и выполняет полезную нагрузку. Создан для обхода EDR/пользовательских хуков путём запуска процесса-жертвы с использованием Arbitrary Code Guard (ACG), BlockDll и подмены PPID. | Kitploit
Инструменты/GitHubGitHub/boku7/spawn
Повышение привилегийЭксплуатацияШелл-кодПост-эксплуатацияТестирование на ПроникновениеКомандование и УправлениеRed TeamingРазработка Полезной Нагрузки
GitHubboku7/spawn

spawn

Cobalt Strike BOF, который запускает процесс-жертву, внедряет в него shellcode и выполняет полезную нагрузку. Создан для обхода EDR/пользовательских хуков путём запуска процесса-жертвы с использованием Arbitrary Code Guard (ACG), BlockDll и подмены PPID.

467723 лет назадПроверено Kitploit

Популярное

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

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

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

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

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

SPAWN - BOF для Cobalt Strike

BOF для Cobalt Strike, который порождает жертвенный процесс, внедряет в него шеллкод и выполняет полезную нагрузку. Создан для обхода EDR/UserLand-хуков путём порождения жертвенного процесса с защитой Arbitrary Code Guard (ACG), BlockDll и подменой PPID.

  • Из-за ACG этот BOF не поддерживает шеллкод, который зависит от следующих возможностей:
    • Переключение прав доступа к памяти между RW/RX.
    • RWX-память
  • Для внедрения шеллкода в порождённый процесс, который зависит от указанных выше возможностей, см. проект Hollow BOF
  • За отличное объяснение ACG спасибо блогу Адама Честнера (см. ниже).

Новые возможности (08.01.2021)

  • Порождать жертвенный процесс с защитой Arbitrary Code Guard (ACG), чтобы предотвратить внедрение EDR-решений в DLL порождённого процесса.
    • См. блог Адама Честера "Protecting Your Malware". Эта часть BOF основана на его работе.
  • Внедрение и выполнение шеллкода.

Всплывающий калькулятор из процесса, защищённого ACG

root@kitploit:~
beacon> spawn notepad.exe 6248 /Users/bobby.cooke/git/boku7/SPAWN/popCalc.bin
[*] SPAWN (Bobby Cooke//SpiderLabs|@0xBoku|github.com/boku7)
[+] Получен дескриптор 0x534 для процесса 6248(PID)
[+] Порожден процесс: notepad.exe | PID: 8404 | PPID: 6248
[+] Выделена память RE в удаленном процессе 8404 (PID) по адресу: 0x00000177A72C0000
[+] Записано 280 байт в память удаленного процесса 8404 (PID) по адресу 0x00000177A72C0000
[+] APC поставлен в очередь для главного потока процесса 8404 (PID) по адресу шеллкода 0x00000177A72C0000

Новые возможности (19.07.2021)

  • Интерфейс CNA-скрипта Agressor
root@kitploit:~
beacon> help
    spawn                     Запустить процесс с подмененным PPID и blockDll
beacon> help spawn
Краткое описание: spawn /путь/к/exe PPID
beacon> ps
8264  5536  OneDrive.exe                 x86   1           DESKTOP-KOSR2NO\boku 
beacon> spawn cmd.exe 8264
[*] SPAWN (@0xBoku|github.com/boku7)
Получен дескриптор 0x634 для процесса 8264(PID)
Успех! Порожден процесс: cmd.exe | PID: 5384 | PPID: 8264
  • Подмена PPID
  • Функциональность blockdll, аналогичная Cobalt Strike

Компиляция с помощью x64 MinGW:

root@kitploit:~
x86_64-w64-mingw32-gcc -c spawn.x64.c -o spawn.x64.o

Запуск из консоли Cobalt Strike Beacon

  • После компиляции импортируйте скрипт spawn.cna в Script Manager Cobalt Strike.
root@kitploit:~
beacon> spawn /путь/к/exe PPID /локальный/путь/к/шеллкоду.bin

Список задач

  • Скрипт Agressor для улучшения пользовательского опыта
  • Подмена PPID для улучшения OPSEC отношений родитель-потомок
    • Здесь мы видим, что наш процесс cmd.exe порождается с PPID от OneDrive.exe
  • Реализация функциональности Cobalt Strike blockdll для предотвращения загрузки DLL, не подписанных Microsoft, в память порожденного процесса
    • Мы видим отношение родитель-потомок, и что созданный процесс имеет ограничение Signatures restricted (Microsoft only)
    • Signatures restricted (Microsoft only) не позволяет загружать DLL, не подписанные Microsoft, в наш порожденный процесс
  • Не вызывать сбой процесса beacon, если PE-файл не существует
    • Больше нет сбоя при ошибке создания процесса!
  • Возвращать PID в консоль Cobalt Strike при запуске нового процесса

Зачем я это создал?

1. Чтобы узнать больше о BOF для Cobalt Strike
2. Мне нужна гибкость в выборе жертвенных процессов.
  • Запуск одного и того же процесса для каждой операции fork-and-run кажется мне плохой/предсказуемой OPSEC.
  • Возможно, для этого уже есть методы, встроенные в CS, но я хотел сделать свой.
3. У меня много крутых идей для BOF, которые я хочу реализовать на этой основе.

Благодарности / Ссылки

Подмена PPID и функциональность blockDll
  • Особая благодарность: Adam Chester @_xpn_ + @SEKTOR7net + Raphael Mudge
  • Спасибо за вашу потрясающую работу. Без ваших блогов, видео и замечательного контента я бы не смог опубликовать это.
  • Основные источники по подмене PPID и blockdll:
    • https://blog.xpnsec.com/protecting-your-malware/
    • https://blog.cobaltstrike.com/2021/01/13/pushing-back-on-userland-hooks-with-cobalt-strike/
    • https://institute.sektor7.net/ (Курсы)
Raphael Mudge - Beacon Object Files - Luser Demo
  • https://www.youtube.com/watch?v=gfYswA_Ronw
Cobalt Strike - Beacon Object Files
  • https://www.cobaltstrike.com/help-beacon-object-files
Ссылки на код BOF
anthemtotheego/InlineExecute-Assembly
  • https://github.com/anthemtotheego/InlineExecute-Assembly/blob/main/inlineExecuteAssembly/inlineExecute-Assembly.cna
ajpc500/BOFs
  • https://github.com/ajpc500/BOFs/
trustedsec/CS-Situational-Awareness-BOF
  • https://github.com/trustedsec/CS-Situational-Awareness-BOF
Курс Sektor7 Malware Dev Essentials - изучил технику early bird injection
  • https://institute.sektor7.net/red-team-operator-malware-development-essentials
Скачать инструмент
  • Реализовать различные методы внедрения в удаленный процесс (01.08.21)
  • Реализовать различные методы патчинга удаленного процесса
    • Удаление перехвата NTDLL.DLL в удаленном процессе
    • Обход/патчинг ETW в удаленном процессе
    • Обход/патчинг AMSI в удаленном процессе
    • Загрузка CLR и внедрение сборок .Net