Волна DDoS-атак, использующих NTP-серверы для усиления трафика

Волна DDoS-атак, использующих NTP-серверы для усиления трафика

Компьютерная команда экстренной готовности США (US-CERT) опубликовала предупреждение о набирающих силу DDoS-атаках, использующих серверы синхронизации точного времени для многократного усиления трафика. В процессе атаки, запросы поражённых компьютеров, входящих в состав ботнетов, направляются не напрямую на систему жертвы, а через промежуточный усилитель трафика, путем отправки UDP-пакетов с подставным обратным адресом.

Ранее подобные атаки как правило проводились c задействованием DNS-серверов для усиления трафика. В новых атаках зафиксирован переход на использование публичных NTP-серверов. Для усиления трафика от имени жертвы (UDP-пакет с подставным IP) на NTP-сервер отправляется запрос на выполнение команды MON_GETLIST («get monlist»), результатом которого является отправка списка 600 последних IP-адресов, с которых были обращения к NTP-серверу. В результате размер ответа во много раз превышает исходный запрос (на загруженных серверах на запрос в 234 байт возвращается ответ в 48 Кб), что позволяет многократно усилить объём трафика, генерируемого в сторону системы жертвы. Проблему усугубляет то, что команда monlist выполняется без аутентификации.

Проблеме подвержены все версии ntpd до 4.2.7p25 включительно, в выпуске 4.2.7p26 поддержка команды monlist была отключена. В качестве меры для предотвращения участия NTP-серверов в DDoS-атаках рекомендуется запретить выполнение команды мониторинга через директиву «disable monitor» или все команды выдачи статистики через опцию «noquery» в секции «restrict default» в ntp.conf. Также можно ограничить доступ к сервису NTP для внешних сетей или использовать модифицированные версии ntpd, в которых отключена поддержка команды monlist (достаточно пересобрать ntpd, удалив строку «proto_config(PROTO_MONITOR, 0, 0., NULL);» в файле ntp_config.c). Обновление с устранением уязвимости (CVE-2013-5211) уже выпущено для FreeBSD. Проверить наличие уязвимости в сервере можно выполнив «/usr/sbin/ntpdc ip_сервера» и введя команду «monlist».