В курс включены сведения, необходимые специалистам в области информационной безопасности. Рассматривается технология инфраструктур открытых ключей (Public Key Infrastructure – PKI), которая позволяет использовать сервисы шифрования и цифровой подписи согласованно с широким кругом приложений, функционирующих в среде открытых ключей. Технология PKI считается единственной, позволяющей применять методы подтверждения цифровой идентичности при работе в открытых сетях.
Курс дает представление об основных концепциях и подходах к реализации инфраструктур открытых ключей, в нем описываются политика безопасности, архитектура, структуры данных, компоненты и сервисы PKI. Предлагается классификация стандартов и спецификаций в области инфраструктур открытых ключей. Подробно рассматриваются процессы проектирования инфраструктуры и подготовки ее к работе, обсуждаются типовые сценарии использования и способы реагирования на инциденты во время функционирования PKI.
Инфраструктуры открытых ключей
УДК: 004.056(07)
ББК: 17
П54
Содержание
Лекция 1. Доверие в сфере электронных коммуникаций
Лекция 2. Механизмы аутентификации
Лекция 3. Основные компоненты и сервисы PKI
Лекция 4. Сервисы безопасности PKI и базовые криптографические механизмы
Лекция 1. Доверие в сфере электронных коммуникаций
Понятие доверия
Новым популярным словом двадцать первого века стало слово
"доверие"
.
Доверие
затрагивает многие стороны жизни людей, начиная от экономической, финансовой, деловой сфер и заканчивая принятием политических решений.
Доверие
требуется при приобретении товаров и услуг, открытии счетов в банках, заключении сделок, участии в выборах президента. Поскольку "электронные" отношения становятся все более привычными для миллионов людей - появляются возможности совершать покупки в магазинах электронной торговли, пользоваться системами электронных банковских расчетов, заключать электронные договора и даже участвовать в электронном голосовании при проведении социологических опросов и выборов в органы государственной власти, - значение
доверия
в сфере электронных коммуникаций неуклонно возрастает.
Очевидно, что невозможно избежать проблем безопасности в сфере электронных коммуникаций, но, в дополнение к технологиям защиты, можно выработать решение, способное уменьшить риск. Это решение также известно как
доверие
.
Доверие
в сфере электронных коммуникаций не ограничивается
доверием
к защищенным компьютерным системам - ведь безопасность компьютерной системы зависит не только от надежной операционной системы, но и от физических средств защиты, от квалификации и надежности персонала и многого другого.
Доверие
между партнерами напрямую зависит от специфики сферы реализации их деловых отношений. Например, в финансовых приложениях, применяемых для межбанковских расчетов, последствия выхода из строя системы могут быть чрезвычайно серьезны, поэтому степень
доверия
друг к другу участников электронного взаимодействия должна быть намного выше, чем в приложениях корпоративной электронной почты, где индивидуальный ущерб относительно невелик. Критериями оценки степени
доверия
к любым компаниям-производителям товаров и услуг одного уровня выступают ключевые элементы
доверия
:
предсказуемость
, ресурсы и
неопределенность
[105]
.
Предсказуемость, то есть способность поставщика услуг постоянно производить ожидаемый (позитивный) результат
Вообще говоря, обычно никто не заботится о
Пример 1.1
Политики доверия
Один из простейших, но не самых эффективных методов установления
доверия
в сфере электронных транзакций заключается в использовании прозрачных
политик доверия
.
Политики доверия
должны обеспечивать:
*
конфиденциальность;
*
корректное использование информации;
*
реагирование в случае нарушения
доверия
;
*
внутренние механизмы гарантирования
непрерывности доверия
;
Конфиденциальность
Политики конфиденциальности разрабатываются для того, чтобы пользователи правильно понимали, как данная компания будет обращаться с той персональной и деловой информацией, которую они ей предоставляют. Опубликованная на web-сайте компании политика конфиденциальности объясняет правила использования персональных данных и способствует установлению контакта с пользователями. Пользователи должны ознакомиться с этой политикой и подтвердить свое согласие с указанными правилами. Примером политики конфиденциальности может служить политика, опубликованная на сайте
Yahoo
[207]
.
Корректное использование информации
Другой аспект
политик доверия
- корректное использование информации. Это касается ситуаций, когда персональная информация может использоваться не в интересах человека, а, например, для оценки его финансовых возможностей (доходов, суммы медицинской страховки) как потенциального покупателя. В настоящее время некоторые компании практикуют отбор и классификацию потребителей определенных товаров и услуг, а затем продают эту информацию другим компаниям. Подобная практика приводит к тому, что люди начинают получать по почте нежелательные сообщения рекламного характера, спам, их вынуждают отвечать на телефонные звонки, пытаются привлечь в качестве потенциальных клиентов кредитных карточных систем и т.п.
Реагирование в случае нарушения доверия
Политика доверия
должна предлагать некоторые финансовые гарантии, то есть страховать пользователя, на тот случай, когда невозможно обеспечить полную защиту его ресурсов. Достаточно часто в политиках содержится утверждение о том, что споры о нарушении конфиденциальности рассматриваются в арбитражном суде. Следует учитывать, что арбитражное разбирательство имеет гораздо менее серьезные последствия для стороны, нарушившей
политику доверия
, чем судебное. Очевидно, что в штате крупных компаний, заинтересованных в поддержке отношений
доверия
, должен присутствовать администратор информационной безопасности или ответственный за конфиденциальность персональных данных. К сожалению, на практике чаще всего единственным выходом для клиентов при нарушении конфиденциальности является прекращение использования сервисов данного web-сайта.
Непрерывность доверия
Политика доверия
должна раскрывать внутренние механизмы
доверия
и демонстрировать, что
доверие
базируется не просто на обещаниях, а является важной составной частью деловых операций. Примерами внутренних механизмов
доверия
могут служить строгий контроль за уровнем подготовки и соблюдением служащими политики конфиденциальности, защищенность компьютерных систем и оборудования, а также аудит бизнес-процессов.
Ассоциации доверия
В повседневной жизни люди часто допускают транзитивные отношения
доверия
. Например, если наш друг дает хорошую рекомендацию человеку, которого мы не знаем, то мы обычно склонны относится к этому незнакомцу с большим
доверием
, чем если бы познакомились с ним сами. В этом случае, поскольку мы доверяем своему другу, то полагаемся на правильность его мнения.
Точно так же в сфере электронных коммуникаций и Интернета появился ряд
ассоциаций доверия
, которые являются аффилиированными компаниями организаций, web-сайтов и кадровых агентств и в зависимости от направления деятельности осуществляют контроль соблюдения политики конфиденциальности, оценку безопасности и надежности программного и аппаратного обеспечения, занимаются аудитом систем и сертификацией специалистов и продуктов в сфере информационных технологий. Некоторые примеры таких ассоциаций приведены в
табл. 1.2
[105]
.
Так, например, известные
ассоциации доверия
Better Business Bureau и TrustE знакомят другие компании с законами в области обеспечения конфиденциальности и помогают им разрабатывать собственные политики и правила
[39]
. Если компания выполняет все рекомендации
ассоциации доверия
, то получает ее "печать одобрения" (некоторый символ или логотип ассоциации) для размещения на своем web-сайте.
|
Общепринятое название
|
Тип
|
Формальное название
|
Описание
|
Концепция инфраструктуры безопасности
Важным фундаментом
доверия
в сфере электронных коммуникаций является поддержка
инфраструктуры безопасности
. Инфраструктура может рассматриваться как базис некоторой масштабной среды. Всем известны такие инфраструктуры, как компьютерные сети, позволяющие выполнять обмен данными между различными компьютерами, и электросети, обеспечивающие работу разнообразного электрооборудования. Несмотря на различия, их объединяет один и тот же принцип: инфраструктура существует для того, чтобы совершенно разные субъекты могли подключиться к ней и использовать ее в своих целях
[44]
.
Инфраструктура, отвечающая целям безопасности, должна строиться на тех же принципах и предоставлять те же преимущества.
Инфраструктура безопасности
обеспечивает защищенность целой организации и должна быть доступна для всех приложений и объектов организации, которым необходима безопасность. "Точки входа" в
инфраструктуру безопасности
должны быть удобны и унифицированы, как электрические розетки в стене, - ничто не должно мешать объектам, желающим использовать инфраструктуру.
Инфраструктура безопасности
, по сути, является рациональной архитектурой для многих сред. Понятие
инфраструктуры безопасности
- достаточно широкое, включающее в себя многие аспекты, в том числе совместимость имен, политики авторизации, мониторинг, аудит, управление ресурсами, контроль доступа и т.п.
Большинство технических специалистов связывают
доверие
в сфере электронных коммуникаций с надежной инфраструктурой, к которой относятся системы, приложения и процессы, обеспечивающие надежную, защищенную обработку транзакций. Важными компонентами этой инфраструктуры являются межсетевые экраны, маршрутизаторы, сканеры вирусов, средства оценки уязвимости и защищенные серверы. Большая доля ИТ-затрат приходится на них, поскольку они образуют наиболее осязаемую материальную базу защиты
доверия
.
Уровни инфраструктуры
Рассмотрим уровни
инфраструктуры безопасности
(
рис. 1.1
). Простейший уровень, находящийся внизу, - это физический уровень. Принимая во внимание ограниченное число рисков, связанных с физическими атаками, этот уровень защищать проще, чем другие. Чтобы гарантировать трудность физического доступа к центру хранения и обработки данных или аналогичным ресурсам, используют одновременно средства сигнализации, охрану и замки. Интересно отметить, что бывает проще физически разрушить хорошо защищенный сайт, чем взломать его. Следовательно, организации важно иметь хорошо проработанный план восстановления после аварии, включая организацию центров "горячего" и "теплого" резервирования данных.
Физический уровень
Хотя физический доступ и не рассматривается как реальная угроза сегодняшнего дня, очевидно, что нарушение физической безопасности может привести к нарушению информационной безопасности. Для обеспечения высокой степени
доверия
к защите физического уровня необходимы следующие меры:
*
Ограниченный доступ с использованием нескольких механизмов аутентификации (например, применение биометрического устройства и считывателя карт).
*
Постоянный мониторинг безопасности с использованием видео- и аудиоаппаратуры, сенсорный мониторинг внешней и внутренней среды.
*
Обученный персонал, отвечающий за безопасность.
*
Журналы, регистрирующие доступ по ID-картам, проверку документов службой охраны и т.п.
Системный уровень
Следующий уровень, системный, включает совокупность взаимодействующих друг с другом систем. Поддержку
доверия
на этом уровне реализовать сложнее, потому что может быть обеспечена безопасность систем в комплексе, а может быть защищена отдельно каждая система.
На системном уровне должна быть обеспечена безопасность двух ключевых компонентов - операционной системы (ОС) и сети. Бреши в ОС являются базисом многих атак на инфраструктуру. Уязвимость ОС связана с их постоянным обновлением: системные администраторы иногда забывают устанавливать "заплаты" (файлы с исправлениями), чтобы своевременно защищать уязвимые места. Кроме того, модификация разработчиком ОС функций безопасности способна иногда влиять на базовую функциональность, вынуждая системных администраторов откладывать обновление системы.
Рис. 1.1.
Уровни инфраструктуры безопасности
Сетевые компоненты еще более уязвимы, чем ОС. Современная сеть подвергается и внутренним, и внешним атакам, для защиты от них требуется сложный набор технологий. Многие исследования показали, что организации часто бывают более уязвимы для внутренних атак, чем для прямых атак из Интернета. Защита сети изнутри немного более сложна и требует строгого контроля доступа, использования межсетевых экранов, контрольных журналов и т.д. Строгий контроль доступа позволяет повысить степень
доверия
пользователей при доступе к частной сети. В настоящее время угрозу представляет использование карманных персональных компьютеров (Personal Digital Assistants). Эти устройства могут подсоединяться непосредственно к узлу сети и обходить защиту межсетевых экранов, маршрутизаторов и антивирусных средств. Таким образом, вирус или другой злонамеренный код может быть занесен непосредственно в сеть. Для фиксации подозрительной активности и событий после инцидента необходимы контрольные журналы. Важно, чтобы файлы регистрации хранились отдельно, вне функционирующих систем, причем таким способом, который делает их неизменяемыми (во избежание мошенничества системных администраторов).
Уровень приложений
Уровень приложений, вероятно, наиболее сложен для защиты и обеспечения
доверия
, так как частота использования программных утилит здесь намного выше, чем на любом другом уровне, и, следовательно, потенциально выше риск безопасности. Компрометация уровня приложений чаще всего связана с нехваткой ресурсов памяти и невозможностью управлять данными пользователей, а также с избыточностью функций приложений. Ограниченность ресурсов памяти приводит к переполнению буфера или непреднамеренному принятию фальсифицированных данных, что обычно происходит в результате неадекватной фильтрации пользовательских данных при вводе или попытке получить доступ к большему объему памяти, чем имеется фактически. Для защиты уровня приложений используются:
*
программные средства (например, сканирование или блокирование вирусов);
*
программное обеспечение превентивного действия (обнаружение уязвимостей или тестирование);
*
просмотр кодов приложений вручную с целью выявления возможных проблем безопасности.
Уровень приложений является наиболее сложным для защиты еще и потому, что наиболее доступен. Например, любой, кто может получить доступ к web-сайту компании, занимающейся электронной торговлей, немедленно получает доступ к приложению (
Active X
), которое позволяет выполнить транзакцию
[105]
. Получить доступ на физическом или системном уровне труднее. Важно понимать, что компрометация одного уровня ведет к компрометации другого. Часто системный уровень атакуется, а затем используется для доступа к данным приложения. Например, злоумышленник может атаковать ОС и использовать бреши в ней для атаки на размещаемые в уровне приложений данные клиентов с целью получения информации о номерах кредитных карт.
Цель и сервисы инфраструктуры безопасности
Главная цель
инфраструктуры безопасности
состоит в обеспечении безопасной работы приложений. Если проводить аналогию с функционированием инфраструктуры электросетей, то можно сказать, что электросеть обеспечивает правильную работу таких "приложений", как электроприборы. Более того, универсальность инфраструктуры электросетей такова, что она способна поддерживать "приложения", которые были неизвестны в то время, когда она проектировалась (к ним относится практически вся современная бытовая техника, компьютеры и многое другое). Под приложением в контексте
инфраструктуры безопасности
понимается любой модуль, использующий инфраструктуру в целях безопасности, такой как web-браузер, клиентское приложение электронной почты, устройство, поддерживающее протокол
IPsec
, и т.п.
Инфраструктура безопасности
дает возможность приложениям защищать их собственные данные или ресурсы и придавать безопасность их взаимодействию с другими данными или ресурсами. Доступ к инфраструктуре должен быть простым и быстрым - подобно включению электроприбора в розетку.
Инфраструктура безопасности
должна обладать знакомым и удобным интерфейсом, пригодностью и
предсказуемостью
сервисов. Кроме того, устройствам, использующим инфраструктуру, нет необходимости знать, каким образом достигается результат. Так, например, для работы любого электроприбора не имеет значения, каким образом происходит передача электроэнергии, а важно лишь то, что при его включении в электрическую розетку
предсказуемый
"сервис" обеспечивает прибор электроэнергией, необходимой для его правильной работы. То есть
инфраструктура безопасности
должна иметь хорошо известные точки входа, которые могут доставить сервис безопасности нуждающемуся в нем устройству. Причем для устройства неважно, как это делается, но существенно, что это делается удобно и корректно.
Рассмотрим наиболее важные аспекты сервисов, предоставляемых
инфраструктурой безопасности
.
Защищенная регистрация
Концепция регистрации пользователя для доступа к приложению широко известна. Обычно этот процесс заключается в том, что пользователь вводит информацию, которая его идентифицирует (имя или ID пользователя) и аутентифицирует (пароль или другая секретная информация). Процесс регистрации предполагает, что никто, кроме законного пользователя, не знает аутентифицирующую его информацию, и обеспечивает защищенный доступ пользователя к определенному приложению.
Проблемы безопасности, возникающие при регистрации, также хорошо известны. Если приложение, требующее регистрации, удалено от пользователя (находится, например, на другом компьютере), то пароли, передаваемые по незащищенной сети, становятся объектом перехвата. Даже зашифрованные пароли не защищены от атак воспроизведения (replay attacks), когда они могут быть скопированы и использованы позднее для имитации аутентичности. Более того, общеизвестно, что пользователи редко выбирают "хорошие" пароли (достаточной длины и непредсказуемости), как правило, не запоминают их без записывания и не меняют своевременно, когда этого требует локальная политика безопасности.
Инфраструктура безопасности
может решить некоторые из этих проблем. Поддержка безопасности подразумевает, что событие
регистрации
для инфраструктуры происходит локально (на устройстве, посредством которого пользователь физически осуществляет взаимодействие) и что корректный результат
регистрации
, когда необходимо,
защищенно
распространяется на удаленное приложение.
Рис. 1.2
иллюстрирует этот процесс
[44]
.
Рис. 1.2.
защищенная регистрация
Защищенная однократная регистрация
Проблемы безопасности при регистрации многократно возрастают, когда пользователю необходим доступ ко многим приложениям. Практика показывает, что если пользователю нужно множество паролей, он просто принимает решение сделать все свои пароли одинаковыми. Это ведет к эффекту "самого слабого звена": при взломе слабейшей из систем (например, при помощи программы-сниффера) злоумышленник получает доступ ко всем системам одновременно. Применение одного и того же пароля для доступа ко всем приложениям снижает общую безопасность, а запоминание множества паролей и трата времени на доступ ко многим системам существенно затрудняют работу пользователя и вынуждают его искать пути обхода этих процедур, что также небезопасно.
Преимущества системы
SSO
заметны пользователям с первого взгляда: отпадает необходимость запоминать множество паролей и тратить время на аутентификацию при входе в каждую конкретную систему (
см. рис. 1.3
). Этим, однако, достоинства системы
SSO
не ограничиваются. Во-первых, правильно внедренная система
SSO
оказывает положительное влияние на безопасность: пользователи регистрируются на своих локальных компьютерах, пароли реже "путешествуют" по сети, и выше вероятность, что единственный пароль, выбранный пользователем, будет "хорошим". Во-вторых,
однократная регистрация
не просто удобна для пользователей, но также снижает нагрузку на централизованную службу поддержки информации о регистрации и обслуживания паролей (плановая или внеплановая смена паролей, работа с забытыми паролями и пр.), которая уязвима к атакам.
Рис. 1.3.
Защищенная однократная регистрация
Естественно, определенная доля риска имеется и при внедрении системы
SSO
(одна процедура обеспечивает доступ ко всем системам), поскольку создается единая точка отказа в защите сети. Однако системы
SSO
, как правило, хорошо защищены от несанкционированного доступа; к тому же дополнительную защиту создают средства физической аутентификации
[42]
.
Прозрачность для конечных пользователей
Жизненно важным свойством всеобъемлющей
инфраструктуры
является ее почти полная
прозрачность
для пользователей. Такой
прозрачностью
обладает, например,
инфраструктура
сетевых коммуникаций, большинству пользователей которой необязательно знать о тонкостях сетевых технологий, или уже приводимая в качестве примера инфраструктура электросетей, многим пользователям которой не нужно беспокоиться об уровне напряжения или мощности электрического тока.
Сервисы инфраструктуры для пользователей можно сравнить с "черным ящиком". Правильно спроектированная
инфраструктура безопасности
должна обладать теми же свойствами: вся технология обеспечения безопасности должна быть виртуально скрыта от пользователей и не требовать никакого ручного вмешательства, знания ключей и алгоритмов, а ошибки пользователей не должны приводить к серьезной компрометации безопасности. Другими словами, идея
прозрачности
инфраструктуры безопасности
может быть выражена следующим образом: средства обеспечения безопасности не должны мешать пользователям выполнять работу. Безопасность не должна требовать от пользователей никаких специальных знаний и процедур, а также ощутимо затруднять и замедлять их деятельность. Инфраструктура должна выполнять все задания, имеющие отношение к безопасности, способом, полностью прозрачным для пользователей.
Следует учитывать, однако, что
прозрачность
, обеспечиваемая
инфраструктурой
, подразумевает определенную степень
доверия
со стороны пользователей к тому, что инфраструктура функционирует корректно и может предоставлять свои сервисы. Когда это не так, пользователи должны быть немедленно уведомлены об этом, поскольку невозможность инфраструктуры обеспечить безопасность, как правило, требует адекватной реакции пользователей. Поэтому установление связи с инфраструктурой (процедура регистрации) и уведомление о невозможности предоставить необходимый сервис обычно бывают непрозрачными для пользователей.
Комплексная безопасность
Наиболее важное достоинство всеобъемлющей
инфраструктуры безопасности
заключается в том, что она гарантирует сквозную доступность в среде единой, надежной технологии безопасности. В результате в комплексе может работать неограниченное количество приложений, устройств и серверов для защиты процессов передачи, хранения и поиска данных, обработки транзакций, доступа к серверам.
Приложения электронной почты, web-браузеры, межсетевые экраны, устройства удаленного доступа, серверы приложений, файл-серверы, базы данных и т.п. - все они способны понимать и использовать инфраструктуру унифицированным способом. Такая среда существенно упрощает как взаимодействие пользователей с различными устройствами и приложениями, так и сложное администрирование устройств и приложений, гарантируя, что они функционируют в соответствии с требованиями заданного уровня безопасности.
Всеобъемлющая
инфраструктура безопасности
предоставляет организации ряд существенных преимуществ:
*
экономию затрат;
*
функциональную совместимость внутри организации и между организациями;