Что такое Kerberos?
- Глоссарий IAM
- Что такое Kerberos?
Kerberos — это протокол, который проверяет удостоверения пользователей или узлов с помощью системы цифровых «билетов». Узнайте, какова цель этого протокола, как он работает, и в чем его преимущества. Он использует криптографию с секретным ключом и доверенную третью сторону для проверки личности пользователей и аутентификации клиент-серверных приложений.
Протокол Kerberos был изначально разработан в Массачусетском технологическом институте (MIT) в 1988 году, чтобы университет мог безопасно аутентифицировать сетевых пользователей и разрешать им доступ к определенным ресурсам, таким как хранилище и базы данных. В то время компьютерные сети аутентифицировали пользователей с помощью идентификаторов пользователей и паролей, которые передавались в незашифрованном виде в виде простого текста. Это позволяло злоумышленникам перехватывать учетные данные пользователей и использовать их для взлома сети MIT.
Kerberos позволяет доверенным узлам обмениваться данными через ненадежные сети, в частности через Интернет, без передачи или хранения паролей в виде простого текста. Кроме того, Kerberos позволял пользователям получать доступ к нескольким системам только с одним паролем, что явилось ранней версией системы единого входа.
Для чего используется Kerberos?
На сегодняшний день Kerberos является одним из наиболее широко используемых сетевых протоколов аутентификации. Он часто используется для поддержки единого входа в крупных корпоративных сетях, является методом аутентификации по умолчанию в Windows и играет неотъемлемую роль в Windows Active Directory (AD). Kerberos также доступен в Apple OS, FreeBSD, UNIX и Linux.
Для чего используются «билеты» в Kerberos?
«Билеты» лежат в основе протокола аутентификации Kerberos.
Имя Kerberos происходит из греческой мифологии. В ней Kerberos (Цербер) – трехголовый пес, охраняющий врата в мир мертвых. Трём головам Цербера в протоколе соответствуют три участника безопасной связи: клиент, сервер и центр распределения ключей Kerberos (KDC), который выдает «билеты» Kerberos.
«Билет» Kerberos представляет собой цифровой сертификат, выдаваемый сервером аутентификации и зашифрованный с помощью ключа этого сервера, что позволяет узлам безопасно проверять подлинность друг друга. Этот процесс называется взаимной аутентификацией.
Запрос и выдача билетов Kerberos происходит прозрачно для конечного пользователя. Когда клиент получает билет аутентификации Kerberos, он возвращает билет на сервер вместе с дополнительной информацией для подтверждения личности клиента. Затем сервер выдает билет службы Kerberos и ключ сеанса, что завершает процесс авторизации для этого сеанса. Все билеты Kerberos имеют отметку времени, действуют ограниченное время и только в текущем сеансе, что сводит к минимуму риск того, что злоумышленник сможет использовать скомпрометированный билет для доступа к системе.
Как работает протокол Kerberos?
Вот очень упрощенное описание работы протокола Kerberos:
- Процесс аутентификации клиента Kerberos начинается, когда клиент запрашивает билет аутентификации или билет на выдачу билетов (TGT) с сервера аутентификации KDC. Поскольку этот первоначальный запрос не содержит конфиденциальной информации, он отправляется в виде простого текста.
- KDC ищет клиента в своей базе данных. Если KDC находит клиента, он возвращает зашифрованный TGT и ключ сеанса. В противном случае процесс останавливается, и клиенту отказывается в доступе.
- После аутентификации клиент использует TGT для запроса билета на доступ к службам у службы выдачи билетов (TGS).
- Если TGS может аутентифицировать клиента, она отправляет клиенту учетные данные и билет для доступа к запрошенной службе. Этот билет хранится на устройстве конечного пользователя.
- Клиент использует свой билет для запроса доступа к серверу приложений. Как только сервер приложений аутентифицирует запрос, клиент может получить доступ к серверу.
Каковы преимущества протокола Kerberos?
Kerberos — зрелый и надежный протокол аутентификации, интегрированный во все популярные операционные системы и поддерживающий современные распределенные вычислительные среды. Он особенно подходит для развертываний систем единого входа, предоставляя серверную технологию, обеспечивающую беспроблемную работу конечных пользователей, и поддерживает управление доступом на основе ролей (RBAC) и доступ к цифровым ресурсам с наименьшими привилегиями.
Можно ли взломать Kerberos?
Поскольку Kerberos — широко используемая технология, насчитывающая уже несколько десятилетий, злоумышленники нашли способы компрометировать ее. В распространенные типы кибератак на Kerberos входят:
- Атаки с передачей билетов, когда злоумышленники перехватывают и повторно используют билеты, отправленные аутентифицированному пользователю или от него.
- Атаки типа «золотой билет», когда злоумышленники получают доступ, необходимый им для настройки собственного контроллера домена Windows. Это позволяет им создавать фальшивые привилегированные учетные данные, предоставляющие им неограниченный доступ к сетевым ресурсам.
- Атаки с подстановкой учетных данных, где злоумышленники пытаются скомпрометировать пароли пользователей. Эти атаки обычно нацелены на серверы аутентификации KDC или службы выдачи билетов.
Однако, хотя ни одна технология не является на 100% невзламываемой, Kerberos достаточно безопасен, если его правильно настроить и поддерживать. Чтобы обеспечить безопасность развертывания Kerberos, обязательно обновляйте Kerberos и убедитесь, что все ваши конечные пользователи используют надежные, уникальные пароли, подкрепленные многофакторной аутентификацией.