Kerberoasting
Взлом служебных билетов
«Kerberoasting» — бесплатный урок Ethical Hacking Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ethical Hacking Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ethical Hacking Academy содержит 4 уроков всего.
Что такое Kerberoasting?
Kerberoasting — атака на служебные учётные записи в Active Directory. Любой аутентифицированный пользователь домена может запросить сервисный билет для учётной записи, у которой задано имя субъекта-службы (SPN).
Часть этого билета зашифрована хешем пароля служебной учётной записи, поэтому злоумышленник может взломать его в автономном режиме, не обращаясь к самой учётной записи.
Почему это работает
Когда пользователь запрашивает сервисный билет (TGS), KDC шифрует его часть хешем NTLM пароля служебной учётной записи.
Поскольку этот билет может запросить любой пользователь домена и для этого не нужны специальные привилегии, злоумышленник просто собирает билеты и в удобное время взламывает их на своём компьютере.
Поиск учётных записей с SPN
Сначала перечислите учётные записи, для которых заданы SPN. Обычно это служебные учётные записи, от имени которых работают SQL-, веб- и другие службы.
Учётные записи пользователей (не компьютеров) с SPN являются идеальными целями, поскольку их пароли часто задают люди и редко меняют.
# PowerView
Get-DomainUser -SPN | select samaccountname,serviceprincipalnameЗапрос билетов с помощью Rubeus
Rubeus — популярный инструмент на C# для злоупотребления Kerberos. Команда kerberoast запрашивает билеты TGS для учётных записей с SPN и выводит их в формате, пригодном для взлома.
Этот шаг малозаметен: он выглядит как обычный трафик Kerberos от легитимного пользователя.
Rubeus.exe kerberoast /outfile:hashes.txtЗапрос билетов с помощью Impacket
В Linux Impacket с помощью GetUserSPNs.py удалённо выполняет ту же атаку, используя действительные доменные учётные данные.
Это удобно во время внешних проверок или работ по сценарию предполагаемой компрометации, когда у Вас уже есть один набор учётных данных с небольшими привилегиями.
GetUserSPNs.py corp.local/lowuser:Password1 -dc-ip 10.0.0.10 -requestФормат хеша
Перехваченный билет сохраняется в формате, который Hashcat распознаёт как режим 13100 (Kerberos 5 TGS-REP, тип шифрования 23, RC4).
Каждый хеш начинается с $krb5tgs$23$, за которым следуют SPN, учётная запись и зашифрованный блок данных. Именно эти данные передаются программе для взлома.
$krb5tgs$23$*svc_sql$CORP.LOCAL$MSSQL/...*$a1b2c3...Взлом с помощью Hashcat
Офлайн-взлом использует словарь (часто с правилами) для проверки захваченных хешей. Поскольку билеты RC4 проверяются быстро, слабые пароли служб быстро подбираются.
Поэтому пароли учетных записей служб должны быть длинными и случайными; в идеале ими должны управлять групповые управляемые учетные записи служб (gMSA).
hashcat -m 13100 hashes.txt rockyou.txt -r best64.ruleТипы шифрования имеют значение
Если учетная запись поддерживает RC4 (etype 23), взлом выполняется быстро. Если разрешен только AES (etype 17/18), взлом происходит гораздо медленнее, но все еще возможен (режимы Hashcat 19600/19700).
Злоумышленники могут даже понизить запрошенный тип шифрования, чтобы принудительно получить более слабый билет RC4.
Обнаружение и защита
Защитники отслеживают необычно большое количество запросов TGS, особенно запросов билетов RC4 (идентификатор события 4769). Меры защиты включают:
- Длинные случайные пароли учетных записей служб (от 25 символов).
- Использование учетных записей gMSA с автоматической сменой паролей.
- Отключение RC4 и принудительное использование AES.
Почему учетные записи служб?
Учетные записи служб привлекательны для злоумышленников, поскольку они часто входят в привилегированные группы, имеют давно не менявшиеся пароли и не связаны с одним конкретным человеком, который мог бы заметить аномалии.
Взлом такой учетной записи может предоставить права Domain Admin, если ей по неосторожности назначили слишком широкие привилегии.
Место в атаке
Kerberoasting обычно выполняется вскоре после получения любой точки опоры в домене. Это малошумное перечисление объектов с последующим офлайн-взломом, поэтому оно редко вызывает срабатывание оповещений.
Взломанная учетная запись службы часто обеспечивает горизонтальное перемещение или повышение привилегий, поэтому этот прием широко используется во внутренних тестах на проникновение и операциях красных команд.
Быстрая проверка
Вспомните основное требование для Kerberoasting.
Повторение
Теперь Вы понимаете принцип Kerberoasting:
- Любой пользователь домена может запрашивать TGS tickets для учетных записей с SPN.
- Билеты шифруются хешем учетной записи службы и взламываются offline.
- Инструменты: Rubeus, Impacket GetUserSPNs.py; взлом выполняется с помощью Hashcat mode 13100.
- Защита: длинные пароли, gMSA и шифрование только AES.
Далее Вы научитесь напрямую повторно использовать учетные данные с помощью Pass-the-Hash.
Часто задаваемые вопросы
Урок «Kerberoasting» бесплатный?
Да — полный текст урока «Kerberoasting» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ethical Hacking Academy, подпишись на CoddyKit PRO. Курс Ethical Hacking Academy содержит 4 уроков всего.
Чему я научусь в уроке «Kerberoasting»?
Взлом служебных билетов Ты практикуешь Ethical Hacking Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ethical Hacking Academy?
Предыдущий опыт не требуется. Ethical Hacking Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Kerberoasting»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ethical Hacking Academy?
Да. Каждый урок Ethical Hacking Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы AD
- Kerberoasting
- Pass-the-Hash
- BloodHound