Технология «DNS поверх HTTPS» (DNS-over-HTTPS, DoH) помогает защитить пользователей от сбора данных на сайтах и последующей их продажи рекламодателям. Конфиденциальность достигается за счёт шифрования запросов посетителя к веб-ресурсу. Разберёмся в нюансах технологии и расскажем, как правильно настроить DoH в браузере.
- Введение
- DNS и угрозы безопасности
- Что такое «DNS поверх HTTPS»
- Как настроить DoH в вашем браузере
- 4.1. Mozilla Firefox
- 4.2. Google Chrome
- Злоупотребление DoH
- Ограничение использования технологии DoH
- Выводы
Введение
Ежедневно мы посещаем различные ресурсы в интернете, связанные с образованием, профессиональной информацией, развлечениями, интересами, товарами и прочим. Запросы в адрес различных ресурсов могут вполне определённо идентифицировать человека, определить сферу и род его деятельности, интересы и желания. Не всем пользователям нравится, что кто-то, будь то государство, провайдер или сторонние организации, может полностью отслеживать их поведение в интернете. Более того, такая информация продаётся сторонним лицам, которые занимаются таргетированной рекламой, отсюда надоедливые баннеры с информацией о ваших запросах на различных сайтах.
Обеспечить анонимность запросов призвана технология «DNS поверх HTTPS» (далее — DoH).
DNS и угрозы безопасности
DNS — это служба помогающая пользователям взаимодействовать с сайтами в интернете. Подробное её описание можно найти здесь.
В контексте DNS-запросов и возможного злоупотребления ими существует две основных угрозы безопасности пользователей: трекинг и спуфинг.
О трекинге было отчасти упомянуто выше: это сбор информации о запросах пользователя и продажа её сторонним лицам. Даже если дома или на работе используются надёжные DNS-серверы, в общественных местах всегда есть вероятность подключиться к беспроводной сети с небезопасным DNS-сервером, который будет отслеживать все ваши запросы и передавать их куда не следует.
Спуфинг — это реализация атаки «Человек посередине» (Man-in-the-Middle, MitM). Злоумышленник, который видит ваши запросы, может подменить ответ от DNS-сервера и направить вас на вредоносный или фишинговый сайт. Если пользователь не будет внимателен в таких случаях, это может закончиться установкой различных вредоносных программ на компьютер и раскрытием данных (аккаунтов, паролей, данных о платёжных картах), что делает эту угрозу особенно опасной. Частично проблема решается технологией DNSSEC, использующей принцип асимметричного шифрования с открытым ключом. Все ответы от DNS-сервера подписаны цифровой подписью, проверить подпись может любой, а для подписания используется секретный ключ.
Что такое «DNS поверх HTTPS»
В октябре 2018 года инженерный совет интернета (IETF) опубликовал документ RFC 8484, в котором была описана технология DoH. В ней DNS-запросы выполняются с использованием технологии HTTPS. Для обмена по этому протоколу должны быть установлены сертификаты открытого и закрытого ключей. Данные шифруются закрытым ключом и расшифровываются с помощью открытого. Клиент и сервер обмениваются ключами, после чего все данные передаются в зашифрованном виде. Таким образом, при использовании этой технологии ваши запросы к DNS-серверу и ответы от него будут передаваться в зашифрованном виде.
Технология DoH используется популярными браузерами Chrome и Firefox, а также публичными DNS-серверами от Google, Cloudflare, OpenDNS и др.
Стоит отметить, что не все DNS-запросы от вас будут передаваться в зашифрованном виде. Вначале DNS-серверу будет передан запрос содержащий имя ресурса — SNI (Server Name Indicator). SNI используется протоколом шифрования TLS для запроса сертификата определённого ресурса, благодаря чему на одном IP-адресе в интернете могут размещаться разные сайты. Соответственно, ваш провайдер и маршрутизаторы на пути следования запроса будут его видеть, но после установки соединения всё будет зашифровано. Таким образом, остаётся проблема раскрытия имени ресурса при первоначальном запросе.
Для её решения была разработана технология Encrypted Server Name Indicator (ESNI). Это расширение протокола TLS, позволяющее шифровать SNI публичным ключом DNS-сервера. Использование этой технологии может затруднить доступ к некоторым сайтам, если провайдер использует систему фильтрации DPI, поскольку она проверяет SNI и отбрасывает запрос, если индикатор скрыт.
Как настроить DoH в вашем браузере
Настройка очень проста, приведём примеры её выполнения в двух популярных браузерах — Mozilla Firefox и Google Chrome.
Mozilla Firefox
Если вы пользуетесь Mozilla Firefox, перейдите в «Настройки», в разделе «Основные» прокрутите до «Параметры сети» и нажмите кнопку «Настроить», внизу поставьте галочку на «Включить DNS через HTTPS». По умолчанию используется сервер Cloudflare, при необходимости можно заменить его на другой.
Рисунок 1. Настройка DoH в Mozilla Firefox
Google Chrome
При работе с Chrome откройте «Настройки», далее — вкладка «Безопасность» в разделе «Конфиденциальность и безопасность». В разделе «Дополнительные» включите опцию «Использовать безопасный DNS-сервер». Можно использовать DoH с DNS-сервером имеющегося поставщика услуг, выбрать готовый вариант из списка рекомендуемых или указать другой сервер.
Рисунок 2. Настройка DoH в Chrome
Злоупотребление DoH
Для защиты информационной инфраструктуры компаний и ведомств применяются антивирусы, системы обнаружения и предотвращения вторжений. Эти средства обеспечения безопасности используют сигнатурный анализ вредоносной активности. При обработке сетевого трафика, в частности, проверяется тело пакета данных. Средства защиты сравнивают запросы, команды, пути и другую информацию в сетевом пакете с базой своих сигнатур, и при выявлении совпадений происходит блокировка.
Сейчас появляются вредоносные программы, которые злоупотребляют DoH, используя эту технологию для установки шифрованного соединения между заражённым компьютером и командно-контрольным сервером (C&C). Запросы и ответы будут зашифрованы, поэтому не удастся обнаружить и заблокировать вредоносную активность с помощью описанных средств защиты информации. Поэтому злоупотребление DoH является очень привлекательной возможностью для злоумышленников.
Ограничение использования технологии DoH
Многие организации, занимающиеся информационной безопасностью, собирают события со своих DNS-серверов для мониторинга вредоносной активности. По DNS-запросам можно определить целевые атаки на информационные системы, а также выявить заражение компьютеров вредоносными программами. Также на их основе создаются правила корреляции для SIEM-систем. Поэтому использование DoH сильно затрудняет мониторинг вредоносной активности. Для решения проблемы были придуманы «канареечные» (проверочные) домены. Для отключения DoH нужно добавить запись с таким доменом на локальный DNS-сервер. Например, Firefox проверяет имя «use-application-dns.net», и если DNS-сервер ответит ошибкой на запрос такого имени, браузер будет использовать DoH. В обратном случае информация о таком домене будет получена и DoH использоваться не будет.
Кроме того, в популярных DNS-серверах реализована функция родительского контроля (ограничения ресурсов нежелательных для детей); соответственно, при использовании DoH её работа будет некорректной. Эта проблема также решается с помощью «канареечных» доменов, но имена будут запрашиваться уже у публичных серверов. Информация о том, какие именно имена используются для отключения DoH при использовании конкретного сервиса, не разглашается.
Выводы
Технология DoH полезна и заслуживает повсеместного использования. Вы можете повысить свою анонимность и безопасность, выполнив несложную настройку браузера. DoH поддерживается популярными браузерами и DNS-серверами. Сейчас, когда прошло почти три года с момента создания технологии, пользователь не ощутит никаких трудностей в её использовании. Стоит, впрочем, заметить, что периодически появляются новости о возможном запрещении технологий использующих криптографические алгоритмы для скрытия имён запрашиваемых ресурсов, что не может не беспокоить ИТ-специалистов.