Неоспоримо, что «выставляя сервер» в интернет необходимо позаботиться о его безопасности и максимально ограничить доступ к нему. Протокол DNS может использоваться как для атак на инфраструктуру (DNS сервер, канал) жертвы, так и для атаки на другие компании. За последний год количество таких атак увеличилось как минимум в 2 раза. На сайте digitalattackmap.com, который визуализирует DDoS атаки, DNS выделен из общего списка наравне с атаками на Web(80/443).
Сервис DNS работает (в основном) по протоколу UDP, который не предполагает предварительной установки соединения, поэтому его без проблем можно использовать для атак на другие серверы (spoofing) без специальной подготовки. По информации из разных источников1,2 на текущий момент от 8 до 20 миллионов DNS серверов отвечают на рекурсивные запросы. Это могут быть как неправильно настроенные авторитативные и кэширующие DNS-серверы, так и простые CPE.
Меня заинтересовало, насколько опасно (для себя и окружающих) держать открытый рекурсивный DNS сервер, поэтому я решил провести небольшое исследование.
Постановка задачи
Были сформулированы следующие вопросы, на которые хотелось бы получить ответы:
Как быстро будет обнаружен открытый рекурсивный DNS сервер;
Когда начнут использовать сервер в нелегальных целях;
Определить нагрузку на сервер (количество запросов в секунду);
Попытаться определить на какие организации нацелены атаки;
Будут ли запрашиваться скомпрометированные (содержащиеся в черных списках) домены и/или IP-адреса.
Для тестирования используется сервер установленный в нюрнбергском дата-центре Hetzner. На данном сервере ранее был расположен авторитативный DNS-сервер, количество запросов к которому не превышало 200 в сутки. IP адрес сервера (в связи с переездом на новое АО) изменялся в июле. Для проверки доменов использовался механизм RPZ (response policy zone) и черный список от компании Infoblox.
Немного теории
Для осуществления атак через DNS-сервер используются следующие принципы:
DNS работает по протоколу UDP, поэтому атакующий может подменить свой IP-адрес на адрес жертвы;
DNS-запросы ассиметричны, ответный трафик может превышать входящий в несколько раз.
На основании этих принципов этого можно выделить следующие виды атак с использованием DNS:
Amplification attack (атака с усилением) — направлена на перегрузку исходящего канала DNS-сервера. Она начинаются с отправки большого количества DNS-запросов, специально подобранных таким образом, чтобы получить очень большой ответ, размер которого может до 70 раз превышать размер запроса, что приведет к перегрузке исходящего канала DNS-сервера и в конечном счете к отказу в обслуживании (DoS);
Reflection attack (атака с отражением) — используются сторонние DNS-серверы (например мой) для распространения DoS- или DDoS-атаки путем отправки большого количества запросов. При такой атаке адрес, с которого отправляются DNS-запросы, подменяется IP-адресом жертвы, и запрос будет иметь данные сервера жертвы, а не атакующего. В результате, когда сервер имен будет получать запросы, он будет отправлять все ответы на IP-адрес жертвы. Большой объем такого «отраженного» трафика может вывести из строя сервер/сеть жертвы;
Distributed reflection DoS (DrDoS) — сочетает в себе атаки отражения и усиления, что значительно увеличивает вероятность нарушения работоспособности сервера жертвы. При этом DNSSEC, разработанный специально для защиты ответов DNS и предотвращения «отравления» кэша, могут сделать атаки такого типа еще более эффективными, поскольку увеличивается размер сообщений DNS. Усиление может доходить до 100 крат, а атакующие могут использовать сети botnet — в которые могут входить тысячи компьютеров.
Перечисленный список возможных атак не является полным, но для данного исследования он достаточен.
Результаты исследования
За неделю всего поступило 416 тысяч запросов на 63 домена от 1169 клиентов, что свидетельствует об успешном проведении исследования и важности данной темы.
Ниже приведен график количества запросов к DNS-серверу в секунду.
Прежде всего, ответим на поставленные вопросы:
Как быстро будет обнаружен открытый рекурсивный DNS сервер;
Первый запрос пришел из Китая через 1 час 20 минут на домен www.google.it
Когда начнут использовать сервер в нелегальных целях;
Через 1 сутки (первый маленький всплеск на графике) началось периодическое использование сервера для атак. За 30 минут было получено 300 запросов к домену webpanel.sk. Постепенно количество запросов и продолжительность атак увеличивалась.
Определить нагрузку на сервер (количество запросов в секунду);
В момент проведения атак сервер испытывал максимальную нагрузку 2-4 запроса в секунду. В последний день тестирования количество запросов резко увеличилось до 20 запросов в секунду. Применялась атака DNS Amplification, комбинировалась ли она с DNS Reflection определить достаточно трудно.
Попытаться определить, на какие организации нацелены атаки:
Количество запрашиваемых доменов было невелико, поэтому выделить потенциальных жертв и домены, используемые исключительно для атак, было просто.
— Министерство труда США, домен doleta.gov, используют DNSSEC, ответ сервера около 4 Кб, 127 тысяч запросов. Распределение количества запросов по клиентам достаточно ровное, TOP10 расположены в разных странах по всему миру (Южная и Северная Америка, Австралия и Новая Зеландия, Европа);
— Компания в Словакии, домен webpanel.sk, используют DNSSEC, ответ сервера около 4 Кб – 162 тысячи запросов (большая часть запросов пришла в день составления статьи, цифры постоянно увеличиваются). dnsamplificationattacks.blogspot.ru/ подозревает, что данный домен используется исключительно для DNS-amplification атак. На самом деле ответы данного сервера не отличаются от любых других серверов, которые используют DNSSEC. Большое количество запросов приходит с серверов немецкого хостинга, российского игрового хостинга и некоторых клиентов в США;
— Агентство защиты окружающей среды США, домен energystar.gov, используют DNSSEC, ответ сервера около 4 Кб – 79 тысяч запросов. Всего домен запрашивало 69 клиентов большая часть которых расположена в USA. 18 тысяч запросов было получено с игрового сервера Royal Empire. Так как на сервере нет пользователей, и в новостях указано, что beta в режиме онлайн с 11.07.2014, можно предположить, что данный сервер был взломан. Были замечены IP-адреса из сетей Qwerty и Microsoft.
— FamiNetwork, домен famicraft.com, 7.5 тысяч запросов. Домен содержал бессмысленные TXT записи «wowowow» в результате чего ответ сервера достигал 4кб (50 кратное усиление атаки). В процессе написания статьи, я обнаружил, что ответ сервера famicraft.com изменился и он больше не представляет угрозы. Скорее всего владелец домена обнаружил взлом и внес необходимые исправления. Запросы приходили с 4х серверов, два из которых принадлежат Akamai Technologies (5 тысяч запросов);
— 14 серверов Akamai Technologies были замечены в подозрительной активности по всем вышеперечисленным доменам, возможно это атака на Akamai или их серверы были взломаны;
— В TOP10 по количеству входящих запросов (30% от всего количества запросов) попали: немецкий хостинг (по иронии предоставляющий защиту от DDoS), игровой хостинг (российский), игровой сервер, два сервера Akamai. Скорее всего, данные серверы были взломаны, а остальные клиенты входят в botnet`ы.
Будут ли запрашиваться скомпрометированные домены.
Нет. За всё время тестирования был заблокирован только один домен (ballsack.pw) по IP-адресу 104.28.0.111. Причину блокировки можно посмотреть на сервере ThreatStop (http://threatstop.com/checkip). В принципе, это логично, так как botnet/malware через внешний рекурсивный DNS-сервер осуществляет атаки, а подключение и получение команд с управляющего центра происходит при инициализации, и для этого используется рекурсивный DNS-сервер провайдера.
В ходе анализа лог-файлов было выявлены:
домены, которые были созданы и/или взломаны для проведения DDoS атак: jerusalem.netfirms.com (выдает большое количество А-записей) и famicraft.com (описан выше). Ответ от этих DNS серверов составляет 4 Кб, то есть при использовании данных можно добиться 50 кратной перегрузки исходящего канала (на графике желтый цвет);
организаций, которые активно осуществляют мониторинг открытых рекурсивных DNS-серверов:
— www.openresolverproject.org;
— dnsscan.shadowserver.org;
— поступило несколько запросов на домен openresolvertest.net, но на веб-сайте никакой информации нет.
Открытые рекурсивные DNS-серверы
Сервис dnsscan.shadowserver.org насчитывает 8 миллионов открытых рекурсивных DNS-серверов. Больше всего таких систем расположено в Китае, Россия расположилась на почетном 6 месте.
Country
Total
China
2,886,523
United States
662,593
Korea, Republic of
591,803
Taiwan
449,752
Brazil
339,416
Russian Federation
264,101
Интересно графическое представление распределения DNS-серверов по странам, как открытых рекурсивных, так и авторитативных.
Выводы
Исходя из полученных результатов можно сделать следующие очевидные ☺ выводы:
Необходимо ограничивать доступ ко всем ресурсам сервера, а в частности к рекурсивному DNS-серверу;
Необходимо постоянно отслеживать загрузку DNS-сервера и канала данных. Резкое увеличение нагрузки может свидетельствовать как об осуществлении DDoS атаки, так и о взломе сервера;
При использовании DNSSEC необходимо разумно ограничивать количество поступающих запросов (rate limit);
Проверьте свой CPE на доступ к DNS через WAN интерфейс;
Провайдерам имеет смысл принудительно ограничивать доступ из Internet к рекурсивным DNS-серверам клиентов.
Сначала я предполагал завершить тестирование уже через неделю, но с учетом значительного роста нагрузки (с 2 до 20 QPS) в последний день тестирования, я решил продлить исследование ещё на неделю.