ИДЕНТИФИКАЦИЯ И АУТЕНТИФИКАЦИЯ

Аутентификация - процедура проверки подлинности, доказательство пользователем, что он тот, за кого себя выдает. Аутентификацию следует отличать от идентификации, в которой пользователю необходимо предоставить только свое имя - идентификатор. В аутентификации два вида участников - клиент и сервер аутентификации. Первый доказывает свою аутентичность, второй же получает эти доказательства и принимает решение. Доказательствами аутентичности могут быть:

  • - нечто, что аутентифицируемый знает (пароль, ключ и т.п.);
  • - нечто, чем аутентифицируемый владеет (электронная магнитная карта);
  • - нечто, что является его частью (биометрические параметры).

Парольная аутентификация

Популярность системы парольной аутентификации заключается в простоте реализации и логической ясности принципов ее функционирования. Хотя и имеется огромное количество угроз в этой схеме авторизации (повторная передача запроса на аутентификацию, анализ трафика, подбор пароля), она применяется во многих информационных системах, а защита от таких угроз регулируется обычно комплексом мер, основной из которых является криптографическая защита.

В настоящее время используются два основных метода аутентификации пользователей:

  • - с однонаправленной передачей информации от клиента к серверу аутентификации;
  • - технология «запрос-ответ».

Однонаправленная схема действует таким образом:

  • 1) клиент передает серверу свой идентификатор и пароль;
  • 2) сервер сравнивает их с идентификатором и паролем, которые находятся в его базе данных;
  • 3) принимается решение о личности клиента.
Схема однонаправленной аутентификации

Рис. 4.1. Схема однонаправленной аутентификации

Чтобы противодействовать пассивному перехвату пароля при передаче по сети, применяется хеширование пароля. Схема однонаправленной аутентификации представлена на рис. 4.1. Злоумышленник не сможет воспользоваться перехваченным при передаче по сети паролем пользователя для последующей аутентификации, так как пароль передается в хешированном виде, обратить эту операцию не представляется возможным.

Схема на рис. 4.1 не может противостоять атаке, в которой злоумышленник перехватывает сетевой трафик сеанса аутентификационной связи пользователя и затем полностью воспроизводит его, получая доступ к ресурсам. Для противодействия атаке такого типа в запрос включаются временные метки или какие-то числа, которые должны использоваться только один раз. Схема данной аутентификации представлена на рис. 4.2. Параметр t в данной схеме может быть или случайным числом, которое генерируется для каждого запроса, или одноразовым числом, которое есть в наборе ранее оговоренных обеими сторонами чисел. В этой схеме у злоумышленника не получится повторно воспроизвести сохраненный запрос на аутентификацию, т.к. в нем присутствует параметр Г, который был уже использован, поэтому сервер не примет этот запрос.

Очевидное требование к такой системе аутентификации -присутствие базы данных на стороне сервера, в которой сохраняются использованные значения t. Если параметр t является временной меткой, то на систему аутентификации возлагаются дополнительные требования по синхронизации времени средств вычисления сервера и клиента. Улучшенной версией таких схем аутентификации является схема «запрос-ответ», в которой после запроса клиента на аутентификацию сервер присылает случайное число (challenge), клиенту необходимо выполнить некоторое криптографическое действие (хеширование, шифрование) над соединением присланного числа и парольной фразы. Полученный результат отсылается обратно серверу, который также выполняет такие же действия с этим числом и паролем клиента, хранящегося у него в базе данных, и принимает решение об аутентификации, сравнивая свой результат с тем, что прислал клиент. Для каждой аутентификации сервер создает уникальный challenge, поэтому данная схема защищает и от несанкционированного воспроизведения (рис. 4.3).

Схема аутентификации с защитой от несанкционированного воспроизведения

Рис. 4.2. Схема аутентификации с защитой от несанкционированного воспроизведения

Схема аутентификации с защитой от несанкционированного воспроизведения

Рис. 4.3. Схема аутентификации с защитой от несанкционированного воспроизведения

Необходимо, чтобы система аутентификации была защищена от перебора или угадывания пароля. Для этого семантическая наполненность пароля и его длина должны максимально противостоять атакам такого типа. Основные ошибки при создании пароля:

  • - выбор в качестве пароля фразы, являющейся точной копией идентификатора пользователя или производной от нее;
  • - выбор в качестве пароля общеупотребительного слова или фразы. Такого вида пароли легко подбираются злоумышлен ником с помощью словарной атаки - перебором часто употребляемых слов или фраз по специальному словарю. Достаточно небольшого объема фраз в словаре для успешного выполнения данной атаки;
  • - создание пароля из очень короткой фразы. Такие пароли легко перебираются из всех допустимых вариантов.

Идеальным можно считать пароль длиной в несколько десятков символов с большим набором используемых символов. Но на практике такой пароль будет не очень удобен, ведь пользователь не сможет его запомнить, ему придется хранить пароль в открытом виде на бумажном или ином носителе, что будет являться предпосылкой для хищения пароля.

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

На данный момент разработано большое количество протоколов аутентификации. Приступим к рассмотрению самых популярных из них.

Самым простым из протоколов проверки подлинности для подключений по протоколу РРР является протокол PAP (Password Authentification Protocol). Имя пользователя и пароль передаются в открытом виде между сервером и клиентом.

Протокол CHAP (Challenge Handshake Authentification Protocol) построен на схеме «запрос-ответ». Описан в спецификации RFC 1994. Хеширует ответ на запрос сервера, применяя необратимое шифрование по стандарту MD5. Возможность использования для подтверждения подлинности во время уже установленного соединения.

Протокол ЕАР (Extensible Authentication Protocol) проверяет подлинность пользователей с помощью специальных устройств. Поддерживается набор схем проверки подлинности, которые включают в себя генераторы кода доступа, одноразовые пароли, сертификаты, удаленное подключение, протокол Kerberos V5 и др. Этот протокол может работать как с удаленными клиентами, так и с клиентами L2TP и РРТР.

Протокол Kerberos включает набор методов идентификации и проверки истинности партнеров по обмену информацией в незащищенной сети. Протокол предусматривает взаимодействие двух участников А и В через доверенный сервер, у которого они оба имеют секретные ключи.

В данном протоколе взаимодействие происходит через трех участников: клиента А, проверяющей стороны В и доверенного сервера Т. Изначально у А и В нет общего ключа шифрования, в это же время Т имеет общий секрет с каждым из них в виде базы данных клиентов и их секретных ключей. Задачи, которые решает протокол Kerberos: проверка подлинности клиента А, обмен временным сеансовым ключом шифрования. Работа протокола совершается таким образом. А производит запрос удостоверения у Т, которое позволяет В проверить подлинность А. Т является центром распространения ключей (Key Distribution Center, KDC). Сервер T высылает А сеансовый ключ, зашифрованный его секретным ключом и билет (Ticket), зашифрованный ключом В. В этом билете, который позже А передает В, находятся сеансовый ключ и данные об А, которые дают возможность В проверить подлинность А. Вместе с билетом А отправляет аутентификатор, содержащий отметку о текущем времени и зашифрованный сеансовым ключом. Работа протокола Kerberos описана в схеме на рис. 4.4. Обозначения, принятые в данном протоколе: Е - симметричный алгоритм шифрования (DES); Na - текущее время, устанавливаемое А; Та - временная метка согласно локальным часам Л; к - сеансовый ключ взаимодействия А и В, генерируемый Т; L - срок действия сеансового ключа; Кат, Квт~ секретные ключи шифрования А-Т и В-Г, ticket - билет, например ticketB=EKBi{k, A, L); auth - аутентификатор, например, аутентифи-

Схема общего протокола Kerberos

Рис. 4.4. Схема общего протокола Kerberos

Пользователь А в сообщении (1) отсылает серверу Т данные для получения сеансового ключа с В. Далее Т создает сеансовый ключ к, дает ему срок действия L, зашифровывает их на ключе Кат, а также с помощью секретного ключа КВт создает билет tickets и передает данную информацию А в сообщении (2). После того, как А получил это сообщение, он начинает расшифровывать его первую часть ключом КАт, извлекать сеансовый ключ и с его помощью формировать аутентификатор auth, который будет отправлен В в сообщении (3) вместе с билетом. В в свою очередь расшифровывает билет с помощью ключа КВт, получая при этом

к, а затем расшифровывает аутентификатор. Во время этого В проверяет:

  • - совпадение значений идентификатора А в аутентификаторе и билете;
  • - правильность временной метки ТА;
  • - находилось ли текущее время В в интервале L, который указан в билете.

После прохождения всех проверок В отсылает А в сообщении (4) значение Та, зашифрованное на сеансовом ключе. Это значение Та пользователю необходимо сравнить с посланным значением в аутентификаторе. Если возникло совпадение - А может аутентифицировать В.

В полной версии протокола Kerberos используются серверы двух типов. Первый сервер (сервер аутентификации) генерирует билеты на получение билетов (Ticket Granting Ticker, TGT) -билеты длительного срока действия. Второй вид серверов (серверы выдачи билетов) после получения предыдущих билетов формируют билеты на ресурс (resource ticket, RT), которые используются непосредственно для аутентификации. Такая схема разгружает сервер аутентификации при большом количестве пользователей в системе и в то же время сохраняет централизованный принцип управления аутентификацией.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ   След >