
- •Кафедра ТКС
- •1. Назначение и принципы функционирования Kerberos.
- •Протокол Нидхема-Шредера
- •Схема функционирования протокола Kerberos
- •Протокол Kerberos 5
- •Протокол Kerberos 5 (продолжение)
- •Мандат.
- •Аутентификатор
- •2. Области Kerberos Взаимодействие между Kerberos-областями
- •3. Особенности реализации протокола Kerberos.

Кафедра ТКС
Идентификация объектов и пользователей
Лекция №8.Тема:
Протокол аутентификации Kerberos
Учебные вопросы
1.Назначение и принципы функционирования Kerberos.
2.Области Kerberos.
3.Особенности реализации протокола Kerberos.

1. Назначение и принципы функционирования Kerberos.
Схема трехсторонней аутентификации
Сервер аутентификации
К1 |
К2 |

Протокол Нидхема-Шредера
Сервер KDС
A
1
2
3
4
B
1.А → KDС: IDA ,IDВ;
2.KDС → A: ЕA(T, P, K, IDВ), ЕB(T, P, K, IDA);
3.А → В: ЕK(IDA,T), ЕB(T, P, K, IDA);
4.B→A: ЕK(T+1).

Схема функционирования протокола Kerberos

Протокол Kerberos 5
1. C->AS: {c}.
Клиент C посылает серверу аутентификации AS свой идентификатор c (идентификатор передается открытым текстом).
2. AS->C: {TGT}KAS_TGS, KC_TGS }KC,
где:
KC - основной ключ C;
KC_TGS - ключ, выдаваемый C для доступа к серверу выдачи разрешений TGS;
{TGT} - Ticket Granting Ticket - мандат для доступа к серверу выдачи разрешений
{TGT}={c, tgs, t1, p1, KC_TGS }, где tgs - идентификатор сервера выдачи разрешений, t1 - отметка времени, p1 - период действия мандата.
Запись {•}KX здесь и далее означает, что содержимое фигурных скобок зашифровано на ключе KX.
3. C->TGS: {TGT}KAS_TGS, {Aut1} KC_TGS, {ID}
где {Aut1} - аутентификационный блок - Aut1 = {с, t2}, t2 - метка времени; ID - идентификатор запрашиваемого сервиса (в частности, это может быть идентификатор сервера SS).

Протокол Kerberos 5 (продолжение)
4. TGS->C: {{TGS}KTGS_SS, KC_SS}KC_TGS,
где KC_SS - ключ для взаимодействия C и SS, {TGS} - Ticket Granting Service - мандат для доступа к SS (обратите внимание, что такой же аббревиатурой в описании протокола обозначается и сервер выдачи разрешений).
{TGS} ={с, ss, t3, p2, KC_SS }.
5.C->SS: {TGS} KTGS_SS, {Aut2} KC_SS где Aut2={c, t4}.
6.SS->C: {t4+1} KC_SS

Мандат.
Мандат используется для безопасной передачи серверу идентификационных данных клиента, которому выдан этот мандат. В нем также содержится информация, которую сервер может использовать для проверки того, что клиент, использующий мандат, - это именно тот клиент, которому этот мандат был выдан.
Мандат для доступа к серверу выдачи разрешений имеет следующий вид:
{TGT}={c, tgs, t1, p1, KC_TGS }, где
tgs - идентификатор сервера выдачи разрешений; t1 - отметка времени;
p1 - период действия мандата;
KC_TGS - ключ, выдаваемый C для доступа к серверу выдачи разрешений;
Мандат для доступа к целевому серверу SS имеет следующий вид:
{TGS} ={с, ss, t3, p2, KC_SS }, где
ss - идентификатор целевого сервера; t3 - отметка времени;
p2 - период действия мандата;
KC_SS - ключ, выдаваемый C для доступа к целевому серверу;

Аутентификатор
Аутентификатор - это дополнительный атрибут, предъявляемый вместе с мандатом.
Aut1 = {с, t2},
где t2 - метка времени.
Aut2 = {с, t4},
где t4 - метка времени.

2. Области Kerberos Взаимодействие между Kerberos-областями

3. Особенности реализации протокола Kerberos.
1.Kerberos не защищает от атак подбором пароля. Ключ пользователя генерируется на базе его пароля. В случае слабого пароля возможен его подбор.
2.В роли Kerberos-серверов выступают контроллеры домена, на каждом из которых должна работать служба Kerberos Key Distribution Center (KDC). Роль хранилища информации о пользователях и паролях берет на себя служба каталога Active Directory.
3.Microsoft в своих ОС использует расширение Kerberos для применения криптографии с открытым ключом. Это позволяет осуществлять регистрацию в домене и с помощью смарт-карт, хранящих ключевую информацию и цифровой сертификат пользователя.
4.Использование Kerberos требует синхронизации внутренних часов компьютеров, входящих в домен Windows.
5.Службы Kerberos должны быть защищены от атак, направленных на отказ в обслуживании.
6.Службы Kerberos должны быть надежно защищены от всех видов несанкционированного доступа.
7.Полученные клиентом мандаты, а также секретные ключи должны быть защищены от несанкционированного доступа.