Средства безопасности Windows Server 2003
Средства безопасности Windows Server 2003
Обеспечение безопасности на уровне протокола IP
Средства безопасности протокола IP позволяют управлять защитой всего IP-трафика от источника информации до ее получателя. Возможности управления безопасностью IP в системе Windows Server 2003 позволяют назначать и применять политику безопасности IP, которая гарантирует защищенный обмен информацией для всей сети. Механизм безопасности IP представляет собой реализацию протокола безопасности IP (IP Security или IPSec), прозрачную для пользователя. Администрирование безопасности централизованно и совмещает гарантии безопасного обмена информацией с легкостью применения.
Реализация безопасности IP в Windows Server 2003 основана на стандартах RFC, разработанных рабочей группой IP Security (IPSEC) консорциума Internet Engineering Task Force (IETF).
IPSec обеспечивает сервисы безопасности на IP-уровне, выбирая нужные протоколы безопасности, определяя алгоритмы, используемые сервисами, и предоставляя все криптографические ключи требуемым сервисам. IPSec может использоваться для защиты одного или нескольких маршрутов между парой хостов, между парой шлюзов безопасности или между шлюзом безопасности и хостом.
Политика IPSec может быть настроена локально на отдельном компьютере или может быть назначена через механизмы групповой политики Windows Server 2003 в Active Directory. Политика IPSec определяет, как компьютеры доверяют друг другу.
IPSec использует два протокола для обеспечения безопасности трафика – Authentication Header (AH) и Encapsulating Security Payload (ESP).
- Authentication Header (AH) обеспечивает целостность соединения, аутентификацию исходных данных и дополнительно может обеспечивать anti-replay сервис. Encapsulating Security Payload (ESP) протокол может обеспечивать конфиденциальность (шифрование) трафика, целостность соединения, аутентификацию исходных данных и дополнительно anti-replay сервис. Целостность обеспечивается только для протоколов более высокого уровня. Хотя бы один из этих сервисов должен быть задействован при использовании ESP.
Протоколы AH и ESP могут применяться как по отдельности, так и в комбинации друг с другом для обеспечения необходимого набора сервисов безопасности в IPv4 и IPv6. Каждый протокол поддерживает два режима использования: режим транспорта и режим туннелирования.
IPSec позволяет управлять детализацией, с которой предоставляется сервис безопасности. Например, можно создать единственный зашифрованный туннель между двумя безопасными шлюзами, или для каждого ТСР соединения может быть создан зашифрованный туннель между парой хостов. IPsec позволяет указывать следующие параметры:
- используемые сервисы и их комбинации; необходимый уровень детализации применяемой защиты; алгоритмы, используемые для обеспечения безопасности на основе криптографии.
Протокол IPSec включает криптографические методы, удовлетворяющие потребности управления ключами на сетевом уровне безопасности:
1. Протокол управления ключами Ассоциации безопасности Интернет (Internet Security Association Key Management Protocol — ISAKMP) — создает рамочную структуру для управления ключами в сети Интернет и предоставляет конкретную протокольную поддержку для согласования атрибутов безопасности. Само по себе это не создает ключей сессии, однако эта процедура может использоваться с разными протоколами, создающими такие ключи.
2. Протокол определения ключей (Oakley Key Determination Protocol — OKDP) — использует гибридный метод Диффи-Хеллмана, чтобы создать ключи сессии Интернет для центральных компьютеров и маршрутизаторов, решает важную задачу обеспечения полной безопасности эстафетной передачи данных. Основан на криптографических методах. Полная защита эстафетной передачи означает, что если хотя бы один ключ раскрыт, раскрыты будут только те данные, которые зашифрованы этим ключом. Данные, зашифрованные последующими ключами, останутся в полной безопасности.
3. Internet Key Exchange (IKE). Протоколы ISAKMP и OKDP были совмещены в рамках гибридного протокола IKE, который использует рамочную структуру ISAKMP для поддержки подмножества режимов обмена ключами OKDP. Новый протокол обмена ключами обеспечивает (в виде опции) полную защиту эстафетной передачи данных, полную защиту ассоциаций, согласования атрибутов, а также поддерживает методы аутентификации, допускающие отказ от авторства и не допускающие такого отказа. Этот протокол может использоваться для создания виртуальных частных сетей (VPN) и для того, чтобы предоставить пользователям, находящимся в удаленных точках, доступ к защищенной сети.
Стандарт IPSec позволяет поддерживать на уровне IP потоки безопасных и аутентичных данных между взаимодействующими устройствами, включая центральные компьютеры, межсетевые экраны различных типов и маршрутизаторы. Прежде, чем пройти межсетевой экран предприятия, весь трафик, идущий от удаленного маршрутизатора, должен быть аутентифицирован. Маршрутизатор и межсетевой экран должны согласовать ассоциацию безопасности SA (Security Association), то есть прийти к согласию относительно политики в области безопасности. SA включает:
• общий ключ сессии;
• срок действия ключа.
SA есть совокупность параметров соединения, которые дают возможность сервисам обеспечивать безопасный трафик. SA определяет использование AH или ESP. Если к потоку трафика применяются оба протокола, AH и ESP, то создаются две SA. При двунаправленном соединении между двумя хостами или между двумя шлюзами безопасности требуется два SA (по одному на каждое направление).
SA однозначно определяется тройкой, состоящей из Security Parameter Index (SPI), IP Destination Address (адресом назначения) и идентификатора протокола безопасности (AH или ESP). Адрес назначения может быть единственным адресом, широковещательным адресом или групповым адресом. Механизм управления SA определяется только для единственной SA.
Определены два режима SA:
1. Транспортный режим SA обеспечивает безопасную связь между двумя хостами. В IPv4 заголовок протокола безопасности транспортного режима появляется сразу после IP заголовка и всех опций и перед любыми протоколами более высокого уровня (ТСР или UDP). В случае ESP транспортный режим SA обеспечивает сервисы безопасности только для протоколов более высокого уровня, но не для IP-заголовка. В случае AH защита также распространяется на отдельные части IP-заголовка.
2. Режим туннелирования применяется, если хотя бы одним из концов соединения является шлюз безопасности, то SA обязательно должна выполняться в туннелирующем режиме. SA между двумя шлюзами безопасности всегда находится в туннелирующем режиме, так же, как и SA между хостом и шлюзом безопасности. Два хоста могут при желании устанавливать туннелирующий режим.
B туннелирующем режиме SA существует «внешний» IP заголовок, который определяет пункт назначения IPSec, и «внутренний» IP заголовок, который определяет конечный пункт назначения для пакета. Заголовок протокола безопасности расположен после внешнего IP заголовка и перед внутренним IP заголовком. Если AH используется в туннелирующем режиме, части внешнего IP заголовка являются защищенными, как и весь туннелируемый IP пакет, т. е. все внутренние заголовки защищены, как и все протоколы более высокого уровня. Если применяется ESP, зашита обеспечивается только для туннелируемого пакета, а не для внешнего IP-заголовка.
Существуют две БД:
1. БД Политики Безопасности (SPD) — описывает политики, которые определяют характер обработки всего IP трафика;
2. БД Безопасной Ассоциации (SAD) — содержит параметры, которые связаны с каждой активной безопасной ассоциацией. Каждый сетевой интерфейс, для которого необходима обработка IPSec, требует определения баз данных для входящего и исходящего трафика.
SPD должна рассматриваться при обработке всего трафика (входящего и исходящего), включая не-IPSec трафик. Для того чтобы это поддерживать, SPD требует различных записей для входящего и выходящего трафика. Можно считать, что это отдельные SPD (входящая и выходящая). Кроме того, отдельная SPD должна существовать для каждого IPsec-интерфейса.
SPD должна распознавать трафик, который разрешен защитой IPsec, и трафик, которому разрешено проходить IPSec без обработки. Для любой выходящей или входящей датаграммы существует три возможных способа обработки:
1. отбросить датаграмму — трафик не разрешен для хоста, не может пересекать шлюз безопасности или не может быть доставлен на уровень приложения.;
2. обойти IPSec – трафик проходит без дополнительной IPsec защиты;
3. применить IPSec — для такого трафика SPD должна специфицировать применяемые сервисы безопасности, применяемые протоколы, используемые алгоритмы и т. д.
SPD содержит упорядоченный список записей политики. Каждая запись политики является ключом для одного или более селекторов, которые определяют множество IP трафика, соответствующего данной записи политики. Это определяет детализированность политики и создаваемых SA. Каждая запись включает индикатор, показывающий, что трафик, соответствующий данной политике, должен быть пропущен, отброшен или обработан IPSec. Если применяется обработка IPSec, запись содержит описание SA (или узла SA), список применяемых протоколов, режимов и алгоритмов, включая любые дополнительные требования. Например, запись может указывать, что трафик защищается с применением протокола ESP в транспортном режиме, используя 3DES-CBC и вложен в AH в туннелирующем режиме с помощью НМАС/SHA-1.
В Базе Данных Безопасных Ассоциаций (SAD) каждая запись определяет параметры, связанные с конкретной SA. Соответственно, каждая SA имеет запись в SAD. Для выходящей обработки записи ссылаются на записи в SPD. Для входящей обработки каждая запись в SAD индексируется IP адресом назначения, типом протокола IPSec и SPI.
Ассоциация SA является однонаправленной, поэтому для двусторонней связи нужно устанавливать две SA, по одной для каждого направления. Как правило, в обоих случаях политика остается той же самой, но существует возможность и для асимметричной политики в разных направлениях. Согласование SA проводится через ISAKMP. Кроме того, SA могут определяться вручную. На рисунке 1 показан процесс согласования через ISAKMP, который происходит, когда на маршрутизатор поступает пакет, предназначенный для межсетевого экрана предприятия.
Рис.1. Согласование SA через ISAKMP.
После согласования SA принимается решение о том, следует ли использовать средства аутентификации, конфиденциальности и целостности данных или ограничиться только аутентификацией. Если использоваться будут только средства аутентификации, текущий стандарт предполагает применение хэш-функции, а точнее алгоритма не ниже MD5 с 128-разрядными ключами. Заголовок пакета и данные пропускаются через хэш-функцию, и результаты этого вычисления записываются в специальное поле заголовка АН(рис.2).
Новый пакет с аутентификационным заголовком, расположенным между заголовком IP и данными, отправляется через маршрутизатор в пункт назначения. Когда этот пакет попадает на межсетевой экран, который проверяет его аутентичность, вычисляя хэш с помощью хэш-функции, указанной в SA. Обе стороны должны использовать одни и те же хэш-функции. Межсетевой экран сравнивает вычисленный им хэш с параметрами, указанными в соответствующем поле АН(рис.3). Если эти величины совпадают, аутентичность и целостность данных считается подтверждененой.
Рис.2. Создание нового аутентификационного заголовка IP.
Рис.3. проверка аутентичности и целостности данных.
Если стороны пожелают использовать средства поддержки конфиденциальности, SA указывает, что весь трафик, поступающий из удаленного маршрутизатора на межсетевой экран предприятия, должен аутентифицироваться и шифроваться. В противном случае межсетевой экран его не пропустит.
ESP поддерживает аутентификацию, целостность и конфиденциальность данных и работает в двух режимах: туннельном и транспортном(рис.4 и рис.5).
Рис.4. Туннельный режим ESP.
Рис.5. Транспортный режим ESP.
В туннельном режиме вся датаграмма IP, заголовок IP и данные встраиваются в заголовок ESP. В транспортном режиме шифруются только данные, а заголовок IP передается в незашифрованном виде. Современные стандарты требуют использования DES в режиме цепочки зашифрованных блоков (СВС).
Для поддержки обмена информацией с использованием протокола IPSec на каждом компьютере с ОС Windows устанавливаются локальные службы и драйверы:
Служба агента политики безопасности (Policy Agent Service) отыскивает политику безопасности IP в Active Directory во время инициализации системы, затем передает информацию о политике сетевому драйверу безопасности IP (IPSec-драйверу) и службе ISAKMP/OKDP. Агент политики не хранит политику безопасности локально, а находит ее в Active Directory (рис.6).
Служба управления ключами ISAKMP/OKDP получает политику безопасности от агента политики. При использовании политики безопасности служба ISAKMP устанавливает ассоциацию безопасности SA с компьютером-получателем (рис.7). Проверка поддерживающих связь сторон осуществляется с помощью центра распределения ключей Kerberos. В заключение служба ISAKMP посылает SA и информацию о ключе драйверу IPSec. Служба ISAKMP/OKDP запускается агентом политики.
Рис 6. Функционирование агента политики безопасности
Рис. 7. Функционирование службы ISAKMP/Oakley
Драйвер безопасности IP (IPSec-драйвер) просматривает все IP-пакеты на соответствие фильтру IP. Если он находит соответствие, то задерживает пакеты в очереди, в то время как служба ISAKMP/OKDP генерирует необходимую SA и ключ, чтобы защитить обмен информацией. Агент, получив эту информацию от службы ISAKMP, шифрует IP-пакеты и посылает их компьютеру-адресату (рис.8). Драйвер IPSec запускается агентом политики.
Рис 8. Функционирование драйвера IPSec
Каждый контроллер домена содержит центр распространения ключей Kerberos (Kerberos Distribution Center, КDС) для установления подлинности. Kerberos служит третьим доверенным лицом, которое проверяет подлинность поддерживающей связь стороны. Протокол IPSec в Windows Server 2003 использует протокол Kerberos для идентификации компьютеров.
Рис 9. Пример реализации безопасности IP
На рисунке 9 приведен пример, в котором пользователь Компьютера А (Пользовапосылает данные пользователю Компьютера В (ПользоваБезопасность IP установлена на обоих компьютерах. На уровне пользователя процесс доставки IP-пакетов прозрачен. Пользователь 1 просто запускает приложение, которое использует протокол стека TCP/IP, например FTP, и посылает данные ПользоваПолитики безопасности, назначенные Компьютеру А и Компьютеру В администратором, определяют уровень безопасности взаимодействия. Они выбираются агентом политики и передаются службе ISAKMP/OKDP и драйверу IPSec. Служба ISAKMP/OKDP на каждом компьютере использует политику переговоров, связанную с назначенной политикой безопасности, чтобы установить ключ и общий метод переговоров, т. е. SA. Результаты переговоров о политике ISAKMP между двумя компьютерами передаются драйверу IPSec, который использует ключ для шифрования данных. В заключение драйвер IPSec посылает шифрованные данные на Драйвер IPSec на Компьютере В дешифрует данные и передает их приложению-получателю.
Любые маршрутизаторы или коммутаторы, которые находятся на пути между поддерживающими связь компьютерами, вне зависимости от того, общаются ли два пользователя или пользователь и файловый сервер, должны просто пропускать шифрованные IP-пакеты к адресату. Если между поддерживающими связь компьютерами находится брандмауэр или другой шлюз, поддерживающий систему безопасности, то на нем должна быть разрешена функция пересылки IP-пакетов или настроена специальная фильтрация, которая разрешает пересылку пакетов безопасности IP, чтобы IP-пакеты правильно достигали адресата.
Администрирование безопасности IP
Управление безопасностью IP в Windows Server 2003 позволяет администраторам создавать настраиваемую политику безопасности с уникальной политикой переговоров и IP-фильтрами. Не требуется обучать конечных пользователей, поскольку администраторы конфигурируют всю политику безопасности в службе Active Directory, а действия шифрования прозрачны на уровне конечного пользователя.
Для конфигурирования IPSec используется оснастка Групповая политика(рис.10) (узел Конфигурация компьютера -> Конфигурация Windows -> Параметры безопасности -> Политики безопасности IP ) для компьютера или домена.
Рис 10. Политики безопасности IP на «Локальном компьютере».
Для проверки работы IPSec можно воспользоваться Сетевым монитором (Network Monitor), чтобы увидеть обработанные пакеты. В качестве номера для таких пакетов будет отображаться десятичный код (50 для протокола ESP и 51 для протокола АН). Для ISAKMP/OKDP будет указан номер порта UDP = 500.
Туннелирование
Туннелирование следует рассматривать как самостоятельный сервис безопасности. Его суть состоит в том, чтобы «упаковать» передаваемую порцию данных, вместе со служебными полями, в новый «конверт».
Туннелирование может применяться для нескольких целей:
- передачи через сеть пакетов, принадлежащих протоколу, который в данной сети не поддерживается (например, передача пакетов IPv6 через сети, поддерживающие только IPv4 – рис.11); обеспечения слабой формы конфиденциальности (в первую очередь конфиденциальности трафика) за счет сокрытия истинных адресов и другой служебной информации; обеспечения конфиденциальности и целостности передаваемых данных при использовании вместе с криптографическими сервисами.
Туннелирование может применяться как на сетевом, так и на прикладном уровнях.
Рис. 11. Обертывание пакетов IPv6 в формат IPv4 с целью их туннелирования через сети IPv4.
Комбинация туннелирования и шифрования позволяет реализовать такое важное в современных условиях защитное средство, как виртуальные частные сети. Подобные сети, наложенные обычно поверх Internet, существенно дешевле и гораздо безопаснее, чем собственные сети организации, построенные на выделенных каналах.
Рис. 12. Межсетевые экраны как точки реализации сервиса виртуальных частных сетей.
Концами туннелей, реализующих виртуальные частные сети, целесообразно сделать межсетевые экраны, обслуживающие подключение организаций к внешним сетям (рис.12). В этом случае туннелирование и шифрование станут дополнительными преобразованиями, выполняемыми в процессе фильтрации сетевого трафика наряду с трансляцией адресов. Концами туннелей, помимо корпоративных межсетевых экранов, могут быть мобильные компьютеры сотрудников (их персональные МЭ).
Пользователь, имеющий выход в Интернет, соединяется с сервером удаленного доступа при помощи VPN-подключения (рис. 13). Компьютер может быть подключен к локальной сети напрямую, через коммутируемый модем или через модем типа ADSL, где протокол IP доступен сразу после включения компьютера. Драйвер РРТР или L2TP создаст туннель через Интернет и произведет подключение к серверу удаленного доступа, использующему РРТР или L2TP. После аутентификации пользователь может получить доступ к корпоративной сети.
Рис.14. Пример виртуального удаленного доступа
Администрирование VPN. При помощи Active Directory администратор системы может настраивать VPN для пользователей, значительно усиливая безопасность сети, например, задавать уровни шифрования данных и паролей, а также аутентификацию. Эти требования могут применяться к индивидуальным пользователям или к группе однотипных пользователей (при помощи групповой политики). Например, администратор системы может настроить удаленный доступ, задав такую групповую политику, чтобы для всех пользователей группы, которой она назначена, требовалась аутентификация с использованием протокола ЕАР и сильное шифрование данных (128-битное). При наличии групповой политики критерии безопасности автоматически устанавливаются по отношению к любому пользователю, которому назначена эта групповая политика, когда он соединяется с сервером удаленного доступа.
Применяются следующие протоколы проверки подлинности для клиентов VPN: MS CHAP, CHAP, SPAP (протокол проверки подлинности пароля PAP), MS CHAP v2 и ЕАР.
Для администрирования сервера удаленного доступа, просмотра состояния подключенных VPN-клиентов и управления трафиком служит оснастка Маршрутизация и удаленный доступ.
Протокол эстафетной передачи на втором уровне (Layer 2 Forwarding — L2F) был разработан компанией Cisco Systems. Он обеспечивает туннелирование протоколов канального уровня (то есть фреймов High-Level Data Link Control [HDLC], async HDLC или Serial Line Internet Protocol [SLIP]) с использованием протоколов более высокого уровня, например, IP. С помощью таких туннелей можно разделить местоположение сервера удаленного доступа, к которому подключается пользователь, используя местные коммутируемые линии связи, и точки, где происходит непосредственная обработка протокола удаленного доступа (SLIP, PPP), и пользователь получает доступ в сеть. Эти туннели дают возможность использовать приложения, требующие удаленного доступа с частными адресами IP, IPX и AppleTalk через протокол SLIP/PPP по существующей инфраструктуре Интернет. Поддержка таких многопротокольных приложений виртуального удаленного доступа очень выгодна конечным пользователям и независимым поставщикам услуг, поскольку позволяет разделить на всех расходы на средства доступа и базовую инфраструктуру и дает возможность осуществлять доступ через местные линии связи. Кроме того, такой подход защищает инвестиции, сделанные в существующие приложения, работающие не по протоколу IP, предоставляя защищенный доступ к ним и в то же время поддерживая инфраструктуру доступа к Интернет.
Сквозной туннельный протокол Point-to-Point Tunneling Protocol (РРТР) создан корпорацией Microsoft. Он никак не меняет протокол РРР, но предоставляет для него новое транспортное средство. В рамках этого протокола определяется архитектура клиент/сервер, предназначенная для разделения функций, которые существуют в текущих NAS, и для поддержки виртуальных частных сетей (VPN). Сервер сети РРТР (PNS) должен работать под управлением операционной системы общего назначения, а клиент, который называется концентратором доступа к РРТР (РАС), работает на платформе удаленного доступа. РРТР определяет протокол управления вызовами, который позволяет серверу управлять удаленным коммутируемым доступом через телефонные сети общего пользования (PSTN) или цифровые каналы ISDN или инициализировать исходящие коммутируемые соединения. РРТР использует механизм общей маршрутной инкапсуляции (GRE) для передачи пакетов РРР, обеспечивая при этом контроль потоков и сетевых заторов. Безопасность данных в РРТР может обеспечиваться при помощи протокола IPSec.
Протоколы L2F и РРТР имеют сходную функциональность. Компании Cisco и Microsoft согласились вместе (в рамках IETF) разработать единый стандартный протокол, который получил название туннельного протокола второго уровня (Layer 2 Tunneling Protocol — L2TP).