- •Информационная безопасность распределенных вычислений
- •Содержание
- •Введение
- •1 Эволюция распределенных вычислений
- •1.1 Клиент-сервер
- •1.2 Peer-to-peer
- •1.3 Метакомпьютинг
- •2 Грид-технологии
- •2.2 Архитектура грид
- •2.1 Виртуальные организации
- •2.4 Элементы грид
- •2.5 Сервисно-ориентированная архитектура soa
- •3 Облачные вычисления
- •3.1 Типы облачных вычислений
- •3.2 Архитектура облачных вычислений
- •3.3 Виртуализация
- •3.4 Преимущества и недостатки облачных вычислений
- •4 Сравнение грид и облачных технологий
- •5 Обеспечение безопасности в традиционных информационных системах
- •5.1 Угрозы информационной безопасности
- •5.2 Характерные особенности сетевых атак
- •5.3 Средства обеспечения информационной безопасности
- •5.4 Методы аутентификации
- •5.5 Схема Kerberos
- •5.6 Электронная цифровая подпись
- •V(m, s,kA(public))
- •5.7 Инфраструктура открытых ключей pki
- •5.8 Управление доступом по схеме однократного входа с авторизацией sso
- •5.9 Технологии защиты межсетевого обмена данными
- •5.10 Виртуальные частные сети
- •6 Обеспечение информационной безопасности в грид-системах
- •6.1 Инфраструктура защиты Globus gsi
- •6.2 Защита на уровне сообщений
- •6.3 Подходы к оцениванию доступности информации
- •7 Защита информации в облачных системах
- •7.1 Проблемы обеспечения безопасности облачных систем
- •7.2 Средства защиты облачных систем
- •7.3 Катастрофические события в облачной среде
- •Заключение
- •Список литературы
- •050013, Алматы, Байтурсынова, 126
5.4 Методы аутентификации
Задачи аутентификации можно разделить на следующие типы:
- аутентификация субъекта;
- аутентификация принадлежности субъекта к заданной группе;
- аутентификация информации, находящейся в информационной системе. Последняя задача решается с помощью электронной цифровой подписи.
Рассмотрим подробнее первые две задачи. Чтобы исключить работу с системой незаконных пользователей, необходима процедура распознавания системой каждого законного пользователя (или групп пользователей). Для этого в защищенном месте система обязана хранить информацию, по которой можно опознать пользователя, а пользователь при входе в систему, при выполнении определенных действий, при доступе к ресурсам обязан себя идентифицировать, т.е. указать идентификатор, присвоенный ему в данной системе. Получив идентификатор, система проводит его аутентификацию, т.е. проверяет его содержательность (подлинность) - принадлежность множеству идентификаторов. Если бы идентификация не дополнялась аутентификацией, то сама идентификация теряла бы всякий смысл. Обычно устанавливается ограничение на число попыток предъявления некорректного идентификатора. Аутентификация пользователя может быть основана на следующих принципах:
- на предъявлении пользователем пароля;
- на предъявлении пользователем доказательств, что он обладает секретной ключевой информацией;
- на ответах на некоторые тестовые вопросы;
- на предъявлении пользователем некоторых неизменных признаков, неразрывно связанных с ним;
- на предоставлении доказательств того, что он находится в определенном месте в определенное время;
- на установлении подлинности пользователя некоторой третьей доверенной стороной.
Процедуры аутентификации должны быть устойчивы к подлогу, подбору и подделке. После распознавания пользователя система должна выяснить, какие права предоставлены этому пользователю, какую информацию он может использовать и каким образом (читать, записывать, модифицировать или удалять), какие программы может выполнять, какие ресурсы ему доступны. Этот процесс называется авторизацией. Таким образом, вход пользователя в систему состоит из идентификации, аутентификации и авторизации (см. рисунок 12).
В процессе дальнейшей работы иногда может появиться необходимость дополнительной авторизации в отношении каких-либо действий [17].
Существуют различные механизмы реализации разграничения доступа. Например, каждому ресурсу (или компоненту) системы может быть сопоставлен список управления доступом, в котором указаны идентификаторы всех пользователей, которым разрешен доступ к данному ресурсу, а также определено, какой именно доступ разрешен. При обращении пользователя к конкретному ресурсу система проверяет наличие у данного ресурса списка управления доступом и, если он существует, проверяет, разрешено ли этому пользователю работать с данным ресурсом в запрошенном режиме.
Другим примером реализации механизма авторизации пользователя является профиль пользователя - список, ставящий в соответствие всем идентификаторам пользователей перечень объектов, к которым разрешен доступ данному пользователю с указанием типа доступа.
Может быть организована системная структура данных, так называемая матрица доступа, представляющая собой таблицу, столбцы которой соответствуют идентификаторам всех системных ресурсов, а строки - идентификаторам всех зарегистрированных пользователей. На пересечении i-го столбца и j-й строки таблицы администратор системы указывает разрешенный тип доступа владельца i-го идентификатора к j-му ресурсу.
Рисунок 12 - Процессы идентификации и аутентификации [17]
Доступ к механизмам авторизации должны иметь только специальные системные программы и строго ограниченный круг пользователей, отвечающих за безопасность системы. Рассматриваемые механизмы должны быть тщательно защищены от случайного или преднамеренного доступа неавторизованных пользователей. Многие атаки на информационные системы нацелены именно на вывод из строя или обход средств разграничения доступа.
Аналогичные действия осуществляются в системе и при аутентификации других субъектов взаимодействия (претендентов), например, прикладных процессов или программ, с системой (верификатором).
В отличие от аутентификации субъекта взаимодействия, процедура аутентификации объекта, устанавливая подлинность электронной почты, банковского счета и т.п., проверяет факт принадлежности данного объекта владельцу указанного идентификатора.
Рассмотрим подробнее аутентификацию субъекта. Цель субъекта взаимодействия при аутентификации - доказать верификатору подлинности предъявленного идентификатора.
Классическим средством аутентификации субъекта являются парольные схемы. При этом для устранения последствий несанкционированного доступа противника к информации, хранящейся в памяти компьютера верификатора, передаваться может не сам пароль pw (password), а его хеш-образ q = h(pw). Функция h(pw) в этой ситуации может быть определена как
h(pw) = Epw (ID),
где pw – пароль пользователя;
ID – идентификатор пользователя;
Epw – процедура шифрования, выполняемая с использованием пароля в качестве ключа.
Верификатор заранее вычисляет значения h(pw) и для каждого идентификатора ID хранит значения q. Претендент, прошедший идентификацию, вводит пароль pw', верификатор, получив q' = h(pw'), проверяет равенство q = q' и при его выполнении заключает, что был введен правильный пароль, и разрешает доступ (см. рисунок 13). Противник, даже узнав значение q, не сможет определить pw в силу вычислительной необратимости функции h(pw).
Рисунок 13 - Простейшая парольная схема аутентификации
Однако рассмотренная схема не защищает от противника, который может передавать информацию, подключаясь непосредственно к линии связи. В этой ситуации может помочь схема, в которой процедура вычисления q' = h(pw') возложена на верификатора.
Обе рассмотренные схемы не защищают от атаки перехвата и повтора, когда противник записывает информацию, передаваемую претендентом, и организует ее повторение для входа в систему. Для устранения последствий перехвата информации, передаваемой претендентом, или несанкционированного доступа противника к информации, хранящейся в памяти компьютера верификатора, может быть рекомендована схема, предполагающая использование двух хеш-функций h1 и h2, причем результат работы второй из них зависит от неповторяющегося блока данных nrb [17].
Аутентификация субъекта может быть как односторонней, так и взаимной. В первом случае процедуру аутентификации проходит один субъект, во втором аутентифицируют друг друга два взаимодействующих субъекта, например, связывающиеся между собой по линиям связи. Взаимная аутентификация не является простым объединением двух сеансов односторонней аутентификации, так как в последнем случае противник легко может осуществить атаку перехвата и повтора, выдавая себя за верификатора перед претендентом и за претендента перед верификатором.
Проверка подлинности предполагает использование неповторяющихся блоков данных, в качестве которых используются временные метки, механизмы запрос-ответ и процедуры рукопожатия (handshake). На рисунке 14 проиллюстрированы схемы запрос-ответ и рукопожатие.
Рисунок 14 - Механизм запрос-ответ и процедура рукопожатия
Использование меток времени позволяет регистрировать время отправки конкретного сообщения, что дает возможность получателю определить, насколько «устарело» пришедшее сообщение, а значит, защититься от повтора. При использовании меток времени возникает проблема допустимого времени задержки, связанная, во-первых, с невозможностью мгновенной передачи сообщения, а во-вторых, с невозможностью абсолютной синхронизации хода часов получателя и отправителя. Механизм «запрос-ответ» предполагает включение пользователем А в сообщение для пользователя В запроса хА - некоторого случайного числа. Перед ответом пользователь В обязан выполнить над числом хА некоторую операцию, например вычислить хеш-образ h(xA). Получив ответ с правильным результатом вычислений, пользователь А может быть уверен, что В - подлинный. Процедура рукопожатия заключается во взаимной проверке ключей, используемых субъектами взаимодействия. Последние признают друг друга законными партнерами, если докажут друг другу, что обладают правильными ключами [17].
