Категория > Новости > HTB Intelligence. Пентестим Active Directory от MSA до KDC - «Новости»
HTB Intelligence. Пентестим Active Directory от MSA до KDC - «Новости»1-12-2021, 00:02. Автор: Timmons |
Hack The Box.warningПодключаться к машинам с HTB рекомендуется только через VPN. Не делай этого с компьютеров, где есть важные для тебя данные, так как ты окажешься в общей сети с другими участниками. РазведкаСканирование портовДобавляем IP-адрес машины в
10.10.10.248 intelligence.htb
И запускаем сканирование портов. Справка: сканирование портовСканирование портов — стандартный первый шаг при любой атаке. Он позволяет атакующему узнать, какие службы на хосте принимают соединение. На основе этой информации выбирается следующий шаг к получению точки входа. Наиболее известный инструмент для сканирования — это Nmap. Улучшить результаты его работы ты можешь при помощи следующего скрипта. ports=$(nmap -p- --min-rate=500 $1 | grep^[0-9] | cut -d '/' -f 1 | tr 'n' ',' | sed s/,$//)nmap -p$ports -A $1 Он действует в два этапа. На первом производится обычное быстрое сканирование, на втором — более тщательное сканирование, с использованием имеющихся скриптов (опция Результат работы скриптаРезультат работы скрипта (продолжение) Видим множество открытых портов, что для Windows вполне характерно:
Еще в сертификате LDAP находим новое доменное имя
10.10.10.248 intelligence.htb dc.intelligence.htb
Первым делом запустим скрипты Nmap для получения информации с DNS ( Внимательно осмотримся на сайте и поищем ценную инфу. Сам сайт на первый взгляд кажется простеньким. Из интересного — на первой странице находим два PDF-документа. Стартовая страница сайта OSINTВ документах ничего важного не обнаружилось. Но из любого курса по OSINT (разведка на основе открытых источников) ты узнаешь, что в документах самое интересное — это метаданные, особенно атрибуты вроде «создатель» или «владелец». Они могут раскрывать имена пользователей, которые потом можно использовать для доступа к учеткам. Для получения метаинформации можно использовать exiftool. Чтобы установить и использовать ее, пишем:
sudo apt install exiftool
exiftool *
Получение метаинформации из документов Точка входаПеречисление аккаунтовМы нашли два имени, а значит, можем поискать аккаунты через аутентификацию Kerberos. Дело в том, что Kerberos нам сообщит, если пользователя нет в базе. Нужно лишь сформировать все возможные названия аккаунтов и просеивать их. К примеру, для пары
Administrator
Guest
name
namesurname
name.surname
names
name.s
sname
s.name
surname
surnamename
surname.name
surnamen
surname.n
nsurname
n.surname
Чтобы составлять юзернеймы по такому шаблону, используем следующий скрипт на Python:
#!/usr/bin/python3
names = ["Jose Williams", "William Lee"]
list = ["Administrator", "Guest"]
for name in names:
n1, n2 = name.split(' ')
for x in [
n1, n1 + n2, n1 + "." + n2, n1 + n2[0], n1 + "." + n2[0], n2[0] + n1, n2[0] + "." + n1,
n2, n2 + n1, n2 + "." + n1, n2 + n1[0], n2 + "." + n1[0], n1[0] + n2, n1[0] + "." + n2
]:
list.append(x)
for n in list:
print(n)
А теперь используем kerbrute для перебора имен. Указываем опцию перечисления пользователей и передаем их список.
./kerbrute_linux_amd64 userenum --dcintelligence.htb -dintelligence.htb namelist.txt
Найденные пользователиИмена пользователей, указанные в документах, и оказались названиями аккаунтов. Дальше, что бы я ни попробовал (даже брут паролей), никуда продвинуться не вышло. Видимо, что‑то упустили на сайте. Возвращаемся к вебу, на этот раз вооружившись Burp Suite. Благодаря Burp Proxy обращаем внимание на место хранения файлов и их названия. Вкладка Burp Proxy Имена файлов — это даты, а значит, мы можем попытаться найти и другие документы. Для этого отправляем запрос в Burp Intruder, чтобы перебрать и номер месяца, и день. Burp Intruder — вкладка PositionBurp Intruder — вкладка Payload (payload 1)Burp Intruder — вкладка Payload (payload 2) Сортируем результат по коду ответа, чтобы найти документы среди сообщений об ошибках. Результат атаки Осталось их скачать. Сначала сохраним нужные нам нагрузки средствами Burp. Для этого отметим в фильтре, что нас интересует только код ответа 200, а затем выбираем Save → Results table. Сохранение нагрузок в файл Поставим в качестве разделителя пробел и выберем только две нагрузки. Я сохранил нагрузки в файл Перейти обратно к новости |