Хабрахабр

«DNS over HTTPS» оформлен в RFC 8484 — но не все им довольны

В конце октября Инженерный совет интернета (IETF) представил стандарт DNS over HTTPS (DoH) для шифрования DNS-трафика, оформив его в виде RFC 8484. Его одобрили многие крупные компании, но были и те, кто остался недоволен решением IETF. Среди последних был один из создателей системы DNS Пол Викси (Paul Vixie). Сегодня мы расскажем, в чем здесь суть.


/ фото Martinelle PD

Проблема DNS

Протокол DNS не шифрует запросы от пользователя к серверу и ответы на них. Данные транслируются в виде текста. Таким образом, запросы содержат имена хостов, которые посещает пользователь. Отсюда появляется возможность «подслушать» канал связи и перехватить незащищенные персональные данные.

В чем суть DNS over HTTPS

Чтобы исправить ситуацию, был предложен стандарт DNS over HTTPS, или «DNS поверх HTTPS». В IETF начали работать над ним в мае 2017 года. Его авторами выступили инженеры Пол Хоффман (Paul Hoffman) из ICANN — корпорации по управлению доменными именами и IP-адресами — и Патрик Макманус (Patrick McManus) из Mozilla.

DNS-трафик маскируется под обычный HTTPS-трафик, а связь клиента и сервера происходит через стандартный для HTTPS порт 443. Особенность DoH заключается в том, что запросы на определение IP-адреса отправляются не DNS-серверу, а инкапсулируются в трафик HTTPS и передаются HTTP-серверу, на котором специальный резолвер обрабатывает их с помощью API. Содержание запросов и факт использования DoH остаются скрытыми.

Вот запрос с методом GET: В RFC 8484 Инженерный совет приводит примеры DNS-запросов к example.com с DoH.

:method = GET :scheme = https :authority = dnsserver.example.net :path = /dns-query?dns=AAABAAABAAAAAAAAA3d3dwdleGFtcGxlA2NvbQAAAQAB accept = application/dns-message

Аналогичный запрос с использованием POST:

:method = POST :scheme = https :authority = dnsserver.example.net :path = /dns-query accept = application/dns-message content-type = application/dns-message content-length = 33 <33 bytes represented by the following hex encoding> 00 00 01 00 00 01 00 00 00 00 00 00 03 77 77 77 07 65 78 61 6d 70 6c 65 03 63 6f 6d 00 00 01 00 01

Многие из представителей ИТ-индустрии выступили в поддержку стандарта IETF. Например, ведущий исследователь интернет-регистратора APNIC Джефф Хьюстон (Geoff Houston).

С начала года (когда протокол еще находился на этапе драфта) DoH тестируют Google/Alphabet и Mozilla. Разработку протокола поддержали крупные интернет-компании. Браузер Mozilla Firefox поддерживает DNS over HTTPS с июня этого года. Одно из подразделений Alphabet, выпустило приложение Intra для шифрования DNS-трафика пользователей.

В Cloudflare недавно выпустили приложение (об этом была статья на Хабре) для работы с новым протоколом на Android и iOS. DoH внедрили и DNS-сервисы — Cloudflare и Quad9. 0. Оно выступает в роли VPN к собственному устройству (на адрес 127. 1). 0. DNS-запросы начинают отправляться в Cloudflare с использованием DoH, а трафик идет «обычным» маршрутом.

Список браузеров и клиентов с поддержкой DoH можно найти на GitHub.

Критика стандарта DoH

Не все участники индустрии положительно отозвались о решении IETF. Противники стандарта считают, что DoH — шаг в неправильном направлении и он только снизит уровень безопасности соединения. Наиболее резко о новом протоколе высказался Пол Викси, один из разработчиков системы DNS. У себя в Twitter он назвал DoH «полнейшей чушью с точки зрения информационной безопасности».

Например, системные администраторы не смогут блокировать потенциально вредоносные сайты, а рядовые пользователи будут лишены возможности организации родительского контроля в браузерах. По его мнению, новая технология не даст эффективно контролировать работу сетей.


/ фото TheAndrasBarta PD

Эта технология принята как стандарт IETF и описана в документах RFC 7858 и RFC 8310. Противники DoH предлагают использовать другой подход — протокол DNS over TLS, или DoT. Для подключения к DNS-серверу при этом используется отдельный порт — 853. Как и DoH, протокол DoT скрывает содержимое запросов, но отправляет их не по HTTPS, а использует TLS. Из-за этого отправка DNS-запроса не скрывается, как в случае с DoH.

В частности, эксперты отмечают: из-за того, что протокол работает с выделенным портом, третья сторона сможет отслеживать использование защищенного канала и при необходимости блокировать его. Технология DoT тоже подвергается критике.

Что ждет протоколы дальше

По словам экспертов, пока неясно, какой из способов защиты DNS-запросов станет более распространен.

Если DoH Alphabet использует в упомянутом выше приложении Intra, то протокол DoT применили для защиты трафика в Android Pie. Сейчас и Cloudflare, и Quad9, и Alphabet поддерживают оба стандарта. Также Google включил поддержку DoH и DoT в Google Public DNS — причем внедрение второго стандарта никак не анонсировали.

В частности, по прогнозам ИТ-специалистов, для широкого распространения протокола DoH на практике потребуется пара десятилетий. Издание The Register пишет, что конечный выбор между DoT и DoH будет зависеть от пользователей и провайдеров, и сейчас ни у одного из стандартов нет явного преимущества.

P.S. Другие материалы из нашего корпоративного блога об IaaS:
P.P.S. Наш канал в Telegram — о технологиях виртуализации:

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть