Се­год­ня на прак­тичес­ком при­мере раз­берем зло­упот­ребле­ние спис­ками дос­тупа в Active Directory. Получив кон­троль над акка­унтом поль­зовате­ля, дос­танем учет­ные дан­ные сна­чала из нового менед­жера паролей KeePass, а затем из DPAPI — для дос­тупа к RDP.

На­ша цель — получе­ние прав супер­поль­зовате­ля на машине Puppy с учеб­ной пло­щад­ки Hack The Box. Уро­вень слож­ности задания — сред­ний.

warning

Под­клю­чать­ся к машинам с HTB рекомен­дует­ся с при­мене­нием средств ано­ними­зации и вир­туали­зации. Не делай это­го с компь­юте­ров, где есть важ­ные для тебя дан­ные, так как ты ока­жешь­ся в общей сети с дру­гими учас­тни­ками.

 

Разведка

 

Сканирование портов

До­бав­ляем IP-адрес машины в /etc/hosts:

10.10.11.70 puppy.htb

На этот раз, помимо IP-адре­са, нам дос­тупны учет­ные дан­ные поль­зовате­ля домена.

Информация о машине
Ин­форма­ция о машине

Прос­каниру­ем пор­ты.

Справка: сканирование портов

Ска­ниро­вание пор­тов — стан­дар­тный пер­вый шаг при любой ата­ке. Он поз­воля­ет ата­кующе­му узнать, какие служ­бы на хос­те при­нима­ют соеди­нение. На осно­ве этой информа­ции выбира­ется сле­дующий шаг к получе­нию точ­ки вхо­да.

На­ибо­лее извес­тный инс­тру­мент для ска­ниро­вания — это Nmap. Улуч­шить резуль­таты его работы ты можешь при помощи сле­дующе­го скрип­та:

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

Он дей­ству­ет в два эта­па. На пер­вом про­изво­дит­ся обыч­ное быс­трое ска­ниро­вание, на вто­ром — более тща­тель­ное ска­ниро­вание, с исполь­зовани­ем име­ющих­ся скрип­тов (опция -A).

Результат работы скрипта
Ре­зуль­тат работы скрип­та

Ска­нер нашел 13 откры­тых пор­тов:

  • 88 — служ­ба Kerberos;
  • пор­ты 111, 2049 — служ­ба Network File System (NFS);
  • 135 — Microsoft RPC;
  • 139 — служ­ба сеан­сов NetBIOS, NetLogon;
  • 389 — LDAP;
  • 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.

Пер­вым делом про­верим выдан­ные нам учет­ные дан­ные с помощью NetExec.

nxc smb 10.10.11.70 -u levi.james -p 'KingofAkron2025!'
Результат проверки учетных данных
Ре­зуль­тат про­вер­ки учет­ных дан­ных

По­луча­ем имя кон­трол­лера домена, поэто­му обно­вим запись в фай­ле /etc/hosts.

10.10.11.70 puppy.htb DC.puppy.htb
 

Точка входа

Со­бира­ем информа­цию в домене. Пер­вый шаг — получе­ние спис­ка поль­зовате­лей. Иног­да в опи­сании учет­ных записей мож­но най­ти инте­рес­ную информа­цию и даже пароли.

nxc ldap 10.10.11.70 -u levi.james -p 'KingofAkron2025!' --users
Список пользователей
Спи­сок поль­зовате­лей

Ни­чего инте­рес­ного не находим, но спи­сок поль­зовате­лей в файл сох­раня­ем. Теперь прос­мотрим спи­сок общих катало­гов.

nxc smb 10.10.11.70 -u levi.james -p 'KingofAkron2025!' --shares
Список общих каталогов
Спи­сок общих катало­гов

На сер­вере рас­шарена пап­ка DEV, но для ее прос­мотра у текущей учет­ной записи не хва­тает прав. Оче­вид­ных путей пока нет, поэто­му соберем базу BloodHound.

Справка: BloodHound

Ути­лита BloodHound исполь­зует теорию гра­фов для выяв­ления скры­тых и зачас­тую неп­редна­мерен­ных вза­имос­вязей в сре­де Active Directory. Ее мож­но исполь­зовать, что­бы лег­ко иден­тифици­ровать очень слож­ные пути ата­ки. Помимо самой ути­литы, которая поз­воля­ет прос­матри­вать граф, сущес­тву­ет часть, заг­ружа­емая на уда­лен­ный хост для сбо­ра информа­ции. Она быва­ет в вер­сиях для раз­ных ОС и на раз­ных язы­ках прог­рамми­рова­ния.

Для сбо­ра информа­ции будем исполь­зовать кол­лектор RustHound-CE.

./rusthound-ce -i 10.10.11.70 -d PUPPY.HTB -u levi.james -p 'KingofAkron2025!' -c All -z
Сбор данных BloodHound
Сбор дан­ных BloodHound

Дан­ные соб­рались очень быс­тро. Заг­ружа­ем ито­говый архив в BloodHound-CE и стро­им граф от поль­зовате­ля levi.james.

Граф BloodHound
Граф BloodHound

Продолжение доступно только участникам

Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».

Присоединяйся к сообществу «Xakep.ru»!

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии