IPSec представляет собой набор алгоритмов и протоколов с достаточно гибкой внутренней структурой, что позволяет производителям различных устройств, поддерживающих IPSec, самостоятельно выбирать оптимальные с их точки зрения ключи, алгоритмы и методы аутентификации.
Набор протоколов и алгоритмов шифрования включает следующие позиции:
IKE (Internet Key Exhange protocol)
ISAKMP (Internet Security Association and Key Management Protocol)
AH (Authentication Header protocol)
ESP (Encapsulating Security Payload protocol)
STS (Station-to-Station protocol)
HMAC (Hash Message Authentication Code)
MD5 (Message Digest 5)
SHA-1 (Security Hash Algorithm)
3DES (Triple Data Encryption Standard)
XAUTH (Extended Authentication)
AES (Advanced Encryption Standard)
Два важнейших протокола применительно к IPSec - AH (Authentication Header) и ESP (Encapsulating Security Payload). Как ясно из названия, AH используется для аутентификации отправителя информации и обеспечения целостности данных - с целью убедиться, что данные не были изменены в процессе связи. AH не шифрует данные и не обеспечивает конфиденциальности, этот протокол лишь "подписывает" целый пакет данных.
В отличие от AH, ESP способен обеспечить конфиденциальность информации, так как непосредственно шифрует данные совместно с проверкой подлинности и целостности. Отличие от AH состоит и в том, что ESP не подписывает каждый пакет, оперируя лишь данными.
IPSec способен функционировать в двух режимах: транспортном и туннельном, которые представляют собой два разных подхода к обеспечению безопасности. В транспортном режиме шифруются только полезные данные сообщения - непосредственно информация, подлежащая передаче в процессе сеанса связи. В туннельном - шифрованию подлежат данные, заголовок и маршрутная информация. Нет необходимости говорить, что применение IPSec в транспортном режиме гораздо более рискованно, нежели в туннельном.
Туннельный режим, как правило, используется при построении различных вариаций виртуальных частных сетей (VPN), предоставляя защиту всего трафика от отправителя к получателю. Виртуальные частные сети с IPSec представляют собой сетевые соединения, построенные с использованием криптографии на основе публичных и приватных ключей. Пользователи IPSec VPN генерируют публичные и приватные ключи, которые ассоциируются лишь с ними. Когда сообщение уходит от отправителя к получателю, оно автоматически подписывается приватным ключом пользователя, а получатель использует публичный ключ отправителя для того, чтобы дешифровать принятое сообщение. Конечные точки виртуальной частной сети действуют как базы данных, которые управляют и распространяют ключи и прочую служебную информацию подобно тому, как это делает Certificate Authority (CA).
Преимущества и недостатки IPSec
Наиболее типично применение IPSec для достижения конфиденциальности и целостности данных при их транспортировке по незащищенным каналам. Изначально IPSec предназначался для защиты данных в публичных сетях, однако его различные практические реализации нередко используются для увеличения безопасности частных сетей, так как компании не всегда могут быть уверены, что их корпоративные сети изначально не подвержены вторжениям извне.
Хотя IPSec наиболее популярное и, пожалуй, наилучшее решение для создания виртуальных частных сетей, имеются и некоторые ограничения. В случае его применения в транспортном режиме не исключается возможность атак со стороны, что вызвано некоторыми ограничениями протокола ISAKMP.
Взлом сессии IPSec вполне вероятен, если не используется заголовок аутентификации AH. При таком типе атаки данные злоумышленника могут быть вставлены в полезную передающуюся информацию, например, в случае Unix-систем достаточно вставить в поток команду rm -R, чтобы получатель в итоге недосчитался многих, а то и всех файлов на жестком диске.
Поскольку трафик IPSec маршрутизируем, различные практические реализации IPSec могут подвергнуться более "изящной" атаке - подмене изначального маршрута. Оговоримся, что данный вид атаки возможен лишь при использовании IPSec в транспортном режиме, если же он применяется для построения туннеля, вся роутинговая информация в этом случае шифруется и подобный вид атаки успеха иметь не будет.
Специалисты компании AT&T Research отмечают, что многие потенциально слабые места IPSec являются следствием определенных недостатков алгоритмов шифрования, использованных в конкретной реализации IPSec. Следовательно, с увеличением надежности этих алгоритмов IPSec может стать намного более защищенным.
В настоящее время IPSec - это часть IPv6, но не IPv4. Хотя, конечно же, имеются и реализации IPSec для протокола IP четвертой версии. В реализации для IPv6 некоторые слабые места IPSec, которые все же присутствуют в версии для IPv4, устранены. Так, например, поля фрагментации в заголовке пакета IPv4 потенциально могут быть изменены, поэтому при функционировании IPSec в транспортном режиме злоумышленник может перехватить пакет и изменить поле фрагментации, а затем вставить необходимые данные в передаваемый поток. В IPv6 же промежуточные маршрутизаторы не допускают изменения полей фрагментации.
Многие продукты, которые могут использовать IPSec, взаимодействуют с альтернативной технологией шифрования, именуемой "Уровень защищенных сокетов" (Secure Sockets Layer, SSL). Основное различие между IPSec и SSL в том, что IPSec работает на уровне сети, обеспечивая зашиту сетевого соединения от начала и до конца. SSL же действует на уровне приложений, обеспечивая защиту лишь выбранному приложению, например веб-браузеру или программе для работы с электронной почтой. Хотя как IPSec, так и SSL призваны обеспечить конфиденциальность обмена информацией, что достигается совершенно различными способами. SSL был разработан компанией Netscape для защиты трафика HTTP, проходящего через программу-браузер. SSL - протокол уровня отдельной сессии, и в этом отношении он, несомненно, проигрывает IPSec, который позволяет построить постоянный туннель, не зависящий от проходящего сквозь него сетевого трафика.
Протокол SSL основан на клиент-серверной модели и обычно используется для защиты на отрезке "хост-хост". В связи с тем, что IPSec взаимодействует на сетевом уровне, возможны такие варианты, как "подсеть-подсеть", "сеть-сеть" или "сеть-хост". Это говорит о том, что IPSec допускает маршрутизацию, а SSL - нет.
Хотя многие пользователи считают SSL и IPSec конкурирующими разработками, данное утверждение не совсем точно, поскольку IPSec и SSL призваны решать различные проблемы. Если для развертывания IPSec требуется предварительное планирование инфраструктуры, то с SSL все намного проще. Как правило, если и клиент, и сервер изначально способны работать с SSL, то процедура настройки защищенной сессии сводится к крайне тривиальному набору действий, доступному даже начинающему пользователю.
А тем временем технология IPSec получает крайне неоднозначные оценки специалистов в области безопасности. С одной стороны, отмечается, что протокол IPSec является лучшим среди всех других протоколов защиты передаваемых по сети данных, разработанных ранее (включая разработанный Microsoft PPTP). С другой стороны, присутствует чрезмерная сложность и избыточность протокола - это в, принципе, не так уж страшно, но некоторые ортодоксально настроенные системные администраторы отмечают, что имеются серьезные проблемы безопасности практически во всех главных компонентах IPSec.
Вопрос защиты персональных компьютеров от несанкционированного доступа в сетях различных компаний и особенно банковских структур в последнее время приобретает всё большую популярность. Тенденции роста и развития внутренних ЛВС требуют более новых решений в области программно-аппаратных средств защиты от НСД. Наряду с возможностью удалённого НСД, необходимо рассматривать ещё и физический доступ к определённым компьютерам сети. Во многих случаях эта задача решается системами аудио- и видеонаблюдения, сигнализациями в помещениях, а также правилами допуска посторонних лиц, за соблюдением которых строго следит служба безопасности и сами сотрудники. Но случается по-разному…
Помимо этого, используются средства разграничения доступа пользователей к ресурсам компьютера, средства шифрования файлов, каталогов, логических дисков, средства защиты от загрузки компьютера с дискеты, парольные защиты BIOS и многое другое. Рассмотрим несколько вариантов защиты от НСД:
eToken network Logon - решение, предназначенное для безопасного доступа к сети Windows NT. eToken Network Logon позволяет отказаться от использования паролей при входе в сеть, значительно повысить ее защищенность и обеспечить удобство работы пользователей. Теперь пользователям не нужно запоминать сложные пароли и периодически их менять - достаточно подключить свой персональный электронный ключ eToken и ввести PIN-код. eToken Network Logon значительно снижает влияние "человеческого фактора" на уровень безопасности Windows. Внедрение и правильное использование продукта позволят исключить возможность обращения злоумышленников к ресурсам системы от имени легальных пользователей.
eToken Network Logon обеспечивает:
- двухфакторную аутентификацию пользователей на компьютере и в сети Windows с помощью смарт-карт eToken;
- использование регистрационных имён и паролей для локального входа в систему или для входа в домен;
- использование цифровых сертификатов Х.509, сертификатов пользователя со смарт-картой и закрытых ключей для входа в домен;
- генерирование и последующее применение случайных паролей, неизвестных пользователю.
eToken Network Logon может быть установлен на компьютеры и ноутбуки под управлением ОС Microsoft Windows Server 2003, Microsoft Windows XP, Microsoft Windows Vista или Microsoft Windows Server 2008, объединённые в рабочую группу или домен Windows.
После установки eToken Network Logon стандартное приглашение для входа в Microsoft Windows заменяется новым, которое расширяет возможности по входу пользователя в систему: