
- •1. Пароли
- •1.1. Противодействие раскрытию и угадыванию пароля
- •1.2. Противодействие пассивному перехвату
- •1.3. Защита при компрометации проверяющего
- •1.4. Противодействие несанкционированному воспроизведению
- •1.5. Одноразовые пароли
- •1.6. Метод «запрос-ответ»
- •2. Биометрические методы
- •3. Криптографические методы аутентификации
- •3.1. Аутентификация в режиме on-line
- •3.1.1. Протокол 1. Симметричная криптосистема
- •3.1.2. Протокол 2. Асимметричная криптосистема
- •3.2. Аутентификация при участии нескольких серверов
- •3.3. Организация серверов аутентификации
- •3.4. Аутентификация в режиме off-line
- •3.4.1. Протокол на основе симметричной криптосистемы
- •3.4.2. Протокол на основе асимметричной криптосистемы
- •3.5. Аутентификация с привлечением арбитра
- •3.5.1. Протокол 3. Симметричная криптосистема
- •3.5.2. Протокол 4. Асимметричная криптосистема
- •4. Анализ протоколов аутентификации
- •4.1. Протокол с сервером аутентификации
- •4.2. Протокол «запрос-ответ»
- •4.3. Протоколы на основе асимметричных криптосистем
- •4.4. Протокол с «двуликим Янусом»
- •4.5. Протокол стандарта х.509
- •4.6. Протокол для сетей подвижной радиосвязи
- •4.7. Анализ протоколов ssh и ака
- •5. В an-логика
- •6. Протокол Kerberos
- •6.1. Модель Kerberos
- •6.2. Этапы протокола Kerberos
- •6.3. Атрибуты
- •6.4. Сообщения Kerberos версии 5
- •6.5. Получение первоначального мандата
- •6.6. Получение мандатов прикладных серверов
- •6.7. Запрос услуги
- •6.8. Kerberos версии 4
- •6.9. Безопасность Kerberos
4.4. Протокол с «двуликим Янусом»
Конвей (J. Conway) в свое время заметил, что очень просто победить гроссмейстера при игре в шахматы по почте. Стратегия заключается в том, чтобы разыграть одну партию одновременно с двумя гроссмейстерами, передавая ходы белых тому, кто играет черными, и наоборот. Таким образом, человека, играющего в шахматы указанным способом, можно сравнить с «двуликим Янусом», повернутым одним своим лицом к игроку белыми, а другим — к игроку черными фигурами.
Аналогичная идея может быть использована для атаки криптографических протоколов. Например, Нидхейм и Шредер в 1978 г., сразу же вслед за первой фундаментальной работой по двухключевой криптографии [44), предложили следующий протокол аутентичного ключевого обмена [45|. Рассмотрим шаги протокола исходя из предположения, что Алиса и Боб заранее обменялись своими сертификатами:
Описанный протокол впервые был исследован в работе [41] в 1989 г. Тем не менее в 1995 г. Лов (Lowe) провел дополнительное исследование [46] и продемонстрировал уязвимость протокола при атаке со стороны «двуликого Януса». Рассмотрим ситуацию, когда Чарли находится между Алисой и Бобом. При этом Чарли взаимодействует с Алисой от своего лица, но выдает себя за Алису, взаимодействуя с Бобом:
Отправитель Получатель Сообщение
Способ противодействия атаке заключается в указании уникального имени абонента внутри сообщения.
4.5. Протокол стандарта х.509
Рассмотрим протокол, введенный стандартом CCITT X.509 для управления сертификацией в иерархической структуре [47]. В 1989 году Барроуз (Burrows), Абади (Abadi) и Нидхэйм (Needham) предложили атаку на протокол Х.509 [41]. Кратко изложим идею атаки. В соответствии с протоколом Алиса подписывает сообщение вида {Та, Nа,B,X, {Y}Kв}, где Та - временная метка, Na — серийный номер, а X и Y — некоторые данные, и посылает его Бобу. Поскольку подпись всего сообщения выполняется после шифрования Y, существует возможность замены подписи Алисы на подпись злоумышленника. Механизм атаки существенно зависит от математических свойств применяемого криптоалгоритма.
Таким образом, вычисление подписи после шифрования приводит к разрушению механизма аутентификации. Последнее может означать, например, невозможность доказательства принадлежности в случае отказа от ранее переданного сообщения.
4.6. Протокол для сетей подвижной радиосвязи
В последние годы возникла задача разработки криптографических протоколов для сетей подвижной радиосвязи. Работа в сети осуществляется с помощью портативных приемопередатчиков, причем ограниченный объем памяти и невысокая производительность процессора не позволяют хранить большое количество ключей и выполнять сложные криптографические вычисления. Решение, применяемое на практике, заключается в создании центрального сервера, в задачу которого входят установление и поддержка защищенного режима взаимодействия абонентов сети.
Интересный вариант протокола для сетей подобного типа был предложен в 1989 г. Тате-баяши (М. Tatebayashi), Матцузаки (N. Matsuzaki) и Ньюманом (D.B. Newman) [48]. TMN-протокол разработан исходя из предположения, что персональное устройство абонента сети (например, Smart Card) позволяет выполнять некоторые криптографические вычисления — возводить в куб по модулю двусоставного числа, суммировать по модулю 2, а также выполнять шифрование/дешифрование с помощью стандартного криптоалгоритма (например, DES). Известно |40], что арифметическая операция возведения в куб по модулю двусоставного числа (произведение двух простых чисел) обладает свойствами однонаправленной функции, то есть функции, которую легко вычислить, но трудно обратить. Таким образом, вычисление кубического корня по модулю двусоставного числа представляет собой трудоемкую задачу. Однако при известных сомножителях данная задача решается существенно более просто. Следовательно, сложность вычисления кубического корня эквивалентна сложности факторизации двусоставного числа [39].
Рассмотрим взаимодействие Алисы и Боба при условии, что Сэм (сервер) знает сомножители модуля N, причем все остальные абоненты знают N, но не знают сомножителей:
Тем не менее в 1994 г. Симмонс (G. J. Simmons) показал, что протокол может быть успешно атакован [49]. Любой легальный абонент сети, например Чарли (С), при содействии другого легального абонента, например Дэйва (D), может легко раскрыть сеансовый ключ rb- Для этого Чарли договаривается с Дэйвом о сеансовом ключе, который будет сгенерирован Дэйвом по запросу сервера, то есть сеансовый ключ rd известен Чарли заранее. Тогда протокол будет состоять из следующей последовательности шагов:
№ Отправитель______Получатель Сообщение
На первом шаге Чарли,
воспользовавшись шифротекстом,
перехваченным при взаимодействии
Боба и Сэма, формирует сообщение Rс3
(R3B
mod
N)
mod
N
и посылает его Сэму
с запросом на установление соединения
между ним и Дэйвом. Отметим, что Сэм в
силу криптографических свойств
преобразования не может контролировать
структуру принятого сообщения, даже
если сохраняет все предыдущие сообщения
других абонентов сети. Далее, следуя
дисциплине протокола, Сэм запрашивает
сеансовый ключ от Дэйва. Взяв кубический
корень и расшифровав тем самым сеансовый
и одноразовый ключи, Сэм вычисляет их
сумму (по модулю 2) RD
RCRB
и посылает Чарли. Поскольку Чарли знает
RD
(в силу предварительной договоренности
с Дэйвом), он может легко вычислить
RcRв=RD
mod2
(RD
mod2
RCRВ).Теперь
для раскрытия сеансового ключа Боба
Чарли сначала должен вычислить RC-1
(всегда может сделать, так как знает rC)
и затем RB=
RC-1(
RCRB)=
( RC-1(RD
mod2
( RD
mod2
RCRB))).