PingBack DDoS

WordPress PingBack DDoS — 50к ботов

Усовершенствование средств защиты от DDoS привело к повышению технологичности атак: теперь никого особо не удивить атакой на полосу или SYN/TCP-флудом. Современные сервера с легкостью обслуживают десятки и сотни тысяч соединений в секунду, делая неэффективными «грубые» методы. Но для проведения DDoS-атаки малого или среднего размера вполне подходит slow-DDoS методы на уровне приложения (7 уровень модели OSI).


Именно на этом уровне был атакован 29 апреля 2015 года один из клиентов Айри. Атака на полосу достигала 1 Гбит/с, при этом использовалась сеть атакующих ботов не менее 50 тысяч машин. Частота запросов с каждой из машин составляла 1-2 в минуту.

WordPress Pingback

По характеристикам это довольно «тяжелая» атака, но для ее проведения достаточно всего 100-200 управляющих узлов, все из которых могут контролироваться с обычного ноутбука или мобильного телефона. Суть атаки заключалась в использовании стандартного функционала WordPress — обратного пинга постов (Pingback).

Уже фиксировались масштабные атаки с использованием этого механизма, в частности, из ботнета до 200 тысяч машин.

Этот механизм по умолчанию включен на всех WordPress-блогах начиная с версии 3.5 и позволяет отправить на произвольный сайт в Интернете один-единственный запрос (с уведомлением о получении исходного сообщения). Как выглядит механизм pingback:

  1. Организатор атаки запускает на управляющих узлах скрипт обхода WordPress-сайтов с отправкой зараженных pingback запросов (подробно в блоге Incapsula).
  2. Управляющий узел ботнета посылает на один из нормальных (но незащищенных) WordPress-сайтов pingback запрос с указанием страницы этого сайта и адреса жертвы (например, главной страницы). Плотность обхода может составлять тысячи запросов в секунду к различным WordPress-сайтам.
  3. WordPress-сайт обрабатывает запрос и отвечает по указанному адресу (жертвы). Вся «полезная» нагрузка от проведения атаки приходится на отдельный WordPress-сайт.
  4. Мультипликация атаки достигается за счет запроса HTML-страницы сайта-жертвы в ответ на небольшой XML-код pingback запроса. Примерно 1 к 20-100: на 1 Мбит/с задействованной полосы управляющего узла жертва отвечает 20-100 Мбит/с полосой данных.

При атаке WordPress Pingback DDoS исчерпываются как ресурсы сервера (на установление соединений или обслуживания запросов), так и ресурсы канала (при большом количестве обработанных ответов).

Защита от WordPress Pingback DDoS

Эффективная защита состоит из двух частей:

  • Ваш сервер должен уметь обрабатывать несколько (десятков) тысяч запросов в секунду (для отсечения всех вредоносных запросов).
  • Сервер должен блокировать pingback-запросы WordPress-сайтов с минимальным размером ответа (для предотвращения исчерпания канала). Блокировка по IP адресу при данном типе атаки не имеет большого смысла: количество запросов с каждого отдельного IP-адреса мало, всего пара запросов в минуту, а размер ботнета может достигать несколько десятков миллионов машин.

Оба этих условия отлично выполняются в облаке Айри: сеть из идеально настроенных Nginx-серверов принимает на себя весь поток запросов, пропуская только валидные запросы.

Вы можете проверить, использовался ли ваш WordPress-сайт для атак по этой ссылке. Самой лучшей защитой от использования вашего сайта для проведения атаки будет удаление файла xmlrpc.php из корня сайта (или блога).