Путеводитель по «Империи». Разбираемся с фреймворком PowerShell Empire от установки до закрепления в системе

03.06.2020 13:12

Путеводитель по «Империи». Разбираемся с фреймворком PowerShell Empire от установки до закрепления в системе

Содержание статьи

  • Установка Empire
  • Получение точки опоры
  • Listener
  • Stager
  • Agent
  • Эксплуатация и постэксплуатация Windows с Empire
  • Базовые опции
  • Раздел collection
  • Раздел credentials
  • Раздел management
  • Раздел privesc
  • Раздел situational_awareness
  • Раздел persistence
  • Эксплуатация и постэксплуатация macOS с Empire
  • Эксплуатация и постэксплуатация Linux с Empire
  • Заключение

Многие слышали про Empire — инструмент постэксплуатации Windows, Linux и macOS. В статье я затрону все аспекты работы с ним, а также расскажу, какие именно функции фреймворка мы часто используем на практике. И даже если ты опытный пентестер или редтимер, я думаю, ты отметишь для себя что-то новое и полезное.

Оригинальный проект PowerShell Empire уже давно не поддерживается, так что речь пойдет о его форке от BC-SECURITY. Этот форк продолжает развиваться и обновляться.

WARNING

Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный информацией из этой статьи.

Установка Empire

Если ты используешь Kali Linux, то для установки этого чудо-фреймворка потребуется выполнить всего лишь одну команду:

sudo apt install powershell-empire 

Если на твоем компе другая система, нужно скачать файлы проекта и установить их вручную.

git clone https://github.com/BC-SECURITY/Empire.git cd Empire sudo ./setup/install.sh 

Собственно, все: фреймворк Empire установлен в твоей системе.

Получение точки опоры

Перед тем как мы рассмотрим сам программный комплекс, давай разберемся со следующими понятиями:

  • Listener — это локальный процесс, ожидающий бэкконнект с удаленного атакуемого хоста;
  • Stager — загрузчик Agent’a, то есть полезной нагрузки на удаленный атакуемый хост;
  • Agent — процесс (на удаленном атакуемом хосте), который соединяется с нашим Listener’ом;
  • Module — код, выполняемый Agent’ом для достижения определенных целей.

Запустим Empire командой powershell-empire. Ты увидишь такое окно.

Начало работы Empire
Начало работы Empire

Для получения точки опоры используется следующий порядок действий: создание Listener’a -> создание Stager’a для этого Listener’a -> запуск нагрузки на удаленном хосте (создание Agent’a).

Listener

Для создания Listener’a нужно войти в соответствующий интерфейс командой listeners.

Интерфейс listeners
Интерфейс listeners

Сейчас у нас нет активных листенеров. Создать его можно командой uselistener, но давай посмотрим, какие типы листенеров нам может предложить Empire.

uselistener <TAB> 
Список листенеров Empire
Список листенеров Empire

Поясню, что здесь что:

  • dbx — Dropbox-листенер (хорош, чтобы уклоняться от обнаружения, но требует токен для Dropbox API);
  • http — обычный HTTP/HTTPS-листенер;
  • http_com — HTTP/HTTPS-листенер, использующий объект IE COM;
  • http_foreign — HTTP/HTTPS-листенер для сторонней нагрузки Empire;
  • http_hop — HTTP/HTTPS-листенер для перенаправления команд другому листенеру, что помогает скрыть исходный IP (требует параметр RedirectListener);
  • http_mapi — HTTP/HTTPS-листенер для использования с Liniaal, что позволит получить управление через Exchange-сервер;
  • meterpreter — HTTP/HTTPS-листенер для сторонней нагрузки Meterpreter;
  • onedrive — onedrive-листенер (требует регистрацию приложения https://apps.dev.microsoft.com)
  • redirector — инструмент для перехода от одного агента к другому.

С типами листенеров разобрались, а теперь давай посмотрим, как с ними работать. Для начала выбираем тип (для примера возьмем самый простой — HTTP).

uselistener http 
Выбор типа листенера
Выбор типа листенера

Получить справку по выбранному листенеру можно командой nfo.

Справка по выбранному листенеру
Справка по выбранному листенеру

Использованием прокси уже никого не удивишь, но мы можем назначить дату, когда листенер будет удален, а еще определенные часы работы (это очень удобно!). При использовании HTTPS нужно также указать путь к сертификату. Но теперь к основному: назначим имя листенера, адрес хоста для бэкконнекта и порт.

set Name l1 set Host http://192.168.6.1 set Port 4321 
Назначение основных параметров листенера
Назначение основных параметров листенера

И запустим листенер командой execute.

Запуск листенера
Запуск листенера

Теперь в интерфейсе listeners мы наблюдаем только что запущенный листенер.

Список листенеров
Список листенеров

Переходим ко второй стадии.

Продолжение доступно только участникам

Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».

Присоединяйся к сообществу «Xakep.ru»!

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

1 год

7690 р.

1 месяц

720 р.

Я уже участник «Xakep.ru»

Источник

Последние новости