Се­год­ня я покажу ряд атак ESC13 на служ­бу сер­тифика­ции Active Directory, в резуль­тате которых мы зах­ватим домен Windows. На пути к это­му при­дет­ся решить еще нес­коль­ко проб­лем: получить сес­сию на хос­те через уяз­вимый веб‑сер­вис, под­менить ярлык, вскрыть хеш пароля при помощи UnPAC the hash, исполь­зовать при­нуди­тель­ную аутен­тифика­цию и ата­ку Shadow Credentials и при­менить дру­гие тех­ники атак на AD.

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

warning

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

 

Разведка

 

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

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

10.10.11.17 mist.htb

И запус­каем ска­ниро­вание пор­тов.

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

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

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

#!/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

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

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

Ска­нер обна­ружил все­го один откры­тый порт: 80 — веб‑сер­вер Apache 2.4.52. На сай­те нас ожи­дает сис­тема Pluck 4.7.18.

Главная страница сайта
Глав­ная стра­ница сай­та
 

Точка входа

При попыт­ке перей­ти к управле­нию в сис­теме нас встре­тит фор­ма аутен­тифика­ции.

Форма аутентификации
Фор­ма аутен­тифика­ции

Пер­вым делом сто­ит про­верить, есть ли для обна­ружен­ной CMS готовые экс­пло­иты. Идем за ними пря­миком в Google.

Поиск эксплоитов в Google
По­иск экс­пло­итов в Google

Об­наружи­ваем, что в этой вер­сии Pluck есть воз­можность раз­местить веб‑шелл через заг­рузку модуля и тем самым получить RCE. Но проб­лема в том, что спер­ва нуж­но получить дос­туп к управле­нию веб‑при­ложе­нием.

Так как вер­сия при­ложе­ния не самая новая, перехо­дим к поис­ку дру­гих экс­пло­итов. В модуле albums в фун­кции получе­ния изоб­ражений есть уяз­вимость обхо­да катало­га, что поз­волит нам получить содер­жимое любого фай­ла.

Описание уязвимости
Опи­сание уяз­вимос­ти

Но при­мер из PoC не сра­ботал, зап­рос был заб­локиро­ван.

Сообщение о блокировке
Со­обще­ние о бло­киров­ке

Пос­мотрим, какие еще есть инте­рес­ные модули и фай­лы. Для это­го прос­каниру­ем катало­ги с помощью feroxbuster. При запус­ке исполь­зуем сле­дующие парамет­ры:

  • -u — URL;
  • -d — глу­бина ска­ниро­вания.
feroxbuster -u http://mist.htb/ -d 2
Результат сканирования каталогов
Ре­зуль­тат ска­ниро­вания катало­гов

Прой­дем­ся по най­ден­ным катало­гам и заметим, что дирек­тория /data/settings/modules/albums не индекси­рует­ся и мы можем получить дос­туп ко всем фай­лам внут­ри нее.

Содержимое каталога albums
Со­дер­жимое катало­га albums

Те­перь исполь­зуем най­ден­ную ранее уяз­вимость LFI для чте­ния содер­жимого фай­ла admin_backup.php.

Содержимое файла admin_backup.php
Со­дер­жимое фай­ла admin_backup.php

В фай­ле есть какой‑то хеш, поп­робу­ем его подоб­рать.

 

Точка опоры

Бру­тить хеш будем с помощью hashcat. У него есть воз­можность авто­мати­чес­кого опре­деле­ния типа хеша, поэто­му переда­ем ему толь­ко хеш и сло­варь для перебо­ра. Но под этот фор­мат под­ходит нес­коль­ко алго­рит­мов, о чем ути­лита нам и сооб­щит.

hashcat 'c81dd.....ce81e' rockyou.txt
Вывод hashcat
Вы­вод hashcat

Из пред­став­ленных алго­рит­мов наибо­лее популя­рен SHA2-512. При пов­торном запус­ке hashcat добавим номер алго­рит­ма в парамет­ре -m.

hashcat -m 1700 'c81dd.....ce81e' rockyou.txt
Результат подбора пароля
Ре­зуль­тат под­бора пароля

С этим паролем мож­но авто­ризо­вать­ся в сис­теме Pluck и поп­робовать получить RCE через заг­рузку собс­твен­ного модуля.

Главная страница Pluck
Глав­ная стра­ница Pluck

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

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

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

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

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

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

    Подписаться

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