Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Назад Введение в Armitage К началу

8. Удаленное управление Metasploit

8.1 Удаленные соединения

Используя Armitage, вы можете устанавливать соединения с фреймворке Metasploit, запущенном на удаленной машине. Работа с экземпляром Metasploit, запущенном на таком хосте, ничем не отличается от такой на локальной машине. Некоторые возможности Armitage требуют прав на чтение и запись локальных файлов для своей работы. Но при работе с удаленным Metasploit часть из них вообще аннулируется, а другая часть не использует свой потенциал до конца.

Чтобы установить соединение с удаленным Metasploit, при запуске Armitage достаточно указать IP-адрес этого хоста, порт, RPC-имя и RPC-пароль и нажать кнопку "Соединить" (Connect). Настраивать базу данных вам нет необходимости, если она уже запущена в текущей сессии Metasploit.

Для подключения к удаленному Metasploit необходим уже запущенный Metasploit RPC-сервер. У вас есть два варианта, как это сделать. Первый - запустить еще один экземпляр этого сервера. Второй - дать команду на его запуск из уже имеющейся консоли Metasploit. В двух следующих разделам будет детально описано, как это сделать в обоих случаях.

Не подключайте клиентов к удаленному Metasploit, если в этот момент вы производите сетевую атаку с помощью Armitage. Это может привести к децентрализации служб сервера.

8.2 Запуск RPC-демона Metasploit

RPC-демон фреймворка Metasploit может устанавливать как локальные, так и удаленные соединения с Armitage. Для запуска демона введите команду:

sudo msfrpcd -S -U msf -P wiggles -f

В результате демон msfrpcd запустится от имени пользователя msf с паролем wiggles, без прослушивания SSL, на порту по умолчанию 55553.

Я рекомендую вам не включать поддержку SSL с помощью флага -S, когда вы используете msfrpcd. Дело в том, что пакет Java, идущий в комплекте с Metasploit 3.7.0, имеет проблемы с шифрованием. Вы можете получить ошибку "RSA Premaster secret error", если попытаетесь подключить Armitage к Metasploit, используя протокол SSL.

Когда демон msfrpcd загрузиться, запустите Armitage, введите в нем имя пользователя и пароль; нажмите Connect. Armitage соединится с работающим демоном. Если же демон не был загружен до этого момента (или вы ввели неправильные параметры), Armitage будет пытаться подключиться до тех пор, пока вы его не закроете.

Я также рекомендую вам запускать RPC-демон отдельно и только затем подключать его к Armitage. Если с последним произойдет что-либо непредвиденное, вы спокойно можете переподключиться к нему, не потеряв при этом данные и открытые сессии. Armitage на сегодняшний день стабилен в работе, но лишняя предосторожность не помешает.

8.3 Запуск RPC-сервера из консоли Metasploit

Если у вас запущен Metasploit, то вы можете без особых проблем запустить RPC-сервер прямо из консоли фреймворка. Выполните следующее:

load xmlrpc ServerHost=0.0.0.0 ServerPort=port

Значение 0.0.0.0 для сервера ServerHost принуждает Metasploit принимать подключения к нему с любого адреса. Если вам нужно указать конкретные адреса, достаточно изменить значение этого параметра. При указании номера порта убедитесь в том, что вы ввели правильные цифры (например, 55553).

Когда демон RPC запуститься, вы увидите имя пользователя и пароль. Запомните их, так как они понадобятся вам при входе в Armitage.

Запуск RPC-демона Metasploit под Windows

Запуск RPC-демона Metasploit под Windows

Как только RPC-сервер будет загружен, вы можете подключиться к Armitage. Перед этим убедитесь, что поддержка SSL не включена (снят флажок со строки Use SSL.)

Вышеописанный процесс работает как под Linux, так и под Windows.

При эмуляции атак в сфере социальной инженерии или при использовании клиентских эксплоитов, полезно установить Metasploit на удаленном сервере для создания и получения сессий на нем.

8.4 Многопользовательский Metasploit: Начало

Сервер под управлением Armitage можно использовать для объединения усилий нескольких участников, работающих в Metasploit. Первое, что нужно сделать для этого, щапустить Metasploit RPC, как было показано это в предыдущем разделе. Затем, в той же системе и из той же директроии, запустите сервер Armitage:

armitage --server host port user password ssl?

Сервер подключится к запущенному Metasploit на указанном порту, используя имя пользователя и пароль, предоставленный вами в командной строке. Если вам необходимо соединение по SSL с Metasploit, используйте 1 для параметра ssl?. Если такое соединения не нужно, поставьте 0. Для параметра хоста, укажите IP-адрес удаленных машин других пользователей с запущенными на них Armitage, чтобы они смогли соединиться с вашим Metasploit.

Обратите внимание, что деконфликтующий сервер Armitage соединяется с портом Metasploit по формуле "номер порта+1". То есть, если вы используете порт 55553 для Metasploit, то Armitage для деконфликтующего сервера будет использовать порт 55554. Для клиентов-Armitage будут необходимы оба эти порта.

Вышесказанное нуждается в пояснении на примере. Ниже показана команда, которая запускает Metasploit RPC-сервер с именем пользователя msf и паролем wiggles. Порт по-умолчанию для Metasploit 55553. Параметр -S отключает поддержку SSL.

msfrpcd -U msf -P wiggles -S -f

Команда для соединения деконфликтующего сервера Armitage с Metasploit RPC-сервером, находящимся по адресу 192.168.95.3 и прослушивающим порт 55553. Имя пользователя msf и пароль wiggles. Поддержка SSL отключена:

armitage --server 192.168.95.3 55553 msf wiggles 0

Дополнительно, можно указать в строке и MOTD (message of the day). Это сообщение будет показано всем пользователям, которые подключатся к Metasploit, используя Armitage. Давайте посмотрим, как можно задать MOTD:

armitage --motd /path/to/motd.txt --server host port user password ssl?

Стоит также сказать, что у вас нет необходимости запускать клиент Armitage на машине с запущенным Metasploit.

Когда сервер для атаки запущен, Armitage попытается предоставить вам строку доступа к базе данных. Используйте ее для настройки базы данных для вашего первого Armitage-клиента. Кнопка Connect соединяет вас с Metasploit-сервером.

Как только вы установили соединение, Armitage спросит у вас логин для входа. Введите его. Когда вы соединились и база данных настроена, пригласите вашу остальную команду присоединиться к вам. Удостоверьтесь только, что все члены вашей команды имеют у себя самую последнюю версию клиента Armitage. Выбор операционной системы неважен - вы можете использовать любую, но версия Java (например, 1.6) должна быть у всех одинаковой. Также, вашим друзьям нет необходимости знать информацию о настроенной базе данных.

Убедитесь в том, что все члены вашей команды также читали данное руководство, прежде чем подключаться к Armitage. Это будет очень полезным для всех участников. У меня есть товарищи, которые выполняют свои задачи, запуская Hail Mary и используя Clear Hosts на расшаренном Armitage-сервере. Armitage существенно облегчает процесс совместной работы, но если кто-либо из участников не обладает нужными знаниями, его действия могут принести вред общему процессу. Я рекомендую вам использовать опцию -motd[file] для объяснения правил использования расшаренного ресурса Metasploit для всех участников, использующих Armitage.

Наконец, проверьте, что ресурсов сервера, предоставляемых всей команде, хватит на всех. Необходимо, как минимум, 1Gb оперативной памяти. Также, на сервере должна быть запущена операционная система OS Linux.

8.5 Многопользовательский Metasploit

Деконфликтующий сервер Armitage предоставляет дополнительные возможности для клиентов Armitage, подключаемых к Metasploit удаленно. Большинство из этих возможностей будут представлены ниже.

Участники команды могут теперь подключаться к одному запущенному экземпляру Metasploit и взаимодействовать друг с другом. Информация хоста, данные сканирования и сессии предоставляются для общего доступа, используя базу данных Metasploit.

Совместное использование Armitage

Совместное использование Armitage

Меню View - Event Log поможет вам общаться с другими пользователями, подключенными к тому же самому экземпляру Metasploit.

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

Сессии командной оболочки Metasploit автоматически блокируются и разблокируются при их использовании. Если пользователь работает с какой-либо оболочкой, Armitage предупредит вас о том, что она уже используется кем-то.

Файловый браузер имеет возможность загрузки файлов с компьютера-цели на Metasploit-сервер. Если размер файлов небольшой (для его закачивания потребуется меньше, чем десять секунд), Armitage закачает его на вашу машину с сервера. Функция загрузки файлов работает по следующему сценарию: сперва происходит загрузка файла на Metasploit-сервер, а уже оттуда - на целевой удаленный хост.

Для пентестеров эта функция является бесценной. Представьте себе, что вы выполняете проверку системы, о которой вы практически ничего не знаете. Вы просите кого-либо из своей команды загрузить Armitage и соединить его с запущенным у вас экземпляром Metasploit. Все сотрудники вашей компании тотчас же получают доступ к данным сканирования сети, которое вы выполнили. Одновременно они могут общаться с вами в процессе вашей работы, внутри запущенной вами сессии Meatsploit... бесшовно.

Или, представьте себе, что вы выполняете симуляцию фишинг-атаки и получили доступ к удаленной машине. Вся ваша команда теперь может также работать на этом хосте. Один ищет файлы, другой устанавливает pivot и осуществляет поиск внутренних хостов в сети для продолжения атаки, третий выполняет работы по закреплению результата на этой машине. Возможности безграничны.

Вывод некоторых команд meterpreter может оказаться укороченным. Многопользовательский Armitage берет оригинальный вывод команды и передает его клиенту, который отправил эту команду на запуск. Дополнительный вывод игнорируется (однако, команда продолжает выполняться нормально). Подобные ограничения действует, в первую очередь, при запуске скриптов meterpreter.


Назад Оглавление К началу