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

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

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

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

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

Категории

Все категории
Loading categories
aggrokatz — Aggrokatz — это расширение-плагин агрессора для Cobalt Strike, которое позволяет pypykatz удаленно взаимодействовать с beacon-ами и дает возможность анализировать файлы дампа LSASS и файлы кустов реестра для извлечения учетных данных и других секретов, хранящихся без загрузки файла и без загрузки какого-либо подозрительного кода на beacon. | Kitploit
Инструменты/GitHubGitHub/sec-consult/aggrokatz
Фреймворки для эксплойтовПост-эксплуатацияТестирование на ПроникновениеRed TeamingРазработка Полезной Нагрузки
GitHubsec-consult/aggrokatz

aggrokatz

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

Популярное

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

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

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

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

Смотреть все инструменты →

Описание

Aggrokatz — это расширение-плагин агрессора для Cobalt Strike, которое позволяет pypykatz удаленно взаимодействовать с beacon-ами и дает возможность анализировать файлы дампа LSASS и файлы кустов реестра для извлечения учетных данных и других секретов, хранящихся без загрузки файла и без загрузки какого-либо подозрительного кода на beacon.

Поделиться

aggrokatz

aggro_card

Что это такое

aggrokatz — это расширение плагина Aggressor для CobaltStrike, которое позволяет pypykatz взаимодействовать с биконами удалённо.
Текущая версия aggrokatz позволяет pypykatz анализировать дампы LSASS и файлы кустов реестра для извлечения учётных данных и других секретов без загрузки файла и без загрузки подозрительного кода на бикон (Cobalt Strike там уже есть). В будущем этот проект планирует предоставить дополнительные возможности для скрытных операций, такие как поиск и расшифровка всех секретов DPAPI, кербероастинг и т.д.

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

ВАЖНЫЕ ЗАМЕЧАНИЯ — ПОЖАЛУЙСТА, ПРОЧТИТЕ ЭТО

Снятие дампов LSASS/реестра не является целью этого проекта, только анализ. Причины:

  1. Множество техник дампинга уже реализованы в Cobalt Strike (CS) и широко доступны публике. Недавно мы переключились на использование модифицированной версии CredBandit, которая сбрасывает сырые байты на диск вместо base64. Отличный инструмент, зацените.
  2. Мы хотим сохранить нашу технику дампинга в секрете.

В клиенте CS не используйте "reload" и не пытайтесь вручную выгрузить, а затем перезагрузить скрипт, если вы его изменили. Вы ОБЯЗАТЕЛЬНО должны выгрузить его, закрыть клиент, открыть его заново, а затем загрузить изменённый скрипт. Иначе у вас будут запущены несколько версий одновременно и возникнет множество ошибок и странного поведения!
Во время анализа файлов LSASS/реестра на удалённой стороне, пожалуйста, не взаимодействуйте с конкретным биконом, с которого вы запустили скрипт. Обычно это не вызывает проблем, но я не могу дать никаких гарантий.

Установка

  • Вам потребуется установить и настроить pycobalt. В их репозитории на GitHub есть readme.
  • Вам потребуется установить pypykatz версии не ниже >=0.4.8
  • Вам потребуется Cobalt Strike

Настройка

  • Убедитесь, что файл aggressor.cna из pycobalt настроен и знает расположение вашего интерпретатора Python
  • Измените pycobalt_path в aggrokatz.cna, указав путь к pycobalt.cna
  • В CS используйте окна View > Script Console и Cobalt Strike > Script Manager. Через Script Manager загрузите скрипт aggkatz.cna.

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

  • Если скрипт aggkatz.cna загружен успешно, при щелчке правой кнопкой мыши на биконе появится новый пункт меню pypykatz.
  • Во время анализа вы будете видеть отладочные сообщения в окне Script Console.
  • После завершения анализа результаты будут отображены как в окне Script Console, так и в окне самого бикона.

Параметры меню анализа дампа LSASS

  • LSASS file: Расположение файла lsass.dmp на удалённом компьютере. Также можно использовать UNC-пути для доступа к общим файлам lsass.dmp по SMB.
  • chunksize : Максимальный объём данных, считываемый за один раз
  • BOF file : BOF-файл (Beacon Object File), который позволяет читать по частям. Этот файл будет загружен и выполнен (в памяти) каждый раз при чтении нового фрагмента.
  • (module) : Указывает, какие модули будут анализироваться. По умолчанию: all
  • Output : Задаёт формат(ы) вывода
  • Populate Credential tab : После успешного анализа все полученные учётные данные станут доступны на вкладке Credential в Cobalt Strike. Эта функция в бета-версии
  • Delete remote file after parsing : После успешного анализа дамп LSASS будет удалён с целевой машины

Параметры меню анализа дампа реестра

  • SYSTEM file: Расположение файла SYSTEM.reg на удалённом компьютере. Также можно использовать UNC-пути для доступа к общим файлам по SMB.
  • SAM file (optional): Расположение файла SAM.reg на удалённом компьютере. Также можно использовать UNC-пути для доступа к общим файлам по SMB.
  • SECURITY file (optional): Расположение файла SECURITY.reg на удалённом компьютере. Также можно использовать UNC-пути для доступа к общим файлам по SMB.
  • SOFTWARE file (optional): Расположение файла SOFTWARE.reg на удалённом компьютере. Также можно использовать UNC-пути для доступа к общим файлам по SMB.
  • chunksize : Максимальный объём данных, считываемый за один раз
  • BOF file : BOF-файл (Beacon Object File), который позволяет читать по частям. Этот файл будет загружен и выполнен (в памяти) каждый раз при чтении нового фрагмента.
  • Output : Задаёт формат(ы) вывода

Ограничения

Текущий BOF для чтения файлов поддерживает чтение файлов размером до 4 ГБ. Это можно расширить с помощью некоторых модификаций, но пока такие большие файлы не наблюдались.

Как это работает

TL;DR

Обычно парсер pypykatz выполняет серию операций чтения файлов на диске, но с помощью aggrokatz эти операции чтения туннелируются к бикону с помощью специально созданного BOF (Beacon Object File), который позволяет читать содержимое удалённого файла по частям. Это позволяет pypykatz извлекать все секреты из удалённых файлов без чтения всего файла, захватывая только необходимые фрагменты, где находятся секреты.

Подробно

Чтобы получить полную картину всего процесса, нужно выделить две части:

  1. как pypykatz интегрируется с CobaltStrike
  2. как pypykatz выполняет извлечение учётных данных без чтения всего файла

Интеграция pypykatz с CobaltStrike

CobaltStrike (агент) написан на Java, pypykatz — на Python. Это проблема. К счастью для нас, неизвестный автор создал pycobalt, который предоставляет удобный интерфейс между двумя мирами с полезными API, которые можно вызывать напрямую из Python. Несмотря на то, что pycobalt — замечательная инженерная работа, есть некоторые проблемы/недостатки, на которые нужно указать:

  1. О доверии к проекту pycobalt:
  • Мы пытались связаться с автором, но не получили ответа.
  • Мы не можем гарантировать, что проект pycobalt будет поддерживаться в будущем.
  • Мы не контролируем никакие аспекты разработки pycobalt.
  1. О замеченных технических проблемах:
  • В целом существуют некоторые проблемы с кодировкой между pycobalt и CobaltSrike. Это приводит к тому, что некоторые вызовы API возвращают байты, которые нельзя использовать, потому что часть байтов искажается кодировщиком. Анализируя код, мы приходим к выводу, что большинство проблем с кодировкой/декодировкой связаны с тем, что pycobalt использует STDOUT/STDIN для связи с процессом Java.
  • В частности, вызов API bof_pack, который критически важен для этого проекта, пришлось реализовать как чистый скрипт aggressor и вызывать его из Python, используя только базовые структуры данных (строки и целые числа), а не байты.
  • Доступны только блокирующие API, предоставляемые пакетом pycobalt, без поддержки многопоточности. По крайней мере, мы заметили, что многопоточность случайным образом ломается, но мы этого ожидали.
  • Блокирующее API + отсутствие многопоточности + зависимость от колбэков = пришлось применить несколько странных хаков, чтобы всё заработало.
Скачать инструмент