Содержание статьи
Наша цель — получение прав суперпользователя на машине Office с учебной площадки Hack The Box. Уровень задания — сложный.
warning
Подключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками.
Разведка
Сканирование портов
Добавляем IP-адрес машины в /
:
10.10.11.3 office.htb
И запускаем сканирование портов.
Справка: сканирование портов
Сканирование портов — стандартный первый шаг при любой атаке. Он позволяет атакующему узнать, какие службы на хосте принимают соединение. На основе этой информации выбирается следующий шаг к получению точки входа.
Наиболее известный инструмент для сканирования — это Nmap. Улучшить результаты его работы ты можешь при помощи следующего скрипта:
#!/bin/bashports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)nmap -p$ports -A $1
Он действует в два этапа. На первом производится обычное быстрое сканирование, на втором — более тщательное сканирование, с использованием имеющихся скриптов (опция -A
).
Сканер нашел множество открытых портов, что вполне естественно для контроллера домена:
-
53
— DNS; -
80
(HTTP) — веб‑сервер Apache httpd 2.4.56; -
88
— Kerberos; -
139
— служба сеансов NetBIOS, NetLogon; -
389
— LDAP; -
443
(HTTPS) — веб‑сервер Apache httpd 2.4.56; -
445
— SMB; -
464
— служба смены пароля Kerberos; -
593
(HTTP-RPC-EPMAP) — используется в службах DCOM и MS Exchange; -
636
— LDAP с шифрованием SSL или TLS; -
3268
(LDAP) — для доступа к Global Catalog от клиента к контроллеру; -
3269
(LDAPS) — для доступа к Global Catalog от клиента к контроллеру через защищенное соединение; -
5985
— служба удаленного управления WinRM; -
9389
— веб‑службы AD DS.
Как правило, в таких случаях первым делом стоит смотреть SMB, но на веб‑сервере развернута Joomla, а она может быть уязвима.
Точка входа
Когда имеем дело с Joomla, первым делом следует использовать специализированный сканер — JoomScan.
joomscan -u http://10.10.11.3
Определяем версию (4.2.7) и тут же пробуем найти для нее эксплоиты. Первым делом идем в Google.
И сразу узнаём, что в нашей версии есть уязвимость CVE-2023-23752, что позволит нам получить учетные данные для подключения к базе данных. Для этого будем использовать найденный эксплоит.
Запускаем и указываем адрес:
python3 CVE-2023-23752.py -u http://10.10.11.3
Уязвимость заключается в неправильной проверке доступа. Эксплоит проверяет различные API, которые могут вернуть учетные данные для подключения к базе данных. Однако для авторизации в CMS полученный таким образом пароль не подошел, а других пользователей, кроме администратора, найти не удалось.
В этом случае используем недочет протокола Kerberos: на запрос тикета пользователя могут приходить ответы с разными кодами ошибок. Один — при запросе тикета для несуществующего пользователя, другой — в ответ на неверный пароль. Таким образом, можно методом перебора узнать, какие пользователи есть в домене. Для этого используем утилиту kerbrute.
kerbrute_linux_amd64 userenum --dc dc.office.htb -d office.htb xato-net-10-million-usernames.txt
Сохраняем найденных пользователей в файл и спреим полученный ранее пароль с помощью NetExec.
nxc smb 10.10.11.3 -u users.txt -p 'H0lOgrams4reTakIng0Ver754!' --smb-timeout 3
Теперь у нас есть валидная учетная запись, что позволяет провести базовую разведку в домене.
Первым делом получим список всех пользователей.
nxc ldap 10.10.11.3 -u dwolfe -p 'H0lOgrams4reTakIng0Ver754!' --users
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»