В прошлом месяце разработчики Jenkins выпустили Jenkins версии 2.219, где исправили уязвимость, которая отслеживается как CVE-2020-2100. Теперь они предупреждают, что этот баг может применяться для усиления DDoS-атак.
Дело в том, что Jenkins поддерживает два network discovery протокола, а именно multicast/broadcast через UDP и DNS Multicast. Оба эти протокола включены по умолчанию и используются для того, чтобы серверы Jenkins могли обнаруживать друг друга и работать в кластерах.
Общеизвестно, протокол UDP нередко используется для амплификации DDoS-атак, и в прошлом году Адам Торн (Adam Thorn) из Кембриджского университет обнаружил, что таким же образом можно использовать и UDP-протокол Jenkins (UDP-порт 33848). То есть злоупотребления приведут к амплификации DDoS-трафика.
В итоге разработчики Jenkins пишут, что серверы Jenkins могут быть использованы в DDoS-атаках, усиливая их примерно в 100 раз: «однобайтовый запрос к этой службе вернется более чем 100 байтами метаданных Jenkins».
Коэффициент усиления 100 можно назвать весьма опасным, однако журналисты издания ZDNet уверяют, что все не так плохо. По просьбе издания неназванный специалист по борьбе с DDoS-атаками проверил данный вектор атак еще на прошлой неделе. Оказалось, что, невзирая на довольно большой коэффициент амплификации, подобные атаки нельзя назвать надежными, так как эксплуатация проблемы на доступных из интернета серверах Jenkins часто приводит к сбоям в работе последних. Кроме того, та же самая ошибка имеет побочный эффект: серверы Jenkins можно вынудить непрерывно отправлять друг другу пакеты, и в итоге они войдут в бесконечный цикл, и в конечном итоге их работа тоже будет прервана возникшим сбоем.
Однако специалисты в любом случае рекомендует обновить Jenkins до версии 2.219 или хотя бы заблокировать любой входящий трафик на порт 33848.