DNS Что это? Использование Проблемы и методы их решения

advertisement
DNS
Что это?
Использование
Проблемы и методы их решения
Даниил Малых
08.07.2013
Что такое домен?
Домен второго
уровня
IP-адрес
Info.nic.ru = 194.85.61.42
Домен третьего
уровня
Домен верхнего
(первого) уровня
Yandex.ru
Google.com
Mimitech.ru
BBC.co.uk
Lenta.ru
Введение: как работает DNS
ОСНОВЫ
DNS — сервис, преобразующий «человекопонятные» адреса.
ОСНОВА ПОЛЬЗОВАТЕЛЬСКОЙ НАВИГАЦИИ В ИНТЕРНЕТЕ
Корневой DNSсервер
Сервер
провайдера
Сервер
зоны RU
Да, вот он!
194.85.61.42
Сервер домена nic.ru
Запрашивается сайт nic.ru
Содержание запрашиваемой страницы с сайта
194.85.61.42
IP-адрес сайта nic.ru не
подскажете?
ОСНОВЫ
www.nic.ru?
Сервер имён
.NIC.RU.
Сервер имён
.RU.
Кеширующий
сервер
провайдера
Корневой
сервер
Имён '.'
Кеширование — важнейший аспект, делающий систему распределённой
Временные параметры: TTL - время «актуальности» данных.
Иерархия источников: всё определяют авторитативные серверы.
Управление DNS
DNS домена
•Может быть на web-сервере вместе с сайтом
•Может быть на отдельном сервере
•
•
•
•
Не хватает возможностей панели хостинга (VPS) для решения требуемых задач
Много сайтов на поддержке
Высокоответственные и высоконагруженные проекты
Для DNS хостинга – удобная панель управления DNS домена
У одного домена может быть несколько именных серверов, в случае
недоступности одного будут использоваться другие
Мировой опыт: чем серьезнее проект, тем сильнее уделяется внимание
надежности DNS.
Типы записей
А — IP адрес сервера для домена
CNAME — каноническая запись, псевдоним домена
MX — «почтовая» запись, указывает серверы обмена почти
NS — DNS-сервер домена
SRV — для сервисов, с указанием хоста, порта, протокола
TEXT — простая текстовая информация
Использование DNS
•Распределение нагрузки между серверами
•Управление траффиком между серверами:
•Географическое распределение аудитории
•По загруженности сервера
•При проведении технических работ на сервере
•Повышение отказоустойчивости
Запрос DNS:
«nic.ru?»
Ответ «извне»:
«nic.ru = 10.10.10.100
TTL = 1 min»
10.10.10.100
10.10.10.101
10.10.10.102
10.10.10.103
Негативное использование
ПРИМЕРЫ
Для чего fast flux?
«Абузоустойчивый» хостинг;
Сокрытие следов;
Преодоление фильтров.
by Roomic Cube
Fast flux — не «криминален» сам по себе:
Используется для распределения нагрузки;
Годится на роль инструмента защиты «добропорядочных,
но проблемных» веб-сайтов.
ПРИМЕРЫ
«DNS rebinding»
Штатная работа DNS + дефекты политик безопасности в браузерах и другом ПО
Замена адреса NS-ом при
повторном обращении
1.
Запрос: tram-pam.evildomain.tld?
Ответ: IP сервера-источника (TTL=1s);
2.
Атакующая система
Загрузка веб-страницы с «активным
содержимым» в браузер;
3.
Запрос: tram-pam.evildomain.tld?
Ответ: IP машины внутренней сети.
Корпоративная сеть
Интернет
Ограничение запросов по имени хоста-источника — связано с DNS
Экран
Javascript (XMLHttpRequest), Flash, Java — были уязвимы
ПРИМЕРЫ
«Отравление кеша»
Фундаментальные «дыры» DNS используются во вред
Запрос
evildomain.tld. IN A
Ответы о чужих доменах:
Кеширующий сервер
Подмена IP-адреса
«легитимного» NS;
Подмена имени
авторитативного NS;
UDP + tr. ID
(100,101,102... ?)
Предсказуемые «метки»
1989... 2007... 2008...
Amit Klein, Dan Kaminsky...
Плохо удостоверяется источник ответа
ПРИМЕРЫ
Цели отравления кеша
Пользователи заманиваются
на подставные серверы;
Похищаются «банковские пароли»;
Рассаживаются зловреды;
Проводятся многоступенчатые
атаки на другие ресурсы;
...и т.п., и т.д.,
БОНУС:
В 2008 году опубликован способ генерации
валидных поддельных SSL-сертификатов
Изготовление поддельных сертификатов было возможно и многим ранее
ПОЛОЖЕНИЕ ПОЛЬЗОВАТЕЛЕЙ
«Потребители» данных DNS не имеют возможности
проверить подлинность
адресной информации
Вынуждены доверять всем
или не доверять никому
DNSSEC
«Хакер посередине»
Клиент
Авторитативный
сервер
Цепочка связи
Адрес, подпись, ключ
Клиент
Клиент не знает,
с кем обменивается информацией!
Что делать?
Авторитативный
сервер
Злоумышленник,
с собственными «настоящими»
ключами и подписями
ПРИНЦИПЫ РАБОТЫ
Запрос DNS:
«www.google.com?»
Ответ «извне»:
«www.google.com = 10.10.10.100»
Подписано: 2eaF37Bd2012
DNSSEC
Проверка «адресных данных»
и ключа
1. Получение записей DNSSEC;
2. Попытка построения цепочки
доверия к Root KSK;
3. Если цепочка построена,
то домен защищён
---------------------------Настоящий адрес?
Спасибо за
внимание!
Даниил Малых
dmalyh@nic.ru
Download