TLS 1.3
Большая часть коммуникации в интернете зашифрована, чтобы ее содержание было известно только непосредственным участникам, клиенту и серверу. Для этого требуется сеансовый ключ, который двум сторонам нужно согласовать, не раскрывая потенциальным злоумышленникам. Обычно для этого используется криптографический протокол TLS. Он работает со многими процессами сетевого взаимодействия. Например, передачей файлов, VPN-подключением, службами обмена мгновенными сообщениями, IP-телефонией.
Актуальная версия протокола, TLS 1.3 — безопасная и производительная. Ее подробно описали в стандарте интернета RFC 846 в августе 2018 года. Здесь закрыты все известные на сегодня уязвимости TLS 1.2, а процесс «рукопожатия» проходит вдвое быстрее, чем раньше
В том или ином виде протокол поддерживается популярными браузерами (например, Firefox и Chrome), криптографической библиотекой OpenSSL и другими веб-сервисами.
Также есть совместимость с предыдущими версиями. Так, соединение переключится на TLS 1.2, если одна из сторон не может использовать TLS 1.3. При этом, если злоумышленник попытается принудительно поменять версию протокола на 1.2 во время сессии, соединение моментально прервется. Воспользоваться старыми уязвимостями не получится. Однако, властям Китая удалось найти обход — они обновили свой «Великий китайский фаервол» так, чтобы он блокировал интернет-трафик, зашифрованный TLS 1.3.
Encrypted Client Hello
Расширение протокола TLS 1.3 Encrypted Client Hello шифрует большую часть метаданных (включая имя хоста) с помощью ключа криптографии. Ранее это решение называлось eSNI. Также в этом расширении устранены уязвимости, которые ранее позволяли собирать данные без согласия пользователей.
Создатели ECH планируют в будущем добавить в расширение новые функции безопасности, которые повысят скорость работы TLS, никак не затрагивая конфиденциальность пользователей.
DNS over TLS (DoT) и DNS over HTTPS (DoH)
Протокол DNS, который используется при взаимодействии DNS-серверов, сам по себе не зашифрован и может быть перехвачен. DoT и DoH помогут вам скрыть это.
Например, DNS over TLS «заворачивает» ваши DNS-запросы в TLS. Поддержкой и распространением этого протокола с помощью своих технологий и продуктов занимаются компании Cloudflare, Quad9, Google, Quadrant Information Security, CleanBrowsing, LibreOps, DNSlify Telsy, AdGuard и Digitalcourage. Все они имеют свои DNS-серверы и потому заинтересованы в этой технологии. Это тот случай, когда нужно найти баланс между интересами конкретных корпораций и интересами пользователей. Регулирующие организации уже занимаются этим.
DNS over HTTPS удаленно обрабатывает DNS-запросы через HTTPS-протокол. Общее у обоих протоколов — то, что они используют схожий криптографический ключ. Но для конечного пользователя нет большой разницы, как зашифровано соединение, через DoT или через DoH.
При использовании DoT и DoH DNS-запросы зашифрованы с помощью криптографического ключа.
ODoH
Также инженеры Apple, Cloudflare и Fastly совместно разработали новую версию стандарта DoH, Oblivious DoH (ODoH). Он использует прокси и onion-шифрование, чтобы скрыть IP-адрес пользователя от DNS-сервера. ODoH добавляет уровень шифрования в качестве сетевого прокси между клиентами и DoH-серверами. Фактически, IP-адрес и запрос к DNS отделены друг от друга так, чтобы никто в сети не мог видеть их одновременно. Исходный код протокола открыт, поэтому кто угодно может запустить собственный ODoH-сервис.
Метаданные остаются только у пользователей
QUIC
Транспортный интернет-протокол, разработанный Google. По сравнению с TCP, QUIC быстрее и надежнее. Также он решает несколько проблем, которые было практически невозможно устранить, используя TCP.
Во-первых, данные не остаются в очереди, а обрабатываются сразу. Например, если один из пакетов не дошел из-за плохого соединения, остальные будут приняты и обработаны.
Во-вторых, в QUIC реализована миграция соединения. То есть, все интернет-сервисы будут работать корректно, даже если устройство меняет IP-адрес — например, при переключении с Wi-Fi на мобильную сеть. На сегодня протокол поддерживают браузеры Google Chrome, Microsoft Edge и Safari.
Проблема метаданных
Это одна из фундаментальных проблем безопасности в интернете. Для настоящей приватности защищены должны быть не только данные, но и метаданные. Метаданные — это данные о данных. Например, в телефонном звонке ими будут номер телефона, время звонка и его продолжительность. Собрав массив такой информации и проанализировав его, о пользователе можно узнать довольно много. Если данные или метаданные легко доступны, кто-то точно захочет получить их.
Протоколы безопасности должны сохранять баланс между слишком большим и слишком малым количеством метаданных (мало метаданных сделают интернет неудобным). Протокол DoH, который защищает имена хостов от сторонних наблюдателей при соединении, — пример такого решения.
Каждая из рассмотренных сегодня технологий приближает нас к идеальной ситуации, когда передаваемые данные будут полностью защищены.