Главная страница
Навигация по странице:

  • 1 3 .3 .1 . Простая система однократного входа SSO

  • 1 3 .3 .2 . SSO-продукты уровня предприятия

  • Сервер GSO Рис. 13.7. Базовые компоненты GSO

  • 13.5. Инфраструктура управления открытыми ключами РКІ

  • 1 3 .5 .1 . Принципы ф ункционирования Р КІ

  • Защита от атаки man-in-the-middle

  • Рис. 13.9. Осуществление атаки man-in-the-middle

  • Сертификаты открытых ключей

  • Базовые модели сертификации

  • Иерархическая структура Сетевая структура Доверенный Центр сертификации (СА) ----- ► Выпуск сертификата Удостоверяющий Центр сертификации (СА)

  • ^ ^ Кросс-сертификация □ Пользователь Рис. 13.10. Иерархическая и сетевая архитектуры систем управления сертификатами

  • 1 3 .5 .2 . Л о ги ч ес ка я структура и компоненты Р КІ

  • Каталог сертификатов Рис. 13.11. Структура РКІ

  • Часть 4 ТЕХНОЛОГИИ ОБНАРУЖЕНИЯ ВТОРЖЕНИЙ

  • Информация. ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ. В. Ф. Шаньгининформационная безопасность компьютерных систем


    Скачать 5.69 Mb.
    НазваниеВ. Ф. Шаньгининформационная безопасность компьютерных систем
    АнкорИнформация
    Дата18.12.2022
    Размер5.69 Mb.
    Формат файлаpdf
    Имя файлаИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ.pdf
    ТипДокументы
    #850081
    страница18 из 23
    1   ...   15   16   17   18   19   20   21   22   23
    13.3. Управление доступом по схеме однократного
    входа с авторизацией Single Sign-On (SSO)
    Большинство пользователей информационных средств и систем используют компьютеры для доступа к ряду сервисов, будь это несколько локальных приложений или сложные прило­
    жения, которые включают одну или более удаленных систем, к которым машина пользователя подсоединяется через сеть. В це­
    лях обеспечения безопасности многие приложения требуют про­
    ведения аутентификации пользователя, прежде чем ему дадут доступ к сервисам и данным, предоставляемым приложением.
    Конечные пользователи обычно воспринимают такие требо­
    вания системы безопасности как дополнительную нагрузку, ко­
    торая заставляет поддерживать и помнить многочисленные вход­
    ные идентификаторы и пароли и использовать их каждый день по несколько раз, чтобы иметь возможность выполнять свою обычную работу. Довольно обычна ситуация, когда один пользо­
    ватель имеет 5 и более таких пользовательских accounts, все на различных платформах, с различными правилами для длин па­
    ролей, а также с различной частотой их замены. Пользователь должен либо заучивать их, либо записывать, подвергая тем са­
    мым безопасность серьезному риску, так как их и могут найти неавторизованные пользователи.
    С увеличением числа требующих запоминания паролей, воз­
    растает вероятность того, что эти пароли будут забываться, а это потребует от администраторов дополнительных усилий по их восстановлению. Эту проблему часто называют «проблемой мно­
    гих входов». Ее позволяет решить схема однократного входа с ав­
    торизацией SSO (Single Sign-On).
    Управление доступом по схеме SSO дает возможность поль­
    зователям корпоративной сети при их входе в сеть пройти одну аутентификацию, предъявив только один раз пароль (или иной требуемый аутентификатор), и затем без дополнительной аутен­
    тификации получить доступ ко всем авторизованным сетевым ресурсам, которые нужны для выполнения их работы. Такими сетевыми ресурсами могут быть принтеры, приложения, файлы и другие данные, размещаемые по всему предприятию на серве­
    рах различных типов, работающих на базе различных ОС.
    Управление доступом по схеме SSO позволяет повысить произ­
    водительность труда пользователей сети, уменьшить стоимость сетевых операций и улучшить сетевую безопасность.
    С функционированием схемы SSO непосредственно связаны процессы аутентификации и авторизации. С помощью аутенти­
    фикации система проверяет подлинность пользователя, в то вре­
    мя как авторизация определяет, что именно разрешается делать пользователю (обычно основываясь на его роли в организации).
    Большинство подходов SSO централизованно осуществляют ау­
    тентификацию пользователя. Авторизацию обычно выполняют на ресурсах целевых объектов, хотя некоторые продвинутые
    SSO-решения централизованно осуществляют и авторизацию, при этом используются продукты централизованного админист­
    рирования безопасности, которые осуществляют администриро­
    вание полномочий пользователей.
    Схему SSO поддерживают такие средства, как протокол
    LDAP (Lightweight Directory Access Protocol), протокол SSL
    (Secure Sockets Layer), система Kerberos и инфраструктура управ­
    ления открытыми ключами РКІ (Public Key Infrastructure), а так­
    же средства интеграции сервисов каталогов и безопасности. Эти средства и технологии образуют вместе фундамент для примене­
    ния схемы SSO при обработке данных системами, использующи­
    ми различные комбинации клиентов, серверов, сервисов и при­
    ложений.
    Существующие решения схемы SSO простираются от про­
    стых средств до SSO-сервисов на базе сетевых ОС NOS (Network
    Operating System), многофункциональных приложений и SSO уровня предприятия [9].
    Простые средства SSO включают кэш паролей Windows и кэш паролей, встроенный в продукты, подобные Internet Explorer и другие пакеты.
    NOS-based SSO-сервисы дают возможность пользователю вхо­
    дить в такие сетевые ОС, как Windows NT/2000/XP, NetWare или
    Solaris, и таким образом получать доступ ко многим или ко всем приложениям, работающим на базе NOS.
    Продукты SSO уровня предприятия, такие как IBM's Global
    Sign-On и др., обычно применяют комбинированные подходы к sign-on, основанные на использовании клиентов и proxy, техно­
    логии и стандарты кратной аутентификации, включая ввод ID пользователя и пароля.
    1 3 .3 .1 . Простая система однократного входа SSO
    Простое SSO-решение состоит в том, чтобы просто автомати­
    зировать процесс предъявления пароля. Для многих из продуктов
    SSO информация входа (т. е. имя пользователя и пароль) и любые необходимые записи хранятся в специальном сервере аутентифи­
    кации. Используя клиентское ПО, пользователь предъявляет сер­
    веру аутентификации пароль, и этот сервер сообщает клиентско­
    му ПО, к каким ресурсам может получить доступ пользователь
    (рис. 13.6). Клиентское ПО представляет пользователю допусти­
    мые опции. Когда пользователь выберет ресурс, клиентское ПО использует мандат входа и scripts, предоставленные сервером ау­
    тентификации, чтобы установить от имени пользователя соедине­
    ние с соответствующим ресурсом целевого объекта (сервера, хос­
    та, домена или приложения).
    11
    <5>
    < £ >
    Пользователь
    гФ"**
    Ресурс А
    Ѳ-*
    Ресурс В
    L©-*
    Ресурс С
    Сервер
    аутентификации
    Рис. 13.6. Простое SSO-решение — автоматизация входа
    При автоматизации процедуры входа выполняются следую­
    щие шаги.
    1. Пользователь предъявляет серверу аутентификации па­
    роль, используя специальное клиентское ПО на своем персо­
    нальном компьютере.
    2. Сервер аутентификации проверяет, к каким ресурсам мо­
    жет получить доступ этот пользователь и отправляет эту инфор­
    мацию обратно на клиентское SSO-приложение совместно с не­
    обходимым мандатом входа и scripts для соединения с каждым разрешенным ресурсом.
    3. Клиентское SSO-приложение представляет пользователю доступные ресурсы и входит от имени пользователя в выбранные приложения.
    Автоматизация процедуры входа позволяет получить простую схему SSO, но при этом еще больше децентрализуется админист­
    рирование безопасностью. Ряд поставщиков предлагает дополни­
    тельные средства централизованного администрирования безо­
    пасностью. Эти средства используют агентов в целевых системах и обеспечивают основанное на ролях (role-based) централизован­
    ное администрирование учетных записей пользователей и ин­
    формации об их полномочиях. В некоторых случаях тги средства администрирования полностью отделены от схемы SSO; в дру­
    гих — интегрированы с SSO.

    Первоначальной целью SSO было сокращение числа исполь­
    зуемых многоразовых паролей для получения пользователями доступа к сетевым ресурсам. При формировании современного решения SSO применяются также такие средства аутентифика­
    ции пользователя, как токены, цифровые сертификаты РКІ, смарт-карты и биометрические устройства. Более совершенный подход к аутентификации обычно основан на использовании то­
    кенов. Наиболее известной системой аутентификации является
    Kerberos.
    Продвинутые SSO-решения предоставляют больше контроля над полномочиями пользователя, поддерживаемыми обычно на прикладном уровне. В продуктах SSO могут быть также поддер­
    жаны нетокенные механизмы аутентификации, основанные на сертификатах РКІ (в частности, RSA ClearTrust поддерживает
    РКІ).
    1 3 .3 .2 . SSO-продукты уровня предприятия
    SSO-продукты уровня предприятия проектируются для боль­
    ших компаний с гетерогенной распределенной компьютерной средой, состоящей из многих систем и приложений.
    Характерным представителем SSO-продуктов уровня пред­
    приятия является продукт IBM Global Sign-On for Multiplatforms
    (далее называемый GSO). Продукт GSO представляет безопас­
    ное, простое решение, позволяющее получать доступ к сетевым компьютерным ресурсам, используя однократный вход в систе­
    му. GSO освобождает пользователя от необходимости вводить различные идентификаторы и пароли для всех его целевых объ­
    ектов, которые включают ОС, программные средства коллектив­
    ного пользования, БД или приложения другого вида [9].
    Было бы идеально, если бы GSO мог действовать как универ­
    сальный безопасный, надежный механизм аутентификации для любого целевого объекта. К сожалению, такое решение унифи­
    цированной аутентификации создать невозможно, потому что большинство продуктов, которым требуется сервис аутентифика­
    ции, выполняют процедуру аутентификации различными спосо­
    бами. Чтобы сделать реальностью такой идеальный подход, по­
    ставщики должны модифицировать свои продукты таким обра­
    зом, чтобы обеспечить выполнение требований общего стандарта
    X/Open Single Sign-On (XSSO).

    Поэтому GSO придерживается реального подхода, основан­
    ного на том факте, что продукты поставщиков не поддерживают доверенную внешнюю аутентификацию. Для аутентификации эти продукты чаще всего требуют идентификатор ID и пароль каждого пользователя. GSO осуществляет безопасное хранение пользовательских идентификаторов IDs и паролей, а также обес­
    печение ими целевых объектов, когда пользователю нужно предъявить пароль при входе. Это освобождает пользователя от необходимости помнить и вводить IDs и пароль каждый день для каждого целевого объекта.
    Ячейка GSO содержит, по крайней мере, сервер GSO и одну рабочую станцию пользователя, называемую также клиентом
    GSO. В ячейке GSO может быть более одного сервера GSO и мно­
    жество клиентов (рис. 13.7).
    Сервер
    GSO
    Рис. 13.7. Базовые компоненты GSO
    Пользователь взаимодействует со своей рабочей станцией и некоторыми целевыми объектами (приложениями), которые мо­
    гут выполняться на этой рабочей станции или на каком-либо
    другом компьютере, например сервере департамента или серве­
    рах приложений.
    Перед тем как начать работу, пользователь должен войти в свою рабочую станцию. Он предъявляет пароль именно GSO, а не приложению или другим серверам. GSO выполняет аутенти­
    фикацию, основанную на идентификаторе ID и пароле пользова­
    теля (иногда поддерживаемых смарт-картой или считывателем отпечатков пальцев). Сервер GSO включается в процесс аутенти­
    фикации, для того чтобы проверить пароль пользователя и из­
    влечь его мандат (credentials).
    Затем GSO вводит пользователя в целевые объекты (прило­
    жения или серверы), с которыми этот пользователь должен ра­
    ботать. GSO использует для входа пользователя методы, предос­
    тавляемые целевыми объектами. В большинстве случаев GSO имитирует вход пользователя, передавая целевому объекту ID и пароль пользователя, как будто вводит их сам пользователь.
    Важное различие, очевидно, состоит в том, что теперь пользова­
    телю не нужно запоминать эти идентификаторы ID и пароли, поскольку заботу о них принимает на себя GSO.
    GSO является клиент/серверным приложением. В дополне­
    ние к серверу GSO существует программа клиента (сегмент про­
    граммного кода), выполняемая на рабочей станции пользовате­
    ля, которая взаимодействует с сервером GSO [9].
    SSO-продукты уровня предприятия обладают следующими достоинствами:
    • допускают использование многих целевых платформ со своими собственными механизмами аутентификации;
    • безопасно хранят в БД учетную информацию пользовате­
    лей (такую как идентификатор ID, пароль и некоторую до­
    полнительную информацию) на каждую целевую платфор­
    му и каждого пользователя;
    • радикально уменьшают долю забываемых паролей, по­
    скольку пароли пользователей хранятся безопасно и на­
    дежно;
    • используют методы и средства безопасной аутентификации и коммуникации; чувствительная пользовательская инфор­
    мация хранится и передается по сети только в зашифро­
    ванном виде.
    Недостатками SSO-продуктов уровня предприятия является их относительно большая стоимость и высокие требования к квалификации обслуживающего персонала.

    13.4. Протокол Kerberos
    Протокол Kerberos используется в системах клиент—сервер для аутентификации и обмена ключевой информацией, предна­
    значенной для установления защищенного канала связи между абонентами, работающими как в локальной сети, так и глобаль­
    ных сетях. Данный протокол встроен в качестве основного про­
    токола аутентификации в Microsoft Windows 2000 и в UNIX BSD.
    Kerberos обеспечивает аутентификацию в открытых сетях, т. е. при работе Kerberos подразумевается, что злоумышленники могут производить следующие действия:
    • выдавать себя за одну из легитимных сторон сетевого со­
    единения;
    • иметь физический доступ к одному из участвующих в со­
    единении компьютеров;
    • перехватывать любые пакеты, модифицировать их и (или) передавать повторно.
    Соответственно, обеспечение безопасности в Kerberos по­
    строено таким образом, чтобы нейтрализовать любые потенци­
    альные проблемы, которые могут возникнуть из-за указанных действий злоумышленников.
    Kerberos разработан для сетей TCP/IP и построен на основе доверия участников протокола к третьей (доверенной) стороне.
    Служба Kerberos, работающая в сети, действует как доверенный посредник, обеспечивая надежную аутентификацию в сети с по­
    следующей авторизацией доступа клиента (клиентского прило­
    жения) к ресурсам сети. Защищенность установленных в рамках сессии Kerberos соединений обуславливается применением сим­
    метричных алгоритмов шифрования. Служба Kerberos разделяет отдельный секретный ключ с каждым субъектом сети, и знание такого секретного ключа равносильно доказательству подлинно­
    сти субъекта сети.
    Основу Kerberos составляет протокол аутентификации и рас­
    пределения ключей Нидхэма — Шредера с третьей доверенной стороной [9]. Рассмотрим эту версию протокола. В протоколе
    Kerberos (версия 5) участвуют две взаимодействующие стороны и доверенный сервер KS, выполняющий роль Центра распределе­
    ния ключей.
    Вызывающий (исходный) объект обозначается через А, а вы­
    зываемый (объект назначения) — через В. Участники сеанса А и

    В имеют уникальные идентификаторы Id, и Ids соответственно.
    Стороны А и В, каждая по отдельности, разделяют свой секрет­
    ный ключ с сервером KS.
    Пусть сторона А хочет получить сеансовый ключ для инфор­
    мационного обмена со стороной В.
    Сторона А инициирует фазу распределения ключей, посылая по сети серверу KS идентификаторы Id, и Idg:
    ^ K S : I d „ I d 5.
    (1)
    Сервер KS генерирует сообщение с временной отметкой Т, сроком действия L, случайным сеансовым ключом К и иденти­
    фикатором Id,,. Он шифрует это сообщение секретным ключом, который разделяет со стороной В.
    Затем сервер KS берет временную отметку Т, срок дейст­
    вия L, сеансовый ключ К, идентификатор Ids стороны В и шиф­
    рует все это секретным ключом, который разделяет со сторо­
    ной А. Оба эти зашифрованные сообщения он отправляет сто­
    роне А:
    KS -> А: Е
    а
    ( Т; L, К, Id,), Ев (Т, L, К, Id,).
    (2)
    Сторона А расшифровывает сообщение своим секретным ключом, проверяет отметку времени Т, чтобы убедиться, что это сообщение не является повторением предыдущей процедуры распределения ключей. Затем сторона А генерирует сообщение со своим идентификатором Id, и отметкой времени Т, шифрует его сеансовым ключом К и отправляет стороне В. Кроме того,
    А отправляет для В сообщение от KS, зашифрованное ключом стороны В:
    А -+ В: Ек (Id* 7), Ев ( Т, L, К, Id,).
    (3)
    Только сторона В может расшифровать сообщение (3). Сто­
    рона В получает отметку времени Т, срок действия L, сеансовый ключ К и идентификатор Id,. Затем сторона В расшифровывает сеансовым ключом К вторую часть сообщения (3). Совпадение значений Г и Id, в двух частях сообщения подтверждают под­
    линность А по отношению к В.
    Для взаимного подтверждения подлинности сторона В созда­
    ет сообщение, состоящее из отметки времени Т плюс 1, шифру­
    ет его ключом К и отправляет стороне А:
    В ^ А : ЕК{Т+ 1).
    (4)

    Если после расшифрования сообщения (4) сторона А получа­
    ет ожидаемый результат, она знает, что на другом конце линии связи находится действительно В.
    Этот протокол успешно работает при условии, что часы каж­
    дого участника синхронизированы с часами сервера K.S. Следует отметить, что в этом протоколе необходим обмен с KS для полу­
    чения сеансового ключа каждый раз, когда А желает установить связь с В. Протокол обеспечивает надежное соединение объек­
    тов А и В при условии, что ни один из ключей не скомпромети­
    рован и сервер KS защищен.
    Система Kerberos имеет структуру типа клиент—сервер и со­
    стоит из клиентских частей С, установленных на всех рабочих станциях пользователей и серверах сети, и сервера Kerberos KS, располагающегося на каком-либо (не обязательно выделенном) компьютере (см. рис. 13.8). Клиентами могут быть пользователи, а также независимые программы, выполняющие такие действия, как загрузка удаленных файлов, отправка сообщений, доступ к
    БД, доступ к принтерам, получение привилегий у администрато­
    ра и т. п.
    Сервер Kerberos KS, можно разделить на две части: сервер аутентификации AS (Authentication Server) и сервер службы вы­
    дачи мандатов TGS (Ticket Granting Service). Физически эти сер­
    веры могут быть совмещены. Информационными ресурсами, не­
    обходимыми клиентам С, управляет сервер информационных ресурсов RS. Предполагается, что серверы службы Kerberos на­
    дежно защищены от физического доступа злоумышленников.
    Сетевые службы, требующие проверки подлинности, и кли­
    енты, которые хотят использовать эти службы, регистрируют в
    Kerberos свои секретные ключи. Kerberos хранит БД о клиентах и их секретных ключах. Наличие в этой БД секретных ключей каждого пользователя и ресурсов сети, поддерживающих этот протокол, позволяет создавать зашифрованные сообщения, на­
    правляемые клиенту или серверу; успешное расшифрование этих сообщений и является гарантией прохождения аутентифи­
    кации всеми участниками протокола.
    Kerberos также создает сеансовые ключи (session key), которые выдаются клиенту и серверу (или двум клиентам) и никому больше. Сеансовый ключ используется для шифрования сооб­
    щений, которыми обмениваются две стороны, и уничтожается после окончания сеанса.

    Область действия системы Kerberos распространяется на тот участок сети, все пользователи которого зарегистрированы под своими именами и паролями в БД сервера Kerberos.
    Укрупненно процесс идентификации и аутентификации пользователя в системе Kerberos версии 5 можно описать сле­
    дующим образом (рис. 13.8).
    1 KS
    I
    Обозначения:
    I
    !
    KS — сервер системы Kerberos
    I
    AS — сервер аутентификации
    TGS — сервер службы выделения мандатов
    RS — сервер информационных ресурсов
    С — клиент системы Kerberos
    Рис. 13.8. Схема работы протокола Kerberos
    Клиент С, желая получить доступ к ресурсу сети, направляет запрос серверу аутентификации AS. Сервер AS идентифицирует пользователя с помощью его имени и пароля и высылает клиен­
    ту мандат (ticket) на доступ к серверу службы выделения манда­
    тов TGS (Ticket-Granting Service).
    Для использования конкретного целевого сервера информа­
    ционных ресурсов RS клиент С запрашивает у TGS мандат на обращение к целевому серверу RS. Если все в порядке, TGS раз­
    решает использование необходимых ресурсов сети и посылает соответствующий мандат клиенту С.
    Основные шаги работы системы Kerberos (см. рис. 13.10):
    1. С
    AS — запрос клиента С к серверу AS разрешить обра­
    титься к службе TGS.
    2. AS
    С — разрешение (мандат) от сервера AS клиенту С обратиться к службе TGS.
    3. С
    TGS — запрос клиента С к службе TGS на получение допуска (мандата) к серверу ресурсов RS.
    4. TGS -> С — разрешение (мандат) от службы TGS клиен­
    ту С для обращения к серверу ресурсов RS.
    5. С -> RS — запрос информационного ресурса (услуги) у сервера RS.
    6. RS -> С — подтверждение подлинности сервера RS и пре­
    доставление информационного ресурса (услуги) клиенту С.

    Данная модель взаимодействия клиента с серверами может функционировать только при условии обеспечения конфиденци­
    альности и целостности передаваемой управляющей информа­
    ции. Без строгого обеспечения информационной безопасности клиент С не может отправлять серверам AS, TGS и RS свои за­
    просы и получать разрешения на доступ к обслуживанию в сети.
    Чтобы избежать возможности перехвата и несанкциониро­
    ванного использования информации, Kerberos применяет при передаче любой управляющей информации в сети систему мно­
    гократного шифрования с использованием комплекса секретных ключей (секретный ключ клиента, секретный ключ сервера, сек­
    ретные сеансовые ключи пары клиент—сервер). Kerberos может использовать различные симметричные алгоритмы шифрования и хэш-функции.
    На сегодняшний день протокол Kerberos является широко распространенным средством аутентификации. Kerberos может использоваться в сочетании с различными криптографическими схемами, включая шифрование с открытым ключом.
    13.5. Инфраструктура управления открытыми
    ключами РКІ
    Исторически в задачи любого центра управления информа­
    ционной безопасностью всегда входил набор задач по управле­
    нию ключами, используемыми различными средствами защиты информации (СЗИ). В этот набор входят выдача, обновление, отмена и распространение ключей.
    В случае использования симметричной криптографии задача распространения секретных ключей представляла наиболее труд­
    ную проблему, поскольку:
    • для N пользователей необходимо распространить в защи­
    щенном режиме N ( N - 1)/2 ключей, что обременительно при N порядка нескольких сотен;
    • система распространения ключей сложна (много ключей и закрытый канал распространения), что приводит к появле­
    нию уязвимых мест.
    Асимметричная криптография позволяет обойти эту пробле­
    му, предложив к использованию только N секретных ключей.
    При этом у каждого пользователя только один секретный ключ
    и один открытый, полученный по специальному алгоритму из секретного.
    Из открытого ключа практически невозможно получить сек­
    ретный, поэтому открытый ключ можно распространять откры­
    тым способом всем участникам взаимодействия. На основании своего закрытого ключа и открытого ключа своего партнера по взаимодействию любой участник может выполнять любые крип­
    тографические операции: электронно-цифровую подпись, расчет разделяемого секрета, защиту конфиденциальности и целостно­
    сти сообщения.
    В результате решаются две главные проблемы симметричной криптографии:
    • перегруженность количеством ключей — их теперь всего N\
    сложность распространения — их можно распространять открыто.
    Однако у этой технологии есть один недостаток — подвер­
    женность атаке man-in-the-middle (человек-в-середине), когда атакующий злоумышленник расположен между участниками взаимодействия. В этом случае появляется риск подмены переда­
    ваемых открытых ключей.
    Инфраструктура управления открытыми ключами РКІ (Pub­
    lic Key Infrastructure) позволяет преодолеть этот недостаток и обеспечить эффективную защиту от атаки man-in-the-middle.
    1 3 .5 .1 . Принципы ф ункционирования Р КІ
    Инфраструктура открытых ключей РКІ предназначена для надежного функционирования КИС и позволяет как внутрен­
    ним, так и внешним пользователям безопасно обмениваться ин­
    формацией с помощью цепочки доверительных отношений. Ин­
    фраструктура открытых ключей основывается на цифровых сер­
    тификатах, которые действуют подобно электронным паспортам, связывающим индивидуальный секретный ключ пользователя с его открытым ключом.
    Защита от атаки man-in-the-middle
    При осуществлении атаки man-in-the-middle атакующий мо­
    жет незаметно заменить передаваемые по открытому каналу от­
    крытые ключи законных участников взаимодействия на свой от­
    крытый ключ, создать разделяемые секреты с каждым из закон­
    ных участников и затем перехватывать и расшифровывать все их сообщения.
    Поясним на примере (рис. 13.9) действия атакующего и спо­
    соб защиты от этой атаки. Предположим, что пользователь 1 и пользователь 2 решили установить защищенное соединение, рассчитав общий для них разделяемый секрет по схеме Диф- фи — Хеллмана. Однако в момент передачи по открытому кана­
    лу открытых ключей А",0 и К° пользователей 1 и 2 злоумышлен­
    ник @ перехватил эти ключи, не дав им дойти до адресатов. Соз­
    дав свои закрытый и открытый ключи, злоумышленник @ передает свой открытый ключ К@ пользователям 1 и 2, незамет­
    но подменив своим ключом К@ их подлинные открытые ключи и К
    2
    В результате пользователи 1 и 2 создадут разделяемые секреты не между собою, а между 1 •<-» @ и 2 <-> @, поскольку они будут использовать свои закрытые ключи и A'f и открытый ключ К® злоумышленника @.
    Рис. 13.9. Осуществление атаки man-in-the-middle
    Когда пользователь 1 будет отправлять пользователю 2 за­
    шифрованную информацию, злоумышленник @ может ее пере­
    хватить и расшифровать (у него с пользователем 1 свой разде­
    ляемый секрет Кт). Затем злоумышленник @ зашифрует инфор­
    мацию (возможно, измененную) заново, используя второй разделяемый секрет Кт, рассчитанный им и пользователем 2.
    В результате пользователь 2 будет получать, расшифровывать и использовать информацию, отправленную злоумышленником @, полагая, что он имеет защищенный канал с пользователем 1.
    Эта простая, но результативная атака является расплатой за изящное решение задачи распределения ключей, предложенное асимметричной криптографией.

    Проблема подмены открытых ключей успешно решается пу­
    тем использования сертификатов открытых ключей.
    Сертификаты открытых ключей
    Сертификаты открытых ключей играют важную роль в крип­
    тографии открытых ключей. Их основное назначение — сделать доступным и достоверным открытый ключ пользователя.
    В основу формирования сертификатов открытых ключей по­
    ложены принципы строгой аутентификации, рекомендованные стандартом Х.509 и базирующиеся на свойствах криптосистем с открытым ключом.
    Криптосистемы с открытым ключом предполагают наличие у пользователя парных ключей — секретного и открытого (обще­
    доступного). Каждый пользователь идентифицируется с помо­
    щью своего секретного ключа. С помощью парного открытого ключа любой другой пользователь имеет возможность опреде­
    лить, является ли его партнер по связи подлинным владельцем секретного ключа.
    Процедура, позволяющая каждому пользователю устанавли­
    вать однозначное и достоверное соответствие между открытым ключом и его владельцем, обеспечивается с помощью механизма сертификации открытых ключей.
    Степень достоверности факта установления подлинности
    (аутентификации) пользователя зависит от надежности хранения секретного ключа и надежности источника поставки открытых ключей пользователей. Чтобы пользователь мог доверять про­
    цессу аутентификации, он должен извлекать открытый ключ другого пользователя из надежного источника, которому он до­
    веряет. Таким источником согласно стандарту Х.509 является
    Центр сертификации СА ( Certification Authority). Его называют также Удостоверяющий центр — УЦ; последний термин исполь­
    зуется, в частности, в отечественном «Законе об ЭЦП» [62].
    Центр сертификации СА является доверенной третьей сторо­
    ной, обеспечивающей аутентификацию открытых ключей, содер­
    жащихся в сертификатах. СА имеет собственную пару ключей
    (открытый/секретный), где секретный ключ СА используется для подписывания сертификатов, а открытый ключ СА публику­
    ется и используется пользователями для проверки подлинности открытого ключа, содержащегося в сертификате.

    Сертификация открытого ключа — это подтверждение под­
    линности открытого ключа и хранимой совместно с ним слу­
    жебной информацией, в частности о принадлежности ключа.
    Сертификация ключа выполняется путем вычисления ЭЦП сер­
    тифицируемого ключа и служебной информации с помощью специального секретного ключа-сертификата, доступного толь­
    ко СА. Иными словами, сертификация открытого ключа — это подписывание открытого ключа электронной подписью, вычис­
    ленной на секретном ключе СА.
    Открытый ключ совместно с сертифицирующей его ЭЦП часто называют сертификатом открытого ключа или просто сер­
    тификатом.
    СА формирует сертификат открытого ключа пользователя путем заверения цифровой подписью СА определенного набора данных.
    В соответствии с форматом Х.509 в этот набор данных вклю­
    чаются:
    • период действия открытого ключа, состоящий из двух дат: начала и конца периода;
    • номер и серия ключа;
    • уникальное имя пользователя;
    • информация об открытом ключе пользователя: идентифи­
    катор алгоритма, для которого предназначен данный ключ, и собственно открытый ключ;
    • ЭЦП и информация, используемая при проведении проце­
    дуры проверки ЭЦП (например, идентификатор алгоритма генерации ЭЦП);
    • уникальное имя сертификационного центра.
    Таким образом, цифровой сертификат содержит три главные составляющие:
    • информацию о пользователе — владельце сертификата;
    • открытый ключ пользователя;
    • сертифицирующую ЭЦП двух предыдущих составляющих, вычисленную на секретном ключе СА.
    Сертификат открытого ключа обладает следующими свойст­
    вами:
    • каждый пользователь, имеющий доступ к открытому ключу
    СА, может извлечь открытый ключ, включенный в серти­
    фикат;

    ни одна сторона, помимо СА, не может изменить сертифи­
    кат так, чтобы это не было обнаружено (сертификаты нель­
    зя подделать).
    Так как сертификаты не могут быть подделаны, то их можно опубликовать, поместив в общедоступный справочник не пред­
    принимая специальных усилий по защите этих сертификатов.
    Создание сертификата открытого ключа начинается с созда­
    ния пары ключей (открытый/секретный).
    Процедура генерации ключей может осуществляться двумя способами.
    1. СА создает пару ключей. Открытый ключ заносится в сер­
    тификат, а парный ему секретный ключ передается пользовате­
    лю с обеспечением аутентификации пользователя и конфиден­
    циальности передачи ключа.
    2. Пользователь сам создает пару ключей. Секретный ключ сохраняется у пользователя, а открытый ключ передается по за­
    щищенному каналу в СА.
    Каждый пользователь может быть владельцем одного или не­
    скольких сертификатов, сформированных сертификационным центром СА пользователя. Пользователь может владеть сертифи­
    катами, полученными из нескольких разных сертификационных центров.
    На практике часто возникает потребность аутентифициро­
    вать пользователя, который получает сертификаты в другом сер­
    тификационном центре. Принципы распределенного админист­
    рирования рассматриваются ниже.
    Базовые модели сертификации
    Концепция инфраструктуры открытых ключей РКІ подразу­
    мевает, что все сертификаты конкретной РКІ (своя РКІ может быть у любой организации или организационной единицы) ор­
    ганизованы в определенную структуру.
    В РКІ различают четыре типа сертификатов.
    1. Сертификат конечного пользователя (описанный выше).
    2. Сертификат СА. Должен быть доступен для проверки
    ЭЦП сертификата конечного пользователя и подписан секрет­
    ным ключом СА верхнего уровня, причем эта ЭЦП также долж­
    на проверяться, для чего должен быть доступен сертификат СА верхнего уровня, и т. д.

    3. Самоподписанный сертификат. Является корневым для всей
    РКІ и доверенным по определению — в результате проверки це­
    почки сертификатов СА выяснится, что один из них подписан корневым секретным ключом, после чего процесс проверки ЭЦП сертификатов заканчивается.
    4. Кросс-сертификат. Позволяет расширить действие кон­
    кретной РКІ путем взаимоподписания корневых сертификатов двух разных РКІ.
    Существуют три базовые модели сертификации:
    иерархическая модель, основанная на иерархической цепи сертификатов;
    • модель кросс-сертификации (подразумевает взаимную сер­
    тификацию);
    • сетевая (гибридная) модель, включающая элементы иерар­
    хической и взаимной сертификации [9].
    Обобщенные схемы иерархической и сетевой архитектуры систем управления сертификатами приведены на рис. 13.10.
    Иерархическая структура
    Сетевая структура
    Доверенный Центр сертификации (СА)
    ----- ► Выпуск сертификата
    Удостоверяющий Центр сертификации (СА)
    ^ ^ Кросс-сертификация

    Пользователь
    Рис. 13.10. Иерархическая и сетевая архитектуры систем управления
    сертификатами
    В иерархической модели СА расположены в иерархическом подчинении доверенному (корневому) СА, предоставляющему сертификаты другим СА.

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

    Вероятно, в недалеком будущем на самом высоком уровне иерархии сертификации должен оказаться государственный но­
    тариус, который обеспечит связь цепочек доверия разных орга­
    низаций.
    1 3 .5 .2 . Л о ги ч ес ка я структура и компоненты Р КІ
    Инфраструктура открытых ключей РКІ (Public Key Infra­
    structure) — это набор агентов и правил, предназначенных для управления ключами, политикой безопасности и собственно об­
    меном защищенными сообщениями [9, 50].
    Основные задачи РКІ:
    • поддержка жизненного цикла цифровых ключей и серти­
    фикатов (т. е. генерация ключей, создание и подпись сер­
    тификатов, их распределение и пр.);
    • регистрация фактов компрометации и публикация «чер­
    ных» списков отозванных сертификатов;
    • поддержка процессов идентификации и аутентификации пользователей таким образом, чтобы сократить, по воз­
    можности, время допуска каждого пользователя в систему;
    • реализация механизма интеграции (основанного на РКІ) существующих приложений и всех компонентов подсисте­
    мы безопасности;
    • предоставление возможности использования единственного
    «токена» безопасности, единообразного для всех пользова­
    телей и приложений, содержащего все необходимые ключе­
    вые компоненты и сертификаты.
    Токен безопасности — это индивидуальное средство безопас­
    ности, определяющее все права и окружение пользователя в сис­
    теме, например смарт-карта.
    Приложение, требующее систему управления ключами, должно взаимодействовать с системой РКІ в ряде точек (передача сертификата на подпись, получение сертификата и «черного» списка при установлении взаимодействия и т. п.). Очевидно, что это взаимодействие с чуждой по отношению к данному приложе­
    нию системой может осуществляться только при условии полной поддержки международных стандартов, которым удовлетворяет большинство современных РКІ-систем (например, Baltimore,
    Entrust, Verisign).

    Для предоставления удаленного доступа мобильным пользо­
    вателям центр управления должен допускать подключение ком­
    пьютеров, IP-адрес которых ему заранее неизвестен. Участники информационного обмена опознаются по их криптографическим сертификатам. Так как криптографический сертификат пользо­
    вателя является электронным паспортом, он, как и любой пас­
    порт, должен соответствовать определенным стандартам. В крип­
    тографии это стандарт Х.509.
    На рис. 13.11 приведена логическая структура и основные компоненты инфраструктуры управления открытыми ключа­
    ми РКІ.
    Каталог
    сертификатов
    Рис. 13.11. Структура РКІ
    Компоненты этой структуры имеют следующее назначение.
    Каталог сертификатов — общедоступное хранилище серти­
    фикатов пользователей. Доступ к сертификатам производится обычно по стандартизованному протоколу доступа к каталогам
    LDAP (Lightweight Directory Access Protocol).
    Центр регистрации RA (Registration Authority) — организаци­
    онная единица, назначение которой — регистрация пользовате­
    лей системы.
    Пользователь — владелец какого-либо сертификата (такой пользователь подлежит регистрации) или любой пользователь, за­
    прашивающий сертификат, хранящийся в каталоге сертификатов.

    Центр сертификации СА (Certification Authority) — организа­
    ционная единица, назначение которой — сертификация откры­
    тых ключей пользователей (здесь из открытого ключа получается сертификат формата Х.509) и их опубликование в каталоге сер­
    тификатов.
    Общая схема работы СА выглядит следующим образом:
    • СА генерирует собственные ключи и формирует сертифи­
    каты СА, предназначенные для проверки сертификатов пользователей;
    • пользователи формируют запросы на сертификацию и дос­
    тавляют их СА тем или иным способом;
    • СА на основе запросов пользователей формирует сертифи­
    каты пользователей;
    • СА формирует и периодически обновляет списки отменен­
    ных сертификатов CRL (Certificate Revocation List);
    • сертификаты пользователей, сертификаты СА и списки от­
    мены CRL публикуются СА (рассылаются пользователям либо помещаются в общедоступный справочник).
    Инфраструктуру открытых ключей РКІ поддерживает ряд
    ОС, приложений и стандартов.
    В свою очередь инфраструктура открытых ключей РКІ может интегрировать перечисленные функциональные области. В ре­
    зультате можно создавать комплексную систему информацион­
    ной безопасности путем интеграции инфраструктуры открытых ключей в ИС компании и использования единых стандартов и сертификатов открытых ключей.

    Часть 4
    ТЕХНОЛОГИИ ОБНАРУЖЕНИЯ
    ВТОРЖЕНИЙ
    Еще несколько лет назад можно было надежно обеспечить безопасность ИС, используя такие традиционные средства защи­
    ты как идентификация и аутентификация, разграничение досту­
    па, шифрование и т. п. Однако с появлением и развитием откры­
    тых компьютерных сетей ситуация резко изменилась. Количество уязвимостей сетевых ОС, прикладных программ и возможных атак на КИС постоянно растет. Системы анализа защищенности и системы обнаружения компьютерных атак являются важными элементами системы безопасности сетей любого современного предприятия.
    Сегодня уже никого не надо убеждать в необходимости по­
    строения антивирусной защиты любой достаточно ответствен­
    ной ИС. По оценкам западных аналитиков, ежегодный общеми­
    ровой ущерб от вторжений вирусов, сетевых червей, троянских коней и прочих вредоносных программ составляет миллиарды долларов. Ежедневно в мире появляются от 2 до 10 новых виру­
    сов. В условиях, когда компьютерные системы становятся осно­
    вой бизнеса, а БД главным капиталом многих компаний, анти­
    вирусная защита прочно встает рядом с вопросами информаци­
    онной и экономической безопасности организации.
    Эффективность защиты КИС зависит от принятия правиль­
    ных решений, которые поддерживают защиту, адаптирующуюся к изменяющимся условиям сетевого окружения. Решение про­
    блем безопасности КИС требует применения адаптивного меха­
    низма, работающего в реальном режиме времени и обладающего высокой чувствительностью к изменениям в информационной инфраструктуре.

    1   ...   15   16   17   18   19   20   21   22   23


    написать администратору сайта