Безопасность в распределенных системах
роса
сервер выдачи разрешений отсылает пользователю разрешение на доступ к
ресурсам сети (которое может использоваться многократно в течение
некоторого периода времени) и новый код сеанса. Это разрешение зашифровано
с помощью кода, известного только серверу выдачи разрешений и серверу, к
которому требует доступа клиент, и содержит внутри себя копию нового кода
сеанса. Все сообщение (разрешение и новый код сеанса) зашифровано с помощью
старого кода сеанса, поэтому расшифровать его может только клиент. После
расшифровки клиент посылает целевому серверу, ресурсы которого нужны
пользователю, разрешение на доступ и аутентикатор, зашифрованные с помощью
нового кода сеанса.
Для обеспечения еще более высокого уровня защиты, клиент, в свою
очередь, может потребовать идентификации целевого сервера, чтобы
обезопаситься от возможного перехвата информации, дающей право на доступ к
ресурсам сети. В этом случае он требует от сервера высылки значения отметки
времени, увеличенного на единицу и зашифрованного с помощью кода сеанса.
Сервер извлекает копию кода сеанса, хранящуюся внутри разрешения на доступ
к серверу, использует его для расшифровки аутентикатора, прибавляет к
отметке времени единицу, зашифровывает полученную информацию с помощью кода
сеанса и отсылает ее клиенту.
Расшифровка этого сообщения позволяет клиенту идентифицировать сервер.
Использование в качестве кода отметки времени обеспечивает уверенность в
том, что пришедший клиенту ответ от сервера не является повтором ответа на
какой-либо предыдущий запрос.
Теперь клиент и сервер готовы к передаче необходимой информации с
должной степенью защиты. Клиент обращается с запросами к целевому серверу,
используя полученное разрешение. Последующие сообщения зашифровываются с
помощью кода сеанса.
Более сложной является ситуация, когда клиенту необходимо дать серверу
право пользоваться какими-либо ресурсами от его имени. В качестве примера
можно привести ситуацию, когда клиент посылает запрос серверу печати,
которому затем необходимо получить доступ к файлам пользователя,
расположенным на файл-сервере. Кроме того, при входе в удаленную систему
пользователю необходимо, чтобы все идентификационные процедуры выполнялись
так же, как и с локальной машины. Эта проблема решается установкой
специальных флагов в «разрешении на получение разрешения» (дающих
одноразовое разрешение на доступ к серверу от имени клиента для первого
примера и обеспечивающих постоянную работу в этом режиме для второго).
Поскольку, как было сказано выше, разрешения строго привязаны к сетевому
адресу обладающей ими станции, то при наличии подобных флагов сервер выдачи
разрешений должен указать в разрешении сетевой адрес того сервера, которому
передаются полномочия на действия от имени клиента.
Следует отметить также, что для всех описанных выше процедур
идентификации необходимо обеспечить доступ к базе данных Kerberos только
для чтения. Но иногда требуется изменять базу, например, в случае изменения
ключей или добавления новых пользователей. Тогда используется третий сервер
Kerberos — административный (Kerberos Administration Server). He вдаваясь
в подробности его работы, следует отметить, что его реализации могут сильно
отличаться (так, возможно ведение нескольких копий базы одновременно).
Связь между Kerberos-областями
Как уже было сказано выше, при использовании Kerberos-серверов сеть
делится на области действия Kerberos. Схема доступа клиента, находящегося в
области действия одного Kerberos-сервера, к ресурсам сети, расположенным в
области действия другого Kerberos, осуществляется следующим образом.
Целевой сервер
Оба Kerberos-сервера должны быть обоюдно зарегистрированы, то есть
знать общие секретные ключи и, следовательно, иметь доступ к базам
пользователей друг друга. Обмен этими ключами между Kerberos-серверами (для
работы в каждом направлении используется свой ключ) позво-ляет
зарегистрировать сервер выдачи разрешений каждой области как клиента в
другой области. После этого клиент, требующий доступа к ресурсам,
находящимся в области действия другого Kerberos-сервера, может получить
разрешение от сервера выдачи разрешений своего Kerberos по описанному выше
алгоритму. Это разрешение, в свою очередь, дает право доступа к серверу
выдачи разрешений другого Kerberos-сервера и содержит в себе отметку о том,
в какой Kerberos-области зарегистрирован пользователь. Удаленный сервер
выдачи разрешений использует один из общих секретных ключей для расшифровки
этого разрешения (который, естественно, отличается от ключа, используемого
в пределах этой области) и при успешной расшифровке может быть уверен, что
разрешение выдано клиенту соответствующей Kerberos-области. Полученное
разрешение на доступ к ресурсам сети предъявляется целевому серверу для
получения соответствующих услуг.
Следует, однако, учитывать, что большое число Kerberos-серверов в сети
ведет к увеличению количества передаваемой идентификационной информации при
связи между разными Kerberos-областями. При этом увеличивается нагрузка на
сеть и на сами Kerberos-серверы. Поэтому более эффективным следует считать
наличие в большой сети всего нескольких Kerberos-серверов с большими
областями действия, нежели использование множества Kerberos-серверов. Тая,
Kerberos-система, установленная компанией Digital Equipment для большой
банковской сети, объединяющей отделения в Нью-Йорке, Париже и Риме, имеет
всего один Kerberos-сервер. При этом, несмотря на наличие в сети глобальных
коммуникаций, работа Kerberos-системы практически не отразилась на
производительности сети.
Kerberos-5
К настоящему времени Kerberos выдержал уже четыре модификации, из
которых четвертая получила наибольшее распространение. Недавно группа,
продолжающая работу над Kerberos, опубликовала спецификацию пятой версии
системы, основные особенности которой отражены в стандарте RFC 1510. Эта
модификация Kerberos имеет ряд новых свойств, из которых можно выделить
следующие.
Уже рассмотренный ранее механизм передачи полномочий серверу на
действия от имени клиента, значительно облегчающий идентификацию в сети в
ряде сложных случаев, является нововведением пятой версии.
Пятая версия обеспечивает более упрощенную идентификацию пользователей
в удаленных Kerberos-областях, с сокращенным числом передач секретных
ключей между этими областями. Данное свойство, в свою очередь, базируется
на механизме передачи полномочий.
Если в предыдущих версиях Kerberos для шифрования использовался
исключительно алгоритм DES (Data Encryption Standard — Стандарт Шифрования
Данных), надежность которого вызывала некоторые сомнения, то в данной
версии возможно использование различных алгоритмов шифрования, отличных от
DES.
Заключение
Многие производители сетевого и телекоммуникационного оборудования
обеспечивают поддержку работы с Kerberos в своих устройствах.
Следует, однако, отметить, что использование Kerberos не является
решением всех проблем, связанных с попытками несанкционированного доступа в
сеть (например, он бессилен, если кто-либо узнал пароль пользователя),
поэтому его наличие не исключает других стандартных средств поддержания
соответствующего уровня секретности в сети.
Ни одна компьютерная система защиты информации не является абсолютно
безопасной. Однако адекватные меры защиты значительно затрудняют доступ к
системе и снижают эффективность усилий злоумышленника (отношение средних
затрат на взлом защиты системы и ожидаемых результатов) так, что
проникновение в систему становится нецелесообразным. Ключевым элементом в
системе безопасности является администратор системы. Какие бы средства вы
ни приобретали, качество защиты будет зависеть от способностей и усилий
этого человека.
Литература
I] Дьяченко В.И. “Теория систем безопасности данных”, ООО “Исток”,
М.- 1995г.
II] Information Security Service DATAPRO International,
III] McGraw-HTl, Inc.
IV] ORACLE7 Server Concepts Manual. P/N 6693-70.
V] Trusted ORACLE7 Server Administrator's Guide. P/N d610-70.
VI] Trusted ORACLE7 Technical Overview. P/N Al 4774.
VII] Computer Security and Evaluations Criteria White Paper.
P/NA12944.
VIII] SQL* Net v. 4 Administrator's Guide. P/N 6545-20
IX] Multiprotocol Interchange Administrator's Guide. P/N 6544-10.
X] Журналы (№3-10) “Сети” за 1998 год.
XI] Журнал “Открытые системы” за 1997-1998 годы.
| | скачать работу |
Безопасность в распределенных системах |