Описанию протокола IP-Security (IPSec) или, если быть точнее, набора протоколов (англ. protocol suite) можно посвятить отдельную книгу. Достаточно перечислить документы, описывающие его функционирование RFC с 2401 по 2412 (рис. 22.27).
· Архитектура безопасности для IP.
· Аутентификационный заголовок (Authentication Header – АН) для IP.
· Использование HMAC-MD5-96 в ESP и АН.
· Использование HMAC-SHA-1-96 в ESP и АН.
· Шифрующий алгоритм DES-CBC для ESP.
· Безопасное сокрытие существенных данных (Encapsulating Security Pay load – ESP) для IP.
· Безопасность IP-домена интерпретаций для ISAKMP.
· ISAKMP (Internet Security Association and Key Management Protocol) – Протокол ассоциаций (наборов параметров) безопасности и управления ключами в Интернете.
· Обмен ключами в Интернете (Internet Key Exchange – IKE).
· Нулевой (NULL) алгоритм шифрования и его использование с IPSec.
· Общее описание (roadmap document) безопасности IP.
· Протокол определения ключей Oakley.
· новополагающими понятиями IPSec являются:
· аутентификационный заголовок (АН);
· безопасное сокрытие данных (ESP);
· варианты работы: туннельный и транспортный;
· ассоциации безопасности;
· управление ключами.
Аутентификационный заголовок (англ. authentication header) АН (рис. 22.28) предназначен для обеспечения аутентификации отправителя, контроля целостности данных и опционально для предотвращения повторной посылки (англ. replay) пакета – при условии, что принимающая сторона настроена производить проверку последовательного номера пакета. Дополнительно необходимо заметить, что поля IP-пакета, которые изменяются в пути следования, не подлежат контролю целостности.
Протокол Encapsulating Security Payload (ESP) – Безопасное Сокрытие Данных – обеспечивает конфиденциальность путем шифрования части данных, представляющих информацию протоколов верхнего уровня. Дополнительной функцией может быть названо сокрытие реального объема сетевого трафика. ESP обеспечивает аутентификацию и контроль целостности, как и АН, и, как следствие, может быть использован как отдельно, так и вместе с АН (разделяя или совмещая функции). Кроме того, отдельно выделяется понятие уплотненный режим (англ. nested fashion) путем использования туннельного варианта передачи данных. В этом режиме датаграмма IP целиком помещается внутрь пакета ESP, а в его заголовке записываются только адреса шлюзов, между которыми пересылается пакет. Настоящие адреса конечных точек соединения содержатся в зашифрованном заголовке, который теперь является частью данных пакета. По достижении точки назначения пакет распаковывается и отправляется адресату.
Различают варианты использования протокола хост-хост, шлюз-шлюз и хост-шлюз. Соответственно механизмы защиты применяются сразу при выходе данных с хоста, их породившего, либо при покидании границ защищенной сети (в варианте шлюза).
Для канала, в котором нужна повышенная безопасность, протоколы АН и ESP могут применяться вместе. Это гарантирует аутентификацию, конфиденциальность и проверку целостности. При совместном использовании этих протоколов заголовок АН следует за заголовком IP, а затем идет IP-пакет, упакованный в пакет ESP
Транспортный режим работы
В этом варианте механизмы безопасности применяются только для протоколов, начиная с транспортного (TCP) уровня и выше, оставляя данные самого сетевого уровня (заголовок IP) без дополнительной защиты. Места размещения дополнительной информации, вставляемой протоколами в пакет, представлены на рис. 22.30.
Туннельный режим работы
Этот режим интересен тем, что обеспечивает защиту также и данных сетевого уровня путем добавления нового IP-заголовка. После определения ассоциаций безопасности (например, между двумя шлюзами) истинные адреса хостов отправления и назначения (и другие служебные поля) полностью защищаются от модификаций для АН или вообще скрываются для ESP, а в новый заголовок выставляются адреса и другие данные для шлюзов (отправления/получения). На рис. 22.31 видны преимущества и недостатки обоих протоколов. ESP обеспечивает сокрытие данных, но не полную аутентификацию всего пакета. АН полностью аутентифицирует, но не скрывает данные. В этом причина того, что для обеспечения высокого уровня безопасности, применение протоколов совмещается.
Ассоциации безопасности
Концепция Ассоциаций безопасности (англ. Security Association – SA) является основополагающей для IPSec. SA определяет взаимоотношения между двумя или более участниками безопасной связи и описывает, какие сервисы будут использованы для обеспечения безопасности: алгоритмы шифрования, алгоритмы аутентификации и общие сессионные ключи.
SA всегда однонаправленна (англ. unidirectional), поэтому для одного двунаправленного соединения между двумя участниками требуется две SA (по одной на каждое направление). Также для АН и ESP должны быть использованы различные SA, если применяются оба протокола, по две SA должны присутствовать для каждого направления.
Набор всех SA, установленных на узле для связи с другим узлом (узлами), хранится в специальной Базе данных ассоциаций безопасности (Security Association Database – SAD). Каждый узел поддерживает две SAD: одну для входящего и одну для исходящего трафика. В зависимости от реализации может потребоваться несколько пар SAD для мультиинтерфейсных узлов – по одной SAD на каждый интерфейс.
Когда у узла существует несколько соединений с другим узлом (узлами), необходимо определить, которую из SA применять к пакетам какого соединения. Для этой цели служит База данных политик безопасности (Security Policy Database – SPD). Запись SPD состоит из полей, связывающих SA с идентификатором пакетов соединения – селектором (англ. selector). Селектор состоит из следующих параметров.
IP-адрес назначения
IP-адрес источника
Имя в двух вариантах:
- Идентификатор пользователя в формате DNS (fully qualified user name) string
- Х.500 distinguished name;
Наименование системы в формате DNS (fully qualified domain name), X.500 distinguished name или Х.500 general name;
Уровень чувствительности данных по меткам IPSO/CIPSO (такие как "не определено", "коммерческая собственность", "секретно" и т. п.) – этот параметр опционален.
Протокол транспортного уровня.
Порт назначения.
Порт источника.
Защищенная связь (SA) для каждого соединения содержит следующие атрибуты:
- криптографические алгоритмы, необходимые в сеансе связи;
- ключи, которыми стороны обмениваются в начале сеанса (или создают их в процессе работы);
-частоту обмена ключами. Ограничение срока годности ключей повышает уровень безопасности;
-«время жизни» защищенной связи. Защищенная связь не должна существовать после завершения защищенного сеанса связи;
-адрес стороны, инициировавшей связь. Поскольку защищенная связь является однонаправленной, этот адрес служит для ее идентификации; индекс параметров защиты (Security Parameter Index, SPI). 32-битное число - уникальный идентификатор защищенной записи;
- другая информация, имеющая отношение к конкретной связи и применяемым алгоритмам.
Протокол обмена ключами – IKE
Поскольку основным механизмом обеспечения безопасности данных протокола являются криптографические методы, участники защищенного соединения должны наладить обмен соответствующими криптографическими ключами. Обеспечить настройку процесса такого обмена можно вручную и автоматически. Первый способ допустим для небольшого количества достаточно статичных систем, а в общем случае это производится автоматически.
Для автоматического обмена ключами по умолчанию используется Протокол управления ключами в Интернете (Internet Key Management Protocol – IKMP), иначе называемый Обмен ключами в Интернете (Internet Key Exchange – IKE). Дополнительно или альтернативно могут быть применены другие протоколы, такие как Kerberos или SKIP.
IKE совмещает в себе три основных направления (отдельных протокола).
ISAKMP (Internet Security Association and Key Management Protocol) – Протокол ассоциаций безопасности и управления ключами в Интернете. Это общее описание (framework) для обеспечения аутентификации и обмена ключей без указания конкретных прикладных алгоритмов.
Oakley (Oakley key determination protocol) – Протокол определения ключей Окли. Он описывает последовательности обмена ключами – моды (mode) и описывает предоставляемые ими функции.
SKEMI (Secure Key Exchange Mechanism for Internet) – Механизм безопасного обмена ключами в Интернете. Он описывает многофункциональные технологии, предоставляющие анонимность, неотрекаемость (аппе-лируемость) и быстрое обновление ключей.
В ходе установления Ассоциации безопасности, IKE согласовывает следующие атрибуты: алгоритм шифрования, алгоритм хэширования, метод аутентификации и данные о группе преобразования алгоритма Диффи-Хеллмана.
Аутентификация может быть произведена с помощью следующих методов:
- предопределенного секрета (секретная информация, известная обеим сторонам соединения до начала установки соединения);
- криптографии с открытым ключом (обе стороны генерируют случайное число и шифруют его вместе со своим идентификатором открытым ключом противоположной стороны);
- электронной цифровой подписью (стороной используется закрытый ключ, открытый ключ которого есть у противоположной стороны).
IKE содержит две фазы согласования ключей.
В первой фазе происходит создание защищенного канала, во второй – согласование и обмен ключами, установление SA. Первая фаза использует один из двух режимов: Основной (англ. Main Mode) или Агрессивный (англ. Aggressive Mode). Различие между ними в уровне защищенности и скорости работы. Основной режим, более медленный, защищает всю информацию, передаваемую между узлами. Агрессивный режим для ускорения работы оставляет ряд параметров открытыми и уязвимыми для прослушивания, его рекомендуется использовать только в случае, когда критическим вопросом является скорость работы.
В основном режиме (main mode) IKE создает защищенный канал связи с удаленным узлом, который затем используется для дальнейших переговоров. Для этого инициирующий соединение узел посылает список предполагаемых параметров связи, включая алгоритмы шифрования и вычисления хэш-функции, метод аутентификации, требования о включении протоколов АН и ESP и другие необходимые данные. Затем стороны проводят взаимную аутентификацию с помощью технологии открытых ключей, применяя для этого цифровые сертификаты. Получатель сертификата может вначале убедиться, что сертификат совпадает с данными, предоставленными другим узлом, а затем проверить сам сертификат на принадлежность одному из сертифицирующих авторитетов.
Другой метод установки защищенной связи называется агрессивным режимом (aggressive mode). Его главное отличие от основного режима заключается в том, что он требует меньшего числа обменов информацией, но в каждом обмене участвует больше данных. Поэтому в данном случае защита реализована не столь тщательно, в частности, не обеспечивается сокрытие личности сторон. В результате работы любого из этих двух методов создается защищенная связь для самого протокола. После этого IKE позволяет установить уже настоящую защищенную связь, необходимую для формирования защищенного канала связи между узлами.
Во второй фазе используется Быстрый режим (англ. Quick Mode), названный так потому, что не производит аутентификации узлов, считая, что это было сделано в первой фазе. Эта фаза обеспечивает обмен ключами, с помощью которых происходит шифрование данных.
Из существенных понятий остался упомянутый, но не определенный Домен интерпретаций (Domain of Interpretation – DOI). DOI – это понятие в рамках протокола ISAKMP, которое используется для группировки протоколов, использующих данный протокол для согласования с SA. Эти протоколы, в рамках своего DOI, используют единое пространство имен для протоколов и механизмов безопасности, единые идентификаторы протоколов обмена ключами и ряд других параметров.