Как известно, процедура перевода доменных имён в IP-адреса (DNS-резолвинг) опасная по умолчанию. Поскольку в процессе отсутствует сквозное шифрование, то посторонний злоумышленник может получить доступ к этому трафику. Более того, он может подменить ответы на запросы к легитимным сайтам на вредоносные. В конце концов, многие устройства конечных пользователей можно легко настроить так, чтобы они использовали вредоносные DNS-серверы вместо легитимных.
В мае 2024 года Microsoft представила довольно сложную конструкцию внедрения DNS в клиентские устройства, что может решить некоторые проблемы.
Однако независимые специалисты по безопасности беспокоятся, что таким образом Microsoft блокирует систему DNS в сетях Windows. Принятие «белого списка» разрешённых IP-адресов требует максимального доверия к администратору этого списка и угрожает потенциальными злоупотреблениями.
Новая система называется Zero Trust DNS (ZTDNS), то есть «DNS с нулевым доверием». Две её основные особенности:
- шифрованные и криптографически аутентифицированные соединения между клиентами конечных пользователей и DNS-серверами;
- возможность для администраторов жёстко ограничивать домены для резолвинга.
До сих пор никто не мог одновременно решить задачи E2E-шифрования и администрирования DNS, которые частично взаимосключающие. Обычно трафик или отправляется открытым текстом, или шифруется так, что администраторы не могут его нормально отслеживать и фильтровать.
ZTDNS решает эту давнюю проблему путём интеграции DNS-движка Windows с платформой фильтрации Windows Filtering Platform — основным компонентом Windows Firewall — непосредственно в клиентские устройства.
Интеграция DNS-движка с Windows Firewall позволит изменять правила файрвола по каждому доменного имени, при этом со сквозным шифрованием. Например, организация может установить для всех своих сотрудников конкретный DNS-сервер с TLS и разрешить только определённые домены. Microsoft называет такой DNS-сервер «защитным» (protective DNS server).
Потенциальные недостатки такого подхода очевидны. ZTDNS представляет собой новую парадигму, которая может нарушить важнейшие сетевые операции, если администраторы не внесут существенные изменения в свои текущие проекты. Для внедрения потребуется активное тестирование и определённое «изменение культуры» в организациях и среди администраторов, считают эксперты.
По умолчанию файрвол использует белый список, то есть запрещает все домены, кроме списка разрешённых. Отдельный список разрешений будет содержать подсети IP-адресов, которые необходимы клиентам для запуска авторизованного ПО. Эксперт по сетевой безопасности Ройс Уильямс назвал это «своего рода двунаправленным API для уровня файрвола, так что вы можете как запускать действия (по входу *в* файрвол), так и внешние действия на основе состояния файрвола (выход *из* файрвола).
Иллюстрация выше показывает, как ZTDNS вписывается в платформу управления мобильными устройствами Mobile Device Management, которая помогает администраторам защищать и контролировать удалённые устройства, авторизованные для подключения к сети. Блокируются исходящие соединения с клиентского устройства на все IP-адреса IPv4 и IPv6, за исключением соединений с защитными DNS-серверами, серверами DHCP, DHCPv6 и NDP, необходимыми для обнаружения сети:
В дальнейшем ответы DNS от одного из защитных DNS-серверов будут триггерить разрешающие исключения исходящего трафика для этих IP-адресов. Это гарантирует, что приложениям и службам, использующим системную конфигурацию DNS, разрешено подключаться к IP-адресам после резолвинга. IP-адрес будет одобрен и разблокирован до того, как результат резолвинга возвращён вызывающей стороне:
В системе ZTDNS трафик запрещён по умолчанию, а администраторы управляют разрешениями с учётом политик. В качестве опции можно использовать клиентские сертификаты, чтобы предоставить серверу идентификационные данные клиента, влияющие на политику, а не полагаться на IP-адреса клиентов, которые не являются безопасными сигналами и недостаточно стабильны для мобильных устройств.
Таким образом, ZTDNS позволяет фильтровать доменные имена, не прибегая к перехвату DNS-трафика в открытом виде, не участвуя в гонке вооружений по выявлению и блокированию зашифрованного DNS-трафика от приложений или вредоносных программ, не проверяя SNI (который скоро тоже зашифруют) и не полагаясь на сетевые протоколы конкретного производителя.
Сравнение системы с ZTDNS и без неё:
Для реализации защитных DNS-серверов и ZTDNS минимальным требованием является поддержка либо DNS по HTTPS (DoH), либо DNS по TLS (DoT), поскольку ZTDNS препятствует использованию DNS в открытом виде в Windows.
Опционально, mTLS в зашифрованных DNS-соединениях позволит Protective DNS применять политики разрешения для каждого клиента. Во всех случаях система ZTDNS не вводит никаких новых сетевых протоколов, что упрощает её будущую реализацию.
Microsoft опубликовала отдельную статью с подробным описанием возможных проблем в процессе внедрения ZTDNS. Сейчас технология находится в стадии приватного предпросмотра. Пока не сообщается, её включат в программу Windows Insiders или когда она станет общедоступной.