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

Система Domain Name Service – DNS – огромный справочник, где буквенные веб-адреса доменов вроде yandex.ru или habr.com сопоставляются с их числовым адресом IP. Механизм символьных обозначений для интернет-ресурсов, или доменные имена, развивается с начала 1980-х гг. и был придуман для удобства пользователей на заре развития интернета.

Сопоставление доменных имен с их фактическим серверным расположением производится в машиночитаемом виде, в виде разделённых точками цифрами – это IP-адрес. К примеру, если ввести в адресную строку браузера 172.217.18.110 – откроется Google. Для корректной обработки интернет-запросов сетевым программам требуется именно IP-адрес.

Система DNS, в силу возраста, имеет наследственные недостатки. Главный заключается в её уязвимости для хакерских атак. При определении IP-адреса сетевые службы обмениваются пакетами данных по цепочке промежуточных маршрутов и в любой из точек  возможен перехват правильного IP-адреса и подмена его на фальшивый в ответе пользователю.

Чтобы обеспечить защиту от злоумышленников, в браузеры и на серверы в последние два года внедряются технологии, значительно повышающие безопасность интернета:

  • Secure DNS,
  • DoT (DNS over TLS) и DoH (DNS over HTTPS),
  • Encrypted SNI,
  • и DNSSEC.
Greece padlocked fence
Фотография Jason Blackeye / Unsplash

Secure DNS

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

Secure DNS шифрует запросы. Сегодня применяются два стандарта – DoT (DNS over TLS) и DoH (DNS over HTTPS). Обе технологии повышают безопасность и конфиденциальность, а также предотвращают перехват и манипулирование данными DNS при «атаке посредника».

«Атака посредника» - Man-in-the-middle attack (MiTM)
Преследует две цели – ретрансляцию данных к несанкционированному участнику в сессии связи и подмену им идентификации одного или нескольких участников соединения. В результате происходит повреждение достоверности связи и становится доступными сбор, подмена, редактирование и удаление информации и данных, которыми обмениваются участники этого взломанного сетевого соединения.

TLS

TLS – наиболее актуальный в 2020 году криптографический протокол связи для защиты данных при передаче между интернет-узлами. Эту технологию поддерживают современные браузеры, мессенджеры и почтовые клиенты. Применяют её и сервисы IP-телефонии.

SSL - схожий аналогичный протокол шифрования для веб-соединений. Сегодня считается устаревшим и небезопасным, однако традиционно до сих пор обе технологии упоминаются в паре как SSL/TLS.

TLS одновременно использует симметричную и асимметричную шифровку данных. По сравнению с SSL, протокол работает безопаснее и быстрее. Высокая скорость объясняется уменьшением числа клиент-серверных взаимодействий.

PROMESAS
Фотография marcos mayer / Unsplash

Encrypted SNI

Encrypted SNI шифрует имена сайтов в процессе интернет-запроса. Эта особенность выгодно отличает технологию от стандартного протокола HTTPS, который вначале запроса передает заголовки с информацией о доменах в незашифрованном виде, доступном и провайдерам, и лицам по пути следования пакетов данных (например, хакерам).

Благодаря Encrypted SNI прослушивающие канал организации и лица увидят лишь IP-адреса. Сейчас на одном IP часто размещаются тысячи сайтов и сервисов, поэтому технология затрудняет идентификацию просматриваемых пользователем доменов.

У Encrypted SNI есть ещё одно важное преимущество – защита от репрессивных вмешательств государственных цензурных органов. Если бы эта технология уже успела распространиться повсеместно, блокировки по именам сайтов утратили бы смысл. Цензорам пришлось бы искать новые способы ограничения доступа к интернет-ресурсам.

Блокировка по IP-адресу эффективна, когда сайт привязан к конкретному адресу. В противном случае она рискует навредить площадкам, которые не связаны с целью цензурных действий. Вряд ли на такое пойдут даже самые строгие регуляторы.

DNSSEC

Прежде, чем страница откроется в окне браузера, запрос с именем сайта проходит через десятки промежуточных интернет-серверов. Вначале данные отправляются интернет-провайдеру пользователя. Потом уходят на международные корневые сервера DNS и доменов верхних уровней – .com. .net, .org и т. п. Наконец, находится конечный адрес сервера, который обслуживает конкретную площадку. Пользователю в обратной цепочке приходит ответ с этим IP-адресом веб-ресурса.

Существует риск, что хакеры могут исказить данные на любом этапе передачи. DNSSEC сводит к минимуму возможность подмены DNS-адресов. Технология проверяет достоверность DNS-запросов с помощью электронных цифровых подписей (ЭЦП). Проверка подлинности ЭЦП доступна всем участникам соединения на DNSSEC. Однако менять или подписывать данные способны только обладатели секретных ключей.

Как проверить, поддерживает ли браузер Secure DNS, TLS, Encrypted SLI и DNSSEC?

Зайдите на сайт https://www.cloudflare.com/ssl/encrypted-sni/, нажмите кнопку Check My Browser и ознакомьтесь с результатами. Рядом с названиями технологий должны стоять метки: зелёные говорят об успешном прохождении теста, а красные указывают на наличие проблем.

Если не пройдена проверка на TLS 1.3, вероятно, у вас очень старый браузер. Обновите его до последней версии и пользуйтесь современным протоколом шифрования данных. Что касается Secure DNS, DNSSEC и Encrypted SNI, то их активация занимает минимум времени.

Весной 2020 года наибольшую поддержку этим технологиям оказывает браузер Firefox. Немного отстают во внедрении Opera, Chrome и Safari, хотя и у них анонсированы улучшения в ближайшие год-полтора.

Воспользуйтесь Firefox. Зайдите в основные настройки браузера и внизу страницы найдите опцию «Параметры сети». Нажмите кнопку «Настроить» и отметьте галочкой «Включить DNS через HTTPS». Рекомендуем оставить вариант по умолчанию, то есть Cloudflare.

Сделав первоначальную настройку, откройте новую вкладку и введите в адресной строке about:config. Воспользуйтесь поиском, отыщите параметр network.security.esni.enabled и убедитесь, что там стоит true. Дополнительно найдите network.trr.mode и в качестве значения задайте 3.

Внимание! Поддержка TLS, DNSSEC и Encrypted SNI браузером не гарантирует, что эти технологии используются в работе сервера веб-сайта. Если вы владеете одним или несколькими сайтами и заботитесь о безопасности посетителей, обязательно выясните детали внедрения у технической поддержки хостинга.
К примеру, для включения Encrypted SNI нужно, чтобы хостинг поддерживал протокол TLS 1.3 и публиковал открытый ключ цифровой подписи TXT записи DNS. При выполнении обоих условий для подключения технологии достаточно добавить следующую строку в CNAME:
_esni.[ИМЯ САЙТА].[АДРЕС ХОСТИНГА] CNAME _esni.[АДРЕС ХОСТИНГА]
Фотография Bernard Hermant / Unsplash

Тренды усиления безопасности и развития технологии DNS в 2020 году

За время с января 2016 года по март 2020 года нагрузка на серверы DNS по всему миру увеличилась на 200%. Объёмы мирового интернет-трафика продолжат расти. В сложившейся ситуации флагманы индустрии – крупнейшие поставщики инфраструктуры, такие как Amazon, Google, Akamai, Cloudflare – не имеют права игнорировать вопросы безопасности. В этой сфере одним из главных трендов последних лет считается повсеместное внедрение DNSSEC.

Серверы DNS постоянно подвергаются кибератакам. В основном злоумышленники прибегают к DDoS или «атаке посредника». DNSSEC защищает пользователей от действий преступников. При наличии ЭЦП легко проверить происхождение запроса и обеспечить его безопасное перемещение через цепочку удалённых компьютеров.

Если рассматривать интернет-отрасль в целом, то службы DNS сейчас адаптируются к работе с CDN и облачными технологиями. Content Delivery/Distribution Networks или сети доставки/дистрибуции контента представляют собой географически распределённые структуры. Системы создаются с целью повышения скорости скачивания игр, видео и так далее.

CDN – динамические сети. IP-адреса в них меняются с учётом местонахождения пользователей, которым доставляется контент. Чтобы приспособиться к этим новым реалиям, сервисам DNS приходится вносить существенные изменения в методологию управления записями доменных имён.

При этом облачные технологии динамического использования емкостей IP-адресов полезны службам DNS по двум причинам:

  • во-первых, более гибкий контроль производительности;
  • во-вторых, улучшение взаимодействия с пользователями.

Будущее индустрии именно за облаками и гибридными системами, где трафик разделяется между стандартными DNS и cloud-инфраструктурами.

A silhouette jumping in the sunrise
Фотография Marc Najera / Unsplash