PDA

Просмотр полной версии : Zerologon и Active Directory! HackTheBox Fuse Windows (Уровень: Средний)


QuietMoth1
01.02.2022, 23:20
https://forum.antichat.xyz/attachments/29093020/img_e1c4776bfb.png

Приветствую!
Продолжаем проходить лаборатории и CTF с сайтаHackTheBox! В этой лаборатории мы разберём машинуFuse(Windows).
Сегодня мы научимся применять разведку в Active Directory, а так же рассмотрим Zerologonexploit! Начинаем)
Данные:
Задача: Скомпрометировать машину на Windows и взять два флага user.txt и root.txt
Основная рабочая машина: Kali Linux 2021.4
IP адрес удаленной машины - 10.10.10.193
IP адрес основной машины - 10.10.14.21
Начальная разведка и сканирование портов:
Не будем идти по классике сканирования nmap'ом, а попробуем что-то новенькое и это... Masscan:

Masscan - это массовый сканер IP портов. Это самый быстрый сканер Интернета.

С его помощью мы быстро определим открытые порты на машине:


masscan -p1-65535,U:1-65535 10.10.10.193 --rate=500 -e tun0


В параметре -p передаём диапазон портов для сканирования, в параметре -U- диапазон upd портов, --rate указываем количество пакетов в секунду, а последний параметр -e указывает наш интерфейс:

https://forum.antichat.xyz/attachments/29093020/1643738781108.png

Получаем достаточно большое количество портов...
Хорошо, видим самые важные для нас порты: 80/tcp (web), 88/tcp (kerberos), 135/tcp (rpc), 445/tcp (smb) и ещё несколько.
Просканируем их с помощью nmap:


nmap -sC -sV 10.10.10.193 -p 53,80,88,135,445,3269,3268,5985,9389


Указываем параметр:
-sC- Для применения дефолтных (по умолчанию) скриптов к сканированию.
-sV-Для сканирования версий служб, в сторону которых мы сможем позже применить уязвимости и CVE.
-p- Указываем наши порты.

https://forum.antichat.xyz/attachments/29093020/1643739393614.png

Видим доменное имя, добавим его в /etc/hosts:


echo '10.10.10.193 fabricorp.local' >> /etc/hosts


Теперь перейдем на сайт:

https://forum.antichat.xyz/attachments/29093020/1643739485110.png

На сайте висит домен fuse.fabricorp.local, тоже добавляем его в хосты.
Принтеры... Давайте поищем информацию на сайте, на вкладке HTML нажмем на View:

https://forum.antichat.xyz/attachments/29093020/1643739560811.png

Видим пользователей, полазим по этим трём ссылкам и соберем их имена в файл users.txt:

https://forum.antichat.xyz/attachments/29093020/1643739647224.png

Все юзеры которых мы смогли найти на сайте, теперь давайте попробуем дополнить список и запустим Enum4linux:


enum4linux -a 10.10.10.193


К сожалению, он так ничего и не смог найти. Тогда давайте попробуем подобрать пароли к пользователям, будем использовать CrackMapExec:


crackmapexec smb -u users.txt -p users.txt --shares 10.10.10.193


https://forum.antichat.xyz/attachments/29093020/1643739957231.png

Опять ничего... Теперь очередь испытать Cewl:

Cewl - это утилита собранная на Ruby, которая просматривает указанный URL-адрес до указанной глубины и возвращает вордлист (список).


cewl http://fuse.fabricorp.local/papercut/logs/html/index.htm --with-numbers > passwords.txt


Укажем его с параметром--with-numbers который будет принимать слова в которых есть числа также, как и слова просто из букв.

https://forum.antichat.xyz/attachments/29093020/1643740328077.png

Получаем список паролей для брута, повторим эксперимент с CrackMapExec:


crackmapexec smb -u users.txt -p passwords.txt --shares 10.10.10.193 --continue-on-success


Здесь параметр --continue-on-success продолжает работу брутфорса в случае удачи, а не останавливает его.
Брутфорс займет значительное время, поэтому запасёмся терпением и ожидая окончания.
Получение пользователя:

https://forum.antichat.xyz/attachments/29093020/1643740753093.png

Среди неудач видим странный статус логина... Написано что нужно поменять пароль пользователю bhult, давайте сделаем это, применив здесь команду smbpasswd:


smbpasswd -r 10.10.10.193 bhult


Флажком этой команды выступает -r он указывает удаленную машину (remote).
Нас просят вставить старый пароль, выставляем -Fabricorp01.
Новый пароль сделаем - ASDASDqwe1!@и повторим его:

https://forum.antichat.xyz/attachments/29093020/1643741271864.png

Мы успешно сменили пароль этому пользователю, видим перед собой SMB папкуNETLOGON.
Из результатов сканирования CrackMapExec мы знаем NetBIOS имя - FUSE.
Эксплоит и получение флагов:
Давайте попробуем использовать уязвимость Zerologon:

Zerologon - уязвимость в криптографии протокола Microsoft Windows Netlogon, которая делает возможной атаку на контроллеры доменов Microsoft Active Directory, позволяя злоумышленнику выдать свои действия за действия любого компьютера.
С её помощью мы сбросим NTLM-хэш администратора и будем действовать!

Запустим Metasploit и его модуль auxiliary/admin/dcerpc/cve_2020_1472_zerologon:

https://forum.antichat.xyz/attachments/29093020/1643742057034.png

Ура! У нас получилось, теперь используя impacket-secretsdump узнаем все хэши на тачке:


secretsdump.py -no-pass -just-dc fabricorp.local/FUSE\$@10.10.10.193


https://forum.antichat.xyz/attachments/29093020/1643742545117.png

Теперь атакой Path-The-Hash через Evil-WinRM зайдём под администратором:


./evil-winrm.rb -i 10.10.10.193 -u Administrator -H '370ddcf45959b2293427baa70376e14e'


https://forum.antichat.xyz/attachments/29093020/1643742621078.png

Мы Администратор! Выведем два флага:

https://forum.antichat.xyz/attachments/29093020/1643742793007.png

Огромное спасибо за чтение, скоро буду