Обычно резолвер сообщает каждому DNS-серверу, какой домен вы ищете. Этот запрос иногда включает ваш полный IP-адрес или его большую часть, что можно легко объединить с другой информацией, чтобы установить вашу личность. Из статьи Лин Кларк «DoH в картинках»
На Хабре неоднократно рассказывали о протоколе DNS-over-HTTPS (DoH), недавно принятом в качестве стандарта RFC 8484. Разработанный Mozilla, Google и Cloudflare протокол DNS-шифрования сводит на нет попытки мониторинга трафика «человеком-в-середине». Он устраняет самое «слабое звено» в HTTPS — открытые DNS-запросы, по которым сейчас злоумышленник на уровне провайдера или государства может отслеживать содержимое DNS-пакетов и даже подменять их. Это позволяет блокировать доступ к ресурсу по IP-адресу или доменному имени.
Менее полутора месяцев осталось до вступления в силу закона об изоляции Рунета, закон Яровой уже вступил в силу, а государство и частные компании усиливают попытки слежки за гражданами в интернете. В такой ситуации очень своевременно пришли новости от ведущих разработчиков браузеров. Разработчики Firefox и Chrome практически синхронно объявили о внедрении DNS-шифрования.
6 сентября 2019 года Mozilla объявила о решении включить по умолчанию протокол DoH (DNS-over-HTTPS) в одной из следующих версий браузера Firefox.
Вкратце, DoH инкапсулирует DNS-запросы в пакеты HTTPS, превращая их в обычный зашифрованный веб-трафик. Запросы отправляются как HTTP POST или GET с телом в формате сообщения DNS (датаграммы из обычных DNS-запросов) или как запрос HTTP GET в формате JSON. Как и при обычном веб-трафике HTTPS, для подключения через DoH не требуется аутентификация, а сертификат проверяется центром сертификации.
Фиксация DNS-транзакции через DoH. Видно только HTTPS, TLS и ничего больше. Из статьи «Как спрятать DNS-запросы от любопытных глаз провайдера»
Незашифрованный URL также может быть перехвачен через поле запроса SNI (Server Name Indication) — специального расширения протокола TLS. Для устранения этой уязвимости в Firefox уже внедрён стандарт зашифрованной передачи имени хоста Encrypted SNI (ESNI), где клиентская система получает публичный ключ сервера из DNS и производит шифрование всех данных ещё до начала TLS-сессии. На этой странице вы можете проверить, поддерживает ли ваш браузер ESNI и другие стандарты шифрования.
Mozilla начала эксперименты с DoH в июне 2018 года и убедилась, что он обеспечивает достаточную производительность, не конфликтуя с настройками родительского контроля и корпоративными политиками (с отключением DoH в случае их обнаружения или в случае других проблем резолвинга DNS).
По результатам тестирования Mozilla приняла решение постепенно развернуть DoH для всех пользователей в США, начиная с конца сентября. Развёртывание будет происходить в «резервном режиме», то есть DoH будет автоматически отключаться при малейших проблемах.
План состоит в том, чтобы начать медленно включать DoH для небольшого процента пользователей при мониторинге любых проблем, прежде чем включить для большей аудитории. Если всё пройдёт хорошо, то Mozilla сообщит, когда будет готова к 100% развертыванию.
По умолчанию в Firefox установлен DNS-резолвер Cloudflare. Его можно сменить на другого провайдера или вовсе отключить DoH вручную. Для этого в настройках about:config
нужно установить параметр network.trr.mode
в значение 5
. Значение 2
соответствует конфигурации по умолчанию (Cloudflare), значение 1
— автоматическому выбору самого быстрого резолвера. Сейчас всё это работает в альфа-версии Firefox Nightly.
DNS-провайдера можно указать в сетевых настройках: Настройки → Параметры сети → Используемый провайдер.
Список общедоступных DoH-серверов обновляется здесь.
10 сентября 2019 года об аналогичных планах объявили разработчики Chromium. Экспериментальная обкатка DoH начнётся в следующей сборке Chrome 78, стабильный релиз которой ожидается 22 октября 2019 года. В отличие от Mozilla, которая постепенно внедряет функцию для пользователей из США, эксперимент Google изначально более масштабный, без географических ограничений. Сразу со старта доступны шесть CDN-провайдеров: это Cleanbrowsing, Cloudflare, DNS.SB, OpenDNS, Quad9 и Google. К моменту запуска список партнёров может быть увеличен.
От участия в эксперименте в Chrome 78 можно будет отказаться, отключив флажок chrome://flags/#dns-over-https
в настройках.
Поддержка DoH и в браузере, и у CDN позволяет эффективно бороться с блокировкой ресурсов со стороны «человека-в-середине», что представляет собой актуальную проблему в том числе для России.
Автор: GlobalSign_admin