Введение

Процесс, при котором цифровые операционные системы пытаются шифровать каналы связи. Оппортунистическое шифрование (OE) – это любая система, которая при подключении к другой системе пытается зашифровать каналы связи, а в противном случае использует незашифрованную связь. Этот метод не требует предварительной договоренности между системами. Оппортунистическое шифрование может использоваться для противодействия пассивному перехвату данных. (Активный злоумышленник, напротив, может прервать процесс согласования шифрования, чтобы либо принудительно использовать незашифрованный канал, либо осуществить атаку типа "человек посередине" на зашифрованное соединение.) Оно не обеспечивает высокий уровень безопасности, поскольку аутентификация может быть затруднена, а безопасная связь не гарантирована. Однако оно упрощает шифрование большей части интернет-трафика, что устраняет значительное препятствие для широкого распространения защиты интернет-трафика. Оппортунистическое шифрование в Интернете описано в работах "Оппортунистическое шифрование с использованием протокола обмена ключами Интернета (IKE)", "Оппортунистическая безопасность: некоторая защита в большинстве случаев" и "Оппортунистическая безопасность для HTTP/2".

Маршрутизаторы

Проект FreeS/WAN был одним из первых сторонников оппортунистического шифрования (ОШ). Эти усилия продолжаются бывшими разработчиками freeswan, которые теперь работают над Libreswan. Libreswan стремится поддерживать различные механизмы аутентификации для оппортунистического шифрования с использованием IPsec. Версия 3.16, выпущенная в декабре 2015 года, поддерживала оппортунистический IPsec с использованием AUTH NULL на основе RFC 7619. В настоящее время проект Libreswan работает над поддержкой (прямого) Domain Name System Security Extensions (DNSSEC) и Kerberos для оппортунистического IPsec. Openswan также был портирован в проект OpenWrt. Openswan использовал обратные DNS-записи для упрощения обмена ключами между системами. Для настройки динамических VPN-соединений, работающих аналогично ОШ для определенных доменов, можно использовать OpenVPN и другие сетевые протоколы.

Linux и Unix-подобные системы

FreeS/WAN и её форки, такие как Openswan и strongSwan, предлагают VPN, которые также могут работать в режиме обфускации (OE) с использованием технологии IPsec. Обфускация TCP – ещё один метод реализации обфускации (OE).

ОС Windows

Платформы Microsoft Windows имеют предустановленную реализацию OE. Этот метод использует IPsec для защиты трафика и представляет собой простую процедуру включения. Доступ к нему осуществляется через MMC и "IP Security Policies on Local Computer", а затем редактированием свойств для назначения политики "(Request Security)". Это активирует необязательный IPsec в среде Kerberos. Многие системы также сталкиваются с проблемами, когда одна из сторон находится за NAT. Эта проблема решается с помощью обхода NAT (NAT traversal, NAT T), что достигается путем редактирования параметра реестра. Используя возможности фильтрации, предоставляемые MMC, можно настроить сеть таким образом, чтобы требовать, запрашивать или разрешать шифрование трафика для различных доменов и протоколов.

VoIP

Некоторые решения Voice over IP (VoIP) обеспечивают простое шифрование голосового трафика, когда это возможно. Некоторые версии линий аналоговых телефонных адаптеров (ATA) Sipura Technology и Linksys включают аппаратную реализацию SRTP с установкой сертификата от Voxilla, информационного сайта, посвященного VoIP. При установлении соединения делается попытка использовать SRTP; в случае успеха в телефонную трубку воспроизводится серия тонов, в противном случае вызов продолжается без шифрования. Skype и Amicima используют только защищенные соединения, а Gizmo5 пытается установить защищенное соединение между своими клиентами. Фил Циммерманн, Алан Джонстон и Джон Каллас предложили новый протокол шифрования VoIP под названием ZRTP. У них есть реализация этого протокола под названием Zfone, исходный код и скомпилированные бинарные файлы которой доступны.

Сайты

Для шифрования WWW/HTTP-соединений обычно используется HTTPS, который требует надежного шифрования и влечет за собой значительные административные расходы, как на начальную настройку, так и на последующее обслуживание веб-сайта. Большинство браузеров проверяют подлинность веб-сервера, удостоверяясь, что SSL-сертификат подписан доверенным центром сертификации и не просрочен, что обычно требует от оператора веб-сайта вручную обновлять сертификат каждые один-два года. Самый простой способ включить какое-либо оппортунистическое шифрование веб-сайта – использовать самоподписанные сертификаты, однако это приводит к тому, что браузеры отображают предупреждение при каждом посещении сайта, если пользователь не отметит сертификат сайта как доверенный. Поскольку незашифрованные веб-сайты в настоящее время не отображают подобных предупреждений, использование самоподписанных сертификатов не получило широкого распространения. В 2015 году Mozilla начала внедрять оппортунистическое шифрование в Firefox версии 37, но эта функция была быстро отключена (в обновлении 37.0.1) из-за серьезной уязвимости, позволявшей обойти проверку SSL-сертификатов. Расширения для браузеров, такие как HTTPS Everywhere и HTTPSfinder, обнаруживают и автоматически переключают соединение на HTTPS, когда это возможно. Ранее было предложено несколько вариантов для реализации настоящего, бесшовного оппортунистического шифрования протокола HTTP/2, но эти предложения были отклонены. Пол Хеннинг Камп, ведущий разработчик Varnish и старший разработчик ядра FreeBSD, раскритиковал IETF за следование определенной политической линии при разработке HTTP/2 и за отказ от внедрения оппортунистического шифрования в стандарт.

Слабые стороны

Реализации STARTTLS, часто используемые с SMTP, уязвимы к атакам STRIPTLS при активном перехвате трафика.