DNSSEC — инструмент для проверки подлинности ответа от DNS-сервера. Его предназначение — защита от подмены IP-адресов. Благодаря этому пользователи защищены от фишинга, а сайт — от кибератак различного типа, «отравления» трафика.
Если вы знаете, что такое DNS, для чего он нужен и как работает, то смело пропускайте этот подраздел и переходите к следующему.
DNS — система, которая соотносит домены с IP-адресами. Пользователь вводит в браузере домен сайта — например, site.com. DNS сравнивает этот домен со своим списком и перенаправляет человека на нужный сервер по IP-адресу.
Регулярная передача данных от первичного сервера к пользователям занимает много времени. Поэтому придумали кэшировать запрашиваемые ранее IP-адреса и выдавать их при следующем обращении. Если вы подключали или меняли домен сайта, то знаете, что это занимает некоторое время — должны как раз обновиться данные в кэше.
Мы разобрались с тем, что обеспечивает серверная программа DNS и как она это делает. Проблема в том, что долгое время система работала только на доверии. Все пользователи как будто негласно договорились, что не будут обманывать и подменять записи в кэше.
Но нашлись нечестные пользователи, которые стали перехватывать данные между клиентом и сервером и вносить в них правки. Например, перенаправлять людей не на те сайты, на которые они пытались попасть.
Чтобы исключить злоумышленников из этой цепочки честных запросов и ответов, придумали DNSSEC. Он не доверяет полученным данным, а всегда их проверяет. Если обнаружена подмена, запрос не выполняется.
Может возникнуть закономерный вопрос: если DNSSEC — такой полезный инструмент, почему он не используется повсеместно? Все дело в скорости. Для проверки подписи на уполномоченном сервере требуется время, которое добавляется ко времени загрузки сайта.
В основе DNSSEC тот же механизм, что и у цифровой подписи. Есть две части:
Расширение безопасности DNS поддерживает два типа ключей: ZSK и KSK. ZSK — ключ для подписи зоны. KSK — ключ для подписи рабочего набора ключей. ZSK подписывает все записи в зоне, кроме NS дочерних зон. Ключом KSK подписывают набор записей DNSKEY, а от его открытой части берется хэш, который передается в родительскую зону.
Несмотря на то, что по открытому ключу сложно распознать закрытый ключ, для поддержания высокого уровня безопасности рекомендуется периодически обновлять части DNSSEC. ZSK советуют менять каждые два-три месяца, а KSK — хотя бы раз в полгода. Делать вручную это не обязательно — существуют механизмы автообновления.
Например, есть сайт банка — bank.com. Когда пользователь вводит этот домен в адресной строке браузера, DNS-система перенаправляет его на IP-адрес 172.168.0.15. Это IP-адрес сервиса онлайн-банкинга. Для авторизации и аутентификации на нем пользователь вводить логин и пароль.
Если домен не защищен с помощью DNSSEC, то злоумышленники могут подменить IP-адрес в кэше на свой — например, 183.168.0.66. На этом адресе будет размещен поддельный сервис онлайн-банкинга, который внешне выглядит так же, как реальный.
Пользователь вводит на поддельном портале логин и пароль. Они оказываются в руках у злоумышленников. С этими данными они могут авторизоваться на настоящем сайте и получить доступ к счетам жертвы.
Чтобы обнаружить подмену, пользователь может, например, проверить А-записи домена. Но вряд ли такое случается часто. Для проверки нужно как минимум знать, что такое DNS-хостинг и какие данные были изначально. Да и кому придет в голову проверять IP-адрес, если фейковая страница выглядит точно так же, как настоящая.
И здесь мы снова возвращаемся к обсуждению Secure DNS – что это действительно полезный инструмент, который усиливает безопасность сайта за счет дополнительной проверки.
Мы разобрались с тем, что такое DNSSEC – это средство для проверки подлинности. Важно понимать, что расширение не гарантирует полную безопасность сайта. При использовании одного только этого инструмента защита от злоумышленников будет неполной.
Для организации полной защиты требуется не только проверка DNSSEC, но и подключение двухфакторной (или двухэтапной) аутентификации, подключение SSL-сертификата и дополнительная настройка отражения DDoS-атак. Все эти услуги можно получить на timeweb.cloud.