Представь, что мы скомпрометировали привилегированные учетные записи, используя разные техники повышения привилегий, распространились по сети, скрылись от средств обнаружения, но неожиданно потеряли контроль над доменом, потому что администратор по какой-то причине сменил пароль! В сегодняшней статье мы разберем способы сохранить административный доступ, даже если администратор сменил пароли или разрешения.
Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный информацией из этой статьи.
Один из способов сохранить доступ к системе — сформировать Golden Ticket: пароль учетной записи krbtgt
не будет изменен при тех же условиях, при которых может быть изменен пароль администратора.
Golden Ticket — это поддельные билеты для выдачи билетов, также называемые аутентификационными билетами (они же TGT). Если посмотреть на схему аутентификации Kerberos в случае Golden Ticket, то можно заметить, что подлинность Kerberos не проверяется (AS-REQ и AS-REP с контроллером домена). Так как Golden Ticket является поддельным TGT, он отправляется контроллеру домена как часть TGS-REQ для получения билета TGS.
Золотой билет Kerberos — действительный билет Kerberos TGT, поскольку он зашифрован и подписан доменной учетной записью Kerberos (krbtgt
). А так как TGT зашифрован хешем пароля krbtgt
и может быть расшифрован любой службой KDC в домене, то билет и воспринимается как реальный. Для того чтобы сделать Golden Ticket, нам необходимо знать следующее:
krbtgt
.Так как имя пользователя можно использовать любое, остается найти три недостающих компонента. Название и SID домена можно узнать с помощью PowerShell-команды Get-ADDomain
.
Теперь нужно получить NTLM-хеш учетной записи krbtgt
. Сделать это можно как удаленно, так и с помощью mimikatz. С использованием mimikatz у оператора есть выбор: выполнить атаку DCSync, используя базу Security Account Managers (SAM), или задействовать модуль sekurlsa.
mimikatz # lsadump::dcsync /user:krbtgt
mimikatz # privilege::debug mimikatz # lsadump::lsa /inject /name:krbtgt
mimikatz # sekurlsa::krbtgt
Удаленная атака выполняется также с использованием DCSync или при наличии открытой сессии meterpreter
.
impacket-secretsdump domain.dom/root@192.168.6.100
Существует два варианта использования meterpreter
: при помощи hashdump
и dcsync_ntlm
(для второго нужно загрузить модуль kiwi).
С помощью полученной информации можно создать и применить Golden Ticket. Сделаем это тремя способами: используя mimikatz, удаленно с помощью ticketer
и с использованием meterpreter
.
Первым делом следует создать билет. Для этого используем скрипт ticketer
из пакета impacket
(напомню, что имя пользователя можно выдумать любое).
impacket-ticketer -nthash 08f5bf2e292d77d8e460d3926a0d90de -domain-sid S-1-5-21-719111203-942671344-1831409528 -domain domain.dom anyuser
В текущей директории создан билет anyuser.ccache
. Экспортируем его.
export KRB5CCNAME=anyuser.ccache
Теперь подключимся с помощью psexec
из того же пакета impacket
.
python3 psexec.py -k -no-pass [домен]/[пользователь]@[имя хоста]
Получаем удаленное управление с правами SYSTEM
.
Создадим поддельный золотой билет с помощью mimikatz.
Если в данной команде не использовать параметр /ptt
, то билет будет просто сохранен в текущей директории. В данном случае он сразу будет кеширован в памяти. Давай проверим это, вызвав командную строку.
mimikatz # misc::cmd
Теперь, выполнив команду klist
, наблюдаем кешированный Golden Ticket.
Для работы с meterpreter
будем использовать модуль kiwi. Первым делом создадим Golden Ticket.
Теперь применим его.
И проверим, что билет успешно загружен.
Таким образом, у нас остается возможность работы с повышенными привилегиями, при этом мы не используем учетных данных администраторов. Это означает, что мы можем получить доступ всегда, даже при смене паролей пользователей, изменении их ролей и даже при удалении скомпрометированных учетных записей.
Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее
1 год7690 р. |
1 месяц720 р. |
Я уже участник «Xakep.ru»
Читайте также
Последние новости