Система и способ подключения протокола безопасного разрешения DNS
SYSTEM AND METHOD OF CONNECTING SECURE DNS RESOLUTION PROTOCOL

Область техники
Изобретение относится к области компьютерной безопасности, а более конкретно к системам и способам разрешения IP-адресов из доменных имен.
Уровень техники
Система доменных имен (англ. Domain Name System, DNS) является распределенной системой для получения информации о доменных именах. При запросе пользователем доступа к сайту резолвер (англ. resolver - локальное приложение-агент, которое получает информацию, связанную с доменным именем) отправляет DNS-запрос для получения IP-адреса, соответствующего доменному имени сайта. Для отправки DNS-запросов обычно используется протокол UDP или TCP без применения шифрования. Поэтому такая система уязвима к отслеживанию (англ. tracking) и к спуфингу (или подмене, англ. spoofing), т.е. возможно нарушение конфиденциальности и безопасности при передаче DNS-запросов и при получении ответов от DNS-сервера. Любой DNS-сервер или маршрутизатор на пути к этому DNS-серверу могут определить IP-адрес пользователя, запросившего доступ к сайту. Кроме того, сам резолвер может собирать информацию о пользователях и посещаемых ими сайтах. Спуфинг заключается в возможности изменения ответа, например, злоумышленник может вместо настоящего IP-адреса сайта сообщить IP-адрес фишингового сайта, содержащего вредоносный скрипт или приложение.
12
1
2
3
3
4
4
Для частичного решения упомянутых проблем соединение между DNS-резолверами и авторитетными DNS-серверами может иметь дополнительную защиту, например, средства проверки целостности передаваемых данных (англ. DNS Security Extensions, DNSSEC). Для повышения конфиденциальности и безопасности в последнее время разрабатываются протоколы безопасного разрешения DNS, такие как, например: DNS поверх HTTPS (англ. DNS Queries over HTTPS, DoH ( https://developers.google.com/speed/public-dns/docs/dns-over-https,  https://tools.ietf.org/html/rfc8484)), DNS поверх TLS (англ. DNS over TLS, см. IETF RFC 7858 ( https://tools.ietf.org/html/rfc7858) и RFC 83 10 ( https://tools.ietf.org/html/rfc8310)). Протоколы безопасного разрешения DNS используют разрешение DNSSEC поверх зашифрованных протоколов HTTPS или TLS. Однако, в настоящее время упомянутые протоколы не получили широкого распространения. И, несмотря на перечисленные преимущества рассмотренных протоколов, их использование влечет ряд ограничений, которые могут снизить доступность сетевого соединения. В частности, многие сетевые приложения не поддерживают протоколы безопасного разрешения DNS, кроме того, провайдеры могут предоставлять для использования собственные DNS-сервера, обладающие информацией о соответствии доменных имен IP-адресам ресурсов сети. Поэтому возникает техническая проблема, заключающаяся в необходимости повысить конфиденциальность и безопасность сетевого соединения при использовании системы доменных имен, не снизив при этом доступность сетевого соединения. Снижение доступности сетевого соединения может проявляться, например, в недоступности сети, в снижении скорости передачи данных по сети.
Раскрытие сущности изобретения
Технический результат заключается в повышении конфиденциальности и безопасности сетевого соединения при обеспечении доступности сетевого соединения при использовании системы доменных имен путем подключения протокола безопасного разрешения DNS при выполнении условия подключения протокола безопасного разрешения DNS.
Согласно варианту реализации, используется реализуемый компьютером способ подключения протокола безопасного разрешения DNS, в котором: определяют DNS-запрос от клиента; определяют выполнение условия подключения протокола безопасного разрешения DNS из базы условий подключения протокола безопасного разрешения DNS; если условие подключения протокола безопасного разрешения DNS выполнено, подключают протокол безопасного разрешения DNS для клиента.
Согласно одному из частных вариантов реализации протокол безопасного разрешения DNS является одним из следующих протоколов: DNS поверх HTTPS, DNS поверх TLS.
Согласно другому частному варианту реализации в случае, если после подключения протокола безопасного разрешения DNS снизилась доступность сетевого соединения, подключают другой протокол безопасного разрешения DNS.
Согласно еще одному частному варианту реализации условием подключения протокола безопасного разрешения DNS является по меньшей мере одно из следующих: снижение средней скорости соединения в компьютерной сети; получение доступа к корпоративным ресурсам в компьютерной сети; подключение к публичным точкам доступа; получение доступа к ресурсам из списка защищаемых ресурсов; адрес запрашиваемого ресурса не был получен с использованием протокола DNS.
Согласно одному из частных вариантов реализации базу условий подключения безопасного протокола разрешения DNS обновляют с использованием удаленного сервера производителя средства защиты.
Согласно другому частному варианту реализации пользователь компьютера или администратор обновляет базу условий подключения протокола безопасного разрешения DNS.
Согласно варианту реализации, используется система подключения протокола безопасного разрешения DNS, содержащая: средство защиты, предназначенное для: определения DNS-запроса от клиента; определения выполнения условия подключения протокола безопасного разрешения DNS из базы условий подключения протокола безопасного разрешения DNS; подключения протокола безопасного разрешения DNS для клиента, если условие подключения протокола безопасного разрешения DNS выполнено; базу условий подключения протокола безопасного разрешения DNS, содержащую условия подключения безопасного протокола разрешения DNS.
Согласно одному из частных вариантов реализации протокол безопасного разрешения DNS является одним из следующих протоколов: DNS поверх HTTPS, DNS поверх TLS.
Согласно другому частному варианту реализации в случае, если после подключения протокола безопасного разрешения DNS снизилась доступность сетевого соединения, подключают с помощью средства защиты другой протокол безопасного разрешения DNS.
Согласно еще одному частному варианту реализации условием подключения протокола безопасного разрешения DNS является по меньшей мере одно из следующих: снижение средней скорости соединения в компьютерной сети; получение доступа к корпоративным ресурсам в компьютерной сети; подключение к публичным точкам доступа; получение доступа к ресурсам из списка защищаемых ресурсов; адрес запрашиваемого ресурса не был получен с использованием протокола DNS.
Согласно одному из частных вариантов реализации базу условий подключения безопасного протокола разрешения DNS обновляют с использованием удаленного сервера производителя средства защиты.
Согласно другому частному варианту реализации пользователь компьютера или администратор обновляют базу условий подключения протокола безопасного разрешения DNS.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
На Фиг. 1 представлена схема подключения протокола безопасного разрешения DNS.
На Фиг. 2 представлен способ подключения протокола безопасного разрешения DNS.
Фиг. 3 представляет пример компьютерной системы общего назначения, с помощью которой может быть реализовано настоящее изобретение.
Осуществление изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако, настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
На Фиг. 1 представлена схема подключения протокола безопасного разрешения DNS. Для иллюстративности далее по тексту и на фигурах будет идти речь о протоколе безопасного разрешения DNS - DNS поверх HTTPS (DoH), который может быть предпочтительнее, например, протокола DNS поверх TLS потому, что провайдеры могут заблокировать порты, не относящиеся к общепринятым портам, по которым обслуживается HTTP-протокол. В то же время стандартные порты протоколов HTTP (80) и HTTPS (443) открыты практически всегда. Однако, следует понимать, что заявленное изобретение применимо для любых других протоколов безопасного разрешения DNS, в частности DNS поверх HTTPS и DNS поверх TLS. На компьютере 110 установлен клиент - приложение 111 (например, веб-браузер), осуществляющее доступ в сеть Интернет 140. В данной заявке под компьютером 110 понимается любое вычислительное устройство, в частности персональный компьютер, ноутбук, смартфон, планшет, маршрутизатор, система хранения данных, сервер. При использовании протокола DNS 120 при вводе пользователем в браузере веб-адреса сайта, из него извлекается доменное имя сайта в сети Интернет (например, www.kaspersky.com), приложение 111 самостоятельно или посредством системного приложения-резолвера на компьютере 110 отправляет DNS-запрос DNS-резолверу 121 на получение IP-адреса введенного сайта. DNS-резолвер 121 выполняет разрешение IP-адреса, обращаясь в данном примере к DNS-серверам 122-123 и, в итоге возвращает приложению 111 IP-адрес сайта. Далее по IP-адресу приложение 111 получает содержимое сайта посредством протокола HTTP или HTTPS.
Средство защиты 112 установлено на компьютере 110 и предназначено для определения или перехвата DNS-запроса от клиента, т.е. приложения 111. Отправка DNS-запроса может быть определена средством защиты 112, использующего сетевой драйвер, при отправке UDP/TCP-пакета, в котором содержится сигнатура DNS-протокола, и/или при отправке упомянутого пакета на порт 53, который используется в DNS-протоколе. Отправка DNS-запроса может быть также определена путем установки перехватчика системных/WinAPI вызовов разрешения IP-адресов из доменных имен. Например, в операционной систем (ОС) Windows такими системными вызовами являются: DnsQuery_A(), DnsQuery_W(), getaddrinfo(), а в Linux - getaddrinfo().
После определения отправки DNS-запроса средство защиты 112 определяет выполнение условия подключения протокола безопасного разрешения DNS, например, из базы условий 113 (например, база данных, список хранящийся на диске и др.), которая может быть сформирована, например, заранее производителем средства защиты 112. И, в случае выполнения условия подключения протокола безопасного разрешения DNS, средство защиты 112 подключает протокол безопасного разрешения DNS для клиента. В результате все DNS-запросы приложения 111 будут передаваться DNS-резолверу 131 по протоколу безопасного разрешения DNS, например, DoH 130. DNS-резолвер 131 затем выполняет разрешение IP-адреса, обращаясь в данном примере к DNS-серверам 132-133 и, в итоге возвращает приложению 111 IP-адрес запрашиваемого ресурса. Подключение протокола безопасного разрешения DNS (например, DoH) может быть осуществлено путем установки нового защищенного соединения (например, по протоколу HTTPS) из сетевого драйвера на уровне ядра ОС или средства защиты 112 на уровне пользовательского пространства ОС. Защищенное соединение в этом случае будет установлено между приложением 111 и DNS-резолвером 131, а также между DNS-резолвером 131 и DNS-серверами 132-133.
В частном примере реализации, если после подключения протокола безопасного разрешения DNS (например, был подключен протокол DNS поверх TLS) снизилась доступность сетевого соединения (например, после блокировки провайдером портов, не относящихся к общепринятым портам, по которым обслуживается HTTP-протокол), то в этом случае подключают с помощью средства защиты 112 другой протокол безопасного разрешения DNS (например, DNS поверх HTTPS, DoH). Снижение доступности сетевого соединения может проявляться, например, в недоступности сети, в снижении скорости передачи данных по сети.
В частном примере реализации условием подключения протокола безопасного разрешения DNS является по меньшей мере одно из следующих:
• снижение средней скорости передачи данных в компьютерной сети. В этом случае может быть снижено количество передаваемых по меньшей мере одним приложением 111 DNS-запросов за счет установки единственного зашифрованного соединения (например, HTTPS-соединения при подключении протокола DoH). Кроме того, с помощью средства защиты 112 будет осуществлена защита пользователя от отслеживания со стороны провайдера сети. Указанное условие может быть определено, например, сетевым драйвером, который определит снижение количества передаваемых пакетов данных. Кроме того, указанное условие может быть определено при переключении сетевого соединения, например, с Wi-Fi на мобильный интернет - в этом случае соединение начинает рассматривается операционной системой как «лимитированное».
• Подключение к публичным точкам доступа.
Например, пользователь подключился к публичным точкам доступа, которые содержатся в базе данных средства защиты 112 и отмечены как небезопасные. Подключение к таким точкам доступа несет значительные риски для пользователя компьютера 110, т.к. ими могут воспользоваться злоумышленники.
Указанное условие может быть определено, например, эвристической сигнатурой на основе известных имен точек доступа (которые включают, например, слова: airport, cafe и др.), по спискам публичных SSID, при подключении к точкам доступа Wi-Fi без аутентификации.
• Получение доступа приложением 111 к корпоративным ресурсам в компьютерной сети.
В этом случае будет обеспечен неотслеживаемый провайдером доступ к корпоративным ресурсам, когда VPN-соединение невозможно (например, заблокирован GRE/PPTP-протокол).
• Получение доступа к ресурсам из списка защищаемых средством защиты 112 ресурсов (на фигуре не указан).
Например, если пользователь открывает веб-банкинг или совершает покупки в интернете.
• Адрес запрашиваемого ресурса не был получен с использованием протокола DNS.
В некоторых случаях, когда IP-адрес запрашиваемого сайта не мог быть разрешен с использованием протокола DNS, средство защиты 112 может подключить протокол безопасного разрешения DNS.
Указанные условия могут быть определены, когда доменная зона запрашиваемого ресурса не является стандартной (например, «.kaspersky», не поддерживается администрацией адресного пространства Интернет (IANA).
В частном примере реализации условия из базы условий 113 для подключения безопасного протокола разрешения DNS могут обновляться с использованием удаленного сервера производителя средства защиты 112. Например, может быть обновлен список защищаемых средством защиты 112 ресурсов.
В другом частном примере реализации пользователь компьютера или администратор могут обновлять или настраивать упомянутые условия из базы условий 113. Например, может быть изменен список защищаемых ресурсов, или могут быть отключены некоторые из условий, например, условие получения доступа к корпоративным ресурсам в компьютерной сети в том случае, если компьютер 110 является домашним компьютером пользователя.
На Фиг. 2 представлен способ подключения протокола безопасного разрешения DNS. На шаге 210 определяют с помощью средства защиты 112 DNS-запрос от клиента (приложения) 111. На шаге 220 определяют с помощью средства защиты 112 выполнение условия подключения протокола безопасного разрешения DNS из базы условий подключения протокола безопасного разрешения DNS 113. И, если условие подключения протокола безопасного разрешения DNS выполнено (шаг 230), то на шаге 240 подключают протокол безопасного разрешения DNS для клиента. В противном случае продолжают определять DNS-запросы на шаге 210.
В частном примере реализации, если после подключения протокола безопасного разрешения DNS (например, был подключен протокол DNS поверх TLS) снизилась доступность сетевого соединения (например, после блокировки провайдером портов, не относящихся к общепринятым портам, по которым обслуживается HTTP-протокол), то в этом случае подключают с помощью средства защиты 112 другой протокол безопасного разрешения DNS (например, DNS поверх HTTPS, DoH).
В частном примере реализации условием подключения протокола безопасного разрешения DNS является по меньшей мере одно из следующих:
• снижение средней скорости передачи данных в компьютерной сети.
В этом случае может быть снижено количество передаваемых по меньшей мере одним приложением 111 DNS-запросов за счет установки единственного зашифрованного соединения (например, HTTPS-соединения при подключении протокола DoH). Кроме того, с помощью средства защиты 112 будет осуществлена защита пользователя от отслеживания со стороны провайдера сети.
Указанное условие может быть определено, например, сетевым драйвером, который определит снижение количества передаваемых пакетов данных. Кроме того, указанное условие может быть определено при переключении сетевого соединения, например, с Wi-Fi на мобильный интернет - в этом случае соединение начинает рассматривается операционной системой как «лимитированное».
• Подключение к публичным точкам доступа.
Например, пользователь подключился к публичным точкам доступа, которые содержатся в базе данных средства защиты 112 и отмечены как небезопасные. Подключение к таким точкам доступа несет значительные риски для пользователя компьютера 110, т.к. ими могут воспользоваться злоумышленники.
Указанное условие может быть определено, например, эвристической сигнатурой на основе известных имен точек доступа (которые включают, например, слова: airport, cafe и др.), по спискам публичных SSID, при подключении к точкам доступа Wi-Fi без аутентификации.
• Получение доступа приложением 111 к корпоративным ресурсам в компьютерной сети.
В этом случае будет обеспечен неотслеживаемый провайдером доступ к корпоративным ресурсам, когда VPN-соединение невозможно (например, заблокирован GRE/PPTP-протокол).
• Получение доступа к ресурсам из списка защищаемых средством защиты 112 ресурсов (на фигуре не указан).
Например, если пользователь открывает веб-банкинг или совершает покупки в интернете.
• Адрес запрашиваемого ресурса не был получен с использованием протокола DNS.
В некоторых случаях, когда IP-адрес запрашиваемого сайта не мог быть разрешен с использованием протокола DNS, средство защиты 112 может подключить протокол безопасного разрешения DNS.
Указанные условия могут быть определены, когда доменная зона запрашиваемого ресурса не является стандартной (например, «.kaspersky», не поддерживается администрацией адресного пространства Интернет (IANA).
В частном примере реализации условия подключения безопасного протокола разрешения DNS могут обновляться с использованием удаленного сервера производителя средства защиты 112. Например, может быть обновлен список защищаемых средством защиты 112 ресурсов.
В другом частном примере реализации пользователь компьютера или администратор могут обновлять или настраивать упомянутые условия из базы условий 113. Например, может быть изменен список защищаемых ресурсов или могут быть отключены некоторые из условий, например, условие получения доступа к корпоративным ресурсам в компьютерной сети в том случае, если компьютер 110 является домашним компьютером пользователя.
Таким образом, раскрытое изобретение решает заявленную техническую проблему, заключающуюся в необходимости повысить конфиденциальность и безопасность сетевого соединения при использовании системы доменных имен, не снизив при этом доступность сетевого соединения и достигает заявленного технического результата, а именно повышает конфиденциальность и безопасность сетевого соединения при обеспечении доступности сетевого соединения при использовании системы доменных имен путем подключения протокола безопасного разрешения DNS при выполнении условия подключения протокола безопасного разрешения DNS. Стоит упомянуть, что повышение конфиденциальности и безопасности соединения обеспечивается за счет подключения протокола безопасного разрешения DNS, в котором осуществляется проверка целостности передаваемых данных, а передача запросов и ответов осуществляется по зашифрованному каналу связи, в отличие от протокола DNS, использование которого не гарантирует конфиденциальность и безопасность соединения и соответственно, передаваемых и получаемых данных. При этом обеспечивается доступность сетевого соединения за счет того, что подключение упомянутого протокола безопасного разрешения DNS происходит при выполнении условия подключения протокола безопасного разрешения DNS - то есть доступность сетевого соединения будет не хуже, чем при использовании протокола DNS, а в ряде ситуаций - лучше (например, когда IP-адрес из доменного имени не может быть разрешен протоколом DNS, но может быть разрешен протоколом безопасного разрешения DNS).
Фиг. 3 представляет пример компьютерной системы общего назначения, с помощью которой может быть реализовано настоящее изобретение, в частности, компьютер 110, DNS-резолверы 121, 131 и DNS-сервера 122-123, 132-133. Система содержит персональный компьютер или сервер 20, содержит центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 3. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях (также - информационных системах), внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В соответствии с описанием, компоненты, этапы исполнения, структура данных, описанные выше, могут быть выполнены, используя различные типы операционных систем, компьютерных платформ, программ.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.