Назад | Перейти на главную страницу

Kerberos - что, если TGT украдут в пути?

В Kerberos KDC (центр распространения ключей) создает TGT и отправляет его обратно клиенту. Клиент не может его открыть, и он не должен открываться.

Что, если кто-то подслушивает, украдет TGT, а затем отправит его в KDC для получения билетов?

Поработав еще немного, я думаю, что нашел ответ. Когда TGT возвращается клиенту, он состоит из 2 основных частей, как показано ниже:

Ключевой момент, на который следует обратить внимание, заключается в том, что весь TGT зашифрован с помощью закрытого ключа клиента (Алисы) (пароля Алисы), но в этом TGT есть запечатанный билет, и этот билет зашифрован с помощью службы предоставления билетов (TGS, службы, которая создала TGT).

Как только весь этот TGT прибывает к клиенту, клиент расшифровывает его, и результат

  1. А Запечатанный билет (TFS зашифрован, и он останется зашифрованным).
  2. Сессионный ключ

После этого, когда клиенту нужен билет для службы (не TGT, а просто билет), клиент должен отправить запечатанную часть билета (TGT) во всех запросах, и запрос должен быть зашифрован с помощью Ключ сеанса как показано ниже:

Таким образом, если человек посередине овладевает исходным TGT, как снова показано ниже:

, они не могут расшифровать его на отдельные части. Если они отправят его за билетом, он НЕ будет содержать только Запечатанный билет но все это и запрос НЕ будут зашифрованы Ключ сеанса. Таким образом, когда сервер расшифровывает его, это НЕ будет только Запечатанный билет, и он не будет зашифрован с помощью сеансового ключа (как это могло быть? Злоумышленник не смог расшифровать, чтобы получить сеансовый ключ), и поэтому он отклонит его.

Еще одна мера предосторожности заключается в том, что исходный IP-адрес клиента находится в билете, поэтому только запросы с того же IP-адреса смогут использовать билет; Однако это всего лишь еще одна предосторожность.

Видеть Вот для получения дополнительной информации.

Протокол описан в Статья в Википедии о Kerberos.

Когда сервер аутентификации предоставляет клиенту TGT, он также предоставляет сеансовый ключ клиента / TGS, зашифрованный секретным ключом, сгенерированным из пароля пользователя, чтобы клиент мог его расшифровать.

У перехватчика нет пароля пользователя, поэтому он не может расшифровать сеансовый ключ клиента / TGS. Без него TGT бесполезен.