Услуги
Аудит информационной безопасности

Аудит информационной безопасности компании – многоплановая задача, в
которую входит несколько направлений анализа
ИТ-инфраструктуры и оценки защищенности приложений и устройств

Подробнее
Решения
Решения

Аккумулировав весь опыт Digital Security, мы подготовили отдельные решения по аудиту безопасности. Каждое решение объединяет специализированные услуги для конкретной отрасли бизнеса или сферы исследования. Вы можете выбрать любую из них или несколько — в комплексе

О нас
Digital Security

Практическая информационная безопасность – наша специализация и любимое дело. Уже 18 лет мы помогаем нашим клиентам уберечь сервисы и системы от киберугроз, а также активно участвуем в развитии мирового ИБ-сообщества

Подробнее
Экспертиза
Экспертиза

Для клиентов Digital Security работает команда экспертов ИБ мирового уровня. Мы получаем благодарности за вклад в обеспечение безопасности от лидеров ИТ-индустрии, а также подтверждаем свои навыки международными сертификатами в области ИБ

Подробнее
Ресурсы
Ресурсы

Мы создаем контент для тех, кому интересна информационная безопасность. Многостраничные технические статьи, бизнес-аналитика с емкими выводами, записи вебинаров и презентации с профильных конференций — все вы найдете в этом разделе

Подробнее

Мы создаем контент для тех, кому интересна информационная безопасность. Многостраничные технические статьи, бизнес-аналитика с емкими выводами, записи вебинаров и презентации с профильных конференций — все вы найдете в этом разделе

Посмотреть раздел

Масштабные исследования и аналитические обзоры. Описания хакерских инструментов и техник

Статьи и аналитические работы, полезные для бизнеса. Экспертное мнение об актуальных проблемах информационной безопасности

Видеоархив наших вебинаров и конференций. А также анонсы предстоящих мероприятий

Руководства, презентации, чек-листы. Гайды для повышения уровня осведомленности в вопросах ИБ

Наверх

Разбираемся в VPN протоколах

В. Губарева, Л. Антонова /
07.05.2020 /
Прочитать позже

    Отправим материал на:

    В последние месяцы армия пользователей VPN значительно увеличилась. И речь не о любителях обходить блокировки и посещать запрещенные сайты, а о тех, кто использует VPN для безопасной (сейчас преимущественно удаленной) работы. Это повод еще раз посмотреть на арсенал доступных протоколов и сравнить их с точки зрения безопасности.

    Для начала — немного общих положений о VPN.
    Сценарии использования VPN могут быть разными, самые популярные их них:

    • построение защищенного канала между двумя или более удаленными сегментами сети (например, между офисами в Москве и Нижнем Новгороде);
    • подключение удаленного работника к корпоративной сети (теперь об этом знает почти каждый офисный сотрудник);
    • виртуальное изменение местоположения с помощью услуг VPN Providers (требует наименьших телодвижений для настройки, однако весь ваш трафик будет проходить через чужой сервер).

    Для реализации этих сценариев существуют различные виды VPN протоколов — для связи, для шифрования трафика и другие. И уже на основании подходящего протокола можно «строить» свое решение. Два самых известных и широко используемых протокола — OpenVPN и IPSec, а сравнительно недавно появился WireGuard, вызвавший некоторые разногласия. Есть и другие альтернативы, уже устаревшие, но вполне способные решать определенные задачи.

    Преимущество того или иного протокола VPN зависит от ряда факторов и условий использования:

    1. Устройства — разные устройства поддерживают разные протоколы.
    2. Сеть — если определенные сервисы не доступны в вашей локации, некоторые протоколы могут не подойти. Например, есть VPN Providers, которые работают в Китае, тогда как большинство существующих провайдеров заблокированы.
    3. Производительность — некоторые протоколы обладают бОльшей производительностью, особенно на мобильных устройствах. Другие — более удобны для использования в больших сетях.
    4. Модель угроз — некоторые протоколы менее безопасны, чем другие, поэтому и злоумышленники могут воздействовать на них по-разному.

    Итак, с общей частью закончили, теперь переходим к подробному описанию и сравнению протоколов.

    PPTP

    Point-to-Point Tunneling Protocol (PPTP) — один из старейших VPN протоколов, используемых до сих пор, изначально был разработан компанией Microsoft.

    PPTP использует два соединения — одно для управления, другое для инкапсуляции данных. Первое работает с использованием TCP, в котором порт сервера 1723. Второе работает с помощью протокола GRE, который является транспортным протоколом (то есть заменой TCP/UDP). Этот факт мешает клиентам, находящимся за NAT, установить подключение с сервером, так как для них установление подключения точка-точка не представляется возможным по умолчанию. Однако, поскольку в протоколе GRE, что использует PPTP (а именно enhanced GRE), есть заголовок Call ID, маршрутизаторы, выполняющие натирование, могут идентифицировать и сопоставить GRE трафик, идущий от клиента локальной сети к внешнему серверу и наоборот. Это дает возможность клиентам за NAT установить подключение point-to-point и пользоваться протоколом GRE. Данная технология называется VPN PassTrough. Она поддерживается большим количеством современного клиентского сетевого оборудования.

    PPTP поддерживается нативно на всех версиях Windows и большинстве других операционных систем. Несмотря на относительно высокую скорость, PPTP не слишком надежен: после обрыва соединения он не восстанавливается так же быстро, как, например, OpenVPN.

    В настоящее время PPTP по существу устарел, и Microsoft советует пользоваться другими VPN решениями. Мы также не советуем выбирать PPTP, если для вас важна безопасность и конфиденциальность. Конечно, если вы просто используете VPN для разблокировки контента, PPTP имеет место быть, однако, повторимся: есть более безопасные варианты, на которые стоит обратить внимание.

    SSTP

    Secure Socket Tunneling Protocol (SSTP) — проприетарный продукт от Microsoft. Как и PPTP, SSTP не очень широко используется в индустрии VPN, но, в отличие от PPTP, у него не диагностированы серьезные проблемы с безопасностью.

    SSTP отправляет трафик по SSL через TCP-порт 443. Это делает его полезным для использования в ограниченных сетевых ситуациях, например, если вам нужен VPN для Китая. Несмотря на то, что SSTP также доступен и на Linux, RouterOS и SEIL, по большей части он все равно используется Windows-системами.

    С точки зрения производительности SSTP работает быстро, стабильно и безопасно. К сожалению, очень немногие VPN провайдеры поддерживают SSTP. Также SSTP может выручить, если блокируются другие VPN протоколы, но опять-таки OpenVPN будет лучшим выбором (если он доступен).

    IPsec

    Internet Protocol Security (IPsec) — это набор протоколов для обеспечения защиты данных, передаваемых по IP-сети. В отличие от SSL, который работает на прикладном уровне, IPsec работает на сетевом уровне и может использоваться нативно со многими операционными системами, что позволяет использовать его без сторонних приложений (в отличие от OpenVPN).

    IPsec стал очень популярным протоколом для использования в паре с L2TP или IKEv2, о чем мы поговорим ниже. IPsec шифрует весь IP-пакет, используя:

    • Authentication Header (AH), который ставит цифровую подпись на каждом пакете;
    • Encapsulating Security Protocol (ESP), который обеспечивает конфиденциальность, целостность и аутентификацию пакета при передаче.

    Обсуждение IPsec было бы неполным без упоминания утечки презентации Агентства Национальной Безопасности США, в которой обсуждаются протоколы IPsec (L2TP и IKE). Трудно прийти к однозначным выводам на основании расплывчатых ссылок в этой презентации, но если модель угроз для вашей системы включает целевое наблюдение со стороны любопытных зарубежных коллег, это повод рассмотреть другие варианты. И все же протоколы IPsec еще считаются безопасными, если они реализованы должным образом.

    Теперь мы рассмотрим, как IPsec используется в паре с L2TP и IKEv2.

    L2TP/IPsec

    Layer 2 Tunneling Protocol (L2TP) был впервые предложен в 1999 году в качестве обновления протоколов L2F (Cisco) и PPTP (Microsoft). Поскольку L2TP сам по себе не обеспечивает шифрование или аутентификацию, часто с ним используется IPsec. L2TP в паре с IPsec поддерживается многими операционными системами, стандартизирован в RFC 3193.

    L2TP/IPsec считается безопасным и не имеет серьезных выявленных проблем (гораздо безопаснее, чем PPTP). L2TP/IPsec может использовать шифрование 3DES или AES, хотя, учитывая, что 3DES в настоящее время считается слабым шифром, он используется редко.

    У протокола L2TP иногда возникают проблемы из-за использования по умолчанию UDP-порта 500, который, как известно, блокируется некоторыми брандмауэрами.

    Протокол L2TP/IPsec позволяет обеспечить высокую безопасность передаваемых данных, прост в настройке и поддерживается всеми современными операционными системами. Однако L2TP/IPsec инкапсулирует передаваемые данные дважды, что делает его менее эффективным и более медленным, чем другие VPN-протоколы.

    IKEv2/IPsec

    Internet Key Exchange version 2 (IKEv2) является протоколом IPsec, используемым для выполнения взаимной аутентификации, создания и обслуживания Security Associations (SA), стандартизован в RFC 7296. Так же защищен IPsec, как и L2TP, что может говорить об их одинаковом уровне безопасности. Хотя IKEv2 был разработан Microsoft совместно с Cisco, существуют реализации протокола с открытым исходным кодом (например, OpenIKEv2Openswan и strongSwan).

    Благодаря поддержке Mobility and Multi-homing Protocol (MOBIKE) IKEv2 очень устойчив к смене сетей. Это делает IKEv2 отличным выбором для пользователей смартфонов, которые регулярно переключаются между домашним Wi-Fi и мобильным соединением или перемещаются между точками доступа.

    IKEv2/IPsec может использовать ряд различных криптографических алгоритмов, включая AES, Blowfish и Camellia, в том числе с 256-битными ключами. IKEv2 поддерживает Perfect Forward Secrecy.

    Во многих случаях IKEv2 быстрее OpenVPN, так как он менее ресурсоемкий. С точки зрения производительности IKEv2 может быть лучшим вариантом для мобильных пользователей, потому как он хорошо переустанавливает соединения. IKEv2 нативно поддерживается на Windows 7+, Mac OS 10.11+, iOS, а также на некоторых Android-устройствах.

    OpenVPN

    OpenVPN — это универсальный протокол VPN с открытым исходным кодом, разработанный компанией OpenVPN Technologies. На сегодняшний день это, пожалуй, самый популярный протокол VPN. Будучи открытым стандартом, он прошел не одну независимую экспертизу безопасности.

    В большинстве ситуаций, когда нужно подключение через VPN, скорее всего подойдет OpenVPN. Он стабилен и предлагает хорошую скорость передачи данных. OpenVPN использует стандартные протоколы TCP и UDP и это позволяет ему стать альтернативой IPsec тогда, когда провайдер блокирует некоторые протоколы VPN.

    Для работы OpenVPN нужно специальное клиентское программное обеспечение, а не то, которое работает из коробки. Большинство VPN-сервисов создают свои приложения для работы с OpenVPN, которые можно использовать в разных операционных системах и устройствах. Протокол может работать на любом из портов TCP и UPD и может использоваться на всех основных платформах через сторонние клиенты: Windows, Mac OS, Linux, Apple iOS, Android.

    Но если он не подходит для вашей ситуации, стоит обратить внимание на альтернативные решения.

    WireGuard

    Самый новый и неизведанный протокол VPN —WireGuard. Позиционируется разработчиками как замена IPsec и OpenVPN для большинства случаев их использования, будучи при этом более безопасным, более производительным и простым в использовании.

    Все IP-пакеты, приходящие на WireGuard интерфейс, инкапсулируются в UDP и безопасно доставляются другим пирам. WireGuard использует современную криптографию:

    • Curve25519 для обмена ключами
    • ChaCha20 для шифрования
    • Poly1305 для аутентификации данных
    • SipHash для ключей хеш-таблицы
    • BLAKE2 для хеширования

    Код WireGuard выглядит куда скромнее и проще, чем код OpenVPN, в результате чего его проще исследовать на уязвимости (4 тысячи строк кода против нескольких сотен тысяч). Также многие отмечают, что его гораздо легче развернуть и настроить.

    Результаты тестов производительности можно увидеть на официальном сайте (как не сложно догадаться, они хороши). Стоит отметить, что лучшие результаты WireGuard покажет на Linux системах, т.к. там он реализован в виде модуля ядра.

    Совсем недавно был представлен WireGuard 1.0.0, который отметил собой поставку компонентов WireGuard в основном составе ядра Linux 5.6. Включенный в состав ядра Linux код прошел дополнительный аудит безопасности, выполненный независимой фирмой, который не выявил каких-либо проблем. Для многих это отличные новости, но сможет ли WireGuard стать достойной заменой IPsec и OpenVPN покажет время и независимые исследования безопасности.

    Мы постарались охарактеризовать самые популярные VPN протоколы, надеемся, обзор был для вас полезен. В качестве резюме приводим сравнительную таблицу, где еще раз обозначены важные, на наш взгляд, показатели.

    НазваниеРазработчикДоступ к
    исходникам
    ПротоколШифрование
    данных
    КроссплатформенностьБесплатный
    доступ
    openvpnOpenVPN Inc.естьOpenVPNAES 256Windows, macOS, GNU/Linux, Android, iOSесть
    RiseupVPNсообществоестьWindows, macOS, GNU/Linux, Androidесть
    NordVPNNordVPNнетIKEv2/IPsecAES 256Windows, macOS, GNU/Linux, Android, iOSнет
    ProtonVPNProton Technologies AGнетIKEv2/IPSec и OpenVPNAES 256Windows, macOS, GNU/Linux, Androidесть
    hotspot shieldPangoнетHydraAES 256Windows, macOS, iOS, Android, Chromium OSесть
    Продолжение таблицы

    Больше интересных статей

    Мы используем куки. Никогда такого не было, объясните

    ОК