09 июня 2018

Виктория Федосеенко

Редактор блога ISPsystem

Расширенная безопасность DNS в ISPmanager

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

Что такое DNSSEC

Система доменных имен (DNS) была придумана в 1980 годах. Именно ей мы обязаны возможностью переходить на сайты, вводя в строку браузера не IP-адреса, а буквенные имена. В 1990 годах в DNS была обнаружена серьезная уязвимость. Она позволяла мошенникам направить часть пользователей сайта на его копию либо вообще на другой сайт. При этом редкий пользователь мог заподозрить подвох, потому что в строке браузера был указан корректный адрес.

В 2005 году была разработана технология, которая устраняет уязвимости системы доменных имен. Она так и называется — "Расширенная безопасность DNS" (DNS Security Extensions, DNSSEC).

Когда необходим DNSSEC

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

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

Как хакеры используют уязвимости DNS

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

Через уязвимость в конфигурации DNS злоумышленник может “отравить” кеш DNS-сервера: сообщить ему некорректные сведения о расположении сайта. DNS-сервер эти данные сохранит и будет направлять всех проходящих через него пользователей на сайт-подделку. Такой тип атаки называется “отравление кеша” или “атака Каминского” по имени открывшего ее исследователя безопасности.

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

Как работает DNSSEC

Если используется DNSSEC, один DNS-сервер будет проверять ответы другого DNS-сервера на корректность. Некорректные ответы будут вызывать ошибку.

DNSSEC подписывает ресурсные записи (о связке IP-адреса и доменного имени; псевдонимах и др.), используя криптографию. То есть к ресурсной записи добавляется цифровая подпись, сгенерированная по одному из определенных ICANN криптографических алгоритмов.

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

Ограничения

По возможностям
Технология DNSSEC не защищает данные от перехвата и не защищает сайт от DDoS-атак. Для этих целей в ISPmanager есть другие инструменты: Let's encrypt для подключения SSL, Cloudflare и DDoS-GUARD для защиты от DDoS-атак.

По зонам
Принцип работы DNSSEC основан на цепочке доверия. Поэтому доменные зоны более высоко уровня должны быть подписаны. Зоны .ru, .com, .рф уже подписаны и для них DNSSEC доступен. А вот некоторые необычные зоны типа .indi еще не подписаны, поэтому использовать DNSSEC с ними нельзя.

По типам DNS-серверов
Технологию поддерживают следующие DNS-серверы: Bind, начиная с версии 9.8.4; PowerDNS, начиная с версии 3.2 (в стандартном репозитории Debian 7 — PowerDNS версии 3.1). На DNS-сервере с PowerDNS до четвертой версии подписывание домена с помощью DNSSEC может привести к недоступности CAA-записей.

Как подключить DNSSEC в ISPmanager

Для начала работы надо включить поддержку расширения безопасности DNS. Сделать это может только администратор панели.

1. В ISPmanager в разделе “Домены” — “Доменные имена” выберите домен и перейдите в его настройки. Включите опцию “Поддержка “DNSSEC”. В DNSmanager опция доступна в “Глобальных настройках”.

2. Задайте параметры ключей DNSSEC: длину, алгоритм генерации, период обновления. В DNSSEC используются два вида ключей: ключ для подписи ресурсных записей зоны (ZSK) и для подписи ключей (KSK). Рекомендуем выбирать для KSK большую длину ключа и период обновления по сравнению с ZSK.

3. В разделе “Домены” — “Доменные имена” выделите домен и нажмите кнопку “Изменить”. Включите опцию “Подписать домен”. Подписание доменной зоны доступно всем пользователям панели.

4. После подписи домена передайте DS-записи в родительскую зону. Информация об основных параметрах ключей и их записях DNSKEY и DS отображается на странице "Параметры DNSSEC": раздел "Домены" — "Доменные имена" — выделить домен — кнопка "DNSSEC". Чтобы не забывать о публикации записей родительской зоне, включите уведомления в разделе “Настройки” — “Почтовые уведомления”.

Подробнее о настройке DNSSEC в документации ISPsystem.

Виктория Федосеенко

Редактор блога ISPsystem