Протокол управления криптоключами IKE
Протоколы ESP и АН позволяют реализовать важнейшие атрибуты защищенной передачи — конфиденциальность связи, аутентификацию сторон и целостность данных. Однако их функции теряют всякую ценность в отсутствие мощной поддерживающей инфраструктуры, которая обеспечивала бы распределение ключей и согласование протоколов между участниками обмена.
Роль такой инфраструктуры в IPSec выполняет группа протоколов IKE (Internet Key Exchange). Это название пришло в 1998 г. на смену более раннему — ISAKMP/Oakley, которое непосредственно указывало на происхождение средств управления ключами в составе IPSec.
Протокол ISAKMP {Internet Security Association and Key Management Protocol), описанный в документе RFC 2408, позволяет согласовывать алгоритмы и математические структуры (так называемые мультипликативные группы, определенные на конечном поле) для процедуры обмена ключами Диффи — Хеллмана, а также процессов аутентификации. ПротоколOakley, описанный в RFC 2412, основан на алгоритме Диффи — Хеллмана и служит для организации непосредственного обмена ключами.
Протоколы IKE решают три задачи:
• осуществляют аутентификацию взаимодействующих сторон, согласовывают алгоритмы шифрования и характеристики ключей, которые будут использоваться в защищенном сеансе обмена информацией;
• обеспечивают создание, управление ключевой информации соединения, непосредственный обмен ключами (в том числе возможность их частой смены);
• управляют параметрами соединения и защитой от некоторых типов атак, контролируют выполнение всех достигнутых соглашений.
Разработчики IPSec начали свою деятельность с решения последней из перечисленных задач. В результате на свет появилась концепция защищенных виртуальных соединений илибезопасных ассоциаций SA (Security Associations).
1. Установление безопасной ассоциации SA
Основой функционирования IPSec являются защищенные виртуальные соединения или безопасные ассоциации SA (Security Associations). Для того чтобы протоколы АН и ESP могли выполнять свою работу по защите передаваемых данных, между двумя конечными точками должна быть сформирована ассоциация SA — соглашение о защите обмена данными между двумя взаимодействующими партнерами.
Установление SA должно начинаться со взаимной аутентификации сторон, потому что меры безопасности теряют всякий смысл, если данные передаются или принимаются неавторизованными пользователями. Процедуры установления SA оправданы лишь в том случае, если у каждой из сторон имеется полная уверенность в том, что ее партнер — именно тот, за кого он себя выдает.
Для выполнения аутентификации сторон в IKE применяются два основных способа.
Первый способ основан на использовании разделяемого секрета. Перед инициализацией IPSec-устройств, образующих безопасные ассоциации, в их БД помещается предварительно распределенный разделяемый секрет. Цифровая подпись на основе односторонней функции, например, MD5, использующей в качестве аргумента этот предварительно распределенный секрет, доказывает аутентичность противоположной стороны.
Второй способ основан на использовании технологии цифровой подписи и цифровых сертификатов стандарта Х.509. Каждая из сторон подписывает свой цифровой сертификат своим закрытым ключом и передает эти данные противоположной стороне. Если подписанный сертификат расшифровывается открытым ключом отправителя, то это удостоверяет тот факт, что отправитель, предоставивший данные, действительно обладает ответной частью данного открытого ключа — соответствующим закрытым ключом.
Однако следует отметить, что для удостоверения аутентичности стороны нужно еще убедиться в аутентичности самого сертификата, и для этого сертификат должен быть подписан не только его владельцем, но и некоторой третьей стороной, выдавшей сертификат и вызывающей доверие. В архитектуре IPSec эта третья сторона именуется органом сертификации СА(Certification Authority). Этот орган призван засвидетельствовать подлинность обеих сторон и должен пользоваться полным доверием сторон, а его открытый ключ — известен всем узлам, использующим его сертификаты для удостоверения личностей друг друга.
После проведения взаимной аутентификации взаимодействующие стороны могут непосредственно перейти к согласованию параметров защищенного канала. Выбираемые параметры SAопределяют: протокол, используемый для обеспечения безопасности передачи данных; алгоритм аутентификации протокола АН и его ключи; алгоритм шифрования, используемый протоколом ESP, и его ключи; наличие или отсутствие криптографической синхронизации; способы защиты сеанса обмена; частоту смены ключей и ряд других параметров. Важным параметром SA является так называемый криптографический материал, т. е. секретные ключи, используемые в работе протоколов АН и ESP. Сервисы безопасности, предлагаемые IPSec, используют для формирования криптографических ключей разделяемые секреты.
Параметры SA должны устраивать обе конечные точки защищенного канала. Поэтому при использовании автоматической процедуры установления SA протоколы IKE, работающие по разные стороны канала, выбирают параметры в ходе переговорного процесса. Для каждой задачи, решаемой протоколами АН и ESP, предлагается несколько схем аутентификации и шифрования — это делает IPSec очень гибким средством. Безопасная ассоциация SA представляет собой в IPSec однонаправленное логическое соединение, поэтому при двустороннем обмене данными необходимо установить две ассоциации SA. В рамках одной ассоциации SA может работать только один из протоколов защиты данных — либо АН, либо ESP, но не оба вместе.
Для идентификации каждой SA предназначен индекс параметров безопасности SPI (Security Parameters Index). Этот индекс включается в заголовки защищенных IPSec-пакетов, чтобы принимающая сторона смогла правильно их расшифровать и аутен-тифицировать, воспользовавшись указанной безопасной ассоциацией.
Система IPSec допускает применение ручного и автоматического способа установления SA. При ручном способе администратор конфигурирует каждый конечный узел таким образом, чтобы они поддерживали согласованные параметры ассоциации, включая и секретные ключи.
Для автоматического установления ассоциации необходим соответствующий протокол, в качестве которого в стандартах IPSec определен протокол IKE. Он является комбинацией протоколов ISAKMP, Oakley и SKEME. Протокол согласования параметров виртуального канала и управления ключами ISAKMP (Internet Security Association Key Management Protocol) описывает базовую технологию аутентификации, обмена ключами и согласования остальных параметров IPSec-туннеля при создании SA, однако сами протоколы аутентификации сторон и обмена ключами в нем детально не определены. Поэтому при разработке протокола IKE общие правила и процедуры протокола ISAKMP дополнены процедурами аутентификации и обмена ключами, взятыми из протоколов Oakley и SKEME. Поскольку протокол IKE использует для управления ассоциациями алгоритмы и форматы протокола ISAKMP, названия этих протоколов иногда используют как синонимы.
На основании протокола ISAKMP согласование параметров защищенного взаимодействия необходимо как при формировании IPSec-туннеля, так и при формировании в его рамках каждого защищенного однонаправленного соединения. Параметры IPSec-туннеля согласуются по протоколу ISAKMP/Oakley. Параметры каждого защищенного однонаправленного соединения согласуются в рамках сформированного IPSec-туннеля и образуют SA.
Криптографические ключи для каждого защищенного однонаправленного соединения генерируются на основе ключей, выработанных в рамках IPSec-туннеля. При этом учитываются алгоритмы аутентификации и шифрования, используемые в протоколах аутентифицирующего заголовка (АН) и инкапсулирующей защиты (ESP).
Стандарты IPSec позволяют шлюзам использовать как одну ассоциацию SA для передачи трафика всех взаимодействующих через Internet хостов, так и создавать для этой цели произвольное число ассоциаций SA, например по одной на каждое соединение TCP.
2. Базы данных SAD и SPD
IPSec предлагает различные методы защиты трафика. В каждом узле, поддерживающем IPSec, используются БД двух типов:
• база данных безопасных ассоциаций SAD (Security Associations Database);
• база данных политики безопасности SPD (Security Policy Database).
При установлении SA две вступающие в обмен стороны принимают ряд соглашений, регламентирующих процесс передачи потока данных между ними. Соглашения представляются в виде набора параметров. Для SA такими параметрами являются, в частности, тип и режим работы протокола защиты (АН или ESP), методы шифрования, секретные ключи, значение текущего номера пакета в ассоциации и другая информация.
Объединение служебной информации в рамках SA предоставляет пользователю возможность сформировать разные классы защиты, предназначенные, например, для электронного общения с разными «собеседниками». Другими словами, применение структур SA открывает’путь к построению множества виртуальных частных сетей, различающихся своими параметрами.
Наборы текущих параметров, определяющих все активные ассоциации, хранятся на обоих оконечных узлах защищенного канала в виде SAD. Каждый узел IPSec поддерживает две базыSAD — одну для исходящих ассоциаций, другую — для входящих.
SPD задает соответствие между IP-пакетами и установленными для них правилами обработки. При обработке пакетов БД SPD используются совместно с БД SAD. SPD представляет собой упорядоченный набор правил, каждое из которых включает совокупность селекторов и допустимых политик безопасности. Селекторы служат для отбора пакетов, а политики безопасности задают требуемую обработку. Такая БД формируется и поддерживается на каждом узле, где установлено ПО IPSec.
Эта статья была опубликована Среда, 21 апреля, 2010 at 12:31 в рубрике Защита на сетевом уровне (Протокол IPSEC). Вы можете следить за ответами через RSS 2.0 feed.