- PVSM.RU - https://www.pvsm.ru -

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

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

«DNS over HTTPS» оформлен в RFC 8484 — но не все им довольны - 1 [3]
/ фото Martinelle [4] PD

Проблема DNS

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

В чем суть DNS over HTTPS

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

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

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

   :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. Например [6], ведущий исследователь интернет-регистратора APNIC Джефф Хьюстон (Geoff Houston).

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

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

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

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

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

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

«DNS over HTTPS» оформлен в RFC 8484 — но не все им довольны - 2
/ фото TheAndrasBarta [15] PD

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

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

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

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

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

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


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

P.P.S. Наш канал в Telegram [23] — о технологиях виртуализации:

Автор: it_man

Источник [27]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/dns-2/299128

Ссылки в тексте:

[1] представил: https://tools.ietf.org/html/rfc8484

[2] остался: https://www.theregister.co.uk/2018/10/23/paul_vixie_slaps_doh_as_dns_privacy_feature_becomes_a_standard/

[3] Image: https://habr.com/company/it-grad/blog/429768/

[4] Martinelle: https://pixabay.com/ru/%D1%81%D0%B5%D1%82%D1%8C-%D0%BA%D0%B0%D0%B1%D0%B5%D0%BB%D1%8C-ethernet-%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80-1572617/

[5] начали работать над ним: https://datatracker.ietf.org/doc/rfc8484

[6] Например: https://www.potaroo.net/ispcol/2018-10/doh.html

[7] выпустило: https://nakedsecurity.sophos.com/2018/10/05/googles-intra-app-secures-older-androids-with-encrypted-dns/

[8] поддерживает: https://blog.nightly.mozilla.org/2018/06/01/improving-dns-privacy-in-firefox/

[9] Cloudflare: https://www.securitylab.ru/news/492430.php

[10] Quad9: https://www.quad9.net/doh-quad9-dns-servers/

[11] об этом была статья на Хабре: https://habr.com/post/429648/

[12] GitHub: https://github.com/curl/curl/wiki/DNS-over-HTTPS

[13] считают: https://www.theregister.co.uk/2018/10/30/dns_over_https_controversy/

[14] назвал: https://twitter.com/paulvixie/status/1053765281917661184

[15] TheAndrasBarta: https://pixabay.com/ru/%D0%BC%D0%B8%D1%80%D0%B5-%D0%B5%D0%B2%D1%80%D0%BE%D0%BF%D0%B5-%D0%BA%D0%B0%D1%80%D1%82%D0%B0-%D1%81%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F-%D1%81%D0%B5%D1%82%D1%8C-1264062/

[16] RFC 7858: https://tools.ietf.org/html/rfc7858

[17] RFC 8310: https://tools.ietf.org/html/rfc8310

[18] применили: https://www.techrepublic.com/article/how-to-enable-dns-over-tls-in-android-pie/

[19] анонсировали: https://habr.com/post/427639/

[20] потребуется: https://packetpushers.net/response-doh-dns-over-https-explained-apnic-blog/

[21] Бессерверные вычисления в облаке — тренд современности или необходимость?: https://iaas-blog.it-grad.ru/tendencii/besservernye-vychisleniya-v-oblake-trend-sovremennosti-ili-neobxodimost/

[22] NetApp Directions 2018 — отчет с конференции: https://iaas-blog.it-grad.ru/zhelezo/obzor-netapp-directions-2018/

[23] канал в Telegram: https://t.me/iaasblog

[24] NetApp от А до Я: обзор технологий вендора: https://t.me/iaasblog/174

[25] Почему хороший IaaS-провайдер не строит свой ЦОД: https://t.me/iaasblog/173

[26] Что еще есть у VMware: инструменты виртуализации: https://t.me/iaasblog/172

[27] Источник: https://habr.com/post/429768/?utm_campaign=429768